This modules uses haar features for detecting faces on the images. Them it tracks them using template matching to properly execute foveation control. More...
![]() |
Data Structures | |
struct | pdhffc_information_message |
This is a test message, Here you insert the description of the entity, in this case the struct. More... | |
struct | TypeControlParams |
class | cTrackingControler |
controls pan and tilt More... | |
class | cTemplateTracking |
Files | |
file | pdhffc.cpp |
pdhffc.cpp file for this module. This is where main is defined and etc. | |
file | pdhffc.h |
pdhffc.h file for this module. Includes, global vars, funtion prototypes, etc. | |
file | pdhffc_functions.cpp |
pdhffc_functions.c file for this module. This is where private module functions are defined. | |
file | pdhffc_interface.cpp |
interface.c file for this module. Defines public funtions this module's interface library makes available to other modules. | |
file | pdhffc_interface.h |
interface.h file for this module. Defines public funtions prototypes this module's interface library makes available to other modules. | |
file | pdhffc_messages.h |
messages.h file for this module. Defines messages this module publishes or serves to others. | |
Defines | |
#define | _DO_NOT_USE_OPENCV_ 0 |
#define | _DO_NOT_USE_CARMEN_ 0 |
#define | PDHFFC_RESET_OCCURRED_NAME "pdhffc_reset_occurred" |
Control message to pass to the process control module. Always capitals finishes with _RESET_OCCURRED_NAME and the value is small letters the same without the suffix name. | |
#define | PDHFFC_RESET_COMMAND_NAME "pdhffc_reset_command" |
Control message to pass to the process control module. Always capitals finishes with _RESET_COMMAND_NAME and the value is small letters the same without the suffix name. | |
#define | PDHFFC_INFORMATION_MESSAGE_NAME "pdhffc_information" |
Name of the message passed to IPC. Always capitals finishes with _MESSAGE_NAME and the value is small letters the same without the suffix. | |
#define | PDHFFC_INFORMATION_MESSAGE_FMT "{int,double,int,<char:3>,double,string}" |
Format of the message passed to IPC. Always capitals finishes with _MESSAGE_FMT and the value is given similar to the one bellow. For more information view the IPC manual. | |
#define | ERRORHISTORYSIZE 5 |
#define | MAXLEFTPAN -200 |
#define | MAXRIGHTPAN 200 |
#define | MAXUPTILT 150 |
#define | MAXDOWNTILT -140 |
#define | TRACKINGCONTROLLER_DEBUG TRUE |
#define | MAXHISTORYSIZE 10 |
#define | DEFAULTHISTORYSIZE 1 |
#define | DEFAULTTEMPLATEWIDTH 20 |
#define | DEFAULTTEMPLATEHEIGHT 40 |
#define | DEFAULTTEMPLATENCHANNELS 1 |
#define | DEFAULTSIGMA 30.0 |
#define | TEMPLATETRACKING_DETECTION_DEBUG 0 |
Typedefs | |
typedef carmen_default_message | pdhffc_reset_occurred_message |
typedef carmen_default_message | pdhffc_reset_command_message |
Enumerations | |
enum | { TRACKING_POS_pbb_SPEED_none_ACCEL_none = 99, TRACKING_POS_pbb_SPEED_p_ACCEL_none, TRACKING_POS_pbb_SPEED_pi_ACCEL_none, TRACKING_POS_pbb_SPEED_pid_ACCEL_none, TRACKING_POS_pbb_SPEED_pid_ACCEL_none_v1 } |
enum | { LASTTEMPLATE = 44, HISTORYAVERAGE } |
Functions | |
void | detect_and_draw (IplImage *image) |
void | detect_and_draw_foveated (IplImage *img) |
void | heartbeat_handler_n0 (carmen_heartbeat_message *heartbeat_msg) |
int | main (int argc, char **argv) |
void | shutdown_module (int x) |
makes a clean shutdown of the program | |
void | draw_cross (IplImage *dst, int x, int y, int r, int g, int b) |
void | draw_double_arrow (int x0, int y0, int x1, int y1, IplImage *dst, CvScalar color, int thickness, int line_type, int shift) |
void | draw_blind_zone (IplImage *dst, int target_x, int target_y, int bz_x, int bz_y, int r, int g, int b) |
cTemplateTracking::~cTemplateTracking () | |
int | cTemplateTracking::SetHistorySize (unsigned char s=MAXHISTORYSIZE) |
int | cTemplateTracking::UpdateTemplateHistory (IplImage *lasttemplate, int x, int y, int w, int h) |
int | cTemplateTracking::UpdateTemplateHistory (IplImage *lasttemplate) |
int | cTemplateTracking::MatchImage2OverallTemplate (IplImage *img) |
IplImage * | cTemplateTracking::GetOverallTemplate (void) |
IplImage * | cTemplateTracking::GetResults (void) |
void | cTemplateTracking::DoLoop (void) |
int | cTemplateTracking::SetTemplateProperties (int width, int height, int nChannels) |
int | cTemplateTracking::ReallocateTemplates (void) |
cTrackingControler::cTrackingControler () | |
Class constructor Inits LastDir and history structs. | |
cTrackingControler::~cTrackingControler () | |
Class destructor Inits LastDir and history structs. | |
int | cTrackingControler::SetControlerDescription (unsigned int cd) |
Sets controler type. | |
int | cTrackingControler::DoLoop (int *PanPos, int *TiltPos, double *PanS, double *TiltS, int *PanHalt, int *TiltHalt) |
cTemplateTracking::cTemplateTracking (IplImage *src) | |
Variables | |
static CvMemStorage * | storage = 0 |
static CvHaarClassifierCascade * | cascade = 0 |
CvPoint | p1 |
CvPoint | p2 |
int | numfaces = 0 |
IplImage * | flea2_n0_image |
IplImage * | flea2_n1_image |
char | flea2_n0_image_message_heartbeat = 0 |
char | flea2_n1_image_message_heartbeat = 0 |
double | ts |
int | msecstowait = 60 |
char * | cascade_name |
TYPE_executionflags | flags |
Include the interface. | |
pdhffc_information_message | msg |
carmen_ptucontrol_command_message | ptucommand |
cTemplateTracking * | TT |
camera_params_t | cam0_params |
camera_params_t | cam1_params |
int cTemplateTracking::TemplateWidth | |
int cTemplateTracking::TemplateHeight | |
int cTemplateTracking::TemplateNchannels | |
int cTemplateTracking::TemplateX | |
int cTemplateTracking::TemplateY | |
int cTemplateTracking::ImageWidth | |
int cTemplateTracking::ImageHeight | |
int cTemplateTracking::ImageNchannels | |
int cTemplateTracking::numofusedTemplates | |
struct { | |
unsigned char HistorySize | |
unsigned char PreviousHistorySize | |
int cTemplateTracking::TemplateWidth | |
int cTemplateTracking::TemplateHeight | |
int cTemplateTracking::TemplateNchannels | |
int cTemplateTracking::TemplateX | |
int cTemplateTracking::TemplateY | |
int cTemplateTracking::ImageWidth | |
int cTemplateTracking::ImageHeight | |
int cTemplateTracking::ImageNchannels | |
int cTemplateTracking::numofusedTemplates | |
} | cTemplateTracking::params |
int | cTemplateTracking::count |
int cTemplateTracking::w | |
int cTemplateTracking::h | |
struct { | |
CvPoint cTemplateTracking::pt1 | |
CvPoint cTemplateTracking::pt2 | |
int cTemplateTracking::w | |
int cTemplateTracking::h | |
} | cTemplateTracking::HaarObjs [10] |
int cTemplateTracking::y | |
CvPoint cTemplateTracking::pt1 | |
CvPoint cTemplateTracking::pt2 | |
struct { | |
int x | |
int cTemplateTracking::y | |
CvPoint cTemplateTracking::pt1 | |
CvPoint cTemplateTracking::pt2 | |
} cTemplateTracking::Track | |
struct { | |
double sigma | |
struct { | |
int x | |
int cTemplateTracking::y | |
CvPoint cTemplateTracking::pt1 | |
CvPoint cTemplateTracking::pt2 | |
} cTemplateTracking::Track | |
} | cTemplateTracking::local_vars |
IplImage * | cTemplateTracking::Results |
IplImage * | cTemplateTracking::Gray |
IplImage * | cTemplateTracking::OverallTemplate |
IplImage * | cTemplateTracking::Resultswithgaussian |
IplImage * | cTemplateTracking::DistProbabilityMap |
IplImage * | cTemplateTracking::Harris |
IplImage * | cTemplateTracking::image |
double | cTemplateTracking::min_val |
double | cTemplateTracking::max_val |
CvPoint | cTemplateTracking::min_loc |
CvPoint | cTemplateTracking::max_loc |
This modules uses haar features for detecting faces on the images. Them it tracks them using template matching to properly execute foveation control.
#define _DO_NOT_USE_CARMEN_ 0 |
#define _DO_NOT_USE_OPENCV_ 0 |
#define DEFAULTHISTORYSIZE 1 |
Referenced by cTemplateTracking::cTemplateTracking().
#define DEFAULTSIGMA 30.0 |
Referenced by cTemplateTracking::cTemplateTracking().
#define DEFAULTTEMPLATEHEIGHT 40 |
#define DEFAULTTEMPLATENCHANNELS 1 |
Referenced by cTemplateTracking::cTemplateTracking().
#define DEFAULTTEMPLATEWIDTH 20 |
#define ERRORHISTORYSIZE 5 |
Referenced by cTrackingControler::cTrackingControler(), and cTrackingControler::DoLoop().
#define MAXDOWNTILT -140 |
Referenced by cTrackingControler::DoLoop().
#define MAXHISTORYSIZE 10 |
Referenced by cTemplateTracking::SetHistorySize().
#define MAXLEFTPAN -200 |
Referenced by cTrackingControler::DoLoop().
#define MAXRIGHTPAN 200 |
Referenced by cTrackingControler::DoLoop().
#define MAXUPTILT 150 |
Referenced by cTrackingControler::DoLoop().
#define PDHFFC_INFORMATION_MESSAGE_FMT "{int,double,int,<char:3>,double,string}" |
Format of the message passed to IPC. Always capitals finishes with _MESSAGE_FMT and the value is given similar to the one bellow. For more information view the IPC manual.
#define PDHFFC_INFORMATION_MESSAGE_NAME "pdhffc_information" |
Name of the message passed to IPC. Always capitals finishes with _MESSAGE_NAME and the value is small letters the same without the suffix.
#define PDHFFC_RESET_COMMAND_NAME "pdhffc_reset_command" |
Control message to pass to the process control module. Always capitals finishes with _RESET_COMMAND_NAME and the value is small letters the same without the suffix name.
#define PDHFFC_RESET_OCCURRED_NAME "pdhffc_reset_occurred" |
Control message to pass to the process control module. Always capitals finishes with _RESET_OCCURRED_NAME and the value is small letters the same without the suffix name.
#define TEMPLATETRACKING_DETECTION_DEBUG 0 |
#define TRACKINGCONTROLLER_DEBUG TRUE |
typedef carmen_default_message pdhffc_reset_command_message |
typedef carmen_default_message pdhffc_reset_occurred_message |
anonymous enum |
cTemplateTracking::cTemplateTracking | ( | IplImage * | src | ) | [inherited] |
References abs(), DEFAULTHISTORYSIZE, DEFAULTSIGMA, DEFAULTTEMPLATENCHANNELS, cTemplateTracking::DistProbabilityMap, cTemplateTracking::Gray, cTemplateTracking::Harris, cTemplateTracking::image, cTemplateTracking::local_vars, cTemplateTracking::OverallTemplate, cTemplateTracking::params, cTemplateTracking::ReallocateTemplates(), cTemplateTracking::Results, cTemplateTracking::Resultswithgaussian, cTemplateTracking::x, and cTemplateTracking::y.
cTrackingControler::cTrackingControler | ( | ) | [inherited] |
Class constructor Inits LastDir and history structs.
References ERRORHISTORYSIZE, i, cTrackingControler::P, cTrackingControler::ResetPanKiSum(), and cTrackingControler::ResetTiltKiSum().
void detect_and_draw | ( | IplImage * | image | ) |
References cascade, gray, cTemplateTracking::h, cTemplateTracking::HaarObjs, i, numfaces, p1, p2, cTemplateTracking::pt1, cTemplateTracking::pt2, r, storage, t, TT, and cTemplateTracking::w.
void detect_and_draw_foveated | ( | IplImage * | img | ) |
int cTrackingControler::DoLoop | ( | int * | PanPos, | |
int * | TiltPos, | |||
double * | PanS, | |||
double * | TiltS, | |||
int * | PanHalt, | |||
int * | TiltHalt | |||
) | [inherited] |
References cTrackingControler::ControlerDescription, ERRORHISTORYSIZE, i, MAXDOWNTILT, MAXLEFTPAN, MAXRIGHTPAN, MAXUPTILT, cTrackingControler::P, cTrackingControler::ResetPanKiSum(), cTrackingControler::ResetTiltKiSum(), and TRACKING_POS_pbb_SPEED_pid_ACCEL_none_v1.
void cTemplateTracking::DoLoop | ( | void | ) | [inherited] |
References cTemplateTracking::count, cTemplateTracking::Gray, cTemplateTracking::HaarObjs, cTemplateTracking::Harris, cTemplateTracking::image, cTemplateTracking::local_vars, cTemplateTracking::MatchImage2OverallTemplate(), cTemplateTracking::max_loc, cTemplateTracking::OverallTemplate, cTemplateTracking::params, cTemplateTracking::pt1, and cTemplateTracking::UpdateTemplateHistory().
void draw_blind_zone | ( | IplImage * | dst, | |
int | target_x, | |||
int | target_y, | |||
int | bz_x, | |||
int | bz_y, | |||
int | r, | |||
int | g, | |||
int | b | |||
) |
void draw_cross | ( | IplImage * | dst, | |
int | x, | |||
int | y, | |||
int | r, | |||
int | g, | |||
int | b | |||
) |
Referenced by detect_haar_signal(), and draw_gui_sign_data().
void draw_double_arrow | ( | int | x0, | |
int | y0, | |||
int | x1, | |||
int | y1, | |||
IplImage * | dst, | |||
CvScalar | color, | |||
int | thickness, | |||
int | line_type, | |||
int | shift | |||
) |
IplImage* cTemplateTracking::GetOverallTemplate | ( | void | ) | [inline, inherited] |
References cTemplateTracking::OverallTemplate.
IplImage* cTemplateTracking::GetResults | ( | void | ) | [inline, inherited] |
References cTemplateTracking::Results.
void heartbeat_handler_n0 | ( | carmen_heartbeat_message * | heartbeat_msg | ) |
References TYPE_executionflags::debug, flags, and flea2_n0_image_message_heartbeat.
int main | ( | int | argc, | |
char ** | argv | |||
) |
Wait for first message
Start of main cycle
int cTemplateTracking::MatchImage2OverallTemplate | ( | IplImage * | img | ) | [inherited] |
References cTemplateTracking::DistProbabilityMap, cTemplateTracking::Gray, cTemplateTracking::max_loc, cTemplateTracking::max_val, cTemplateTracking::min_loc, cTemplateTracking::min_val, cTemplateTracking::OverallTemplate, cTemplateTracking::params, cTemplateTracking::Results, and cTemplateTracking::Resultswithgaussian.
Referenced by cTemplateTracking::DoLoop().
int cTemplateTracking::ReallocateTemplates | ( | void | ) | [private, inherited] |
References cTemplateTracking::OverallTemplate, cTemplateTracking::params, cTemplateTracking::Results, and cTemplateTracking::Resultswithgaussian.
Referenced by cTemplateTracking::cTemplateTracking(), cTemplateTracking::SetHistorySize(), and cTemplateTracking::SetTemplateProperties().
int cTrackingControler::SetControlerDescription | ( | unsigned int | cd | ) | [inherited] |
Sets controler type.
There are several types of controler available
The logic is the following POS_aaa_SPEED_bbb_ACCEL_ccc, where aaa, bbb and ccc are the types of controlers for each output. The p stands for proportional (pbb means proportional bang bang) i for integrative and d for derivative
cd |
References cTrackingControler::ControlerDescription, TRACKING_POS_pbb_SPEED_none_ACCEL_none, TRACKING_POS_pbb_SPEED_p_ACCEL_none, TRACKING_POS_pbb_SPEED_pi_ACCEL_none, TRACKING_POS_pbb_SPEED_pid_ACCEL_none, and TRACKING_POS_pbb_SPEED_pid_ACCEL_none_v1.
int cTemplateTracking::SetHistorySize | ( | unsigned char | s = MAXHISTORYSIZE |
) | [inherited] |
References MAXHISTORYSIZE, cTemplateTracking::params, and cTemplateTracking::ReallocateTemplates().
int cTemplateTracking::SetTemplateProperties | ( | int | width, | |
int | height, | |||
int | nChannels | |||
) | [private, inherited] |
References cTemplateTracking::params, and cTemplateTracking::ReallocateTemplates().
Referenced by cTemplateTracking::UpdateTemplateHistory().
void shutdown_module | ( | int | sig | ) |
makes a clean shutdown of the program
makes a clean shutdown of the program.
Module shutdown function.
The main header file for egointerface module.
Safe shutdown.
Does a safe shutdown. Disconnects from IPC. Preform log closing operations and update log statistics.
Safe shutdown of module.
Make a clean exit.
Shuts down cm module with a clean exit.
Does a safe shutdown. Disconnects from IPC.
To do a safe ctrl +c exit.
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
The main header file for this module.
#ifndef _DES70_10_H_ #define _DES70_10_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> //#include <lar/readcommandlineparameters.h> //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### typedef struct{ int baudrate; int sys_config; int cur_reg_gain_p; int cur_reg_gain_i; int max_cur_output; int speed_reg_gain_p; int speed_reg_gain_i; int internal_param1; int internal_param2; int internal_param3; int max_speed_error; int setting_unit_gain; int setting_unit_offset; int setting_unit_delay; int peak_current; int max_cont_current; int therm_const; int max_speed; int acceleration; int speed_constant; int enc_resolution; int pole_pair_number; int internal_param4; int rpm2qc_factor; int index_offset; int pwm_period; int max_duty_cycle; int cur_det_ph_u_offset; int cur_det_ph_v_offset; int ad_conv_offset; int can_module_id; int can_service_id; int can_rx_pdo_id; int can_tx_pdo_id; int can_bcr1; int can_bcr2; int can_op_mode; int can_rx_sdo_id; int can_tx_sdo_id; int can_rtr0_id; int can_rtr1_id; int can_config; int internal_param5; int error_proc; int max_speed_curr; int hall_angle_offs; }TYPE_des_sysparam; enum ENUM_DES_SYS_PARAMS { BAUDRATE = 0, SYS_CONFIG = 1, CUR_REG_GAIN_P = 2, CUR_REG_GAIN_I = 3, MAX_CUR_OUTPUT = 4, SPEED_REG_GAIN_P = 5, SPEED_REG_GAIN_I = 6, INTERNAL_PARAM1 = 7, INTERNAL_PARAM2 = 8, INTERNAL_PARAM3 = 9, MAX_SPEED_ERROR = 10, SETTING_UNIT_GAIN = 11, SETTING_UNIT_OFFSET = 12, SETTING_UNIT_DELAY = 13, PEAK_CURRENT = 14, MAX_CONT_CURRENT = 15, THERM_CONST = 16, MAX_SPEED = 17, ACCELERATION = 18, SPEED_CONSTANT = 19, ENC_RESOLUTION = 20, POLE_PAIR_NUMBER = 21, INTERNAL_PARAM4 = 22, RPM_2QC_FACTOR = 23, INDEX_OFFSET = 24, PWM_PERIOD = 25, MAX_DUTY_CYCLE = 26, CUR_DET_PH_U_OFFSET = 27, CUR_DET_PH_V_OFFSET = 28, AD_CONV_OFFSET = 29, CAN_MODULE_ID = 30, CAN_SERVICE_ID = 31, CAN_RX_PDO_ID = 32, CAN_TX_PDO_ID = 33, CAN_BCR1 = 34, CAN_BCR2 = 35, CAN_OP_MODE = 36, CAN_RX_SDO_ID = 37, CAN_TX_SDO_ID = 38, CAN_RTR0_ID = 39, CAN_RTR1_ID = 40, CAN_CONFIG = 41, INTERNAL_PARAM5 = 42, ERROR_PROC = 43, MAX_SPEED_CURR = 44, HALL_ANGLE_OFFS = 45 }; typedef struct{ int sys_op_status; int actual_mean_cur_d; int actual_mean_cur_q; int cur_setting_val; int rel_rot_pos_rev; int speed_setting_val; int actual_mean_speed_val; int abs_rotor_pos; int standard_error; int can_error; int actual_cur_q; int actual_speed_val; int error_hist1; int error_hist2; int enc_counter; int enc_counter_last_ind; int hall_sens_pat; }TYPE_DES_status_var; enum ENUM_DES_STATUS_VAR { SYS_OP_STATUS = 128, ACTUAL_MEAN_CUR_D = 129, ACTUAL_MEAN_CUR_Q = 130, CUR_SETTING_VAL = 131, REL_ROT_POS_REV = 132, SPEED_SETTING_VAL = 133, ACTUAL_MEAN_SPEED_VAL = 134, ABS_ROTOR_POS = 135, STANDARD_ERROR = 136, CAN_ERROR = 137, ACTUAL_CUR_Q = 138, ACTUAL_SPEED_VAL = 139, ERROR_HIST1 = 140, ERROR_HIST2 = 141, ENC_COUNTER = 142, ENC_COUNTER_LAST_IND = 143, HALL_SENS_PAT = 144, }; typedef struct{ unsigned char OpCode; unsigned char data[520]; int size; int crc; }TYPE_msg_frame; //#################################################################### // Prototypes: for private functions can be declared ################# // in des70_10.c or preferably in des70_10_functions.c ## //#################################################################### //------- des70_10_init.cpp ------- int InitDES_communication(char* com_device, int* port, int baud, TYPE_executionflags* flg); //------- des70_10_functions.cpp ------- int calc_crc_16(TYPE_msg_frame* msg); int write_msg_inbuf(const int port, unsigned char* data, int size); int check_msg_aceptance(const int port, float wait_time, unsigned char* msg); int send_OpCode(const int port, unsigned char tries, unsigned char OpCode, char flg); int send_data(const int port, TYPE_msg_frame* msg, char flg); int read_buffer(const int port, TYPE_msg_frame* msg, char flg); int send_msg_frame(const int port, TYPE_msg_frame* msg, char flg); int DES_ST_read_sys_status(const int port, int* sys_status, char flg); int DES_ST_read_error(const int port, int* errors, char flg); int DES_ST_clear_errors(const int port, char flg); int DES_ST_reset(const int port, char flg); int DES_ST_enable(const int port, int* newState, char flg); int DES_SPF_read_temp_param(const int port, int paramNb, int dataFormat, int* response, char flg); int DES_SPF_set_temp_param(const int port, int paramNb, int dataFormat, int* newValue, char flg); int DES_SPF_read_all_temp_param(const int port, TYPE_des_sysparam* sysparam, char flg); int DES_SF_set_velocity(const int port, int newVelocity, char flg); int DES_SF_set_current(const int port, int newCurrent, char flg); int DES_SF_stop_motion(const int port, char flg); int DES_MF_read_velocity_is_must(const int port, int vel_type, int* velocity, int* requested_vel, char flg); int InitDES(const int port, TYPE_des_sysparam* newSysParam, char flg); int stopDES(const int port, char flg); int DES_set_new_baud(int* port, int baud, char flg); #ifdef _DES70_10_FUNCTIONS_C_ #else #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc | |
x | the type of signal sent: SIGINT etc |
#ifndef _POWERMANAGER_H_ #define _POWERMANAGER_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/powermanager_interface.h> #define _SERIALPORT_ "/dev/ttyUSB0" //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### //#################################################################### // Prototypes: for private functions can be declared ################# // in powermanager.c or preferably in powermanager_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void handler_command_msg(void); void initialize_communications(void); int send_to_plc(unsigned char byte_value); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _POWERMANAGER_CPP_ /*or _POWERMANAGER_C_, depends on the file type*/ //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### //mike confusion, uses a message structure to install parameters. message and parameters should not be different? TYPE_executionflags flags; //the command line parameters flags //creates a the default structure that will deal retrieve parameters. // explain fields (use a handler whenever a parameter changes) // var1 in this case is actually int PortHandle; powermanager_status_message status_msg; powermanager_command_message command_msg; #else extern TYPE_executionflags flags; extern powermanager_status_message status_msg; extern powermanager_command_message command_msg; extern int PortHandle; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc | |
x | the SIGNAL |
x | the SIGNAL |
x | the SIGNAL |
x | the SIGNAL |
#ifndef _XBEE_H_ #define _XBEE_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/xbee_interface.h> #include <strings.h> //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### //#################################################################### // Prototypes: for private functions can be declared ################# // in xbee.c or preferably in xbee_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void handler_param_daemon(char *a, char *b, char *c); void initialize_xbee(void); void xbee_transmit_data(void); void xbee_receive_data(void); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _XBEE_CPP_ /*or _XBEE_C_, depends on the file type*/ //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### //mike confusion, uses a message structure to install parameters. message and parameters should not be different? char *COM_DEVICE_XBEE; //will receive com device address double read_frequency; //will receive com device access frequency TYPE_executionflags flags; //the command line parameters flags xbee_rx_data_message rx_message; //this is a message structure xbee_tx_data_message tx_message; //this is a message structure TYPE_xbee_public_params params; //this is a parameters structure int device_handler_xbee; char* tx_string; //creates a the default structure that will deal with retrieved parameters. // explain fields (use a handler whenever a parameter changes) // the values in the field xbee_data_param_shared_var, from lar.ini, will be installed in var1 // the var type is an integer: CARMEN_PARAM_INT carmen_param_t xbee_local_parameters[] = { {(char*)"xbee", (char*)"frequency", CARMEN_PARAM_DOUBLE, &read_frequency, 1, NULL}, {(char*)"xbee", (char*)"comport", CARMEN_PARAM_STRING, &COM_DEVICE_XBEE, 0, NULL}}; //prepare param struct #else extern char *COM_DEVICE_XBEE; //will receive com device address extern double read_frequency; //will receive com device access frequency extern TYPE_executionflags flags; extern xbee_rx_data_message rx_message; extern xbee_tx_data_message tx_message; extern TYPE_xbee_public_params params; extern int device_handler_xbee; extern char* tx_string; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc |
Disconnects from ipc and releases video writer
x | Signal value. To shutdown signal must be SIGINT |
#ifndef _OT_H_ #define _OT_H_ #include <lar/lar.h> //#include "/home/atlas/lar/src/perception/planarobstacles/potkf_tese/potkf_interface.h" enum enum_state {SEARCHING,TRACKING,TARGET_LOST,INITIALISE}; typedef struct { enum_state state; unsigned int target_id; double current_angle,current_distance; double velocity_module,velocity_angle; double predicted_angle,predicted_distance; double size; int life_time; int occluded_time; int classification; }t_status; typedef struct { double start_angle; double end_angle; double start_range; double end_range; double min_size; double max_size; int min_life_time; int max_life_time; }t_search_area; int main(int argc, char **argv); void shutdown_module(int x); void handler_param_daemon(char *a, char *b, char *c); void potkf_handler(potkf_reduced_data_message*msg); bool search_for_new_target(potkf_reduced_data_message*potkf_msg,t_status*status,t_search_area*area); void init_search_area(t_search_area*area); bool get_new_target_information(potkf_reduced_data_message*potkf_msg,t_status*status); void foveationcontrol(t_status*status); void print_status(t_status*status); void foveationcontrol_home(void); #ifdef _OT_CPP_ bool potkf_heartbeat; TYPE_executionflags flags; //the command line parameters flags #else extern TYPE_executionflags flags; extern bool potkf_heartbeat; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc |
#ifndef _MODULETEMPLATE_H_ #define _MODULETEMPLATE_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/moduletemplate_interface.h> //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### //#################################################################### // Prototypes: for private functions can be declared ################# // in moduletemplate.c or preferably in moduletemplate_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void handler_param_daemon(void); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _MODULETEMPLATE_CPP_ /*or _MODULETEMPLATE_C_, depends on the file type*/ //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### //mike confusion, uses a message structure to install parameters. message and parameters should not be different? TYPE_executionflags flags; //the command line parameters flags moduletemplate_data_message msg; //this is a structure TYPE_moduletemplate_public_params params; //this is a structure //creates a the default structure that will deal with retrieved parameters. // explain fields (use a handler whenever a parameter changes) // the values in the field moduletemplate_data_param_shared_var, from lar.ini, will be installed in var1 // the var type is an integer: CARMEN_PARAM_INT carmen_param_t moduletemplate_local_parameters[] = { {(char*)"moduletemplate", (char*)"shared_var", CARMEN_PARAM_INT, &msg.var1, 1, _cast_to_carmen_param_change_handler_t_ handler_param_daemon} }; //prepare param struct #else extern TYPE_executionflags flags; extern moduletemplate_data_message msg; extern TYPE_moduletemplate_public_params params; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc | |
x | signal | |
x | the type of signal sent, SIGINT etcr | |
signal | signal recived |
x | the type of signal sent, SIGINT is the only one handled |
#ifndef _AGENTS_H_ #define _AGENTS_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### // #include <lar/agents_interface.h> #include <lar/agents_interface.h> #include <lar/agent_tracker_interface.h> //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### typedef struct{ int xbee_address; double sleeptime; double kp; } TYPE_agents_local_params; //#################################################################### // Prototypes: for private functions can be declared ################# // in agents.c or preferably in agents_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void handler_param_daemon(char *a, char *b, char *c); void handler_distance_data(char *a, char *b, char *c); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _AGENTS_CPP_ /*or _AGENTS_C_, depends on the file type*/ //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### TYPE_executionflags flags; //the command line parameters flags agents_data_message agents_message; //this is a structure xbee_tx_data_message xbee_tx_message; //this is a structure TYPE_agents_local_params local_params; //this is a structure for parameters intallation agent_clearance_distance_data_message distance_data_msg; double linear_speed, reference_distance, error; #else extern TYPE_executionflags flags; extern agents_data_message agents_message; //this is a structure extern xbee_tx_data_message xbee_tx_message; //this is a structure extern TYPE_agents_local_params local_params; extern agent_clearance_distance_data_message distance_data_msg; extern double linear_speed, reference_distance, error; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc |
#ifndef _AGENT_BEHAVIOUR_H_ #define _AGENT_BEHAVIOUR_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/agent_behaviour_interface.h> //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### //#################################################################### // Prototypes: for private functions can be declared ################# // in agent_behaviour.c or preferably in agent_behaviour_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void handler_param_daemon(char *a, char *b, char *c); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _AGENT_BEHAVIOUR_CPP_ /*or _AGENT_BEHAVIOUR_C_, depends on the file type*/ //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### //mike confusion, uses a message structure to install parameters. message and parameters should not be different? TYPE_executionflags flags; //the command line parameters flags agent_behaviour_data_message msg; //this is a message structure agent_behaviour_virtual_sensors_data_message virtual_sensors_data_msg; //this is a message structure TYPE_agent_behaviour_public_params params; //this is a parameters structure agents_data_message agents_message; //creates a the default structure that will deal retrieve parameters. // explain fields (use a handler whenever a parameter changes) // var1 in this case is actually carmen_param_t agent_behaviour_params[] = { {(char*)"agents", (char*)"data_param_shared_var", CARMEN_PARAM_INT, &msg.var1, 1, handler_param_daemon} }; //prepare param struct #else extern TYPE_executionflags flags; extern agent_behaviour_data_message msg; extern agent_behaviour_virtual_sensors_data_message virtual_sensors_data_msg; extern TYPE_agent_behaviour_public_params params; extern agents_data_message agents_message; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc |
#ifndef _AGENT_CLEARANCE_H_ #define _AGENT_CLEARANCE_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/agent_clearance_interface.h> #include "/usr/local/include/cvblobs/BlobResult.h" //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### typedef struct{ double sleeptime; } TYPE_agent_clearance_local_params; //#################################################################### // Prototypes: for private functions can be declared ################# // in agent_clearance.c or preferably in agent_clearance_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void handler_param_daemon(char *a, char *b, char *c); void handler_rx_msg_received(void); void arena_image_handler(camera_image_message *msg_firei); void heartbeat_handler_n0(carmen_heartbeat_message *); void get_image(IplImage *image); void flood_fill_fixed_threshold(void); void init_images(void); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _AGENT_CLEARANCE_CPP_ //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### TYPE_executionflags flags; //the command line parameters flags agent_clearance_distance_data_message distance_message; //this is a message structure TYPE_agent_clearance_local_params local_parameters; //this is a parameters structure xbee_rx_data_message rx_message; camera_image_message image_message; int image_message_alloc; char firei_n0_image_message_heartbeat; int msecstowait; int height, width; double ts; IplImage* img; IplImage* gray; IplImage* adapt_thresholded; IplImage* fill_temp; IplImage* filled; IplImage* filled_final; IplImage* tmp; IplImage* image; IplImage* border; IplImage* lanemarkers; IplImage* tophat_image; IplImage* work_image; IplImage* hsv; IplImage* hue; IplImage* saturation; IplImage* value; IplImage* hf; IplImage* sf; IplImage* vf; //creates a the default structure that will deal retrieved parameters. carmen_param_t agent_clearance_params[] = { {(char*)"agents", (char*)"sleeptime", CARMEN_PARAM_DOUBLE, &local_parameters.sleeptime, 1, NULL}}; //declared the install struct #else extern TYPE_executionflags flags; extern agent_clearance_distance_data_message distance_message; //this is a message structure extern TYPE_agent_clearance_local_params local_parameters; extern xbee_rx_data_message rx_message; extern int height, width; extern char firei_n0_image_message_heartbeat; extern IplImage* img; extern IplImage* gray; extern IplImage* adapt_thresholded; extern IplImage* fill_temp; extern IplImage* filled; extern IplImage* filled_final; extern IplImage* tmp; extern IplImage* image; extern IplImage* border; extern IplImage* lanemarkers; extern IplImage* tophat_image; extern IplImage* work_image; extern IplImage* hsv; extern IplImage* hue; extern IplImage* saturation; extern IplImage* value; extern IplImage* hf; extern IplImage* sf; extern IplImage* vf; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc |
#ifndef _AGENT_TRACKER_H_ #define _AGENT_TRACKER_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/agent_tracker_interface.h> //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### //#################################################################### // Prototypes: for private functions can be declared ################# // in agent_tracker.c or preferably in agent_tracker_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void handler_param_daemon(char *a, char *b, char *c); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _AGENT_TRACKER_CPP_ /*or _AGENT_TRACKER_C_, depends on the file type*/ //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### //mike confusion, uses a message structure to install parameters. message and parameters should not be different? TYPE_executionflags flags; //the command line parameters flags agent_tracker_data_message msg; //this is a message structure agent_tracker_virtual_sensors_data_message virtual_sensors_data_msg; //this is a message structure TYPE_agent_tracker_public_params params; //this is a parameters structure agents_data_message agents_message; //creates a the default structure that will deal retrieve parameters. // explain fields (use a handler whenever a parameter changes) // var1 in this case is actually carmen_param_t agent_tracker_params[] = { {(char*)"agents", (char*)"data_param_shared_var", CARMEN_PARAM_INT, &msg.var1, 1, handler_param_daemon} }; //prepare param struct #else extern TYPE_executionflags flags; extern agent_tracker_data_message msg; extern agent_tracker_virtual_sensors_data_message virtual_sensors_data_msg; extern TYPE_agent_tracker_public_params params; extern agents_data_message agents_message; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc |
#ifndef _PDHFFC_H_ #define _PDHFFC_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/pdhffc_interface.h> #include "pdhffc_pid.h" #include "pdhffc_templatetracking.h" //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### //#################################################################### // Prototypes: for private functions can be declared ################# // in pdhffc.c or preferably in pdhffc_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void draw_cross(IplImage *dst, int x, int y, int r, int g, int b); void draw_double_arrow(int x0, int y0, int x1, int y1, IplImage *dst, CvScalar color, int thickness, int line_type, int shift); void draw_blind_zone(IplImage *dst, int target_x, int target_y, int bz_x, int bz_y, int r, int g, int b); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _PDHFFC_CPP_ /*or _PDHFFC_C_, depends on the file type*/ TYPE_executionflags flags; //the command line parameters flags pdhffc_information_message msg; carmen_ptucontrol_command_message ptucommand; cTemplateTracking *TT; camera_params_t cam0_params; camera_params_t cam1_params; #else extern TYPE_executionflags flags; extern pdhffc_information_message msg; extern carmen_ptucontrol_command_message ptucommand; extern cTemplateTracking *TT; extern camera_params_t cam0_params; extern camera_params_t cam1_params; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent, SIGINT etcr | |
x | signal recieved |
#ifndef _TLHFCS_H_ #define _TLHFCS_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/tlhfcs_interface.h> #include <lar/tlcstm_messages.h> #include <lar/soundplayer_interface.h> #include "tlhfcs_init.h" //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### typedef struct { char *filename; CvHaarClassifierCascade* classifier; }TYPE_ligths_cascade; typedef struct { IplImage* img; char name[2500]; }TYPE_image; typedef struct{ int red[3]; int green[3]; int darkgreen[3]; int blue[3]; int darkblue[3]; int yellow[3]; int darkyellow[3]; int cyan[3]; int darkcyan[3]; int orange[3]; int magenta[3]; int darkmagenta[3]; int black[3]; }TYPE_color; typedef struct { TYPE_image ligths; TYPE_image gui_ligths; TYPE_image gray; TYPE_image s_filter; TYPE_image v_filter; TYPE_image sand_v_filter; TYPE_image red_filter; TYPE_image green_filter; TYPE_image yellow_filter; TYPE_image detected_signs; CvSize img_size; CvSize sign_in_size; }TYPE_ligths_imgs; typedef struct { int maxH; int minH; int maxS; int minS; int maxV; int minV; }TYPE_hsv_limits; typedef struct { double max_color_ratio; double max_black_ratio; int sign_min_size; int sign_max_size; double color_obj; double bavg_obj; double err; double avg_around_color_min; double avg_around_color_max; }TYPE_decision_limits; #define MAX_OBJ 30 typedef struct { TYPE_image srcRGB; TYPE_image gui_debug; TYPE_image possible_sign[MAX_OBJ]; TYPE_image mask_p_sign[MAX_OBJ]; TYPE_image vf[MAX_OBJ]; CvRect roi[MAX_OBJ]; double color_r[MAX_OBJ]; double black_r[MAX_OBJ]; double res[MAX_OBJ]; double cratio_weigth; double bavg_weigth; int num_total; int selected; int previous_tot; TYPE_ligths_cascade cascade; TYPE_decision_limits decision_limits; int threshold_lim; }TYPE_sign_analysis; typedef struct { double cratio_weigth; double bavg_weigth; TYPE_ligths_imgs imgs; TYPE_hsv_limits red_limits, green_limits, yellow_limits; TYPE_sign_analysis rc_analysis, gau_analysis, yal_analysis, yar_analysis, park_analysis; char use_angle; char heigth_updated; }TYPE_ligths_analysis; typedef struct { double cofidence; int x; int y; int width; int height; char name[80]; int sign; int* color_rec; int* color_str; double* color_r; double* black_r; }TYPE_detected_sign; //#################################################################### // Prototypes: for private functions can be declared ################# // in tlhfcs.c or preferably in tlhfcs_functions.c ## //#################################################################### //int main(int argc, char **argv); void shutdown_module(int x); //void handler_param_daemon(char *a, char *b, char *c); void heartbeat_handler_n0(carmen_heartbeat_message *heartbeat_msg); void heartbeat_handler_n1(carmen_heartbeat_message *heartbeat_msg); void heartbeat_handler_n2(carmen_heartbeat_message *heartbeat_msg); void heartbeat_handler_n3(carmen_heartbeat_message *heartbeat_msg); void handler_load_rc_haar_cascade(void); void handler_load_gau_haar_cascade(void); void handler_load_yal_haar_cascade(void); void handler_load_yar_haar_cascade(void); void handler_load_park_haar_cascade(void); void handler_sign_in_height_update(void); void handler_sign_size_update(void); void handler_bavg_weight_update(void); void handler_color_weight_update(void); void detect_and_draw_objects( int, CvScalar); void draw_cross(IplImage *src,int line,int column,int lenght, int *color); void draw_gui_sign_data(TYPE_sign_analysis* SA, IplImage* src, int* lx, int* ly, int img_height, CvFont* tmp_font, int* color_line, int* color_text, char* sign_name, int search); void detect_haar_signal(CvHaarClassifierCascade* classifier, TYPE_image* srcRGB,TYPE_sign_analysis* sign_analysis, TYPE_executionflags* flgs, int* color); void color_segmentation(TYPE_hsv_limits* hsv_limits, const IplImage* srcRGB, IplImage* vf, double* ratio, double* b_avg,char debug, char* name); void refresh_windows(void); void init_color_table(TYPE_color* ); void find_tl_sign(TYPE_sign_analysis* sign_analysis, TYPE_hsv_limits*, int* color, TYPE_executionflags* flgs, char* name); void get_image_from_camera3(void); void init_color_values(void); void get_image_from_camera3(void); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _TLHFCS_CPP_ /*or _TLHFCS_C_, depends on the file type*/ TYPE_detected_sign detected_sign; TYPE_color color_table; TYPE_executionflags flags; //the command line parameters flags tlcstm_data_message tl_msg; //TYPE_tlhfcs_public_params params; TYPE_ligths_analysis LA; camera_image_message c0; int c0_alloc=1; camera_image_message c1; int c1_alloc=1; camera_image_message c2; int c2_alloc=1; camera_image_message c3; int c3_alloc=1; char firei_n0_msg_heart_beat = 0; char firei_n1_msg_heart_beat = 0; char firei_n2_msg_heart_beat = 0; char firei_n3_msg_heart_beat = 0; soundplayer_command_message sound_msg; tlcstm_command_message command; char cascade_filename[1024]; double ts; int cycle_freq; c_videosaving* videosaving; c_timer timer; CvFont Font; CvFont Font1; IplImage* image_cam3 = cvCreateImage(LA.imgs.img_size, IPL_DEPTH_8U , 3); char str0[20]; int centerx,centery; carmen_param_t module_refresh_params[] = { {(char*)"freq", (char*)"tlhfcs", CARMEN_PARAM_INT, &cycle_freq, 1, NULL}, }; carmen_param_t colordetection_params[] = { {(char*)"cd", (char*)"red_H_max", CARMEN_PARAM_INT, &LA.red_limits.maxH, 1, NULL}, {(char*)"cd", (char*)"red_H_min", CARMEN_PARAM_INT, &LA.red_limits.minH, 1, NULL}, {(char*)"cd", (char*)"red_S_max", CARMEN_PARAM_INT, &LA.red_limits.maxS, 1, NULL}, {(char*)"cd", (char*)"red_S_min", CARMEN_PARAM_INT, &LA.red_limits.minS, 1, NULL}, {(char*)"cd", (char*)"red_V_max", CARMEN_PARAM_INT, &LA.red_limits.maxV, 1, NULL}, {(char*)"cd", (char*)"red_V_min", CARMEN_PARAM_INT, &LA.red_limits.minV, 1, NULL}, {(char*)"cd", (char*)"green_H_max", CARMEN_PARAM_INT, &LA.green_limits.maxH, 1, NULL}, {(char*)"cd", (char*)"green_H_min", CARMEN_PARAM_INT, &LA.green_limits.minH, 1, NULL}, {(char*)"cd", (char*)"green_S_max", CARMEN_PARAM_INT, &LA.green_limits.maxS, 1, NULL}, {(char*)"cd", (char*)"green_S_min", CARMEN_PARAM_INT, &LA.green_limits.minS, 1, NULL}, {(char*)"cd", (char*)"green_V_max", CARMEN_PARAM_INT, &LA.green_limits.maxV, 1, NULL}, {(char*)"cd", (char*)"green_V_min", CARMEN_PARAM_INT, &LA.green_limits.minV, 1, NULL}, {(char*)"cd", (char*)"yellow_H_max", CARMEN_PARAM_INT, &LA.yellow_limits.maxH, 1, NULL}, {(char*)"cd", (char*)"yellow_H_min", CARMEN_PARAM_INT, &LA.yellow_limits.minH, 1, NULL}, {(char*)"cd", (char*)"yellow_S_max", CARMEN_PARAM_INT, &LA.yellow_limits.maxS, 1, NULL}, {(char*)"cd", (char*)"yellow_S_min", CARMEN_PARAM_INT, &LA.yellow_limits.minS, 1, NULL}, {(char*)"cd", (char*)"yellow_V_max", CARMEN_PARAM_INT, &LA.yellow_limits.maxV, 1, NULL}, {(char*)"cd", (char*)"yellow_V_min", CARMEN_PARAM_INT, &LA.yellow_limits.minV, 1, NULL}, }; //prepare param struct carmen_param_t tlhfcs_camera_params[] = { {(char*)"camera3", (char*)"imagewidth", CARMEN_PARAM_INT, &LA.imgs.img_size.width, 1, NULL}, {(char*)"camera3", (char*)"imageheight", CARMEN_PARAM_INT, &LA.imgs.img_size.height, 1, NULL}, };//prepare param struct from the image that camera3 will give carmen_param_t tlhfcs_params[] = { {(char*)"tlhfcs", (char*)"sign_in_height", CARMEN_PARAM_INT, &LA.imgs.sign_in_size.height, 1, _cast_to_carmen_param_change_handler_t_ handler_sign_in_height_update}, {(char*)"tlhfcs", (char*)"sign_min_size", CARMEN_PARAM_INT, &LA.rc_analysis.decision_limits.sign_min_size, 1, _cast_to_carmen_param_change_handler_t_ handler_sign_size_update}, {(char*)"tlhfcs", (char*)"sign_max_size", CARMEN_PARAM_INT, &LA.rc_analysis.decision_limits.sign_max_size, 1, _cast_to_carmen_param_change_handler_t_ handler_sign_size_update}, {(char*)"tlhfcs", (char*)"thresh_limit", CARMEN_PARAM_INT, &LA.rc_analysis.threshold_lim, 1, NULL}, {(char*)"tlhfcs", (char*)"cratio_weigth", CARMEN_PARAM_DOUBLE, &LA.cratio_weigth, 1, _cast_to_carmen_param_change_handler_t_ handler_color_weight_update}, {(char*)"tlhfcs", (char*)"bavg_weigth", CARMEN_PARAM_DOUBLE, &LA.bavg_weigth, 1, _cast_to_carmen_param_change_handler_t_ handler_bavg_weight_update}, //----------------------------------- //params for Red Cross //----------------------------------- {(char*)"tlhfcs", (char*)"rc_cascade_path", CARMEN_PARAM_STRING, &LA.rc_analysis.cascade.filename, 1, _cast_to_carmen_param_change_handler_t_ handler_load_rc_haar_cascade}, {(char*)"tlhfcs", (char*)"rc_max_cratio", CARMEN_PARAM_DOUBLE, &LA.rc_analysis.decision_limits.max_color_ratio, 1, NULL}, {(char*)"tlhfcs", (char*)"rc_max_bratio", CARMEN_PARAM_DOUBLE, &LA.rc_analysis.decision_limits.max_black_ratio, 1, NULL}, {(char*)"tlhfcs", (char*)"rc_color_obj", CARMEN_PARAM_DOUBLE, &LA.rc_analysis.decision_limits.color_obj, 1, NULL}, {(char*)"tlhfcs", (char*)"rc_bavg_obj", CARMEN_PARAM_DOUBLE, &LA.rc_analysis.decision_limits.bavg_obj, 1, NULL}, {(char*)"tlhfcs", (char*)"rc_err", CARMEN_PARAM_DOUBLE, &LA.rc_analysis.decision_limits.err, 1, NULL}, //----------------------------------- //params for Green Arrow Up //----------------------------------- {(char*)"tlhfcs", (char*)"gau_cascade_path", CARMEN_PARAM_STRING, &LA.gau_analysis.cascade.filename, 1, _cast_to_carmen_param_change_handler_t_ handler_load_gau_haar_cascade}, {(char*)"tlhfcs", (char*)"gau_max_cratio", CARMEN_PARAM_DOUBLE, &LA.gau_analysis.decision_limits.max_color_ratio, 1, NULL}, {(char*)"tlhfcs", (char*)"gau_max_bratio", CARMEN_PARAM_DOUBLE, &LA.gau_analysis.decision_limits.max_black_ratio, 1, NULL}, {(char*)"tlhfcs", (char*)"gau_color_obj", CARMEN_PARAM_DOUBLE, &LA.gau_analysis.decision_limits.color_obj, 1, NULL}, {(char*)"tlhfcs", (char*)"gau_bavg_obj", CARMEN_PARAM_DOUBLE, &LA.gau_analysis.decision_limits.bavg_obj, 1, NULL}, {(char*)"tlhfcs", (char*)"gau_err", CARMEN_PARAM_DOUBLE, &LA.gau_analysis.decision_limits.err, 1, NULL}, //----------------------------------- //params for Yellow Arrow Left //----------------------------------- {(char*)"tlhfcs", (char*)"yal_cascade_path", CARMEN_PARAM_STRING, &LA.yal_analysis.cascade.filename, 1, _cast_to_carmen_param_change_handler_t_ handler_load_yal_haar_cascade}, {(char*)"tlhfcs", (char*)"yal_max_cratio", CARMEN_PARAM_DOUBLE, &LA.yal_analysis.decision_limits.max_color_ratio, 1, NULL}, {(char*)"tlhfcs", (char*)"yal_max_bratio", CARMEN_PARAM_DOUBLE, &LA.yal_analysis.decision_limits.max_black_ratio, 1, NULL}, {(char*)"tlhfcs", (char*)"yal_color_obj", CARMEN_PARAM_DOUBLE, &LA.yal_analysis.decision_limits.color_obj, 1, NULL}, {(char*)"tlhfcs", (char*)"yal_bavg_obj", CARMEN_PARAM_DOUBLE, &LA.yal_analysis.decision_limits.bavg_obj, 1, NULL}, {(char*)"tlhfcs", (char*)"yal_err", CARMEN_PARAM_DOUBLE, &LA.yal_analysis.decision_limits.err, 1, NULL}, //----------------------------------- //params for Yellow Arrow Right //----------------------------------- {(char*)"tlhfcs", (char*)"yar_cascade_path", CARMEN_PARAM_STRING, &LA.yar_analysis.cascade.filename, 1, _cast_to_carmen_param_change_handler_t_ handler_load_yar_haar_cascade}, {(char*)"tlhfcs", (char*)"yar_max_cratio", CARMEN_PARAM_DOUBLE, &LA.yar_analysis.decision_limits.max_color_ratio, 1, NULL}, {(char*)"tlhfcs", (char*)"yar_max_bratio", CARMEN_PARAM_DOUBLE, &LA.yar_analysis.decision_limits.max_black_ratio, 1, NULL}, {(char*)"tlhfcs", (char*)"yar_color_obj", CARMEN_PARAM_DOUBLE, &LA.yar_analysis.decision_limits.color_obj, 1, NULL}, {(char*)"tlhfcs", (char*)"yar_bavg_obj", CARMEN_PARAM_DOUBLE, &LA.yar_analysis.decision_limits.bavg_obj, 1, NULL}, {(char*)"tlhfcs", (char*)"yar_err", CARMEN_PARAM_DOUBLE, &LA.yar_analysis.decision_limits.err, 1, NULL}, //----------------------------------- //params for Park //----------------------------------- {(char*)"tlhfcs", (char*)"park_cascade_path", CARMEN_PARAM_STRING, &LA.park_analysis.cascade.filename, 1, _cast_to_carmen_param_change_handler_t_ handler_load_park_haar_cascade}, {(char*)"tlhfcs", (char*)"park_max_cratio", CARMEN_PARAM_DOUBLE, &LA.park_analysis.decision_limits.max_color_ratio, 1, NULL}, {(char*)"tlhfcs", (char*)"park_max_bratio", CARMEN_PARAM_DOUBLE, &LA.park_analysis.decision_limits.max_black_ratio, 1, NULL}, {(char*)"tlhfcs", (char*)"park_color_obj", CARMEN_PARAM_DOUBLE, &LA.park_analysis.decision_limits.color_obj, 1, NULL}, {(char*)"tlhfcs", (char*)"park_bavg_obj", CARMEN_PARAM_DOUBLE, &LA.park_analysis.decision_limits.bavg_obj, 1, NULL}, {(char*)"tlhfcs", (char*)"park_err", CARMEN_PARAM_DOUBLE, &LA.park_analysis.decision_limits.err, 1, NULL}, };//prepare param struct for this module #else extern TYPE_executionflags flags; extern tlcstm_data_message tl_msg; extern TYPE_ligths_analysis LA; extern CvFont Font; extern CvFont Font1; extern TYPE_color color_table; extern TYPE_detected_sign detected_sign; extern char cascade_filename[1024]; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent, SIGINT etcr |
#ifndef _VSCSHFBA_H_ #define _VSCSHFBA_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/vscshfba_interface.h> #include <lar/tlcstm_messages.h> #include <lar/soundplayer_interface.h> #include <cvblobs/BlobResult.h> //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### typedef struct { char *filename; CvHaarClassifierCascade* classifier; }TYPE_cascade; typedef struct { IplImage* img; char name[25]; }TYPE_image; typedef struct { IplImage* src; IplImage* gui; IplImage* hsv; IplImage* red_h; IplImage* red_s; IplImage* red_v; IplImage* red_h_bin; IplImage* red_h_bin2; IplImage* red_h_bin3; IplImage* red_s_bin; IplImage* red_v_bin; IplImage* red_mask; IplImage* white_h; IplImage* white_s; IplImage* white_v; IplImage* white_h_bin; IplImage* white_s_bin; IplImage* white_v_bin; IplImage* white_mask; IplImage* black_h; IplImage* black_s; IplImage* black_v; IplImage* black_h_bin; IplImage* black_s_bin; IplImage* black_v_bin; IplImage* black_mask; IplImage* blue_h; IplImage* blue_s; IplImage* blue_v; IplImage* blue_h_bin; IplImage* blue_s_bin; IplImage* blue_v_bin; IplImage* blue_mask; IplImage* tmp_h; IplImage* tmp_s; IplImage* tmp_v; CvSize imgs_size; CvSize look_sign_in_size; CvSize gui_size; int heigth_updated; int use_shm; }TYPE_imgs; typedef struct{ int red[3]; int green[3]; int darkgreen[3]; int blue[3]; int darkblue[3]; int yellow[3]; int darkyellow[3]; int cyan[3]; int darkcyan[3]; int orange[3]; int magenta[3]; int darkmagenta[3]; int black[3]; }TYPE_color; typedef struct { int num_hits; double tic; double main_color_ratio; double num_internal_spots; double confidence; double moments_ratio; int accepted; CvPoint center; CvRect region; IplImage* mask0; IplImage* mask1; IplImage* mask2; IplImage* tmp; }TYPE_sign_data; typedef struct { CvSeq* sign_seq; CvMemStorage* memstorage; CvSize tol_area; TYPE_cascade cascade; TYPE_sign_data selected_sign; int min_sign_size; int max_sign_size; int enclosing_size; int num_consecutive_hits; int aceptance_box; double color_obj; double color_err; double color_max; double moment_obj; double moment_err; double moment_max; double overall_confidence; char str[10][50]; char name[10]; }TYPE_sign_analysis; typedef struct { double num_hits; double color; double moment; }TYPE_weights; //#################################################################### // Prototypes: for private functions can be declared ################# // in vscshfba.c or preferably in vscshfba_functions.c ## //#################################################################### //void handler_load_M1_haar_cascade(void); void handler_load_W_N_cascade(void); void handler_load_W_D_cascade(void); void handler_load_M_B_cascade(void); void handler_load_M_L_cascade(void); void handler_load_I_60_cascade(void); void handler_load_I_H_cascade(void); void handler_sign_size(void); void shutdown_module(int x); void heartbeat_handler_n3(carmen_heartbeat_message *heartbeat_msg); void handler_sign_in_height_update(void); void init_color_table(TYPE_color* p); //file vscshfba_functions.cpp void detect_haar_signal(TYPE_sign_analysis* sign_analysis, IplImage* src, IplImage* dst, TYPE_executionflags* flgs, int* color_cross, int* color_box); void set_imageROIs(TYPE_imgs* imgs, CvRect* roi, char flg_set_roi); void check_mask_size(TYPE_sign_data* sign, CvSize* size); void draw_cross(IplImage *src,int line,int column,int lenght, int *color); void reset_imageROIs(TYPE_imgs* imgs); void check_haar_feature_tic(TYPE_sign_analysis* sign_analysis, double* num_cycles); void draw_gui_sign_data(IplImage* src, int* lx, int* ly, int img_height, CvFont* tmp_font, int* color_line, int* color_text, TYPE_sign_analysis* sign, int x_space); void set_cam_params(int x); void confirm_sign_tipology(TYPE_sign_analysis* sign_analysis, TYPE_imgs* imgs, TYPE_color_lim* color_lim, TYPE_weights* weights, TYPE_executionflags* flgs, int flg_ROIS); void show_masks(TYPE_sign_analysis* sign_analysis, TYPE_executionflags* flgs, int* start_x_pos, int* start_y_pos, int step); //functions prototype implemented in main file vscshfba.cpp int get_image_from_camera3(IplImage* dst, int* update_size, int* heart_beat, CvSize* cap_img_size); void set_cam_params(int x); #define AVG(a, b) (((a)+(b))/2) //#define MAX(a, b) ((a>b)? (a) : (b)) //#define MIN(a, b) ((a>b)? (b) : (a)) #define SET_RED_ROI 0b00000001 #define SET_WHITE_ROI 0b00000010 #define SET_BLACK_ROI 0b00000100 #define SET_BLUE_ROI 0b00001000 #define NUM_OF_CYCLES 10 //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _VSCSHFBA_CPP_ /*or _VSCSHFBA_C_, depends on the file type*/ //TYPE_detected_sign detected_sign; TYPE_cascade cascade; TYPE_color color_table; TYPE_acl_color_limits color_limits; TYPE_sign_analysis W_DA, W_NA; TYPE_sign_analysis I_60A, I_HA; TYPE_sign_analysis M_BA, M_LA; TYPE_sign_data* sign_check; TYPE_sign_data* accepted_sign; char sign_name_detected[50]; char searching[50]; CvMoments cent_moments; CBlobResult *blobs; double res; char cascade_filename[1024]; double cycle_freq; c_timer timer; CvFont Font; CvFont Font1; CvFont Font2; TYPE_imgs imgs; int updated_size; TYPE_weights weight; int firei_n3_msg_heart_beat = 0; double ts; camera_image_message c3; int c3_alloc=1; IplImage* image_cam3 = cvCreateImage(cvSize(320,240), IPL_DEPTH_8U , 3); soundplayer_command_message sound_msg; vscshfba_command_message command; vscshfba_data_message vscshfba_msg; TYPE_executionflags flags; //the command line parameters flags c_videosaving* videosaving; //write int gui image all info required int lx=0; int ly = 0; int step = 0; int wind_pos_x = 0; int wind_pos_y = 0; //char str0[40], str1[40]; IplConvKernel* morph_element; carmen_param_t module_refresh_params[] = { {(char*)"freq", (char*)"vscshfba", CARMEN_PARAM_DOUBLE, &cycle_freq, 1, NULL}, }; carmen_param_t acl_colordetection_params[] = { {(char*)"acl", (char*)"red_H_max", CARMEN_PARAM_DOUBLE, &color_limits.red.maxH, 1, NULL}, {(char*)"acl", (char*)"red_H_min", CARMEN_PARAM_DOUBLE, &color_limits.red.minH, 1, NULL}, {(char*)"acl", (char*)"red_S_max", CARMEN_PARAM_DOUBLE, &color_limits.red.maxS, 1, NULL}, {(char*)"acl", (char*)"red_S_min", CARMEN_PARAM_DOUBLE, &color_limits.red.minS, 1, NULL}, {(char*)"acl", (char*)"red_V_max", CARMEN_PARAM_DOUBLE, &color_limits.red.maxV, 1, NULL}, {(char*)"acl", (char*)"red_V_min", CARMEN_PARAM_DOUBLE, &color_limits.red.minV, 1, NULL}, {(char*)"acl", (char*)"white_H_max", CARMEN_PARAM_DOUBLE, &color_limits.white.maxH, 1, NULL}, {(char*)"acl", (char*)"white_H_min", CARMEN_PARAM_DOUBLE, &color_limits.white.minH, 1, NULL}, {(char*)"acl", (char*)"white_S_max", CARMEN_PARAM_DOUBLE, &color_limits.white.maxS, 1, NULL}, {(char*)"acl", (char*)"white_S_min", CARMEN_PARAM_DOUBLE, &color_limits.white.minS, 1, NULL}, {(char*)"acl", (char*)"white_V_max", CARMEN_PARAM_DOUBLE, &color_limits.white.maxV, 1, NULL}, {(char*)"acl", (char*)"white_V_min", CARMEN_PARAM_DOUBLE, &color_limits.white.minV, 1, NULL}, {(char*)"acl", (char*)"black_H_max", CARMEN_PARAM_DOUBLE, &color_limits.black.maxH, 1, NULL}, {(char*)"acl", (char*)"black_H_min", CARMEN_PARAM_DOUBLE, &color_limits.black.minH, 1, NULL}, {(char*)"acl", (char*)"black_S_max", CARMEN_PARAM_DOUBLE, &color_limits.black.maxS, 1, NULL}, {(char*)"acl", (char*)"black_S_min", CARMEN_PARAM_DOUBLE, &color_limits.black.minS, 1, NULL}, {(char*)"acl", (char*)"black_V_max", CARMEN_PARAM_DOUBLE, &color_limits.black.maxV, 1, NULL}, {(char*)"acl", (char*)"black_V_min", CARMEN_PARAM_DOUBLE, &color_limits.black.minV, 1, NULL}, {(char*)"acl", (char*)"blue_H_max", CARMEN_PARAM_DOUBLE, &color_limits.blue.maxH, 1, NULL}, {(char*)"acl", (char*)"blue_H_min", CARMEN_PARAM_DOUBLE, &color_limits.blue.minH, 1, NULL}, {(char*)"acl", (char*)"blue_S_max", CARMEN_PARAM_DOUBLE, &color_limits.blue.maxS, 1, NULL}, {(char*)"acl", (char*)"blue_S_min", CARMEN_PARAM_DOUBLE, &color_limits.blue.minS, 1, NULL}, {(char*)"acl", (char*)"blue_V_max", CARMEN_PARAM_DOUBLE, &color_limits.blue.maxV, 1, NULL}, {(char*)"acl", (char*)"blue_V_min", CARMEN_PARAM_DOUBLE, &color_limits.blue.minV, 1, NULL}, }; carmen_param_t vscshfba_camera_params[] = { {(char*)"camera1", (char*)"imagewidth", CARMEN_PARAM_INT, &imgs.imgs_size.width, 1, NULL}, {(char*)"camera1", (char*)"imageheight", CARMEN_PARAM_INT, &imgs.imgs_size.height, 1, NULL}, }; carmen_param_t vscshfba_params[] = { {(char*)"vscshfba", (char*)"sign_in_height", CARMEN_PARAM_INT, &updated_size, 1, _cast_to_carmen_param_change_handler_t_ handler_sign_in_height_update}, {(char*)"vscshfba", (char*)"weight_color", CARMEN_PARAM_DOUBLE, &weight.color, 1, NULL}, {(char*)"vscshfba", (char*)"weight_moment", CARMEN_PARAM_DOUBLE, &weight.moment, 1, NULL}, {(char*)"vscshfba", (char*)"weight_num_hits", CARMEN_PARAM_DOUBLE, &weight.num_hits, 1, NULL}, //data for information recommended speed 60 {(char*)"vscshfba", (char*)"info_60_color_obj", CARMEN_PARAM_DOUBLE, &I_60A.color_obj, 1, NULL}, {(char*)"vscshfba", (char*)"info_60_color_max", CARMEN_PARAM_DOUBLE, &I_60A.color_max, 1, NULL}, {(char*)"vscshfba", (char*)"info_60_moment_obj", CARMEN_PARAM_DOUBLE, &I_60A.moment_obj, 1, NULL}, {(char*)"vscshfba", (char*)"info_60_moment_max", CARMEN_PARAM_DOUBLE, &I_60A.moment_max, 1, NULL}, {(char*)"vscshfba", (char*)"info_60_aceptance", CARMEN_PARAM_DOUBLE, &I_60A.overall_confidence, 1, NULL}, {(char*)"vscshfba", (char*)"info_60_cascade", CARMEN_PARAM_STRING, &I_60A.cascade.filename, 1, _cast_to_carmen_param_change_handler_t_ handler_load_I_60_cascade}, //data for information hospital near {(char*)"vscshfba", (char*)"info_H_color_obj", CARMEN_PARAM_DOUBLE, &I_HA.color_obj, 1, NULL}, {(char*)"vscshfba", (char*)"info_H_color_max", CARMEN_PARAM_DOUBLE, &I_HA.color_max, 1, NULL}, {(char*)"vscshfba", (char*)"info_H_moment_obj", CARMEN_PARAM_DOUBLE, &I_HA.moment_obj, 1, NULL}, {(char*)"vscshfba", (char*)"info_H_moment_max", CARMEN_PARAM_DOUBLE, &I_HA.moment_max, 1, NULL}, {(char*)"vscshfba", (char*)"info_H_aceptance", CARMEN_PARAM_DOUBLE, &I_HA.overall_confidence, 1, NULL}, {(char*)"vscshfba", (char*)"info_H_cascade", CARMEN_PARAM_STRING, &I_HA.cascade.filename, 1, _cast_to_carmen_param_change_handler_t_ handler_load_I_H_cascade}, {(char*)"vscshfba", (char*)"mand_bus_color_obj", CARMEN_PARAM_DOUBLE, &M_BA.color_obj, 1, NULL}, {(char*)"vscshfba", (char*)"mand_bus_color_max", CARMEN_PARAM_DOUBLE, &M_BA.color_max, 1, NULL}, {(char*)"vscshfba", (char*)"mand_bus_moment_obj", CARMEN_PARAM_DOUBLE, &M_BA.moment_obj, 1, NULL}, {(char*)"vscshfba", (char*)"mand_bus_moment_max", CARMEN_PARAM_DOUBLE, &M_BA.moment_max, 1, NULL}, {(char*)"vscshfba", (char*)"mand_bus_aceptance", CARMEN_PARAM_DOUBLE, &M_BA.overall_confidence, 1, NULL}, {(char*)"vscshfba", (char*)"mand_bus_cascade", CARMEN_PARAM_STRING, &M_BA.cascade.filename, 1, _cast_to_carmen_param_change_handler_t_ handler_load_M_B_cascade}, {(char*)"vscshfba", (char*)"mand_lights_color_obj", CARMEN_PARAM_DOUBLE, &M_LA.color_obj, 1, NULL}, {(char*)"vscshfba", (char*)"mand_lights_color_max", CARMEN_PARAM_DOUBLE, &M_LA.color_max, 1, NULL}, {(char*)"vscshfba", (char*)"mand_lights_moment_obj", CARMEN_PARAM_DOUBLE, &M_LA.moment_obj, 1, NULL}, {(char*)"vscshfba", (char*)"mand_lights_moment_max", CARMEN_PARAM_DOUBLE, &M_LA.moment_max, 1, NULL}, {(char*)"vscshfba", (char*)"mand_lights_aceptance", CARMEN_PARAM_DOUBLE, &M_LA.overall_confidence, 1, NULL}, {(char*)"vscshfba", (char*)"mand_lights_cascade", CARMEN_PARAM_STRING, &M_LA.cascade.filename, 1, _cast_to_carmen_param_change_handler_t_ handler_load_M_L_cascade}, {(char*)"vscshfba", (char*)"warn_dip_color_obj", CARMEN_PARAM_DOUBLE, &W_DA.color_obj, 1, NULL}, {(char*)"vscshfba", (char*)"warn_dip_color_max", CARMEN_PARAM_DOUBLE, &W_DA.color_max, 1, NULL}, {(char*)"vscshfba", (char*)"warn_dip_moment_obj", CARMEN_PARAM_DOUBLE, &W_DA.moment_obj, 1, NULL}, {(char*)"vscshfba", (char*)"warn_dip_moment_max", CARMEN_PARAM_DOUBLE, &W_DA.moment_max, 1, NULL}, {(char*)"vscshfba", (char*)"warn_dip_aceptance", CARMEN_PARAM_DOUBLE, &W_DA.overall_confidence, 1, NULL}, {(char*)"vscshfba", (char*)"warn_dip_cascade", CARMEN_PARAM_STRING, &W_DA.cascade.filename, 1, _cast_to_carmen_param_change_handler_t_ handler_load_W_D_cascade}, {(char*)"vscshfba", (char*)"warn_narrow_color_obj", CARMEN_PARAM_DOUBLE, &W_NA.color_obj, 1, NULL}, {(char*)"vscshfba", (char*)"warn_narrow_color_max", CARMEN_PARAM_DOUBLE, &W_NA.color_max, 1, NULL}, {(char*)"vscshfba", (char*)"warn_narrow_moment_obj", CARMEN_PARAM_DOUBLE, &W_NA.moment_obj, 1, NULL}, {(char*)"vscshfba", (char*)"warn_narrow_moment_max", CARMEN_PARAM_DOUBLE, &W_NA.moment_max, 1, NULL}, {(char*)"vscshfba", (char*)"warn_narrow_aceptance", CARMEN_PARAM_DOUBLE, &W_NA.overall_confidence, 1, NULL}, {(char*)"vscshfba", (char*)"warn_narrow_cascade", CARMEN_PARAM_STRING, &W_NA.cascade.filename, 1, _cast_to_carmen_param_change_handler_t_ handler_load_W_N_cascade}, {(char*)"vscshfba", (char*)"sign_min_size", CARMEN_PARAM_INT, &W_NA.min_sign_size, 1, _cast_to_carmen_param_change_handler_t_ handler_sign_size}, {(char*)"vscshfba", (char*)"sign_max_size", CARMEN_PARAM_INT, &W_NA.max_sign_size, 1, _cast_to_carmen_param_change_handler_t_ handler_sign_size}, {(char*)"vscshfba", (char*)"enclosing_size", CARMEN_PARAM_INT, &W_NA.enclosing_size, 1, _cast_to_carmen_param_change_handler_t_ handler_sign_size}, {(char*)"vscshfba", (char*)"aceptance_box", CARMEN_PARAM_INT, &W_NA.aceptance_box, 1, _cast_to_carmen_param_change_handler_t_ handler_sign_size}, }; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent, SIGINT etcr | |
x | the SIGNAL |
x | the SIGNAL |
in,: | x the type of intercepted signal, SIGINT |
#ifndef _EGOMOTIONGPSIMU_H_ #define _EGOMOTIONGPSIMU_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/egomotiongpsimu_interface.h> #include<amlpp/amlpp.h> #include <gtk/gtk.h> using namespace amlpp; //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### // Class used to create the nonlinear observer objects class Observer { // the observer gains RealMatrix k11; RealMatrix k12; RealMatrix k21; RealMatrix k22; RealMatrix k31; RealMatrix k32; RealMatrix Gain; RealMatrix GainWGPS; RealMatrix GainWOGPS; // the observer states RealMatrix State; RealMatrix StateDot; RealMatrix Residual; // validity of the GPS measurement bool GPSisValid; //Transformation matrices RealMatrix R33_b2n; RealMatrix R33_n2b; RealMatrix T33_b2n; public: Observer(); ~Observer(){}; RealMatrix NlinObsStateUpdateV1(RealMatrix Measurements, Real Tb, Real deltaT); void NlinObsSetGain(); // set the Observer Gain void NlinObsChooseGainOnGPSValidity(bool GPSisValid); // Choose among applicable gains with and without GPS void NlinObsSetK(const char *ktype, double kval); // Set the individual Gain Matrices. void CalcRotationMatrix(double psi, double theta, double phi); // calculate the rotation matrix based on the Euler angles (Cardan Sequence) void NlinObsSetInitalCondition(RealMatrix Measurements); }; //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _EGOMOTIONGPSIMU_CPP_ //#################################################################### // Prototypes: for private functions can be declared ################# // in egomotiongpsimu.c or preferably in egomotiongpsimu_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void shutdown_module_noIPC(int x); void handler_param_daemon(char *a, char *b, char *c); void drawGPSpoints(IplImage*img, int x, int y); void drawEstimatedpoints(IplImage*img, int x, int y); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### TYPE_executionflags flags; //the command line parameters flags egomotiongpsimu_data_message msg; //this is a structure TYPE_egomotiongpsimu_public_params params; //this is a structure bool gprmc_update = FALSE; bool gpgga_update = FALSE; bool xsense_update = FALSE; bool GPSisValid = FALSE; //creates a the default structure that will deal with retrieved parameters. // explain fields (use a handler whenever a parameter changes) // the values in the field egomotiongpsimu_data_param_shared_var, from lar.ini, will be installed in var1 // the var type is an integer: CARMEN_PARAM_INT // carmen_param_t egomotiongpsimu_local_parameters[] = { // {(char*)"egomotiongpsimu", (char*)"shared_var", CARMEN_PARAM_INT, &msg.var1, 1, handler_param_daemon} // }; //prepare param struct #else extern TYPE_executionflags flags; extern egomotiongpsimu_data_message msg; extern TYPE_egomotiongpsimu_public_params params; extern void shutdown_module(int x); #ifdef _EGOMOTIONGPSIMU_FUNCTIONS_CPP_ Real g_arr[] = {0,0,-9.81}; // acceleration of gravity on a (North West Up) NWU reference frame RealMatrix g(g_arr,3,1); // put the array into a matrix for further calculations // #else // extern components egointerface; // extern void next_handler( GtkWidget *widget, gpointer data ); // extern void previous_handler( GtkWidget *widget,gpointer data ); // extern gboolean delete_event( GtkWidget *widget,GdkEvent *event,gpointer data ); // extern void destroy( GtkWidget *widget,gpointer data ); // extern void createWindow(); // extern void createButtons(); // extern void layoutWidgets(); // extern void show(); // extern void draw_brush (GtkWidget *widget, gdouble x, gdouble y); // extern gboolean expose_event( GtkWidget *widget, GdkEventExpose *event ); // extern gboolean configure_event( GtkWidget *widget, GdkEventConfigure *event ); // extern gboolean button_press_event( GtkWidget *widget, GdkEventButton *event ); // extern gboolean motion_notify_event( GtkWidget *widget, GdkEventMotion *event ); // extern void createDrawingArea(); #endif #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc |
#ifndef _LASERPROJECTIONONIMAGE_H_ #define _LASERPROJECTIONONIMAGE_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/laserprojectiononimage_interface.h> //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### //#################################################################### // Prototypes: for private functions can be declared ################# // in laserprojectiononimage.c or preferably in laserprojectiononimage_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void handler_param_daemon(char *a, char *b, char *c); void project_pointcloud_to_image(xb3_3dpointcloud_message *pointcloud, int cam_number, double pan, double tilt, IplImage *dst, unsigned char r=255, unsigned char g=0,unsigned char b=0); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _LASERPROJECTIONONIMAGE_CPP_ /*or _LASERPROJECTIONONIMAGE_C_, depends on the file type*/ //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### //mike confusion, uses a message structure to install parameters. message and parameters should not be different? TYPE_executionflags flags; //the command line parameters flags camera_image_message msg_flea2; IplImage* image; camera_image_message msg_flea2_c1; IplImage* image_c1; xb3_3dpointcloud_message pointcloud_msg_hokuyo; xb3_3dpointcloud_message pointcloud_msg_3dlaser; carmen_ptucontrol_status_message ptu_status; #else extern TYPE_executionflags flags; extern camera_image_message msg_flea2; extern IplImage* image; extern camera_image_message msg_flea2_c1; extern IplImage* image_c1; extern xb3_3dpointcloud_message pointcloud_msg_hokuyo; extern xb3_3dpointcloud_message pointcloud_msg_3dlaser; extern carmen_ptucontrol_status_message ptu_status; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc |
#ifndef _GPS_H_ #define _GPS_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ############################################## //#################################################################### //from gps-io.c #include <lar/gps_interface.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <signal.h> #include <math.h> #include <unistd.h> #include <termios.h> #include <fcntl.h> #include <sys/signal.h> #include <sys/types.h> #include <sys/time.h> #include <sys/ioctl.h> //from old gps.h #define MAX_NAME_LENGTH 256 #define MAX_COMMAND_LENGTH 256 #define EPSILON 0.0001 #define TIMEOUT -1 #define WRONG 0 #define OK 1 //from old gps-io.c #define DEFAULT_GPS_PORT "/dev/ttyUSB0" #define DEFAULT_GPS_BAUD 4800 #define DEFAULT_GPS_PARITY NO #define DEFAULT_GPS_DATABITS 8 #define DEFAULT_GPS_STOPBITS 1 #define DEFAULT_GPS_HWF 1 #define DEFAULT_GPS_SWF 0 #define BUFFER_LENGTH 512 //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################## //#################################################################### enum PARITY_TYPE { NO, EVEN, ODD }; typedef struct { char ttyport[MAX_NAME_LENGTH]; int baud; enum PARITY_TYPE parity; FILE * fp; int fd; int databits; int stopbits; int hwf; int swf; } SerialDevice; //#################################################################### // Prototypes: for private functions can be declared ################ // in gps.c or preferably in gps_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void handler_param_daemon(char *a, char *b, char *c); int carmen_gps_parse_data( char * line, int num_chars ); void DEVICE_set_params( SerialDevice dev ); void DEVICE_set_baudrate( SerialDevice dev, int brate ); int DEVICE_connect_port( SerialDevice *dev ); int DEVICE_send( SerialDevice dev, unsigned char *cmd, int len ); int DECVICE_recieve( SerialDevice dev, unsigned char *cmd, int *len ); int DEVICE_read_data( SerialDevice dev ); int DEVICE_bytes_waiting( int sd ); void DEVICE_init_params( SerialDevice *p ); #ifdef _GPS_CPP_ /*or _GPS_C_, depends on the file type*/ //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### TYPE_executionflags flags; //the command line parameters flags char* comport; int baudrate; gps_gpgga_data_message gpgga_msg; //this is a structure gps_gprmc_data_message gprmc_msg; //this is a structure gps_gpgga_data_message *gps_extern_gpgga_ptr; //this are pointers to the structure gps_gprmc_data_message *gps_extern_gprmc_ptr; //this are pointers to the structure carmen_param_t gps_params[] = { {(char*)"gps", (char*)"comport", CARMEN_PARAM_STRING, &comport, 0, NULL}, {(char*)"gps", (char*)"baudrate", CARMEN_PARAM_INT, &baudrate, 0, NULL} }; //prepare param struct #else extern TYPE_executionflags flags; extern gps_gpgga_data_message gpgga_msg; //this is a structure extern gps_gprmc_data_message gprmc_msg; //this is a structure extern gps_gpgga_data_message * gps_extern_gpgga_ptr; extern gps_gprmc_data_message * gps_extern_gprmc_ptr; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent: SIGINT etc | |
interrupt | signal |
#ifndef _XSENS_H_ #define _XSENS_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/xsens_interface.h> #include <curses.h> #include "cmtdef.h" #include "xsens_time.h" #include "xsens_list.h" #include "cmtscan.h" #include "cmt3.h" #include "example_linux.h" // this macro tests for an error and exits the program with a message if there was one #define EXIT_ON_ERROR(res,comment) if (res != XRV_OK) { printw("Error %d occurred in " comment ": %s\n",res,xsensResultText(res)); exit(1); } using namespace xsens; //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### //#################################################################### // Prototypes: for private functions can be declared ################# // in xsens.c or preferably in xsens_functions.c ## //#################################################################### int main(int argc, char **argv); void shutdown_module(int x); void handler_param_daemon(char *a, char *b, char *c); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _XSENS_CPP_ /*or _XSENS_C_, depends on the file type*/ TYPE_executionflags flags; //the command line parameters flags xsens_data_message data_msg; // TYPE_xsens_public_params params; char *comport; Packet* packet; xsens::Cmt3 cmt3; //create an xsens structure carmen_param_t xsens_params[] = { {(char*)"xsens", (char*)"comport", CARMEN_PARAM_STRING, &comport, 0, NULL} // {(char*)"xsens", (char*)"comport", CARMEN_PARAM_STRING, &msg.comport, 0, NULL} }; //prepare param struct #else extern TYPE_executionflags flags; extern xsens_data_message msg; // extern TYPE_xsens_public_params params; extern char *comport; extern Packet* packet; extern xsens::Cmt3 cmt3; //create an xsens structure #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent, SIGINT etcr | |
x | the SIGNAL |
x | the SIGNAL |
#ifndef _ACL_H_ #define _ACL_H_ #define _DO_NOT_USE_OPENCV_ 0 #define _DO_NOT_USE_CARMEN_ 0 //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/acl_interface.h> //#################################################################### // Typedefs: required typedefs are declared here. All declared types # // should have TYPE_[the name] ############################### //#################################################################### #define MAX_PTS 4 #define MAX_REGIONS 10 #define NUM_FOR_AVG_CALC 25 typedef struct { double avg; double std; double minVal, maxVal; }TYPE_color_values; typedef struct { CvPoint pts[MAX_PTS]; int num_pts; char name[20]; TYPE_color_values h_values, v_values, s_values; IplImage* mask; IplImage* img_debug; CvMemStorage* mem_storage; CvSeq* hsv_lim_seq; }TYPE_region; typedef struct{ TYPE_region* region[MAX_REGIONS]; int num_regions; CvSize src_img_size; double times_std; double move_avg; IplImage* src; IplImage* gui; IplImage* hsv; IplImage* h; IplImage* s; IplImage* v; }TYPE_pts_mask; typedef struct { double h_min; double h_max; double s_min; double s_max; double v_min; double v_max; }TYPE_hsv_avg_std; //#################################################################### // Prototypes: for private functions can be declared ################# // in acl.c or preferably in acl_functions.c ## //#################################################################### void heartbeat_handler_n3(carmen_heartbeat_message *heartbeat_msg); int main(int argc, char **argv); void shutdown_module(int x); void set_mask(IplImage* src, TYPE_region* region, TYPE_executionflags* flg); void draw_bound(IplImage* src, TYPE_region* region); int load_pts(char *file_name, TYPE_pts_mask* mask); void get_values(char *str, TYPE_region* region, int start); void read_line(FILE* buffer,char *line); //#################################################################### // Global vars: They will be in the scope of modulename.c main's ##### // otherwise are declared extern ##################################### //#################################################################### #ifdef _ACL_CPP_ /*or _ACL_C_, depends on the file type*/ #define saturatemax(val,max) ((val)>(max) ?( max) :( val)) #define saturatemin(val,min) ((val)<(min) ?( min) :( val)) #define AVG(a,b) ((a+b)/2.0) TYPE_pts_mask pts_mask; TYPE_region* actual_region; CvPoint pts[MAX_PTS]; TYPE_acl_color_limits color_limits; TYPE_hsv_avg_std tmp_hsv_avg_std; CvFont Font; int num_pts=-1; char filename[1024]; FILE* file_data; camera_image_message c3; int c3_alloc=1; char firei_n3_msg_heart_beat = 0; c_timer timer; double ts; int cycle_freq; TYPE_executionflags flags; //the command line parameters flags acl_data_message msg; carmen_param_t module_refresh_params[] = { {(char*)"freq", (char*)"acl", CARMEN_PARAM_INT, &cycle_freq, 1, NULL}, }; carmen_param_t acl_camera_params[] = { {(char*)"camera3", (char*)"imagewidth", CARMEN_PARAM_INT, &pts_mask.src_img_size.width, 1, NULL}, {(char*)"camera3", (char*)"imageheight", CARMEN_PARAM_INT, &pts_mask.src_img_size.height, 1, NULL}, };//prepare param struct from the image that camera3 will give carmen_param_t acl_params[] = { {(char*)"acl", (char*)"times_std", CARMEN_PARAM_DOUBLE, &pts_mask.times_std, 1, NULL}, {(char*)"acl", (char*)"move_avg", CARMEN_PARAM_DOUBLE, &pts_mask.move_avg, 1, NULL}, }; //prepare param struct #else extern TYPE_executionflags flags; extern acl_data_message msg; #endif #endif
Does a safe shutdown. Disconnects from IPC. Other modules could deallocate memory, disconnect from hardware etc.
x | the type of signal sent, SIGINT etcr |
makes a clean shutdown of the program
Disconnects from ipc and releases video writer
x | Signal value. To shutdown signal must be SIGINT |
References msg, TYPE_pantil::pan, carmen_ptucontrol_command_message::position, ptucommand, ptucontrol_publish_command_message(), carmen_ptucontrol_command_message::speed, TYPE_pantil::tilt, and carmen_ptucontrol_command_message::usepurevelocity.
int cTemplateTracking::UpdateTemplateHistory | ( | IplImage * | lasttemplate | ) | [inherited] |
int cTemplateTracking::UpdateTemplateHistory | ( | IplImage * | lasttemplate, | |
int | x, | |||
int | y, | |||
int | w, | |||
int | h | |||
) | [inherited] |
References cTemplateTracking::OverallTemplate, cTemplateTracking::params, and cTemplateTracking::SetTemplateProperties().
Referenced by cTemplateTracking::DoLoop().
cTemplateTracking::~cTemplateTracking | ( | ) | [inherited] |
cTrackingControler::~cTrackingControler | ( | ) | [inherited] |
Class destructor Inits LastDir and history structs.
CvHaarClassifierCascade* cascade = 0 [static] |
Referenced by detect_and_draw(), and detect_and_draw_foveated().
char* cascade_name |
int cTemplateTracking::count [inherited] |
Referenced by cTemplateTracking::DoLoop().
IplImage* cTemplateTracking::DistProbabilityMap [inherited] |
Include the interface.
#ifndef _FOVEATIONCONTROL_INTERFACE_H_ #define _FOVEATIONCONTROL_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/foveationcontrol_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef TYPE_xbcameratmatrix_params TYPE_foveationcontrolmatrix_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int foveationcontrol_publish_pointto_xyz(foveationcontrol_pointto_xyz_message *msg); int foveationcontrol_subscribe_pointto_xyz(foveationcontrol_pointto_xyz_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void param_daemon_install_foveationcontrolmatrix_params(TYPE_foveationcontrolmatrix_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _POWERMANAGER_INTERFACE_H_ #define _POWERMANAGER_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/powermanager_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef enum { Y0_LAS0 = 130, Y1_PTU, Y2_R1394_0, Y3_BUMBLEBEE, Y4_NA, Y5_NA, Y6_NA, Y7_NA, Y10_ROUTER, Y11_SWITCH, Y12_GPS, Y13_NA }ENUM_plc_outputs; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int powermanager_publish_status(powermanager_status_message *msg); int powermanager_subscribe_status(powermanager_status_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int powermanager_turn_on(ENUM_plc_outputs output); int powermanager_turn_off(ENUM_plc_outputs output); int powermanager_reset(ENUM_plc_outputs output); int powermanager_subscribe_command(powermanager_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _XBEE_INTERFACE_H_ #define _XBEE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/xbee_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_xbee_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int xbee_publish_rx_data(xbee_rx_data_message *msg); int xbee_subscribe_rx_data(xbee_rx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int xbee_publish_tx_data(xbee_tx_data_message *msg); int xbee_subscribe_tx_data(xbee_tx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void xbee_param_daemon_install_public_parameters(TYPE_xbee_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _FOVEATIONCONTROL_INTERFACE_H_ #define _FOVEATIONCONTROL_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/foveationcontrol_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef TYPE_xbcameratmatrix_params TYPE_foveationcontrolmatrix_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int foveationcontrol_publish_pointto_xyz(foveationcontrol_pointto_xyz_message *msg); int foveationcontrol_subscribe_pointto_xyz(foveationcontrol_pointto_xyz_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void param_daemon_install_foveationcontrolmatrix_params(TYPE_foveationcontrolmatrix_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _POWERMANAGER_INTERFACE_H_ #define _POWERMANAGER_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/powermanager_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef enum { Y0_LAS0 = 130, Y1_PTU, Y2_R1394_0, Y3_BUMBLEBEE, Y4_NA, Y5_NA, Y6_NA, Y7_NA, Y10_ROUTER, Y11_SWITCH, Y12_GPS, Y13_NA }ENUM_plc_outputs; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int powermanager_publish_status(powermanager_status_message *msg); int powermanager_subscribe_status(powermanager_status_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int powermanager_turn_on(ENUM_plc_outputs output); int powermanager_turn_off(ENUM_plc_outputs output); int powermanager_reset(ENUM_plc_outputs output); int powermanager_subscribe_command(powermanager_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _XBEE_INTERFACE_H_ #define _XBEE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/xbee_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_xbee_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int xbee_publish_rx_data(xbee_rx_data_message *msg); int xbee_subscribe_rx_data(xbee_rx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int xbee_publish_tx_data(xbee_tx_data_message *msg); int xbee_subscribe_tx_data(xbee_tx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void xbee_param_daemon_install_public_parameters(TYPE_xbee_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _MODULETEMPLATE_INTERFACE_H_ #define _MODULETEMPLATE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/moduletemplate_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_moduletemplate_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int moduletemplate_publish_data(moduletemplate_data_message *msg); int moduletemplate_subscribe_data(moduletemplate_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void moduletemplate_param_daemon_install_public_parameters(TYPE_moduletemplate_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _FOVEATIONCONTROL_INTERFACE_H_ #define _FOVEATIONCONTROL_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/foveationcontrol_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef TYPE_xbcameratmatrix_params TYPE_foveationcontrolmatrix_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int foveationcontrol_publish_pointto_xyz(foveationcontrol_pointto_xyz_message *msg); int foveationcontrol_subscribe_pointto_xyz(foveationcontrol_pointto_xyz_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void param_daemon_install_foveationcontrolmatrix_params(TYPE_foveationcontrolmatrix_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _POWERMANAGER_INTERFACE_H_ #define _POWERMANAGER_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/powermanager_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef enum { Y0_LAS0 = 130, Y1_PTU, Y2_R1394_0, Y3_BUMBLEBEE, Y4_NA, Y5_NA, Y6_NA, Y7_NA, Y10_ROUTER, Y11_SWITCH, Y12_GPS, Y13_NA }ENUM_plc_outputs; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int powermanager_publish_status(powermanager_status_message *msg); int powermanager_subscribe_status(powermanager_status_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int powermanager_turn_on(ENUM_plc_outputs output); int powermanager_turn_off(ENUM_plc_outputs output); int powermanager_reset(ENUM_plc_outputs output); int powermanager_subscribe_command(powermanager_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _XBEE_INTERFACE_H_ #define _XBEE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/xbee_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_xbee_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int xbee_publish_rx_data(xbee_rx_data_message *msg); int xbee_subscribe_rx_data(xbee_rx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int xbee_publish_tx_data(xbee_tx_data_message *msg); int xbee_subscribe_tx_data(xbee_tx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void xbee_param_daemon_install_public_parameters(TYPE_xbee_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _MODULETEMPLATE_INTERFACE_H_ #define _MODULETEMPLATE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/moduletemplate_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_moduletemplate_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int moduletemplate_publish_data(moduletemplate_data_message *msg); int moduletemplate_subscribe_data(moduletemplate_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void moduletemplate_param_daemon_install_public_parameters(TYPE_moduletemplate_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
Include the interface.
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
#ifndef _AGENT_BEHAVIOUR_INTERFACE_H_ #define _AGENT_BEHAVIOUR_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_behaviour_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_agent_behaviour_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_behaviour_publish_data(agent_behaviour_data_message *msg); int agent_behaviour_subscribe_data(agent_behaviour_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int agent_behaviour_publish_virtual_sensors_data(agent_behaviour_virtual_sensors_data_message *msg); int agent_behaviour_subscribe_virtual_sensors_data(agent_behaviour_virtual_sensors_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void agent_behaviour_param_daemon_install_some_params(TYPE_agent_behaviour_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _AGENT_CLEARANCE_INTERFACE_H_ #define _AGENT_CLEARANCE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_clearance_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### // typedef struct{ // double sleeptime; /**< looptime is the best loop time of the module. It may be a slower time but if its faster it should carmen_ipc_sleep until this time passes.*/ // char otherparam; /**< some other param to be installed*/ // } TYPE_agent_clearance_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_clearance_publish_distance_data(agent_clearance_distance_data_message *msg); int agent_clearance_subscribe_distance_data(agent_clearance_distance_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void agent_clearance_param_daemon_install_some_params(TYPE_agent_clearance_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _AGENT_TRACKER_INTERFACE_H_ #define _AGENT_TRACKER_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_tracker_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_agent_tracker_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_tracker_publish_data(agent_tracker_data_message *msg); int agent_tracker_subscribe_data(agent_tracker_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int agent_tracker_publish_virtual_sensors_data(agent_tracker_virtual_sensors_data_message *msg); int agent_tracker_subscribe_virtual_sensors_data(agent_tracker_virtual_sensors_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void agent_tracker_param_daemon_install_some_params(TYPE_agent_tracker_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _FOVEATIONCONTROL_INTERFACE_H_ #define _FOVEATIONCONTROL_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/foveationcontrol_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef TYPE_xbcameratmatrix_params TYPE_foveationcontrolmatrix_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int foveationcontrol_publish_pointto_xyz(foveationcontrol_pointto_xyz_message *msg); int foveationcontrol_subscribe_pointto_xyz(foveationcontrol_pointto_xyz_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void param_daemon_install_foveationcontrolmatrix_params(TYPE_foveationcontrolmatrix_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _POWERMANAGER_INTERFACE_H_ #define _POWERMANAGER_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/powermanager_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef enum { Y0_LAS0 = 130, Y1_PTU, Y2_R1394_0, Y3_BUMBLEBEE, Y4_NA, Y5_NA, Y6_NA, Y7_NA, Y10_ROUTER, Y11_SWITCH, Y12_GPS, Y13_NA }ENUM_plc_outputs; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int powermanager_publish_status(powermanager_status_message *msg); int powermanager_subscribe_status(powermanager_status_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int powermanager_turn_on(ENUM_plc_outputs output); int powermanager_turn_off(ENUM_plc_outputs output); int powermanager_reset(ENUM_plc_outputs output); int powermanager_subscribe_command(powermanager_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _XBEE_INTERFACE_H_ #define _XBEE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/xbee_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_xbee_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int xbee_publish_rx_data(xbee_rx_data_message *msg); int xbee_subscribe_rx_data(xbee_rx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int xbee_publish_tx_data(xbee_tx_data_message *msg); int xbee_subscribe_tx_data(xbee_tx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void xbee_param_daemon_install_public_parameters(TYPE_xbee_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _MODULETEMPLATE_INTERFACE_H_ #define _MODULETEMPLATE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/moduletemplate_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_moduletemplate_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int moduletemplate_publish_data(moduletemplate_data_message *msg); int moduletemplate_subscribe_data(moduletemplate_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void moduletemplate_param_daemon_install_public_parameters(TYPE_moduletemplate_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
Include the interface.
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
#ifndef _AGENT_BEHAVIOUR_INTERFACE_H_ #define _AGENT_BEHAVIOUR_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_behaviour_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_agent_behaviour_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_behaviour_publish_data(agent_behaviour_data_message *msg); int agent_behaviour_subscribe_data(agent_behaviour_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int agent_behaviour_publish_virtual_sensors_data(agent_behaviour_virtual_sensors_data_message *msg); int agent_behaviour_subscribe_virtual_sensors_data(agent_behaviour_virtual_sensors_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void agent_behaviour_param_daemon_install_some_params(TYPE_agent_behaviour_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _AGENT_CLEARANCE_INTERFACE_H_ #define _AGENT_CLEARANCE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_clearance_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### // typedef struct{ // double sleeptime; /**< looptime is the best loop time of the module. It may be a slower time but if its faster it should carmen_ipc_sleep until this time passes.*/ // char otherparam; /**< some other param to be installed*/ // } TYPE_agent_clearance_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_clearance_publish_distance_data(agent_clearance_distance_data_message *msg); int agent_clearance_subscribe_distance_data(agent_clearance_distance_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void agent_clearance_param_daemon_install_some_params(TYPE_agent_clearance_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _AGENT_TRACKER_INTERFACE_H_ #define _AGENT_TRACKER_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_tracker_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_agent_tracker_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_tracker_publish_data(agent_tracker_data_message *msg); int agent_tracker_subscribe_data(agent_tracker_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int agent_tracker_publish_virtual_sensors_data(agent_tracker_virtual_sensors_data_message *msg); int agent_tracker_subscribe_virtual_sensors_data(agent_tracker_virtual_sensors_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void agent_tracker_param_daemon_install_some_params(TYPE_agent_tracker_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _TLHFCS_INTERFACE_H_ #define _TLHFCS_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/tlhfcs_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### // * @brief This is a test message, Here you insert the description of the entity, in this case the struct. // */ //typedef struct{ // double sleeptime; /**< looptime is the best loop time of the module. It may be a slower time but if its faster it should carmen_ipc_sleep until this time passes.*/ // char otherparam; /**< some other param to be installed*/ //} TYPE_tlhfcs_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### //int tlhfcs_publish_information(tlhfcs_information_message *msg); //int tlhfcs_subscribe_information(tlhfcs_information_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void tlhfcs_param_daemon_install_some_params(TYPE_tlhfcs_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _TLHFCS_INTERFACE_H_ #define _TLHFCS_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/tlhfcs_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### // * @brief This is a test message, Here you insert the description of the entity, in this case the struct. // */ //typedef struct{ // double sleeptime; /**< looptime is the best loop time of the module. It may be a slower time but if its faster it should carmen_ipc_sleep until this time passes.*/ // char otherparam; /**< some other param to be installed*/ //} TYPE_tlhfcs_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### //int tlhfcs_publish_information(tlhfcs_information_message *msg); //int tlhfcs_subscribe_information(tlhfcs_information_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void tlhfcs_param_daemon_install_some_params(TYPE_tlhfcs_public_params *p, int subscribe_changes, int verbose); #endif
Include the interface.
#ifndef _VSCSHFBA_INTERFACE_H_ #define _VSCSHFBA_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/vscshfba_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int vscshfba_subscribe_data(vscshfba_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int vscshfba_publish_data(vscshfba_data_message *msg); void vscshfba_subscribe_command_message(vscshfba_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void vscshfba_publish_command_message(vscshfba_command_message *msg); #endif
#ifndef _VSCSHFBA_INTERFACE_H_ #define _VSCSHFBA_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/vscshfba_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int vscshfba_subscribe_data(vscshfba_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int vscshfba_publish_data(vscshfba_data_message *msg); void vscshfba_subscribe_command_message(vscshfba_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void vscshfba_publish_command_message(vscshfba_command_message *msg); #endif
Include the interface.
#ifndef _FOVEATIONCONTROL_INTERFACE_H_ #define _FOVEATIONCONTROL_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/foveationcontrol_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef TYPE_xbcameratmatrix_params TYPE_foveationcontrolmatrix_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int foveationcontrol_publish_pointto_xyz(foveationcontrol_pointto_xyz_message *msg); int foveationcontrol_subscribe_pointto_xyz(foveationcontrol_pointto_xyz_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void param_daemon_install_foveationcontrolmatrix_params(TYPE_foveationcontrolmatrix_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _POWERMANAGER_INTERFACE_H_ #define _POWERMANAGER_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/powermanager_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef enum { Y0_LAS0 = 130, Y1_PTU, Y2_R1394_0, Y3_BUMBLEBEE, Y4_NA, Y5_NA, Y6_NA, Y7_NA, Y10_ROUTER, Y11_SWITCH, Y12_GPS, Y13_NA }ENUM_plc_outputs; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int powermanager_publish_status(powermanager_status_message *msg); int powermanager_subscribe_status(powermanager_status_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int powermanager_turn_on(ENUM_plc_outputs output); int powermanager_turn_off(ENUM_plc_outputs output); int powermanager_reset(ENUM_plc_outputs output); int powermanager_subscribe_command(powermanager_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _XBEE_INTERFACE_H_ #define _XBEE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/xbee_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_xbee_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int xbee_publish_rx_data(xbee_rx_data_message *msg); int xbee_subscribe_rx_data(xbee_rx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int xbee_publish_tx_data(xbee_tx_data_message *msg); int xbee_subscribe_tx_data(xbee_tx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void xbee_param_daemon_install_public_parameters(TYPE_xbee_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _MODULETEMPLATE_INTERFACE_H_ #define _MODULETEMPLATE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/moduletemplate_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_moduletemplate_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int moduletemplate_publish_data(moduletemplate_data_message *msg); int moduletemplate_subscribe_data(moduletemplate_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void moduletemplate_param_daemon_install_public_parameters(TYPE_moduletemplate_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
Include the interface.
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
#ifndef _AGENT_BEHAVIOUR_INTERFACE_H_ #define _AGENT_BEHAVIOUR_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_behaviour_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_agent_behaviour_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_behaviour_publish_data(agent_behaviour_data_message *msg); int agent_behaviour_subscribe_data(agent_behaviour_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int agent_behaviour_publish_virtual_sensors_data(agent_behaviour_virtual_sensors_data_message *msg); int agent_behaviour_subscribe_virtual_sensors_data(agent_behaviour_virtual_sensors_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void agent_behaviour_param_daemon_install_some_params(TYPE_agent_behaviour_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _AGENT_CLEARANCE_INTERFACE_H_ #define _AGENT_CLEARANCE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_clearance_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### // typedef struct{ // double sleeptime; /**< looptime is the best loop time of the module. It may be a slower time but if its faster it should carmen_ipc_sleep until this time passes.*/ // char otherparam; /**< some other param to be installed*/ // } TYPE_agent_clearance_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_clearance_publish_distance_data(agent_clearance_distance_data_message *msg); int agent_clearance_subscribe_distance_data(agent_clearance_distance_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void agent_clearance_param_daemon_install_some_params(TYPE_agent_clearance_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _AGENT_TRACKER_INTERFACE_H_ #define _AGENT_TRACKER_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_tracker_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_agent_tracker_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_tracker_publish_data(agent_tracker_data_message *msg); int agent_tracker_subscribe_data(agent_tracker_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int agent_tracker_publish_virtual_sensors_data(agent_tracker_virtual_sensors_data_message *msg); int agent_tracker_subscribe_virtual_sensors_data(agent_tracker_virtual_sensors_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void agent_tracker_param_daemon_install_some_params(TYPE_agent_tracker_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _TLHFCS_INTERFACE_H_ #define _TLHFCS_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/tlhfcs_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### // * @brief This is a test message, Here you insert the description of the entity, in this case the struct. // */ //typedef struct{ // double sleeptime; /**< looptime is the best loop time of the module. It may be a slower time but if its faster it should carmen_ipc_sleep until this time passes.*/ // char otherparam; /**< some other param to be installed*/ //} TYPE_tlhfcs_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### //int tlhfcs_publish_information(tlhfcs_information_message *msg); //int tlhfcs_subscribe_information(tlhfcs_information_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void tlhfcs_param_daemon_install_some_params(TYPE_tlhfcs_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _TLHFCS_INTERFACE_H_ #define _TLHFCS_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/tlhfcs_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### // * @brief This is a test message, Here you insert the description of the entity, in this case the struct. // */ //typedef struct{ // double sleeptime; /**< looptime is the best loop time of the module. It may be a slower time but if its faster it should carmen_ipc_sleep until this time passes.*/ // char otherparam; /**< some other param to be installed*/ //} TYPE_tlhfcs_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### //int tlhfcs_publish_information(tlhfcs_information_message *msg); //int tlhfcs_subscribe_information(tlhfcs_information_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void tlhfcs_param_daemon_install_some_params(TYPE_tlhfcs_public_params *p, int subscribe_changes, int verbose); #endif
Include the interface.
#ifndef _VSCSHFBA_INTERFACE_H_ #define _VSCSHFBA_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/vscshfba_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int vscshfba_subscribe_data(vscshfba_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int vscshfba_publish_data(vscshfba_data_message *msg); void vscshfba_subscribe_command_message(vscshfba_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void vscshfba_publish_command_message(vscshfba_command_message *msg); #endif
#ifndef _VSCSHFBA_INTERFACE_H_ #define _VSCSHFBA_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/vscshfba_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int vscshfba_subscribe_data(vscshfba_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int vscshfba_publish_data(vscshfba_data_message *msg); void vscshfba_subscribe_command_message(vscshfba_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void vscshfba_publish_command_message(vscshfba_command_message *msg); #endif
Include the interface.
#ifndef _LASERPROJECTIONONIMAGE_INTERFACE_H_ #define _LASERPROJECTIONONIMAGE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/laserprojectiononimage_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _GPS_INTERFACE_H_ #define _GPS_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ################################## //#################################################################### #include <lar/lar.h> #include <lar/gps_messages.h> //#################################################################### // Prototypes: public functions can be declared here ############### //#################################################################### void gps_publish_data(gps_gpgga_data_message *msg_gga, gps_gprmc_data_message *msg_rmc); int gps_subscribe_gpgga_data(gps_gpgga_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int gps_subscribe_gprmc_data(gps_gprmc_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); #endif
#ifndef _GPS_INTERFACE_H_ #define _GPS_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ################################## //#################################################################### #include <lar/lar.h> #include <lar/gps_messages.h> //#################################################################### // Prototypes: public functions can be declared here ############### //#################################################################### void gps_publish_data(gps_gpgga_data_message *msg_gga, gps_gprmc_data_message *msg_rmc); int gps_subscribe_gpgga_data(gps_gpgga_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int gps_subscribe_gprmc_data(gps_gprmc_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); #endif
Include global headers.
#ifndef _XSENS_INTERFACE_H_ #define _XSENS_INTERFACE_H_ #include <lar/lar.h> #include <lar/xsens_messages.h> typedef struct{ char *comport; } TYPE_xsens_public_params; int xsens_publish_data(xsens_data_message *msg); int xsens_subscribe_data(xsens_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void xsens_param_daemon_install_some_params(TYPE_xsens_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _XSENS_INTERFACE_H_ #define _XSENS_INTERFACE_H_ #include <lar/lar.h> #include <lar/xsens_messages.h> typedef struct{ char *comport; } TYPE_xsens_public_params; int xsens_publish_data(xsens_data_message *msg); int xsens_subscribe_data(xsens_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void xsens_param_daemon_install_some_params(TYPE_xsens_public_params *p, int subscribe_changes, int verbose); #endif
Include the interface.
#ifndef _FOVEATIONCONTROL_INTERFACE_H_ #define _FOVEATIONCONTROL_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/foveationcontrol_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef TYPE_xbcameratmatrix_params TYPE_foveationcontrolmatrix_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int foveationcontrol_publish_pointto_xyz(foveationcontrol_pointto_xyz_message *msg); int foveationcontrol_subscribe_pointto_xyz(foveationcontrol_pointto_xyz_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void param_daemon_install_foveationcontrolmatrix_params(TYPE_foveationcontrolmatrix_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _POWERMANAGER_INTERFACE_H_ #define _POWERMANAGER_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/powermanager_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef enum { Y0_LAS0 = 130, Y1_PTU, Y2_R1394_0, Y3_BUMBLEBEE, Y4_NA, Y5_NA, Y6_NA, Y7_NA, Y10_ROUTER, Y11_SWITCH, Y12_GPS, Y13_NA }ENUM_plc_outputs; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int powermanager_publish_status(powermanager_status_message *msg); int powermanager_subscribe_status(powermanager_status_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int powermanager_turn_on(ENUM_plc_outputs output); int powermanager_turn_off(ENUM_plc_outputs output); int powermanager_reset(ENUM_plc_outputs output); int powermanager_subscribe_command(powermanager_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _XBEE_INTERFACE_H_ #define _XBEE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/xbee_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_xbee_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int xbee_publish_rx_data(xbee_rx_data_message *msg); int xbee_subscribe_rx_data(xbee_rx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int xbee_publish_tx_data(xbee_tx_data_message *msg); int xbee_subscribe_tx_data(xbee_tx_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void xbee_param_daemon_install_public_parameters(TYPE_xbee_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _MODULETEMPLATE_INTERFACE_H_ #define _MODULETEMPLATE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/moduletemplate_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_moduletemplate_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int moduletemplate_publish_data(moduletemplate_data_message *msg); int moduletemplate_subscribe_data(moduletemplate_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void moduletemplate_param_daemon_install_public_parameters(TYPE_moduletemplate_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
Include the interface.
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
#ifndef _AGENT_BEHAVIOUR_INTERFACE_H_ #define _AGENT_BEHAVIOUR_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_behaviour_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_agent_behaviour_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_behaviour_publish_data(agent_behaviour_data_message *msg); int agent_behaviour_subscribe_data(agent_behaviour_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int agent_behaviour_publish_virtual_sensors_data(agent_behaviour_virtual_sensors_data_message *msg); int agent_behaviour_subscribe_virtual_sensors_data(agent_behaviour_virtual_sensors_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void agent_behaviour_param_daemon_install_some_params(TYPE_agent_behaviour_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _AGENT_CLEARANCE_INTERFACE_H_ #define _AGENT_CLEARANCE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_clearance_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### // typedef struct{ // double sleeptime; /**< looptime is the best loop time of the module. It may be a slower time but if its faster it should carmen_ipc_sleep until this time passes.*/ // char otherparam; /**< some other param to be installed*/ // } TYPE_agent_clearance_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_clearance_publish_distance_data(agent_clearance_distance_data_message *msg); int agent_clearance_subscribe_distance_data(agent_clearance_distance_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void agent_clearance_param_daemon_install_some_params(TYPE_agent_clearance_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _AGENT_TRACKER_INTERFACE_H_ #define _AGENT_TRACKER_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/agent_tracker_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct{ double sleeptime; char otherparam; } TYPE_agent_tracker_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int agent_tracker_publish_data(agent_tracker_data_message *msg); int agent_tracker_subscribe_data(agent_tracker_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int agent_tracker_publish_virtual_sensors_data(agent_tracker_virtual_sensors_data_message *msg); int agent_tracker_subscribe_virtual_sensors_data(agent_tracker_virtual_sensors_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void agent_tracker_param_daemon_install_some_params(TYPE_agent_tracker_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _TLHFCS_INTERFACE_H_ #define _TLHFCS_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/tlhfcs_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### // * @brief This is a test message, Here you insert the description of the entity, in this case the struct. // */ //typedef struct{ // double sleeptime; /**< looptime is the best loop time of the module. It may be a slower time but if its faster it should carmen_ipc_sleep until this time passes.*/ // char otherparam; /**< some other param to be installed*/ //} TYPE_tlhfcs_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### //int tlhfcs_publish_information(tlhfcs_information_message *msg); //int tlhfcs_subscribe_information(tlhfcs_information_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void tlhfcs_param_daemon_install_some_params(TYPE_tlhfcs_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _TLHFCS_INTERFACE_H_ #define _TLHFCS_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/tlhfcs_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### // * @brief This is a test message, Here you insert the description of the entity, in this case the struct. // */ //typedef struct{ // double sleeptime; /**< looptime is the best loop time of the module. It may be a slower time but if its faster it should carmen_ipc_sleep until this time passes.*/ // char otherparam; /**< some other param to be installed*/ //} TYPE_tlhfcs_public_params; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### //int tlhfcs_publish_information(tlhfcs_information_message *msg); //int tlhfcs_subscribe_information(tlhfcs_information_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void tlhfcs_param_daemon_install_some_params(TYPE_tlhfcs_public_params *p, int subscribe_changes, int verbose); #endif
Include the interface.
#ifndef _VSCSHFBA_INTERFACE_H_ #define _VSCSHFBA_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/vscshfba_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int vscshfba_subscribe_data(vscshfba_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int vscshfba_publish_data(vscshfba_data_message *msg); void vscshfba_subscribe_command_message(vscshfba_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void vscshfba_publish_command_message(vscshfba_command_message *msg); #endif
#ifndef _VSCSHFBA_INTERFACE_H_ #define _VSCSHFBA_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/vscshfba_messages.h> #include <lar/imageprocessing.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int vscshfba_subscribe_data(vscshfba_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int vscshfba_publish_data(vscshfba_data_message *msg); void vscshfba_subscribe_command_message(vscshfba_command_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void vscshfba_publish_command_message(vscshfba_command_message *msg); #endif
Include the interface.
#ifndef _LASERPROJECTIONONIMAGE_INTERFACE_H_ #define _LASERPROJECTIONONIMAGE_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/laserprojectiononimage_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### #endif
#ifndef _LAR_H_ #define _LAR_H_ #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);} #define PLN {printf("DEBUG PRINT LINE %d\n",__LINE__);} #define PVV(a) {printf("DEBUG PRINT FILE %s LINE %d value = %d\n",__FILE__, __LINE__,(int)(a));} #define _cast_to_carmen_param_change_handler_t_ (void (*)(char*, char*,char*)) #define printc(a,b) {printf("%c[1;%d;48m", 0x1B, (b) +30);printf(a);printf("\33[0m");fflush(stdout);} #define printnc(a,b,c) {printf("%c[1;%d;48m", 0x1B, (c) +30);printf(a,b);printf("\33[0m");fflush(stdout);} #include <sys/ipc.h> //System includes to use shared mem #include <sys/shm.h> //System includes to use shared mem using namespace std; #include <iostream> #if (! _DO_NOT_USE_OPENCV_) /*opencv includes*/ #include <opencv/cv.h> #include <opencv/cxcore.h> #include <opencv/highgui.h> #include <opencv/cvaux.h> #endif #if (! _DO_NOT_USE_CARMEN_ ) /*carmen includes*/ #include <carmen/carmen.h> #endif //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { int send; double timestamp; char *host; }global_dummy_message; typedef struct { int shm_id; int shm_size; double timestamp; char *host; }global_shminfo_message; //#################################################################### // LAR includes: ############################################## //#################################################################### #include <lar/timer.h> #include <lar/pixelaccess.h> #include <lar/errorhandling.h> #include <lar/readcommandlineparameters.h> #include <lar/lensundistort.h> #include <lar/videosaving.h> #include <lar/imageprocessing.h> #include <lar/acl_interface.h> #include <lar/crc.h> #include <lar/moduletemplate_interface.h> #include <lar/xbee_interface.h> #include <lar/ptucontrol_interface.h> #include <lar/atlas2000_interface.h> #include <lar/atlasmv_interface.h> #include <lar/powermanager_interface.h> #include <lar/des70_10.h> #include <lar/soundplayer_interface.h> #include <lar/soundplayer_messages.h> #include <lar/processcontrol_interface.h> #include <lar/processcontrol_messages.h> #include <lar/gps_interface.h> #include <lar/xsens_interface.h> #include <lar/firei_interface.h> #include <lar/flea2_interface.h> #include <lar/xb3_interface.h> //this must be after the xb3_interface #include <lar/foveationcontrol_interface.h> #include <lar/hokuyo_utm_interface.h> #include <lar/laser3d_interface.h> #include <lar/ipm_interface.h> #include <lar/egomotiongpsimu_interface.h> //#include <lar/agent_tracker_interface.h> #include <lar/agent_clearance_interface.h> #include <lar/cdltm_interface.h> //#include <lar/lmssp_interface.h> #include <lar/rtbm_interface.h> #include <lar/potkf_interface.h> #include <lar/tlcstm_interface.h> #include <lar/cwtm_interface.h> #include <lar/tlhfcs_interface.h> #include <lar/pdtm_interface.h> #include <lar/cwpc_interface.h> #include <lar/vscshfba_interface.h> #include <lar/cm_interface.h> #include <lar/mptn2d_interface.h> #include <lar/agents_interface.h> #include <lar/roc_interface.h> #endif
Include global headers.
#ifndef _GPS_INTERFACE_H_ #define _GPS_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ################################## //#################################################################### #include <lar/lar.h> #include <lar/gps_messages.h> //#################################################################### // Prototypes: public functions can be declared here ############### //#################################################################### void gps_publish_data(gps_gpgga_data_message *msg_gga, gps_gprmc_data_message *msg_rmc); int gps_subscribe_gpgga_data(gps_gpgga_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int gps_subscribe_gprmc_data(gps_gprmc_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); #endif
#ifndef _GPS_INTERFACE_H_ #define _GPS_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ################################## //#################################################################### #include <lar/lar.h> #include <lar/gps_messages.h> //#################################################################### // Prototypes: public functions can be declared here ############### //#################################################################### void gps_publish_data(gps_gpgga_data_message *msg_gga, gps_gprmc_data_message *msg_rmc); int gps_subscribe_gpgga_data(gps_gpgga_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); int gps_subscribe_gprmc_data(gps_gprmc_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); #endif
Include global headers.
#ifndef _XSENS_INTERFACE_H_ #define _XSENS_INTERFACE_H_ #include <lar/lar.h> #include <lar/xsens_messages.h> typedef struct{ char *comport; } TYPE_xsens_public_params; int xsens_publish_data(xsens_data_message *msg); int xsens_subscribe_data(xsens_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void xsens_param_daemon_install_some_params(TYPE_xsens_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _XSENS_INTERFACE_H_ #define _XSENS_INTERFACE_H_ #include <lar/lar.h> #include <lar/xsens_messages.h> typedef struct{ char *comport; } TYPE_xsens_public_params; int xsens_publish_data(xsens_data_message *msg); int xsens_subscribe_data(xsens_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); void xsens_param_daemon_install_some_params(TYPE_xsens_public_params *p, int subscribe_changes, int verbose); #endif
Include the interface.
#ifndef _ACL_INTERFACE_H_ #define _ACL_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/acl_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { double minH; double maxH; double minS; double maxS; double minV; double maxV; }TYPE_color_lim; typedef struct{ TYPE_color_lim green; TYPE_color_lim red; TYPE_color_lim white; TYPE_color_lim yellow; TYPE_color_lim blue; TYPE_color_lim black; } TYPE_acl_color_limits; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int param_daemon_set_color_limits(TYPE_acl_color_limits* limits); //int acl_publish_data(acl_data_message *msg); //int acl_subscribe_data(acl_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void acl_param_daemon_install_some_params(TYPE_acl_public_params *p, int subscribe_changes, int verbose); #endif
#ifndef _ACL_INTERFACE_H_ #define _ACL_INTERFACE_H_ //#################################################################### // Includes: no need to include headers from carmen modules carmen.h # // already does ##################################### //#################################################################### #include <lar/lar.h> #include <lar/acl_messages.h> //#################################################################### // Typedefs:Declare here structs that have interesting params for #### // other modules besides this one, but that will not be sent through # // messages. A function to install this struct with param daemon ##### // should be declared ################################################ //#################################################################### typedef struct { double minH; double maxH; double minS; double maxS; double minV; double maxV; }TYPE_color_lim; typedef struct{ TYPE_color_lim green; TYPE_color_lim red; TYPE_color_lim white; TYPE_color_lim yellow; TYPE_color_lim blue; TYPE_color_lim black; } TYPE_acl_color_limits; //#################################################################### // Prototypes: public functions can be declared here ################ //#################################################################### int param_daemon_set_color_limits(TYPE_acl_color_limits* limits); //int acl_publish_data(acl_data_message *msg); //int acl_subscribe_data(acl_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how); //void acl_param_daemon_install_some_params(TYPE_acl_public_params *p, int subscribe_changes, int verbose); #endif
Include the interface.
IplImage* flea2_n0_image |
char flea2_n0_image_message_heartbeat = 0 |
Referenced by heartbeat_handler_n0().
IplImage* flea2_n1_image |
char flea2_n1_image_message_heartbeat = 0 |
Referenced by heartbeat_handler_n1().
IplImage* cTemplateTracking::Gray [inherited] |
int { ... } ::h [inherited] |
int cTemplateTracking::h [inherited] |
Referenced by detect_and_draw().
struct { ... } cTemplateTracking::HaarObjs[10] [inherited] |
Referenced by detect_and_draw(), and cTemplateTracking::DoLoop().
IplImage* cTemplateTracking::Harris [inherited] |
Referenced by cTemplateTracking::cTemplateTracking(), and cTemplateTracking::DoLoop().
unsigned { ... } ::HistorySize [inherited] |
IplImage* cTemplateTracking::image [private, inherited] |
Referenced by cTemplateTracking::cTemplateTracking(), and cTemplateTracking::DoLoop().
int { ... } ::ImageHeight [inherited] |
int cTemplateTracking::ImageHeight [inherited] |
int { ... } ::ImageNchannels [inherited] |
int cTemplateTracking::ImageNchannels [inherited] |
int { ... } ::ImageWidth [inherited] |
int cTemplateTracking::ImageWidth [inherited] |
struct { ... } cTemplateTracking::local_vars [inherited] |
Referenced by cTemplateTracking::cTemplateTracking(), and cTemplateTracking::DoLoop().
CvPoint cTemplateTracking::max_loc [private, inherited] |
Referenced by cTemplateTracking::DoLoop(), and cTemplateTracking::MatchImage2OverallTemplate().
double cTemplateTracking::max_val [private, inherited] |
Referenced by cTemplateTracking::MatchImage2OverallTemplate().
CvPoint cTemplateTracking::min_loc [private, inherited] |
Referenced by cTemplateTracking::MatchImage2OverallTemplate().
double cTemplateTracking::min_val [private, inherited] |
Referenced by cTemplateTracking::MatchImage2OverallTemplate().
int msecstowait = 60 |
int numfaces = 0 |
Referenced by detect_and_draw().
int { ... } ::numofusedTemplates [inherited] |
int cTemplateTracking::numofusedTemplates [inherited] |
IplImage* cTemplateTracking::OverallTemplate [inherited] |
CvPoint p1 |
Referenced by detect_and_draw(), detect_and_draw_foveated(), and main().
CvPoint p2 |
Referenced by detect_and_draw(), detect_and_draw_foveated(), and main().
struct { ... } cTemplateTracking::params [inherited] |
Referenced by cTemplateTracking::cTemplateTracking(), cTemplateTracking::DoLoop(), cTemplateTracking::MatchImage2OverallTemplate(), cTemplateTracking::ReallocateTemplates(), cTemplateTracking::SetHistorySize(), cTemplateTracking::SetTemplateProperties(), and cTemplateTracking::UpdateTemplateHistory().
unsigned { ... } ::PreviousHistorySize [inherited] |
CvPoint { ... } ::pt1 [inherited] |
CvPoint cTemplateTracking::pt1 [inherited] |
Referenced by detect_and_draw(), and cTemplateTracking::DoLoop().
CvPoint { ... } ::pt1 [inherited] |
CvPoint { ... } ::pt2 [inherited] |
CvPoint cTemplateTracking::pt2 [inherited] |
Referenced by detect_and_draw().
CvPoint { ... } ::pt2 [inherited] |
IplImage* cTemplateTracking::Results [inherited] |
IplImage* cTemplateTracking::Resultswithgaussian [inherited] |
double { ... } ::sigma [inherited] |
CvMemStorage* storage = 0 [static] |
Referenced by detect_and_draw(), detect_and_draw_foveated(), detect_haar_signal(), and class_advancedfloodfill::show_image().
int { ... } ::TemplateHeight [inherited] |
int cTemplateTracking::TemplateHeight [inherited] |
int { ... } ::TemplateNchannels [inherited] |
int cTemplateTracking::TemplateNchannels [inherited] |
int { ... } ::TemplateWidth [inherited] |
int cTemplateTracking::TemplateWidth [inherited] |
int { ... } ::TemplateX [inherited] |
int cTemplateTracking::TemplateX [inherited] |
int { ... } ::TemplateY [inherited] |
int cTemplateTracking::TemplateY [inherited] |
struct { ... } ::Track [inherited] |
struct { ... } cTemplateTracking::Track [inherited] |
double ts |
Referenced by detect_and_draw().
int { ... } ::w [inherited] |
int cTemplateTracking::w [inherited] |
Referenced by detect_and_draw().
int { ... } ::x [inherited] |
int { ... } ::y [inherited] |
int cTemplateTracking::y [inherited] |
Referenced by cTemplateTracking::cTemplateTracking().