Main Page | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Namespace Members | Data Fields | Globals

RobotFlow::LaserDevice Class Reference

#include <LaserDevice.h>


Public Member Functions

 LaserDevice (std::string serial_port)
 ~LaserDevice ()
bool EstablishCommunication ()
bool ReadLaserData (unsigned short *data, unsigned long datalen)
int SetLaserMeasurement (eMeasurementMode eMeasureMode, bool bIntensity)
bool SetLaserResolution (int width, int res)
bool SetLaserSpeed (int speed)
bool StartDataAcquisition ()
bool StopDataAcquisition ()

Private Member Functions

int SetSerialBaudrate (int nBaudrate)
unsigned short CreateCRC (unsigned char *data, unsigned long len)
void End_session (int fd)
int Port_initialisation (const char *serial_port)
int ReadFromLaser (unsigned char *data, unsigned long maxLen, bool ack, bool timeout)
void Receive ()
bool SetLaserMode ()
int WriteToLaser (unsigned char *data, unsigned long len)

Private Attributes

int m_Laser_fd
int m_killed
unsigned short * m_pLastDataBuffer
pthread_t m_Receiving_thread
pthread_mutex_t m_list_lock
std::list< std::string > m_received

Friends

void * receive_threadLaser (void *myLaser)


Constructor & Destructor Documentation

RobotFlow::LaserDevice::LaserDevice (  std::string  serial_port  ) 
 

RobotFlow::LaserDevice::~LaserDevice (   ) 
 


Member Function Documentation

unsigned short RobotFlow::LaserDevice::CreateCRC (  unsigned char *  data,
unsigned long  len
)  [private]
 

void RobotFlow::LaserDevice::End_session (  int  fd  )  [private]
 

bool RobotFlow::LaserDevice::EstablishCommunication (   ) 
 

int RobotFlow::LaserDevice::Port_initialisation (  const char *  serial_port  )  [private]
 

int RobotFlow::LaserDevice::ReadFromLaser (  unsigned char *  data,
unsigned long  maxLen,
bool  ack,
bool  timeout
)  [private]
 

bool RobotFlow::LaserDevice::ReadLaserData (  unsigned short *  data,
unsigned long  datalen
) 
 

void RobotFlow::LaserDevice::Receive (   )  [private]
 

int RobotFlow::LaserDevice::SetLaserMeasurement (  eMeasurementMode  eMeasureMode,
bool  bIntensity
) 
 

bool RobotFlow::LaserDevice::SetLaserMode (   )  [private]
 

bool RobotFlow::LaserDevice::SetLaserResolution (  int  width,
int  res
) 
 

bool RobotFlow::LaserDevice::SetLaserSpeed (  int  speed  ) 
 

int RobotFlow::LaserDevice::SetSerialBaudrate (  int  nBaudrate  )  [private]
 

bool RobotFlow::LaserDevice::StartDataAcquisition (   ) 
 

bool RobotFlow::LaserDevice::StopDataAcquisition (   ) 
 

int RobotFlow::LaserDevice::WriteToLaser (  unsigned char *  data,
unsigned long  len
)  [private]
 


Friends And Related Function Documentation

void* receive_threadLaser (  void *  myLaser  )  [friend]
 


Field Documentation

int RobotFlow::LaserDevice::m_killed [private]
 

int RobotFlow::LaserDevice::m_Laser_fd [private]
 

pthread_mutex_t RobotFlow::LaserDevice::m_list_lock [private]
 

unsigned short* RobotFlow::LaserDevice::m_pLastDataBuffer [private]
 

std::list<std::string> RobotFlow::LaserDevice::m_received [private]
 

pthread_t RobotFlow::LaserDevice::m_Receiving_thread [private]
 


The documentation for this class was generated from the following files:
Generated on Wed Oct 5 14:36:27 2005 for RobotFlow by  doxygen 1.4.4