The Laser Module (laser)

The CARMEN laser driver. More...


Files

file  laser_interface.h
 Definition of the interface of the module laser.
file  laser_messages.h
 Definition of the messages for the module laser.

Data Structures

struct  carmen_laser_laser_config_t
struct  carmen_laser_laser_message
struct  carmen_laser_alive_message

Defines

#define CARMEN_LASER_LASER_FMT   "{{int,double,double,double,double,double,int},int,<float:2>,int,<float:4>,double,string}"
#define CARMEN_LASER_FRONTLASER_NAME   "carmen_laser_frontlaser"
#define CARMEN_LASER_FRONTLASER_FMT   CARMEN_LASER_LASER_FMT
#define CARMEN_LASER_LASER1_NAME   CARMEN_LASER_FRONTLASER_NAME
#define CARMEN_LASER_LASER1_FMT   CARMEN_LASER_FRONTLASER_FMT
#define CARMEN_LASER_REARLASER_NAME   "carmen_laser_rearlaser"
#define CARMEN_LASER_REARLASER_FMT   CARMEN_LASER_LASER_FMT
#define CARMEN_LASER_LASER2_NAME   CARMEN_LASER_REARLASER_NAME
#define CARMEN_LASER_LASER2_FMT   CARMEN_LASER_REARLASER_FMT
#define CARMEN_LASER_LASER3_NAME   "carmen_laser_laser3"
#define CARMEN_LASER_LASER3_FMT   CARMEN_LASER_LASER_FMT
#define CARMEN_LASER_LASER4_NAME   "carmen_laser_laser4"
#define CARMEN_LASER_LASER4_FMT   CARMEN_LASER_LASER_FMT
#define CARMEN_LASER_LASER5_NAME   "carmen_laser_laser5"
#define CARMEN_LASER_LASER5_FMT   CARMEN_LASER_LASER_FMT
#define CARMEN_LASER_ALIVE_NAME   "carmen_laser_alive"
#define CARMEN_LASER_ALIVE_FMT   "{int,int,int,int,int}"

Enumerations

enum  carmen_laser_laser_type_t {
  SICK_LMS = 0, SICK_PLS = 1, HOKUYO_URG = 2, SIMULATED_LASER = 3,
  UMKNOWN_PROXIMITY_SENSOR = 99
}
enum  carmen_laser_remission_type_t { OFF = 0, DIRECT = 1, NORMALIZED = 2 }

Functions

void carmen_laser_subscribe_frontlaser_message (carmen_laser_laser_message *laser, carmen_handler_t handler, carmen_subscribe_t subscribe_how)
void carmen_laser_subscribe_rearlaser_message (carmen_laser_laser_message *laser, carmen_handler_t handler, carmen_subscribe_t subscribe_how)
void carmen_laser_subscribe_laser1_message (carmen_laser_laser_message *laser, carmen_handler_t handler, carmen_subscribe_t subscribe_how)
void carmen_laser_subscribe_laser2_message (carmen_laser_laser_message *laser, carmen_handler_t handler, carmen_subscribe_t subscribe_how)
void carmen_laser_subscribe_laser3_message (carmen_laser_laser_message *laser, carmen_handler_t handler, carmen_subscribe_t subscribe_how)
void carmen_laser_subscribe_laser4_message (carmen_laser_laser_message *laser, carmen_handler_t handler, carmen_subscribe_t subscribe_how)
void carmen_laser_subscribe_laser5_message (carmen_laser_laser_message *laser, carmen_handler_t handler, carmen_subscribe_t subscribe_how)
void carmen_laser_subscribe_alive_message (carmen_laser_alive_message *alive, carmen_handler_t handler, carmen_subscribe_t subscribe_how)
void carmen_laser_unsubscribe_frontlaser_message (carmen_handler_t handler)
void carmen_laser_unsubscribe_rearlaser_message (carmen_handler_t handler)
void carmen_laser_unsubscribe_laser3_message (carmen_handler_t handler)
void carmen_laser_unsubscribe_laser4_message (carmen_handler_t handler)
void carmen_laser_unsubscribe_laser5_message (carmen_handler_t handler)
void carmen_laser_unsubscribe_alive_message (carmen_handler_t handler)
void carmen_laser_define_frontlaser_message ()
void carmen_laser_define_rearlaser_message ()
void carmen_laser_define_laser3_message ()
void carmen_laser_define_laser4_message ()
void carmen_laser_define_laser5_message ()
void carmen_laser_define_alive_message ()

Detailed Description

The CARMEN laser driver.

The module laser the the driver for the laser range sensors. Currently supported are SICK LMS and PLS range finders only. The support for the Hokuyo URG will be provided soon.


