This module does inverse perspective mapping of one or more cameras. It also has an extension to perform LAIPM, laser assisted inverse perspective mapping. More...
![]() |
Data Structures | |
struct | TYPE_ipm_expert_params |
This is the ipm output image caracteristics. More... | |
struct | TYPE_camerakinematics_params |
This is used to caracterize each camera's kinematic parameters. More... | |
struct | ipm_data_message |
This data has the birdview plus the laser scans, if being used. More... | |
struct | undistortparams_label |
struct | kinematicsparams_label |
struct | birdviewparams_label |
struct | TYPE_shm |
struct | TYPE_Camcontroller |
class | lar_timer |
struct | TYPE_calibration |
struct | ipm_query_data_message |
This is an ipm data query message, This is used to ask for an fused data to a server module. More... | |
struct | ipm_heartbeat_message |
This is an image heartbeat message. When a server module as has new fused data available, it publishes a heartbeat message. More... | |
struct | ipm_query_shminfo_message |
Used to query the server for shared memory id and other features. More... | |
struct | ipm_server_shminfo_message |
Used to repply to a query for shm information. More... | |
Modules | |
Base of Inverse Perspective Mapping | |
This module has the base class for the inverse perspective mapping. | |
Files | |
file | ipm_interface.cpp |
interface functions are defined here. | |
file | ipm_interface.h |
interface.h file for this module. Defines public funtions prototypes this module's interface library makes available to other modules. | |
file | ipm_messages.h |
messages.h file for this module. Defines messages this module publishes or serves to others. | |
file | ipm_publish.cpp |
The publisher for this module This is outdated. Use server instead. | |
file | ipm_publish.h |
The header for the publisher for this module This is outdated. Use server instead. | |
file | ipm_queryexample.cpp |
An example on how to query ipm data from a server. | |
file | ipm_server.cpp |
The server. | |
file | ipm_server.h |
The header file for the server. | |
file | ipm_server_functions.cpp |
Auxiliary functions for the server. | |
file | ipm_subscribeexample.cpp |
An example on how to subscribe a message. | |
Defines | |
#define | _MAXNUM_LASERPTS_ 1080 |
#define | IPM_RESET_OCCURRED_NAME "ipm_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 | IPM_RESET_COMMAND_NAME "ipm_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 | IPM_PUBLISH_DATA_MESSAGE_NAME "ipm_publish_data" |
Name of the message to be published to the IPC. | |
#define | IPM_PUBLISH_DATA_MESSAGE_FMT "{int,int,int,int,<char:4>,int, <int:6>, <int:6>,double,double,double,string}" |
#define | IPM_SERVER_DATA_MESSAGE_NAME "ipm_server_data" |
Name of the message to be server to the IPC. | |
#define | IPM_SERVER_DATA_MESSAGE_FMT IPM_PUBLISH_DATA_MESSAGE_FMT |
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 | IPM_QUERY_DATA_MESSAGE_NAME "ipm_query_data" |
#define | IPM_QUERY_DATA_MESSAGE_FMT "{int,double,string}" |
#define | IPM_HEARTBEAT_MESSAGE_NAME "ipm_heartbeat" |
#define | IPM_HEARTBEAT_MESSAGE_FMT "{int,double,string}" |
#define | IPM_QUERY_SHMINFO_MESSAGE_NAME "ipm_query_shminfo" |
#define | IPM_QUERY_SHMINFO_MESSAGE_FMT "{int,double,string}" |
#define | IPM_SERVER_SHMINFO_MESSAGE_NAME "ipm_server_shminfo" |
#define | IPM_SERVER_SHMINFO_MESSAGE_FMT "{int,int,double,string}" |
#define | IPM_SERVER_DATA_MODULE_NAME "ipm_server_data_module" |
#define | _LISTSIZE_ 10 |
#define | _PTU_PAN_CORRECTION -3 |
#define | _PTU_TILT_CORRECTION 1 |
#define | _LISTSIZE_ 10 |
#define | _PTU_PAN_CORRECTION 0 |
#define | _DEFAULT_PTU_TILT_CORRECTION_ -1 |
#define | _NUM_CAMERAS_ 2 |
#define | _DEBUG_IPM_SERVER_ TRUE |
Typedefs | |
typedef carmen_default_message | ipm_reset_occurred_message |
typedef carmen_default_message | ipm_reset_command_message |
typedef global_dummy_message | ipm_query_data_message |
typedef global_dummy_message | ipm_heartbeat_message |
typedef global_dummy_message | ipm_query_shminfo_message |
typedef global_shminfo_message | ipm_server_shminfo_message |
Functions | |
void | ipm_subscribe_data (ipm_data_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how) |
void | ipm_publish_data (ipm_data_message *msg) |
void | ipm_publish_heartbeat (void) |
void | ipm_subscribe_heartbeat (ipm_heartbeat_message *msg, carmen_handler_t handler, carmen_subscribe_t subscribe_how) |
int | ipm_get_ipl_from_ipm_data_message (ipm_data_message *sensordata, IplImage **pimg) |
int | ipm_query_data (double timetowait, ipm_data_message **sensordata) |
int | ipm_query_shminfo (double, int *shmid, int *shmsize) |
int | ipm_convert_point_to_birdview_frame (int srcx, int srcy, int *dstx, int *dsty) |
int | ipm_convert_point_to_robot_frame (int srcx, int srcy, int *dstx, int *dsty) |
void | param_daemon_install_ipm_expert_params (TYPE_ipm_expert_params *p, int subscribe_changes) |
void | param_daemon_install_camerakinematics_params (TYPE_camerakinematics_params *p, int camera_num, int subscribe_changes, int verbose) |
int | param_daemon_set_ipm_uselaser (int val) |
void | carmen_ipm_reset (void) |
static void | query_sensordata_handler (MSG_INSTANCE msgRef, BYTE_ARRAY callData, void *clientData __attribute__((unused))) |
void | ptucontrol_status_handler (MSG_INSTANCE msgRef, BYTE_ARRAY callData __attribute__((unused)), void *clientData __attribute__((unused))) |
void | shutdown_module (int x) |
Module shutdown function. | |
void | interpolate_panandtilt (double targettimestamp, double *ipan, double *itilt) |
void | heartbeat_handler (carmen_heartbeat_message *heartbeat_msg) |
TO BE REMOVED. | |
int | main (int argc, char **argv) |
void | check_command (int argc, char **argv) |
int | stretch_image_masked (IplImage *src, IplImage *dst, double low, double high, IplImage *mask) |
void | ptucontrol_status_handler (MSG_INSTANCE msgRef __attribute__((unused)), BYTE_ARRAY callData __attribute__((unused)), void *clientData __attribute__((unused))) |
void | query_shminfo_handler (MSG_INSTANCE msgRef, BYTE_ARRAY callData, void *clientData) |
void | camera0_heartbeat_handler (void) |
void | camera1_heartbeat_handler (void) |
void | hokuyo_heartbeat_handler (void) |
Variables | |
char | flip |
char | firsttime |
static IplImage * | ubcamera_nroad_image_0 |
static IplImage * | ubcamera_nroad_image_1 |
IplImage * | imgRGB = NULL |
IplImage * | fimg = NULL |
IplImage * | fimgRGB = NULL |
IplImage * | ifimg = NULL |
IplImage * | ifimgRGB = NULL |
IplImage * | ifimgRGB_withlasermask = NULL |
IplImage * | gui_ifimg = NULL |
IplImage * | laser_mask_img = NULL |
IplImage * | lasermask_tmp = NULL |
IplImage * | pimage |
class_base_ipm | base_ipm |
char | ubcamera_nroad_image_message_heartbeat = FALSE |
char | ubcamera_nroad_image_message_imageaquired = FALSE |
char | hokuyo_message_heartbeat = FALSE |
char | hokuyo_message_laseraquired = FALSE |
char | flag_querying = FALSE |
static double | timestamp_0 |
static double | timestamp_1 |
carmen_laser_laser_message | laser_msg |
struct undistortparams_label | undistortparams [2] |
struct kinematicsparams_label | kinematicsparams [2] |
struct birdviewparams_label | birdviewparams |
carmen_ptucontrol_status_message | ptu_status |
static ipm_query_data_message | query_msg |
static ipm_data_message | response_msg |
TYPE_executionflags | flags |
Include the interface. | |
double | listpan [_LISTSIZE_] |
double | listtilt [_LISTSIZE_] |
double | listtimestamp [_LISTSIZE_] |
double | newptupan |
double | newptutilt |
static char | uselaser = 0 |
static int | connectivity_tmp = 4 |
static int | new_mask_val_tmp = 255 |
static int | flags_tmp = connectivity_tmp + (new_mask_val_tmp << 8) |
carmen_param_t | camera_undistort_params_0 [] |
carmen_param_t | camera_undistort_params_1 [] |
carmen_param_t | camera_kinematics_params_0 [] |
carmen_param_t | camera_kinematics_params_1 [] |
carmen_param_t | camera_birdview_params [] |
int | firsttime_road = 1 |
int | firsttime_overlap = 1 |
char | debugflag |
static IplImage * | ipm_image |
ipm_data_message * | sensordata |
char | ipm_heartbeat = 0 |
double | TILT = -50 |
IplImage * | ubcamera_nroad_image_0 |
IplImage * | ubcamera_nroad_image_1 |
IplImage * | image_overlaped |
IplImage * | imgRGB |
IplImage * | fimg |
IplImage * | fimgRGB |
IplImage * | ifimg |
IplImage * | ifimgRGB |
IplImage * | ifimgRGB_withlasermask |
IplImage * | gui_ifimg |
IplImage * | laser_mask_img |
IplImage * | lasermask_tmp |
IplImage * | pimage |
TYPE_calibration | calibration |
carmen_ptucontrol_status_message | ptu_status |
TYPE_executionflags | flg |
char | camera0_image_message_heartbeat |
char | camera1_image_message_heartbeat |
char | hokuyo_message_heartbeat |
char | hokuyo_message_laseraquired |
char | flag_querying |
ipm_query_data_message | query_msg |
ipm_data_message | response_msg |
double | timestamp_0 |
double | timestamp_1 |
double | listpan [_LISTSIZE_] |
double | listtilt [_LISTSIZE_] |
double | listtimestamp [_LISTSIZE_] |
TYPE_shm | shm |
TYPE_executionflags | flags |
Include the interface. | |
static IplImage * | ipm_image |
int | firsttime_road = 1 |
int | firsttime_overlap = 1 |
ipm_data_message | sensordata |
This module does inverse perspective mapping of one or more cameras. It also has an extension to perform LAIPM, laser assisted inverse perspective mapping.
#define _DEBUG_IPM_SERVER_ TRUE |
#define _DEFAULT_PTU_TILT_CORRECTION_ -1 |
#define _LISTSIZE_ 10 |
#define _LISTSIZE_ 10 |
Referenced by interpolate_panandtilt(), and ptucontrol_status_handler().
#define _MAXNUM_LASERPTS_ 1080 |
Referenced by query_sensordata_handler(), and subscribe_ipm_initial_data().
#define _NUM_CAMERAS_ 2 |
#define _PTU_PAN_CORRECTION 0 |
#define _PTU_PAN_CORRECTION -3 |
#define _PTU_TILT_CORRECTION 1 |
#define IPM_HEARTBEAT_MESSAGE_FMT "{int,double,string}" |
Referenced by register_ipc_messages().
#define IPM_HEARTBEAT_MESSAGE_NAME "ipm_heartbeat" |
Referenced by heartbeat_handler(), and register_ipc_messages().
#define IPM_PUBLISH_DATA_MESSAGE_FMT "{int,int,int,int,<char:4>,int, <int:6>, <int:6>,double,double,double,string}" |
Referenced by ipm_subscribe_data().
#define IPM_PUBLISH_DATA_MESSAGE_NAME "ipm_publish_data" |
Name of the message to be published to the IPC.
Referenced by ipm_subscribe_data().
#define IPM_QUERY_DATA_MESSAGE_FMT "{int,double,string}" |
#define IPM_QUERY_DATA_MESSAGE_NAME "ipm_query_data" |
Referenced by main().
#define IPM_QUERY_SHMINFO_MESSAGE_FMT "{int,double,string}" |
#define IPM_QUERY_SHMINFO_MESSAGE_NAME "ipm_query_shminfo" |
Referenced by auxiliar_ipm_shm_to_message().
#define IPM_RESET_COMMAND_NAME "ipm_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 IPM_RESET_OCCURRED_NAME "ipm_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 IPM_SERVER_DATA_MESSAGE_FMT IPM_PUBLISH_DATA_MESSAGE_FMT |
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.
Referenced by subscribe_ipm_initial_data().
#define IPM_SERVER_DATA_MESSAGE_NAME "ipm_server_data" |
Name of the message to be server to the IPC.
Referenced by heartbeat_handler(), and query_sensordata_handler().
#define IPM_SERVER_DATA_MODULE_NAME "ipm_server_data_module" |
#define IPM_SERVER_SHMINFO_MESSAGE_FMT "{int,int,double,string}" |
#define IPM_SERVER_SHMINFO_MESSAGE_NAME "ipm_server_shminfo" |
Referenced by ipm_query_shminfo_handler(), and query_shminfo_handler().
typedef carmen_default_message ipm_reset_command_message |
typedef carmen_default_message ipm_reset_occurred_message |
void camera0_heartbeat_handler | ( | void | ) |
References camera0_image_message_heartbeat, and CAMERA_N0_HEARTBEAT_NAME.
void camera1_heartbeat_handler | ( | void | ) |
References camera1_image_message_heartbeat, and CAMERA_N1_HEARTBEAT_NAME.
void carmen_ipm_reset | ( | void | ) |
void heartbeat_handler | ( | carmen_heartbeat_message * | heartbeat_msg | ) |
TO BE REMOVED.
All the processing is done when the data is recieved, so this function has all the work.
References debugflag, ipm_heartbeat, and IPM_SERVER_DATA_MESSAGE_NAME.
void hokuyo_heartbeat_handler | ( | void | ) |
References hokuyo_message_heartbeat.
void interpolate_panandtilt | ( | double | targettimestamp, | |
double * | ipan, | |||
double * | itilt | |||
) |
References _LISTSIZE_, listpan, listtilt, listtimestamp, and t.
int ipm_convert_point_to_birdview_frame | ( | int | srcx, | |
int | srcy, | |||
int * | dstx, | |||
int * | dsty | |||
) |
int ipm_convert_point_to_robot_frame | ( | int | srcx, | |
int | srcy, | |||
int * | dstx, | |||
int * | dsty | |||
) |
int ipm_get_ipl_from_ipm_data_message | ( | ipm_data_message * | sensordata, | |
IplImage ** | pimg | |||
) |
void ipm_publish_data | ( | ipm_data_message * | msg | ) |
void ipm_publish_heartbeat | ( | void | ) |
int ipm_query_data | ( | double | timetowait, | |
ipm_data_message ** | sensordata | |||
) |
int ipm_query_shminfo | ( | double | , | |
int * | shmid, | |||
int * | shmsize | |||
) |
void ipm_subscribe_data | ( | ipm_data_message * | msg, | |
carmen_handler_t | handler, | |||
carmen_subscribe_t | subscribe_how | |||
) |
References IPM_PUBLISH_DATA_MESSAGE_FMT, and IPM_PUBLISH_DATA_MESSAGE_NAME.
void ipm_subscribe_heartbeat | ( | ipm_heartbeat_message * | msg, | |
carmen_handler_t | handler, | |||
carmen_subscribe_t | subscribe_how | |||
) |
int main | ( | int | argc, | |
char ** | argv | |||
) |
install all required parameters from .ini file
Printing Startup message
now set the initial kinematic and intrinsic parameters for each input camera
Cameras parameters controller
M_PI/180
References ipm_get_ipl_from_ipm_data_message(), ipm_image, readcommandlineparameters(), and shutdown_module().
void param_daemon_install_camerakinematics_params | ( | TYPE_camerakinematics_params * | p, | |
int | camera_num, | |||
int | subscribe_changes, | |||
int | verbose | |||
) |
void param_daemon_install_ipm_expert_params | ( | TYPE_ipm_expert_params * | p, | |
int | subscribe_changes | |||
) |
int param_daemon_set_ipm_uselaser | ( | int | val | ) |
void ptucontrol_status_handler | ( | MSG_INSTANCE msgRef | __attribute__(unused), | |
BYTE_ARRAY callData | __attribute__(unused), | |||
void *clientData | __attribute__(unused) | |||
) |
void ptucontrol_status_handler | ( | MSG_INSTANCE | msgRef, | |
BYTE_ARRAY callData | __attribute__(unused), | |||
void *clientData | __attribute__(unused) | |||
) |
void query_sensordata_handler | ( | MSG_INSTANCE | msgRef, | |
BYTE_ARRAY | callData, | |||
void *clientData | __attribute__(unused) | |||
) | [static] |
References _MAXNUM_LASERPTS_, ipm_data_message::bytes_per_pixel, err, flag_querying, ipm_data_message::height, ipm_data_message::host, ifimgRGB_withlasermask, ipm_data_message::image, ipm_data_message::image_size, IPM_SERVER_DATA_MESSAGE_NAME, msg, ipm_data_message::numlaserpts, ipm_data_message::rawdata_timestamp, response_msg, ipm_data_message::timestamp, timestamp_0, ipm_data_message::width, ipm_data_message::xpts, and ipm_data_message::ypts.
void query_shminfo_handler | ( | MSG_INSTANCE | msgRef, | |
BYTE_ARRAY | callData, | |||
void * | clientData | |||
) |
References err, TYPE_shm::id, IPM_SERVER_SHMINFO_MESSAGE_NAME, shm, and TYPE_shm::size.
void shutdown_module | ( | int | x | ) |
Module shutdown function.
makes a clean shutdown of the program
int stretch_image_masked | ( | IplImage * | src, | |
IplImage * | dst, | |||
double | low, | |||
double | high, | |||
IplImage * | mask | |||
) |
Referenced by camera0_heartbeat_handler().
Referenced by camera1_heartbeat_handler().
carmen_param_t camera_birdview_params[] |
{ {(char*)"ipm", (char*)"PPM", CARMEN_PARAM_DOUBLE, &birdviewparams.PPM, 0, NULL}, {(char*)"ipm", (char*)"width", CARMEN_PARAM_INT, &birdviewparams.width, 0, NULL}, {(char*)"ipm", (char*)"height", CARMEN_PARAM_INT, &birdviewparams.height, 0, NULL}, {(char*)"ipm", (char*)"uselaser", CARMEN_PARAM_ONOFF, &uselaser, 1, NULL}}
carmen_param_t camera_kinematics_params_0[] |
{ {(char*)"cameraleft", (char*)"Q1", CARMEN_PARAM_DOUBLE, &kinematicsparams[0].Q1, 0, NULL}, {(char*)"cameraleft", (char*)"Q2", CARMEN_PARAM_DOUBLE, &kinematicsparams[0].Q2, 0, NULL}, {(char*)"cameraleft", (char*)"Q5", CARMEN_PARAM_DOUBLE, &kinematicsparams[0].Q5, 0, NULL}, {(char*)"cameraleft", (char*)"Q6", CARMEN_PARAM_DOUBLE, &kinematicsparams[0].Q6, 0, NULL}, {(char*)"cameraleft", (char*)"L1", CARMEN_PARAM_DOUBLE, &kinematicsparams[0].L1, 0, NULL}, {(char*)"cameraleft", (char*)"L2", CARMEN_PARAM_DOUBLE, &kinematicsparams[0].L2, 0, NULL}, {(char*)"cameraleft", (char*)"L3", CARMEN_PARAM_DOUBLE, &kinematicsparams[0].L3, 0, NULL}, {(char*)"cameraleft", (char*)"L5", CARMEN_PARAM_DOUBLE, &kinematicsparams[0].L5, 0, NULL}, {(char*)"cameraleft", (char*)"L6", CARMEN_PARAM_DOUBLE, &kinematicsparams[0].L6, 0, NULL}, {(char*)"cameraleft", (char*)"D4", CARMEN_PARAM_DOUBLE, &kinematicsparams[0].D4, 0, NULL}}
carmen_param_t camera_kinematics_params_1[] |
{ {(char*)"cameraright", (char*)"Q1", CARMEN_PARAM_DOUBLE, &kinematicsparams[1].Q1, 0, NULL}, {(char*)"cameraright", (char*)"Q2", CARMEN_PARAM_DOUBLE, &kinematicsparams[1].Q2, 0, NULL}, {(char*)"cameraright", (char*)"Q5", CARMEN_PARAM_DOUBLE, &kinematicsparams[1].Q5, 0, NULL}, {(char*)"cameraright", (char*)"Q6", CARMEN_PARAM_DOUBLE, &kinematicsparams[1].Q6, 0, NULL}, {(char*)"cameraright", (char*)"L1", CARMEN_PARAM_DOUBLE, &kinematicsparams[1].L1, 0, NULL}, {(char*)"cameraright", (char*)"L2", CARMEN_PARAM_DOUBLE, &kinematicsparams[1].L2, 0, NULL}, {(char*)"cameraright", (char*)"L3", CARMEN_PARAM_DOUBLE, &kinematicsparams[1].L3, 0, NULL}, {(char*)"cameraright", (char*)"L5", CARMEN_PARAM_DOUBLE, &kinematicsparams[1].L5, 0, NULL}, {(char*)"cameraright", (char*)"L6", CARMEN_PARAM_DOUBLE, &kinematicsparams[1].L6, 0, NULL}, {(char*)"cameraright", (char*)"D4", CARMEN_PARAM_DOUBLE, &kinematicsparams[1].D4, 0, NULL}}
carmen_param_t camera_undistort_params_0[] |
{ {(char*)"cameraleft", (char*)"doundistort", CARMEN_PARAM_ONOFF, &undistortparams[0].doundistort, 0, NULL}, {(char*)"cameraleft", (char*)"lens_FX", CARMEN_PARAM_DOUBLE, &undistortparams[0].FX, 0, NULL}, {(char*)"cameraleft", (char*)"lens_FY", CARMEN_PARAM_DOUBLE, &undistortparams[0].FY, 0, NULL}, {(char*)"cameraleft", (char*)"lens_CX", CARMEN_PARAM_DOUBLE, &undistortparams[0].CX, 0, NULL}, {(char*)"cameraleft", (char*)"lens_CY", CARMEN_PARAM_DOUBLE, &undistortparams[0].CY, 0, NULL}, {(char*)"cameraleft", (char*)"lens_D1", CARMEN_PARAM_DOUBLE, &undistortparams[0].D1, 0, NULL}, {(char*)"cameraleft", (char*)"lens_D2", CARMEN_PARAM_DOUBLE, &undistortparams[0].D2, 0, NULL}, {(char*)"cameraleft", (char*)"lens_D3", CARMEN_PARAM_DOUBLE, &undistortparams[0].D3, 0, NULL}, {(char*)"cameraleft", (char*)"lens_D4", CARMEN_PARAM_DOUBLE, &undistortparams[0].D4, 0, NULL}}
carmen_param_t camera_undistort_params_1[] |
{ {(char*)"cameraright", (char*)"doundistort", CARMEN_PARAM_ONOFF, &undistortparams[1].doundistort, 0, NULL}, {(char*)"cameraright", (char*)"lens_FX", CARMEN_PARAM_DOUBLE, &undistortparams[1].FX, 0, NULL}, {(char*)"cameraright", (char*)"lens_FY", CARMEN_PARAM_DOUBLE, &undistortparams[1].FY, 0, NULL}, {(char*)"cameraright", (char*)"lens_CX", CARMEN_PARAM_DOUBLE, &undistortparams[1].CX, 0, NULL}, {(char*)"cameraright", (char*)"lens_CY", CARMEN_PARAM_DOUBLE, &undistortparams[1].CY, 0, NULL}, {(char*)"cameraright", (char*)"lens_D1", CARMEN_PARAM_DOUBLE, &undistortparams[1].D1, 0, NULL}, {(char*)"cameraright", (char*)"lens_D2", CARMEN_PARAM_DOUBLE, &undistortparams[1].D2, 0, NULL}, {(char*)"cameraright", (char*)"lens_D3", CARMEN_PARAM_DOUBLE, &undistortparams[1].D3, 0, NULL}, {(char*)"cameraright", (char*)"lens_D4", CARMEN_PARAM_DOUBLE, &undistortparams[1].D4, 0, NULL}}
int connectivity_tmp = 4 [static] |
Referenced by fill_group_lines(), and removegroups_innerspots().
char debugflag |
Referenced by check_command(), and heartbeat_handler().
IplImage* fimg |
IplImage* fimg = NULL |
IplImage* fimgRGB |
IplImage* fimgRGB = NULL |
char firsttime |
Referenced by gst_publishimageIPC_chain().
int firsttime_overlap = 1 |
int firsttime_overlap = 1 |
int firsttime_road = 1 |
int firsttime_road = 1 |
char flag_querying |
Referenced by query_sensordata_handler().
char flag_querying = FALSE |
Referenced by query_sensordata_handler().
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.
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.
int flags_tmp = connectivity_tmp + (new_mask_val_tmp << 8) [static] |
Referenced by fill_group_lines(), and removegroups_innerspots().
char flip |
IplImage* gui_ifimg |
IplImage* gui_ifimg = NULL |
Referenced by heartbeat_handler(), hokuyo_heartbeat_handler(), and main().
char hokuyo_message_heartbeat = FALSE |
char hokuyo_message_laseraquired = FALSE |
IplImage* ifimg |
IplImage* ifimg = NULL |
IplImage* ifimgRGB |
IplImage* ifimgRGB = NULL |
IplImage* ifimgRGB_withlasermask |
Referenced by query_sensordata_handler().
IplImage* ifimgRGB_withlasermask = NULL |
Referenced by query_sensordata_handler().
IplImage * image_overlaped |
IplImage* imgRGB |
IplImage* imgRGB = NULL |
char ipm_heartbeat = 0 |
IplImage* ipm_image [static] |
IplImage* ipm_image [static] |
struct kinematicsparams_label kinematicsparams[2] |
IplImage* laser_mask_img |
IplImage* laser_mask_img = NULL |
carmen_laser_laser_message laser_msg |
IplImage* lasermask_tmp |
IplImage* lasermask_tmp = NULL |
double listpan[_LISTSIZE_] |
Referenced by interpolate_panandtilt(), and ptucontrol_status_handler().
double listpan[_LISTSIZE_] |
Referenced by interpolate_panandtilt(), and ptucontrol_status_handler().
double listtilt[_LISTSIZE_] |
Referenced by interpolate_panandtilt(), and ptucontrol_status_handler().
double listtilt[_LISTSIZE_] |
Referenced by interpolate_panandtilt(), and ptucontrol_status_handler().
double listtimestamp[_LISTSIZE_] |
Referenced by interpolate_panandtilt(), and ptucontrol_status_handler().
double listtimestamp[_LISTSIZE_] |
Referenced by interpolate_panandtilt(), and ptucontrol_status_handler().
int new_mask_val_tmp = 255 [static] |
Referenced by fill_group_lines(), and removegroups_innerspots().
double newptupan |
double newptutilt |
IplImage* pimage |
Referenced by query_image_handler().
IplImage* pimage |
Referenced by query_image_handler().
ipm_query_data_message query_msg [static] |
Referenced by query_image_handler(), and query_sensordata_handler().
ipm_data_message response_msg [static] |
Referenced by main().
Referenced by main(), and query_shminfo_handler().
double TILT = -50 |
double timestamp_0 |
Referenced by query_sensordata_handler().
double timestamp_0 [static] |
double timestamp_1 |
double timestamp_1 [static] |
IplImage* ubcamera_nroad_image_0 |
IplImage* ubcamera_nroad_image_0 [static] |
IplImage * ubcamera_nroad_image_1 |
IplImage * ubcamera_nroad_image_1 [static] |
char ubcamera_nroad_image_message_heartbeat = FALSE |
char ubcamera_nroad_image_message_imageaquired = FALSE |
struct undistortparams_label undistortparams[2] |
char uselaser = 0 [static] |