bug fixes
This commit is contained in:
parent
04af82224d
commit
ad4af0adac
|
@ -1,5 +1,5 @@
|
||||||
|
|
||||||
/*pavan changes*/
|
/*pavan changes*/
|
||||||
void DTWfreqDistance(struct data_frame *df);
|
int DTWfreqDistance(struct data_frame *df);
|
||||||
|
|
||||||
void DTWvolDistance(struct data_frame *df);
|
int DTWvolDistance(struct data_frame *df);
|
|
@ -5,7 +5,7 @@
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
typedef struct
|
struct DTWfreqlist
|
||||||
{
|
{
|
||||||
int idcode;
|
int idcode;
|
||||||
long double *freq1;
|
long double *freq1;
|
||||||
|
@ -14,10 +14,10 @@ typedef struct
|
||||||
int count_track2;
|
int count_track2;
|
||||||
int flag;
|
int flag;
|
||||||
int result;
|
int result;
|
||||||
DTWfreqlist *next;
|
struct DTWfreqlist *next;
|
||||||
} DTWfreqlist;
|
};
|
||||||
|
|
||||||
typedef struct
|
struct DTWvollist
|
||||||
{
|
{
|
||||||
int idcode;
|
int idcode;
|
||||||
long double *vol1;
|
long double *vol1;
|
||||||
|
@ -26,18 +26,18 @@ typedef struct
|
||||||
int count_track2;
|
int count_track2;
|
||||||
int flag;
|
int flag;
|
||||||
int result;
|
int result;
|
||||||
DTWvollist *next;
|
struct DTWvollist *next;
|
||||||
} DTWvollist;
|
};
|
||||||
|
|
||||||
|
|
||||||
DTWfreqlist *head = NULL;
|
struct DTWfreqlist *head = NULL;
|
||||||
DTWvollist *headvol = NULL;
|
struct DTWvollist *headvol = NULL;
|
||||||
|
|
||||||
void DTWfreqDistance(struct data_frame *df)
|
int DTWfreqDistance(struct data_frame *df)
|
||||||
{
|
{
|
||||||
if (head == NULL)
|
if (head == NULL)
|
||||||
{
|
{
|
||||||
head = (DTWfreqlist *)malloc(sizeof(DTWfreqlist));
|
head = (struct DTWfreqlist *)malloc(sizeof(struct DTWfreqlist));
|
||||||
head->count_track1 = 0;
|
head->count_track1 = 0;
|
||||||
head->count_track2 = 0;
|
head->count_track2 = 0;
|
||||||
head->flag = 0;
|
head->flag = 0;
|
||||||
|
@ -48,8 +48,8 @@ void DTWfreqDistance(struct data_frame *df)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
DTWfreqlist *temp = head;
|
struct DTWfreqlist *temp = head;
|
||||||
DTWfreqlist *previous;
|
struct DTWfreqlist *previous;
|
||||||
while (temp != NULL)
|
while (temp != NULL)
|
||||||
{
|
{
|
||||||
if (to_intconvertor(df->idcode) == temp->idcode)
|
if (to_intconvertor(df->idcode) == temp->idcode)
|
||||||
|
@ -68,7 +68,7 @@ void DTWfreqDistance(struct data_frame *df)
|
||||||
// printf("curr_freq: %f\n",CURR_FREQ);
|
// printf("curr_freq: %f\n",CURR_FREQ);
|
||||||
if (temp->count_track1 == 0)
|
if (temp->count_track1 == 0)
|
||||||
{
|
{
|
||||||
if (tmp->flag == 0)
|
if (temp->flag == 0)
|
||||||
{
|
{
|
||||||
temp->flag = 1;
|
temp->flag = 1;
|
||||||
temp->freq1 = (long double *)malloc(500 * sizeof(long double));
|
temp->freq1 = (long double *)malloc(500 * sizeof(long double));
|
||||||
|
@ -145,7 +145,7 @@ void DTWfreqDistance(struct data_frame *df)
|
||||||
}
|
}
|
||||||
if (temp == NULL)
|
if (temp == NULL)
|
||||||
{
|
{
|
||||||
DTWfreqlist *bring = (DTWfreqlist *)malloc(sizeof(DTWfreqlist));
|
struct DTWfreqlist *bring = (struct DTWfreqlist *)malloc(sizeof(struct DTWfreqlist));
|
||||||
bring->count_track1 = 0;
|
bring->count_track1 = 0;
|
||||||
bring->count_track2 = 0;
|
bring->count_track2 = 0;
|
||||||
bring->flag = 0;
|
bring->flag = 0;
|
||||||
|
@ -159,11 +159,11 @@ void DTWfreqDistance(struct data_frame *df)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DTWvolDistance(struct data_frame *df)
|
int DTWvolDistance(struct data_frame *df)
|
||||||
{
|
{
|
||||||
if (headvol == NULL)
|
if (headvol == NULL)
|
||||||
{
|
{
|
||||||
headvol = (DTWvollist *)malloc(sizeof(DTWvollist));
|
headvol = (struct DTWvollist *)malloc(sizeof(struct DTWvollist));
|
||||||
headvol->count_track1 = 0;
|
headvol->count_track1 = 0;
|
||||||
headvol->count_track2 = 0;
|
headvol->count_track2 = 0;
|
||||||
headvol->flag = 0;
|
headvol->flag = 0;
|
||||||
|
@ -174,8 +174,8 @@ void DTWvolDistance(struct data_frame *df)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
DTWvollist *temp = headvol;
|
struct DTWvollist *temp = headvol;
|
||||||
DTWvollist *previous;
|
struct DTWvollist *previous;
|
||||||
while (temp != NULL)
|
while (temp != NULL)
|
||||||
{
|
{
|
||||||
if (to_intconvertor(df->idcode) == temp->idcode)
|
if (to_intconvertor(df->idcode) == temp->idcode)
|
||||||
|
@ -183,8 +183,8 @@ void DTWvolDistance(struct data_frame *df)
|
||||||
float CURR_vol;
|
float CURR_vol;
|
||||||
if (df->dpmu[0]->fmt->phasor == '0')
|
if (df->dpmu[0]->fmt->phasor == '0')
|
||||||
{
|
{
|
||||||
unsigned char* s1;
|
unsigned char s1[2];
|
||||||
unsigned char* s2;
|
unsigned char s2[2];
|
||||||
strncpy(s1,df->dpmu[0]->phasors[0],2);
|
strncpy(s1,df->dpmu[0]->phasors[0],2);
|
||||||
strncpy(s2,df->dpmu[0]->phasors[0]+2,2);
|
strncpy(s2,df->dpmu[0]->phasors[0]+2,2);
|
||||||
long double v1 = to_intconvertor(s1);
|
long double v1 = to_intconvertor(s1);
|
||||||
|
@ -193,8 +193,8 @@ void DTWvolDistance(struct data_frame *df)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
unsigned char* s1;
|
unsigned char s1[4];
|
||||||
unsigned char* s2;
|
unsigned char s2[4];
|
||||||
strncpy(s1,df->dpmu[0]->phasors[0],4);
|
strncpy(s1,df->dpmu[0]->phasors[0],4);
|
||||||
strncpy(s2,df->dpmu[0]->phasors[0]+2,4);
|
strncpy(s2,df->dpmu[0]->phasors[0]+2,4);
|
||||||
long double v1 = decode_ieee_single(s1);
|
long double v1 = decode_ieee_single(s1);
|
||||||
|
@ -206,7 +206,7 @@ void DTWvolDistance(struct data_frame *df)
|
||||||
// printf("curr_vol: %f\n",CURR_vol);
|
// printf("curr_vol: %f\n",CURR_vol);
|
||||||
if (temp->count_track1 == 0)
|
if (temp->count_track1 == 0)
|
||||||
{
|
{
|
||||||
if (tmp->flag == 0)
|
if (temp->flag == 0)
|
||||||
{
|
{
|
||||||
temp->flag = 1;
|
temp->flag = 1;
|
||||||
temp->vol1 = (long double *)malloc(500 * sizeof(long double));
|
temp->vol1 = (long double *)malloc(500 * sizeof(long double));
|
||||||
|
@ -283,7 +283,7 @@ void DTWvolDistance(struct data_frame *df)
|
||||||
}
|
}
|
||||||
if (temp == NULL)
|
if (temp == NULL)
|
||||||
{
|
{
|
||||||
DTWvollist *bring = (DTWvollist *)malloc(sizeof(DTWvollist));
|
struct DTWvollist *bring = (struct DTWvollist *)malloc(sizeof(struct DTWvollist));
|
||||||
bring->count_track1 = 0;
|
bring->count_track1 = 0;
|
||||||
bring->count_track2 = 0;
|
bring->count_track2 = 0;
|
||||||
bring->flag = 0;
|
bring->flag = 0;
|
||||||
|
|
|
@ -44,17 +44,17 @@ gboolean update_images(gpointer* pars){
|
||||||
float lat;
|
float lat;
|
||||||
float lon;
|
float lon;
|
||||||
loops++;
|
loops++;
|
||||||
printf("loops: %d\n", loops);
|
// printf("loops: %d\n", loops);
|
||||||
|
|
||||||
id = to_intconvertor(df->idcode);
|
id = to_intconvertor(df->idcode);
|
||||||
printf("id = %d\n",id);
|
// printf("id = %d\n",id);
|
||||||
pthread_mutex_lock(&mutex_cfg);
|
pthread_mutex_lock(&mutex_cfg);
|
||||||
temp_cfg = cfgfirst;
|
temp_cfg = cfgfirst;
|
||||||
// Check for the IDCODE in Configuration Frame
|
// Check for the IDCODE in Configuration Frame
|
||||||
while(temp_cfg != NULL){
|
while(temp_cfg != NULL){
|
||||||
if(id == to_intconvertor(temp_cfg->idcode)){
|
if(id == to_intconvertor(temp_cfg->idcode)){
|
||||||
cfg_match = 1;
|
cfg_match = 1;
|
||||||
printf("Matched - id : %d\n",id);
|
// printf("Matched - id : %d\n",id);
|
||||||
freq_fmt = temp_cfg->pmu[0]->fmt->freq;
|
freq_fmt = temp_cfg->pmu[0]->fmt->freq;
|
||||||
anal_fmt = temp_cfg->pmu[0]->fmt->analog;
|
anal_fmt = temp_cfg->pmu[0]->fmt->analog;
|
||||||
phas_fmt = temp_cfg->pmu[0]->fmt->phasor;
|
phas_fmt = temp_cfg->pmu[0]->fmt->phasor;
|
||||||
|
@ -69,7 +69,7 @@ gboolean update_images(gpointer* pars){
|
||||||
// get data from df.
|
// get data from df.
|
||||||
if(freq_fmt == '1'){
|
if(freq_fmt == '1'){
|
||||||
freq = decode_ieee_single(df->dpmu[i]->freq);
|
freq = decode_ieee_single(df->dpmu[i]->freq);
|
||||||
printf("freq = %f\n",freq);
|
// printf("freq = %f\n",freq);
|
||||||
}else{
|
}else{
|
||||||
freq = to_intconvertor(df->dpmu[i]->freq)*1e-6+50;
|
freq = to_intconvertor(df->dpmu[i]->freq)*1e-6+50;
|
||||||
}
|
}
|
||||||
|
@ -80,7 +80,7 @@ gboolean update_images(gpointer* pars){
|
||||||
strncpy(last2bytes, df->dpmu[i]->phasors[0]+2, 2);
|
strncpy(last2bytes, df->dpmu[i]->phasors[0]+2, 2);
|
||||||
vol_magnitude = to_intconvertor(first2bytes);
|
vol_magnitude = to_intconvertor(first2bytes);
|
||||||
float imaginary = to_intconvertor(last2bytes);
|
float imaginary = to_intconvertor(last2bytes);
|
||||||
printf("vol = %f imag = %f\n",vol_magnitude, imaginary);
|
// printf("vol = %f imag = %f\n",vol_magnitude, imaginary);
|
||||||
|
|
||||||
live_chart_serie_add(serie, freq);
|
live_chart_serie_add(serie, freq);
|
||||||
|
|
||||||
|
@ -89,7 +89,7 @@ gboolean update_images(gpointer* pars){
|
||||||
LLptr = LLfirst;
|
LLptr = LLfirst;
|
||||||
match = 0;
|
match = 0;
|
||||||
while(LLptr != NULL){
|
while(LLptr != NULL){
|
||||||
printf("pmuid = %d\n",LLptr->pmuid);
|
// printf("pmuid = %d\n",LLptr->pmuid);
|
||||||
if(LLptr->pmuid == id){
|
if(LLptr->pmuid == id){
|
||||||
match = 1;
|
match = 1;
|
||||||
float lat = LLptr->latitude;
|
float lat = LLptr->latitude;
|
||||||
|
@ -100,17 +100,17 @@ gboolean update_images(gpointer* pars){
|
||||||
}
|
}
|
||||||
pthread_mutex_unlock(&mutex_Lower_Layer_Details);
|
pthread_mutex_unlock(&mutex_Lower_Layer_Details);
|
||||||
|
|
||||||
if(match == 1 && cfg_match == 1){
|
// if(match == 1 && cfg_match == 1){
|
||||||
printf("lat = %f, lon = %f, freq = %f\n",lat,lon,freq);
|
// printf("lat = %f, lon = %f, freq = %f\n",lat,lon,freq);
|
||||||
if(parameters->g_last_image != 0){
|
if(parameters->g_last_image != 0){
|
||||||
osm_gps_map_image_remove(parameters->util_map, parameters->g_last_image);
|
osm_gps_map_image_remove(parameters->util_map, parameters->g_last_image);
|
||||||
}
|
}
|
||||||
if (freq > 50.300){
|
if (DTWvolDistance(df)){
|
||||||
parameters->g_last_image = osm_gps_map_image_add(parameters->util_map,lat, lon, parameters->g_green_image);
|
parameters->g_last_image = osm_gps_map_image_add(parameters->util_map,lat, lon, parameters->g_green_image);
|
||||||
}else{
|
}else{
|
||||||
parameters->g_last_image = osm_gps_map_image_add(parameters->util_map,lat, lon, parameters->g_red_image);
|
parameters->g_last_image = osm_gps_map_image_add(parameters->util_map,lat, lon, parameters->g_red_image);
|
||||||
}
|
}
|
||||||
}
|
// }
|
||||||
df = df->dnext;
|
df = df->dnext;
|
||||||
// i++;
|
// i++;
|
||||||
k++;
|
k++;
|
||||||
|
|
|
@ -156,11 +156,11 @@ void utility_tools(GtkButton *but, gpointer udata)
|
||||||
|
|
||||||
g_signal_connect(utdata->util_window, "destroy", G_CALLBACK(on_window_destroy), GUINT_TO_POINTER(pid));
|
g_signal_connect(utdata->util_window, "destroy", G_CALLBACK(on_window_destroy), GUINT_TO_POINTER(pid));
|
||||||
|
|
||||||
//g_last_image = osm_gps_map_image_add(util_map,15.4589, 75.0078, g_red_image);
|
// //g_last_image = osm_gps_map_image_add(util_map,15.4589, 75.0078, g_red_image);
|
||||||
g_last_image = osm_gps_map_image_add(utdata->util_map,15.518597, 74.925584, g_green_image);
|
// g_last_image = osm_gps_map_image_add(utdata->util_map,15.518597, 74.925584, g_green_image);
|
||||||
myParameters parameters = {utdata->util_map, g_red_image, g_green_image, g_last_image};
|
// myParameters parameters = {utdata->util_map, g_red_image, g_green_image, g_last_image};
|
||||||
gpointer data = (gpointer) ¶meters;
|
// gpointer data = (gpointer) ¶meters;
|
||||||
guint pid = g_timeout_add(20, (GSourceFunc) update_images, data);
|
// guint pid = g_timeout_add(20, (GSourceFunc) update_images, data);
|
||||||
// gtk_widget_set_vexpand(GTK_WIDGET(utdata->util_map), TRUE);
|
// gtk_widget_set_vexpand(GTK_WIDGET(utdata->util_map), TRUE);
|
||||||
// gtk_widget_set_hexpand(GTK_WIDGET(utdata->util_map), TRUE);
|
// gtk_widget_set_hexpand(GTK_WIDGET(utdata->util_map), TRUE);
|
||||||
gtk_widget_show_all(utdata->util_window);
|
gtk_widget_show_all(utdata->util_window);
|
||||||
|
|
Loading…
Reference in New Issue