Define Documentation

#define CARMEN_LASER_LASER1_NAME   CARMEN_LASER_FRONTLASER_NAME
 

Note that laser1 is the same as frontlaser

Definition at line 92 of file laser_messages.h.

#define CARMEN_LASER_LASER2_NAME   CARMEN_LASER_REARLASER_NAME
 

Note that laser2 is the same as reartlaser

Definition at line 99 of file laser_messages.h.

#define CARMEN_LASER_LASER_FMT   "{{int,double,double,double,double,double,int},int,<float:2>,int,<float:4>,double,string}"
 

all raw laser messages have the same format

Definition at line 86 of file laser_messages.h.


Enumeration Type Documentation

enum carmen_laser_laser_type_t
 

defined the type of laser that is used

Definition at line 46 of file laser_messages.h.

enum carmen_laser_remission_type_t
 

Possible remission values

Definition at line 54 of file laser_messages.h.


Function Documentation

void carmen_laser_define_alive_message  ) 
 

Defines the corresonding message. One module needs to define a message before it can be send via IPC.

void carmen_laser_define_frontlaser_message  ) 
 

Defines the corresonding message. One module needs to define a message before it can be send via IPC.

void carmen_laser_define_laser3_message  ) 
 

Defines the corresonding message. One module needs to define a message before it can be send via IPC.

void carmen_laser_define_laser4_message  ) 
 

Defines the corresonding message. One module needs to define a message before it can be send via IPC.

void carmen_laser_define_laser5_message  ) 
 

Defines the corresonding message. One module needs to define a message before it can be send via IPC.

void carmen_laser_define_rearlaser_message  ) 
 

Defines the corresonding message. One module needs to define a message before it can be send via IPC.

void carmen_laser_subscribe_alive_message carmen_laser_alive_message alive,
carmen_handler_t  handler,
carmen_subscribe_t  subscribe_how
 

Subscribes the corresonding message.

void carmen_laser_subscribe_frontlaser_message carmen_laser_laser_message laser,
carmen_handler_t  handler,
carmen_subscribe_t  subscribe_how
 

Subscribes the raw front laser (rawlaser1) message

void carmen_laser_subscribe_laser1_message carmen_laser_laser_message laser,
carmen_handler_t  handler,
carmen_subscribe_t  subscribe_how
 

Subscribes the corresonding message. Note that laser1 is the same than frontlaser.

void carmen_laser_subscribe_laser2_message carmen_laser_laser_message laser,
carmen_handler_t  handler,
carmen_subscribe_t  subscribe_how
 

Subscribes the corresonding message. Note that laser2 is the same than rearlaser.

void carmen_laser_subscribe_laser3_message carmen_laser_laser_message laser,
carmen_handler_t  handler,
carmen_subscribe_t  subscribe_how
 

Subscribes the corresonding message.

void carmen_laser_subscribe_laser4_message carmen_laser_laser_message laser,
carmen_handler_t  handler,
carmen_subscribe_t  subscribe_how
 

Subscribes the corresonding message.

void carmen_laser_subscribe_laser5_message carmen_laser_laser_message laser,
carmen_handler_t  handler,
carmen_subscribe_t  subscribe_how
 

Subscribes the corresonding message.

void carmen_laser_subscribe_rearlaser_message carmen_laser_laser_message laser,
carmen_handler_t  handler,
carmen_subscribe_t  subscribe_how
 

Subscribes the raw rear laser (rawlaser2) message

void carmen_laser_unsubscribe_alive_message carmen_handler_t  handler  ) 
 

Unsubscribes the corresonding message. This means that the calling module does not want to receive this messages anymore.

void carmen_laser_unsubscribe_frontlaser_message carmen_handler_t  handler  ) 
 

Unsubscribes the corresonding message. This means that the calling module does not want to receive this messages anymore.

void carmen_laser_unsubscribe_laser3_message carmen_handler_t  handler  ) 
 

Unsubscribes the corresonding message. This means that the calling module does not want to receive this messages anymore.

void carmen_laser_unsubscribe_laser4_message carmen_handler_t  handler  ) 
 

Unsubscribes the corresonding message. This means that the calling module does not want to receive this messages anymore.

void carmen_laser_unsubscribe_laser5_message carmen_handler_t  handler  ) 
 

Unsubscribes the corresonding message. This means that the calling module does not want to receive this messages anymore.

void carmen_laser_unsubscribe_rearlaser_message carmen_handler_t  handler  ) 
 

Unsubscribes the corresonding message. This means that the calling module does not want to receive this messages anymore.


Generated on Wed Apr 5 18:34:20 2006 for CARMEN by  doxygen 1.4.4