[Firebug-cvs] fireboard/beta/tools/src/xlisten/boards sirf_id28_1.c,NONE,1.1 sirf_id28_2.c,NONE,1.1
Brought to you by:
doolin
From: David M. D. <do...@us...> - 2005-07-30 02:15:00
|
Update of /cvsroot/firebug/fireboard/beta/tools/src/xlisten/boards In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19975 Added Files: sirf_id28_1.c sirf_id28_2.c sirf_id28_3.c Log Message: sirf message 28 autogenerated and compiles. --- NEW FILE: sirf_id28_3.c --- /** * This class is automatically generated by mig. DO NOT EDIT THIS FILE. * This code implements C interface to the 'SiRF_ID28_3' * message type. */ #include <stdio.h> #include <stdlib.h> #include <memory.h> /** Private header is programmer specified for handling * conversion functions, etc. */ //#include "SiRF_ID28_3_private.h" /** Not the best way to handle xbow dependencies. */ #include "../xdb.h" /** These need to be moved to a header file. */ typedef struct _SiRF_ID28_3 SiRF_ID28_3; typedef struct _XbowSensorboardPacket XbowSensorboardPacket; // This struct is defined to keep gcc happy while the module // is under development. At some point in the near future, a // a convention for passing arguments into the functions will // have to be defined. struct _XbowSensorboardPacket { unsigned char data[29]; }; struct _SiRF_ID28_3 { uint8_t header_seqno; uint8_t header_am_type; uint8_t header_rsrvd1; uint8_t header_rsrvd2; uint8_t sync_flags; uint8_t cno1; uint8_t cno2; uint8_t cno3; uint8_t cno4; uint8_t cno5; uint8_t cno6; uint8_t cno7; uint8_t cno8; uint8_t cno9; uint8_t cno10; uint16_t delta_range_interval; uint16_t mean_delta_range_time; uint16_t extrapolation_time; uint8_t phase_error_count; uint8_t low_power_count; }; void SiRF_ID28_3_set_header_seqno(SiRF_ID28_3 * userdata, uint8_t header_seqno) { userdata->header_seqno = header_seqno; } uint8_t SiRF_ID28_3_get_header_seqno(SiRF_ID28_3 * userdata) { return userdata->header_seqno; } void SiRF_ID28_3_set_header_am_type(SiRF_ID28_3 * userdata, uint8_t header_am_type) { userdata->header_am_type = header_am_type; } uint8_t SiRF_ID28_3_get_header_am_type(SiRF_ID28_3 * userdata) { return userdata->header_am_type; } void SiRF_ID28_3_set_header_rsrvd1(SiRF_ID28_3 * userdata, uint8_t header_rsrvd1) { userdata->header_rsrvd1 = header_rsrvd1; } uint8_t SiRF_ID28_3_get_header_rsrvd1(SiRF_ID28_3 * userdata) { return userdata->header_rsrvd1; } void SiRF_ID28_3_set_header_rsrvd2(SiRF_ID28_3 * userdata, uint8_t header_rsrvd2) { userdata->header_rsrvd2 = header_rsrvd2; } uint8_t SiRF_ID28_3_get_header_rsrvd2(SiRF_ID28_3 * userdata) { return userdata->header_rsrvd2; } void SiRF_ID28_3_set_sync_flags(SiRF_ID28_3 * userdata, uint8_t sync_flags) { userdata->sync_flags = sync_flags; } uint8_t SiRF_ID28_3_get_sync_flags(SiRF_ID28_3 * userdata) { return userdata->sync_flags; } void SiRF_ID28_3_set_cno1(SiRF_ID28_3 * userdata, uint8_t cno1) { userdata->cno1 = cno1; } uint8_t SiRF_ID28_3_get_cno1(SiRF_ID28_3 * userdata) { return userdata->cno1; } void SiRF_ID28_3_set_cno2(SiRF_ID28_3 * userdata, uint8_t cno2) { userdata->cno2 = cno2; } uint8_t SiRF_ID28_3_get_cno2(SiRF_ID28_3 * userdata) { return userdata->cno2; } void SiRF_ID28_3_set_cno3(SiRF_ID28_3 * userdata, uint8_t cno3) { userdata->cno3 = cno3; } uint8_t SiRF_ID28_3_get_cno3(SiRF_ID28_3 * userdata) { return userdata->cno3; } void SiRF_ID28_3_set_cno4(SiRF_ID28_3 * userdata, uint8_t cno4) { userdata->cno4 = cno4; } uint8_t SiRF_ID28_3_get_cno4(SiRF_ID28_3 * userdata) { return userdata->cno4; } void SiRF_ID28_3_set_cno5(SiRF_ID28_3 * userdata, uint8_t cno5) { userdata->cno5 = cno5; } uint8_t SiRF_ID28_3_get_cno5(SiRF_ID28_3 * userdata) { return userdata->cno5; } void SiRF_ID28_3_set_cno6(SiRF_ID28_3 * userdata, uint8_t cno6) { userdata->cno6 = cno6; } uint8_t SiRF_ID28_3_get_cno6(SiRF_ID28_3 * userdata) { return userdata->cno6; } void SiRF_ID28_3_set_cno7(SiRF_ID28_3 * userdata, uint8_t cno7) { userdata->cno7 = cno7; } uint8_t SiRF_ID28_3_get_cno7(SiRF_ID28_3 * userdata) { return userdata->cno7; } void SiRF_ID28_3_set_cno8(SiRF_ID28_3 * userdata, uint8_t cno8) { userdata->cno8 = cno8; } uint8_t SiRF_ID28_3_get_cno8(SiRF_ID28_3 * userdata) { return userdata->cno8; } void SiRF_ID28_3_set_cno9(SiRF_ID28_3 * userdata, uint8_t cno9) { userdata->cno9 = cno9; } uint8_t SiRF_ID28_3_get_cno9(SiRF_ID28_3 * userdata) { return userdata->cno9; } void SiRF_ID28_3_set_cno10(SiRF_ID28_3 * userdata, uint8_t cno10) { userdata->cno10 = cno10; } uint8_t SiRF_ID28_3_get_cno10(SiRF_ID28_3 * userdata) { return userdata->cno10; } void SiRF_ID28_3_set_delta_range_interval(SiRF_ID28_3 * userdata, uint16_t delta_range_interval) { userdata->delta_range_interval = delta_range_interval; } uint16_t SiRF_ID28_3_get_delta_range_interval(SiRF_ID28_3 * userdata) { return userdata->delta_range_interval; } void SiRF_ID28_3_set_mean_delta_range_time(SiRF_ID28_3 * userdata, uint16_t mean_delta_range_time) { userdata->mean_delta_range_time = mean_delta_range_time; } uint16_t SiRF_ID28_3_get_mean_delta_range_time(SiRF_ID28_3 * userdata) { return userdata->mean_delta_range_time; } void SiRF_ID28_3_set_extrapolation_time(SiRF_ID28_3 * userdata, uint16_t extrapolation_time) { userdata->extrapolation_time = extrapolation_time; } uint16_t SiRF_ID28_3_get_extrapolation_time(SiRF_ID28_3 * userdata) { return userdata->extrapolation_time; } void SiRF_ID28_3_set_phase_error_count(SiRF_ID28_3 * userdata, uint8_t phase_error_count) { userdata->phase_error_count = phase_error_count; } uint8_t SiRF_ID28_3_get_phase_error_count(SiRF_ID28_3 * userdata) { return userdata->phase_error_count; } void SiRF_ID28_3_set_low_power_count(SiRF_ID28_3 * userdata, uint8_t low_power_count) { userdata->low_power_count = low_power_count; } uint8_t SiRF_ID28_3_get_low_power_count(SiRF_ID28_3 * userdata) { return userdata->low_power_count; } //Format string generated automatically, //static char formatstring[] = "%i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i"; //static char formatstring[] = "%i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i"; static char insert_stmt[] = "INSERT into SiRF_ID28_3 (" "header_seqno," "header_am_type," "header_rsrvd1," "header_rsrvd2," "sync_flags," "cno1," "cno2," "cno3," "cno4," "cno5," "cno6," "cno7," "cno8," "cno9," "cno10," "delta_range_interval," "mean_delta_range_time," "extrapolation_time," "phase_error_count," "low_power_count) values (%i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i, %i)"; void SiRF_ID28_3_pg_log(XbowSensorboardPacket * userdata) { char pg_command[255]; SiRF_ID28_3 * data = (SiRF_ID28_3*)userdata; sprintf(pg_command,insert_stmt, data->header_seqno, data->header_am_type, data->header_rsrvd1, data->header_rsrvd2, data->sync_flags, data->cno1, data->cno2, data->cno3, data->cno4, data->cno5, data->cno6, data->cno7, data->cno8, data->cno9, data->cno10, data->delta_range_interval, data->mean_delta_range_time, data->extrapolation_time, data->phase_error_count, data->low_power_count); xdb_execute(pg_command); } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_seqno_convert(uint8_t header_seqno) { return header_seqno; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_am_type_convert(uint8_t header_am_type) { return header_am_type; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_rsrvd1_convert(uint8_t header_rsrvd1) { return header_rsrvd1; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_rsrvd2_convert(uint8_t header_rsrvd2) { return header_rsrvd2; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t sync_flags_convert(uint8_t sync_flags) { return sync_flags; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t cno1_convert(uint8_t cno1) { return cno1; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t cno2_convert(uint8_t cno2) { return cno2; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t cno3_convert(uint8_t cno3) { return cno3; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t cno4_convert(uint8_t cno4) { return cno4; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t cno5_convert(uint8_t cno5) { return cno5; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t cno6_convert(uint8_t cno6) { return cno6; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t cno7_convert(uint8_t cno7) { return cno7; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t cno8_convert(uint8_t cno8) { return cno8; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t cno9_convert(uint8_t cno9) { return cno9; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t cno10_convert(uint8_t cno10) { return cno10; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint16_t delta_range_interval_convert(uint16_t delta_range_interval) { return delta_range_interval; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint16_t mean_delta_range_time_convert(uint16_t mean_delta_range_time) { return mean_delta_range_time; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint16_t extrapolation_time_convert(uint16_t extrapolation_time) { return extrapolation_time; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t phase_error_count_convert(uint8_t phase_error_count) { return phase_error_count; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t low_power_count_convert(uint8_t low_power_count) { return low_power_count; } void SiRF_ID28_3_cook_packet(SiRF_ID28_3 * userdata) { userdata->header_seqno = header_seqno_convert(userdata->header_seqno); userdata->header_am_type = header_am_type_convert(userdata->header_am_type); userdata->header_rsrvd1 = header_rsrvd1_convert(userdata->header_rsrvd1); userdata->header_rsrvd2 = header_rsrvd2_convert(userdata->header_rsrvd2); userdata->sync_flags = sync_flags_convert(userdata->sync_flags); userdata->cno1 = cno1_convert(userdata->cno1); userdata->cno2 = cno2_convert(userdata->cno2); userdata->cno3 = cno3_convert(userdata->cno3); userdata->cno4 = cno4_convert(userdata->cno4); userdata->cno5 = cno5_convert(userdata->cno5); userdata->cno6 = cno6_convert(userdata->cno6); userdata->cno7 = cno7_convert(userdata->cno7); userdata->cno8 = cno8_convert(userdata->cno8); userdata->cno9 = cno9_convert(userdata->cno9); userdata->cno10 = cno10_convert(userdata->cno10); userdata->delta_range_interval = delta_range_interval_convert(userdata->delta_range_interval); userdata->mean_delta_range_time = mean_delta_range_time_convert(userdata->mean_delta_range_time); userdata->extrapolation_time = extrapolation_time_convert(userdata->extrapolation_time); userdata->phase_error_count = phase_error_count_convert(userdata->phase_error_count); userdata->low_power_count = low_power_count_convert(userdata->low_power_count); } /** User has to fill in any conversion code * necessary for processing. */ SiRF_ID28_3 * SiRF_ID28_3_convert(char * data) { // Just to keep gcc happy. return (SiRF_ID28_3*)data; } /** Print the bytes of the packet. */ void SiRF_ID28_3_print_raw (XbowSensorboardPacket *packet) { } /** Print cooked output. */ void SiRF_ID28_3_print_cooked (XbowSensorboardPacket * userdata) { SiRF_ID28_3 * data = (SiRF_ID28_3*)userdata; printf("header_seqno: %i,\n",data->header_seqno); printf("header_am_type: %i,\n",data->header_am_type); printf("header_rsrvd1: %i,\n",data->header_rsrvd1); printf("header_rsrvd2: %i,\n",data->header_rsrvd2); printf("sync_flags: %i,\n",data->sync_flags); printf("cno1: %i,\n",data->cno1); printf("cno2: %i,\n",data->cno2); printf("cno3: %i,\n",data->cno3); printf("cno4: %i,\n",data->cno4); printf("cno5: %i,\n",data->cno5); printf("cno6: %i,\n",data->cno6); printf("cno7: %i,\n",data->cno7); printf("cno8: %i,\n",data->cno8); printf("cno9: %i,\n",data->cno9); printf("cno10: %i,\n",data->cno10); printf("delta_range_interval: %i,\n",data->delta_range_interval); printf("mean_delta_range_time: %i,\n",data->mean_delta_range_time); printf("extrapolation_time: %i,\n",data->extrapolation_time); printf("phase_error_count: %i,\n",data->phase_error_count); printf("low_power_count: %i,\n",data->low_power_count); } /** The default size of this message type in bytes. */ //static int DEFAULT_MESSAGE_SIZE = 23; /** The Active Message type associated with this message. */ //static int AM_TYPE = 154; /** If incomplete types are used, we need to provide a way * to manage memory. */ SiRF_ID28_3 * SiRF_ID28_3_new() { SiRF_ID28_3 * userdata = (SiRF_ID28_3*)malloc(sizeof(SiRF_ID28_3)); memset((void*)userdata,0xda,sizeof(SiRF_ID28_3)); return userdata; } void SiRF_ID28_3_delete(SiRF_ID28_3 * userdata) { memset((void*)userdata,0xdd,sizeof(SiRF_ID28_3)); free(userdata); } --- NEW FILE: sirf_id28_1.c --- /** * This class is automatically generated by mig. DO NOT EDIT THIS FILE. * This code implements C interface to the 'SiRF_ID28_1' * message type. */ #include <stdio.h> #include <stdlib.h> #include <memory.h> /** Private header is programmer specified for handling * conversion functions, etc. */ //#include "SiRF_ID28_1_private.h" /** Not the best way to handle xbow dependencies. */ #include "../xdb.h" /** These need to be moved to a header file. */ typedef struct _SiRF_ID28_1 SiRF_ID28_1; typedef struct _XbowSensorboardPacket XbowSensorboardPacket; // This struct is defined to keep gcc happy while the module // is under development. At some point in the near future, a // a convention for passing arguments into the functions will // have to be defined. struct _XbowSensorboardPacket { unsigned char data[29]; }; struct _SiRF_ID28_1 { uint8_t header_seqno; uint8_t header_am_type; uint8_t header_rsrvd1; uint8_t header_rsrvd2; uint8_t channel; uint32_t time_tag; uint8_t sat_id; uint32_t gps_sw_time; }; void SiRF_ID28_1_set_header_seqno(SiRF_ID28_1 * userdata, uint8_t header_seqno) { userdata->header_seqno = header_seqno; } uint8_t SiRF_ID28_1_get_header_seqno(SiRF_ID28_1 * userdata) { return userdata->header_seqno; } void SiRF_ID28_1_set_header_am_type(SiRF_ID28_1 * userdata, uint8_t header_am_type) { userdata->header_am_type = header_am_type; } uint8_t SiRF_ID28_1_get_header_am_type(SiRF_ID28_1 * userdata) { return userdata->header_am_type; } void SiRF_ID28_1_set_header_rsrvd1(SiRF_ID28_1 * userdata, uint8_t header_rsrvd1) { userdata->header_rsrvd1 = header_rsrvd1; } uint8_t SiRF_ID28_1_get_header_rsrvd1(SiRF_ID28_1 * userdata) { return userdata->header_rsrvd1; } void SiRF_ID28_1_set_header_rsrvd2(SiRF_ID28_1 * userdata, uint8_t header_rsrvd2) { userdata->header_rsrvd2 = header_rsrvd2; } uint8_t SiRF_ID28_1_get_header_rsrvd2(SiRF_ID28_1 * userdata) { return userdata->header_rsrvd2; } void SiRF_ID28_1_set_channel(SiRF_ID28_1 * userdata, uint8_t channel) { userdata->channel = channel; } uint8_t SiRF_ID28_1_get_channel(SiRF_ID28_1 * userdata) { return userdata->channel; } void SiRF_ID28_1_set_time_tag(SiRF_ID28_1 * userdata, uint32_t time_tag) { userdata->time_tag = time_tag; } uint32_t SiRF_ID28_1_get_time_tag(SiRF_ID28_1 * userdata) { return userdata->time_tag; } void SiRF_ID28_1_set_sat_id(SiRF_ID28_1 * userdata, uint8_t sat_id) { userdata->sat_id = sat_id; } uint8_t SiRF_ID28_1_get_sat_id(SiRF_ID28_1 * userdata) { return userdata->sat_id; } void SiRF_ID28_1_set_gps_sw_time(SiRF_ID28_1 * userdata, uint32_t gps_sw_time) { userdata->gps_sw_time = gps_sw_time; } uint32_t SiRF_ID28_1_get_gps_sw_time(SiRF_ID28_1 * userdata) { return userdata->gps_sw_time; } //Format string generated automatically, //static char formatstring[] = "%i, %i, %i, %i, %i, %i, %i, %i"; //static char formatstring[] = "%i, %i, %i, %i, %i, %i, %i, %i"; static char insert_stmt[] = "INSERT into SiRF_ID28_1 (" "header_seqno," "header_am_type," "header_rsrvd1," "header_rsrvd2," "channel," "time_tag," "sat_id," "gps_sw_time) values (%i, %i, %i, %i, %i, %i, %i, %i)"; void SiRF_ID28_1_pg_log(XbowSensorboardPacket * userdata) { char pg_command[255]; SiRF_ID28_1 * data = (SiRF_ID28_1*)userdata; sprintf(pg_command,insert_stmt, data->header_seqno, data->header_am_type, data->header_rsrvd1, data->header_rsrvd2, data->channel, data->time_tag, data->sat_id, data->gps_sw_time); xdb_execute(pg_command); } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_seqno_convert(uint8_t header_seqno) { return header_seqno; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_am_type_convert(uint8_t header_am_type) { return header_am_type; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_rsrvd1_convert(uint8_t header_rsrvd1) { return header_rsrvd1; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_rsrvd2_convert(uint8_t header_rsrvd2) { return header_rsrvd2; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t channel_convert(uint8_t channel) { return channel; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint32_t time_tag_convert(uint32_t time_tag) { return time_tag; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t sat_id_convert(uint8_t sat_id) { return sat_id; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint32_t gps_sw_time_convert(uint32_t gps_sw_time) { return gps_sw_time; } void SiRF_ID28_1_cook_packet(SiRF_ID28_1 * userdata) { userdata->header_seqno = header_seqno_convert(userdata->header_seqno); userdata->header_am_type = header_am_type_convert(userdata->header_am_type); userdata->header_rsrvd1 = header_rsrvd1_convert(userdata->header_rsrvd1); userdata->header_rsrvd2 = header_rsrvd2_convert(userdata->header_rsrvd2); userdata->channel = channel_convert(userdata->channel); userdata->time_tag = time_tag_convert(userdata->time_tag); userdata->sat_id = sat_id_convert(userdata->sat_id); userdata->gps_sw_time = gps_sw_time_convert(userdata->gps_sw_time); } /** User has to fill in any conversion code * necessary for processing. */ SiRF_ID28_1 * SiRF_ID28_1_convert(char * data) { // Just to keep gcc happy. return (SiRF_ID28_1*)data; } /** Print the bytes of the packet. */ void SiRF_ID28_1_print_raw (XbowSensorboardPacket *packet) { } /** Print cooked output. */ void SiRF_ID28_1_print_cooked (XbowSensorboardPacket * userdata) { SiRF_ID28_1 * data = (SiRF_ID28_1*)userdata; printf("header_seqno: %i,\n",data->header_seqno); printf("header_am_type: %i,\n",data->header_am_type); printf("header_rsrvd1: %i,\n",data->header_rsrvd1); printf("header_rsrvd2: %i,\n",data->header_rsrvd2); printf("channel: %i,\n",data->channel); printf("time_tag: %i,\n",data->time_tag); printf("sat_id: %i,\n",data->sat_id); printf("gps_sw_time: %i,\n",data->gps_sw_time); } /** The default size of this message type in bytes. */ //static int DEFAULT_MESSAGE_SIZE = 18; /** The Active Message type associated with this message. */ //static int AM_TYPE = 152; /** If incomplete types are used, we need to provide a way * to manage memory. */ SiRF_ID28_1 * SiRF_ID28_1_new() { SiRF_ID28_1 * userdata = (SiRF_ID28_1*)malloc(sizeof(SiRF_ID28_1)); memset((void*)userdata,0xda,sizeof(SiRF_ID28_1)); return userdata; } void SiRF_ID28_1_delete(SiRF_ID28_1 * userdata) { memset((void*)userdata,0xdd,sizeof(SiRF_ID28_1)); free(userdata); } --- NEW FILE: sirf_id28_2.c --- /** * This class is automatically generated by mig. DO NOT EDIT THIS FILE. * This code implements C interface to the 'SiRF_ID28_2' * message type. */ #include <stdio.h> #include <stdlib.h> #include <memory.h> /** Private header is programmer specified for handling * conversion functions, etc. */ //#include "SiRF_ID28_2_private.h" /** Not the best way to handle xbow dependencies. */ #include "../xdb.h" /** These need to be moved to a header file. */ typedef struct _SiRF_ID28_2 SiRF_ID28_2; typedef struct _XbowSensorboardPacket XbowSensorboardPacket; // This struct is defined to keep gcc happy while the module // is under development. At some point in the near future, a // a convention for passing arguments into the functions will // have to be defined. struct _XbowSensorboardPacket { unsigned char data[29]; }; struct _SiRF_ID28_2 { uint8_t header_seqno; uint8_t header_am_type; uint8_t header_rsrvd1; uint8_t header_rsrvd2; uint32_t pseudo_range; uint32_t carrier_freq; uint32_t carrier_phase; uint16_t time_in_track; }; void SiRF_ID28_2_set_header_seqno(SiRF_ID28_2 * userdata, uint8_t header_seqno) { userdata->header_seqno = header_seqno; } uint8_t SiRF_ID28_2_get_header_seqno(SiRF_ID28_2 * userdata) { return userdata->header_seqno; } void SiRF_ID28_2_set_header_am_type(SiRF_ID28_2 * userdata, uint8_t header_am_type) { userdata->header_am_type = header_am_type; } uint8_t SiRF_ID28_2_get_header_am_type(SiRF_ID28_2 * userdata) { return userdata->header_am_type; } void SiRF_ID28_2_set_header_rsrvd1(SiRF_ID28_2 * userdata, uint8_t header_rsrvd1) { userdata->header_rsrvd1 = header_rsrvd1; } uint8_t SiRF_ID28_2_get_header_rsrvd1(SiRF_ID28_2 * userdata) { return userdata->header_rsrvd1; } void SiRF_ID28_2_set_header_rsrvd2(SiRF_ID28_2 * userdata, uint8_t header_rsrvd2) { userdata->header_rsrvd2 = header_rsrvd2; } uint8_t SiRF_ID28_2_get_header_rsrvd2(SiRF_ID28_2 * userdata) { return userdata->header_rsrvd2; } void SiRF_ID28_2_set_pseudo_range(SiRF_ID28_2 * userdata, uint32_t pseudo_range) { userdata->pseudo_range = pseudo_range; } uint32_t SiRF_ID28_2_get_pseudo_range(SiRF_ID28_2 * userdata) { return userdata->pseudo_range; } void SiRF_ID28_2_set_carrier_freq(SiRF_ID28_2 * userdata, uint32_t carrier_freq) { userdata->carrier_freq = carrier_freq; } uint32_t SiRF_ID28_2_get_carrier_freq(SiRF_ID28_2 * userdata) { return userdata->carrier_freq; } void SiRF_ID28_2_set_carrier_phase(SiRF_ID28_2 * userdata, uint32_t carrier_phase) { userdata->carrier_phase = carrier_phase; } uint32_t SiRF_ID28_2_get_carrier_phase(SiRF_ID28_2 * userdata) { return userdata->carrier_phase; } void SiRF_ID28_2_set_time_in_track(SiRF_ID28_2 * userdata, uint16_t time_in_track) { userdata->time_in_track = time_in_track; } uint16_t SiRF_ID28_2_get_time_in_track(SiRF_ID28_2 * userdata) { return userdata->time_in_track; } //Format string generated automatically, //static char formatstring[] = "%i, %i, %i, %i, %i, %i, %i, %i"; //static char formatstring[] = "%i, %i, %i, %i, %i, %i, %i, %i"; static char insert_stmt[] = "INSERT into SiRF_ID28_2 (" "header_seqno," "header_am_type," "header_rsrvd1," "header_rsrvd2," "pseudo_range," "carrier_freq," "carrier_phase," "time_in_track) values (%i, %i, %i, %i, %i, %i, %i, %i)"; void SiRF_ID28_2_pg_log(XbowSensorboardPacket * userdata) { char pg_command[255]; SiRF_ID28_2 * data = (SiRF_ID28_2*)userdata; sprintf(pg_command,insert_stmt, data->header_seqno, data->header_am_type, data->header_rsrvd1, data->header_rsrvd2, data->pseudo_range, data->carrier_freq, data->carrier_phase, data->time_in_track); xdb_execute(pg_command); } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_seqno_convert(uint8_t header_seqno) { return header_seqno; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_am_type_convert(uint8_t header_am_type) { return header_am_type; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_rsrvd1_convert(uint8_t header_rsrvd1) { return header_rsrvd1; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint8_t header_rsrvd2_convert(uint8_t header_rsrvd2) { return header_rsrvd2; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint32_t pseudo_range_convert(uint32_t pseudo_range) { return pseudo_range; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint32_t carrier_freq_convert(uint32_t carrier_freq) { return carrier_freq; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint32_t carrier_phase_convert(uint32_t carrier_phase) { return carrier_phase; } /** @brief Default behavior is to return the input as output. * User is responsible for "cooking" the data. */ static uint16_t time_in_track_convert(uint16_t time_in_track) { return time_in_track; } void SiRF_ID28_2_cook_packet(SiRF_ID28_2 * userdata) { userdata->header_seqno = header_seqno_convert(userdata->header_seqno); userdata->header_am_type = header_am_type_convert(userdata->header_am_type); userdata->header_rsrvd1 = header_rsrvd1_convert(userdata->header_rsrvd1); userdata->header_rsrvd2 = header_rsrvd2_convert(userdata->header_rsrvd2); userdata->pseudo_range = pseudo_range_convert(userdata->pseudo_range); userdata->carrier_freq = carrier_freq_convert(userdata->carrier_freq); userdata->carrier_phase = carrier_phase_convert(userdata->carrier_phase); userdata->time_in_track = time_in_track_convert(userdata->time_in_track); } /** User has to fill in any conversion code * necessary for processing. */ SiRF_ID28_2 * SiRF_ID28_2_convert(char * data) { // Just to keep gcc happy. return (SiRF_ID28_2*)data; } /** Print the bytes of the packet. */ void SiRF_ID28_2_print_raw (XbowSensorboardPacket *packet) { } /** Print cooked output. */ void SiRF_ID28_2_print_cooked (XbowSensorboardPacket * userdata) { SiRF_ID28_2 * data = (SiRF_ID28_2*)userdata; printf("header_seqno: %i,\n",data->header_seqno); printf("header_am_type: %i,\n",data->header_am_type); printf("header_rsrvd1: %i,\n",data->header_rsrvd1); printf("header_rsrvd2: %i,\n",data->header_rsrvd2); printf("pseudo_range: %i,\n",data->pseudo_range); printf("carrier_freq: %i,\n",data->carrier_freq); printf("carrier_phase: %i,\n",data->carrier_phase); printf("time_in_track: %i,\n",data->time_in_track); } /** The default size of this message type in bytes. */ //static int DEFAULT_MESSAGE_SIZE = 26; /** The Active Message type associated with this message. */ //static int AM_TYPE = 153; /** If incomplete types are used, we need to provide a way * to manage memory. */ SiRF_ID28_2 * SiRF_ID28_2_new() { SiRF_ID28_2 * userdata = (SiRF_ID28_2*)malloc(sizeof(SiRF_ID28_2)); memset((void*)userdata,0xda,sizeof(SiRF_ID28_2)); return userdata; } void SiRF_ID28_2_delete(SiRF_ID28_2 * userdata) { memset((void*)userdata,0xdd,sizeof(SiRF_ID28_2)); free(userdata); } |