100 typedef signed char int8;
101 typedef unsigned int uint32;
102 typedef unsigned short uint16;
103 typedef unsigned char uint8;
104 typedef float float32;
105 typedef double float64;
106 typedef unsigned char boolean;
116 #define NULL (void *)0
121 #define MAX_INT32 ((int32) 0x7fffffff)
122 #define MAX_INT16 ((int16) 0x00007fff)
123 #define MAX_INT8 ((int8) 0x0000007f)
125 #define MAX_NEG_INT32 ((int32) 0x80000000)
126 #define MAX_NEG_INT16 ((int16) 0xffff8000)
127 #define MAX_NEG_INT8 ((int8) 0xffffff80)
129 #define MAX_UINT64 ((uint64) 0xffffffffffffffff)
130 #define MAX_UINT32 ((uint32) 0xffffffff)
131 #define MAX_UINT16 ((uint16) 0x0000ffff)
132 #define MAX_UINT8 ((uint8) 0x000000ff)
135 #define MAX_POS_FLOAT32 3.4e+38f
136 #define MIN_POS_FLOAT32 1.2e-38f
137 #define MAX_POS_FLOAT64 1.8e+307
138 #define MIN_POS_FLOAT64 2.2e-308
141 #define MAX_NEG_FLOAT32 ((float32) (-MAX_POS_FLOAT32))
142 #define MIN_NEG_FLOAT32 ((float32) (-MIN_POS_FLOAT32))
143 #define MAX_NEG_FLOAT64 ((float64) (-MAX_POS_FLOAT64))
144 #define MIN_NEG_FLOAT64 ((float64) (-MIN_POS_FLOAT64))
#define PLAYER_WARN1(msg, a)
Error message macros.
Definition: error.h:90
#define PLAYER_MSG1(level, msg, a)
Error message macros.
Definition: error.h:106
static bool MatchMessage(player_msghdr_t *hdr, int type, int subtype, player_devaddr_t addr)
Helper for message processing.
Definition: message.h:159
Claser implements functions to read data from a laser scanner ROTOSCAN RS4-4 (Leuze corp....
Definition: RS4Leuze_laser.h:53
double ReadTupleLength(int section, const char *name, int index, double value)
Read a length from a tuple (includes units conversion)
Generic message header.
Definition: player.h:162
virtual int MainSetup(void)
Sets up the resources needed by the driver thread.
Definition: driver.h:658
virtual void MainQuit(void)
Cleanup method for driver thread (called when main exits)
Definition: driver.h:664
const char * ReadString(int section, const char *name, const char *value)
Read a string value.
uint8_t subtype
Message subtype; interface specific.
Definition: player.h:168
virtual void Main(void)=0
Main method for driver thread.
double ReadAngle(int section, const char *name, double value)
Read an angle (includes unit conversion).
int ReadInt(int section, const char *name, int value)
Read an integer value.
#define PLAYER_MSGTYPE_DATA
A data message.
Definition: player.h:95
#define PLAYER_MSGTYPE_RESP_ACK
A positive response message.
Definition: player.h:112
virtual int ProcessMessage(QueuePointer &resp_queue, player_msghdr *hdr, void *data)
Message handler.
#define PLAYER_MSGTYPE_REQ
A request message.
Definition: player.h:106
Definition: RS4Leuze_laser.h:44
double ReadTupleAngle(int section, const char *name, int index, double value)
Read an angle form a tuple (includes units conversion)
int ReadDeviceAddr(player_devaddr_t *addr, int section, const char *name, int code, int index, const char *key)
Read a device id.
Class for loading configuration file information.
Definition: configfile.h:197
#define PLAYER_CAPABILITIES_REQ
Capability request message type.
Definition: player.h:397
A device address.
Definition: player.h:146
An autopointer for the message queue.
Definition: message.h:74
#define PLAYER_ERROR(msg)
Error message macros.
Definition: error.h:81
Base class for drivers which oeprate with a thread.
Definition: driver.h:553
Claser(int scan_points)
Opens serial port.
Definition: RS4Leuze_laser.cc:37
Base class for all drivers.
Definition: driver.h:109
#define PLAYER_MSG0(level, msg)
General messages.
Definition: error.h:105
#define PLAYER_MSGQUEUE_DEFAULT_MAXLEN
Default maximum length for a message queue.
Definition: player.h:76