Brief description of class still missing. More...
#include <CubeSerial.h>
Public Member Functions | |
bool | autoStart () const |
CubeSerial (const std::string &devicePath, speed_t speed, DynamicBuffer *buffer=0) | |
virtual void | hungUp () |
void | setAutoStart (bool as) |
void | start () |
Brief description of class still missing.
Full description of class still missing
CubeSerial::CubeSerial | ( | const std::string & | devicePath, |
speed_t | speed, | ||
DynamicBuffer * | buffer = 0 |
||
) | [inline] |
: Serial(devicePath, speed, buffer) {_autoStart=false;}
bool CubeSerial::autoStart | ( | ) | const [inline] |
Referenced by CubeDevice::autoStart().
{return _autoStart;}
void CubeSerial::hungUp | ( | ) | [virtual] |
Reimplemented from GpCoreTools::Serial.
References GpCoreTools::Serial::connect(), start(), TRACE, and GpCoreTools::Serial::write().
{ TRACE; ScreenClient::write(0, 2, "CUBE disconnected "); if(connect()) { ScreenClient::write(0, 2, "CUBE connected "); start(); } }
void CubeSerial::setAutoStart | ( | bool | as | ) | [inline] |
Referenced by CubeDevice::setAutoStart().
{_autoStart=as;}
void CubeSerial::start | ( | ) |
Request message are sent to Cube to force initialization of CubeBuffer.
References GpCoreTools::MessageClassIdOnly::buffer(), ControlMessageClass, ParameterMessageClass, and GpCoreTools::Serial::write().
Referenced by hungUp().
{ // Request stop MessageClassIdOnly msg1(ControlMessageClass, StopPayload::MessageId); write(msg1.buffer(), sizeof(msg1)); // Request sampling frequency MessageClassIdOnly msg2(ParameterMessageClass, FrequencyPayload::MessageId); write(msg2.buffer(), sizeof(msg2)); // Request gains MessageClassIdOnly msg3(ParameterMessageClass, GainsPayload::MessageId); write(msg3.buffer(), sizeof(msg3)); // Request timeMode MessageClassIdOnly msg4(ParameterMessageClass, TimeModePayload::MessageId); write(msg4.buffer(), sizeof(msg4)); if(_autoStart) { // Request start sleep(2); // Noticed problem of startup with one the prototypes, experimental ScreenClient::write(0, 2, "Starting... "); Log::write(0, "start cube\n"); MessageClassIdOnly msg5(ControlMessageClass, StartPayload::MessageId); write(msg5.buffer(), sizeof(msg5)); } }