nidas  v1.2-1520
Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Attributes | List of all members
FixedSim Class Reference

Send a fixed message at a given rate or after a prompt. More...

Inheritance diagram for FixedSim:
Inheritance graph
[legend]

Public Member Functions

 FixedSim (n_u::SerialPort *p, const string &m, enum sep_type septype, string sep, bool prompted, string prompt, float rate, int nmessages)
 
void sendMessage () throw (n_u::IOException)
 Implement this to send a message from the simulated sensor. More...
 
virtual void writeMessage (const std::string &msg) throw (n_u::IOException)
 Subclasses generate the message to send, then call writeMessage() to send it out. More...
 
virtual void writeMessage (const char *buf, std::streamsize l) throw (n_u::IOException)
 overloaded function useful for writing binary data More...
 
virtual void run () throw (n_u::Exception)
 Default implementation of run will call the sendMessage() method either after receipt of a prompt or at the given rate if the sensor is not prompted. More...
 
void interrupt ()
 Stop the simulation. More...
 
bool isInterrupted () const
 
n_u::SerialPortport ()
 

Protected Member Functions

LoopergetLooper ()
 
void looperNotify () throw ()
 Method called by Looper. More...
 
void readPrompts () throw (n_u::IOException)
 

Protected Attributes

n_u::SerialPort_port
 
bool _prompted
 
string _prompt
 
float _rate
 
int _nmessages
 
bool _interrupted
 

Static Protected Attributes

static Looper_looper = 0
 

Private Attributes

string _msg
 
enum sep_type _septype
 
string _separator
 

Detailed Description

Send a fixed message at a given rate or after a prompt.

Constructor & Destructor Documentation

FixedSim::FixedSim ( n_u::SerialPort p,
const string &  m,
enum sep_type  septype,
string  sep,
bool  prompted,
string  prompt,
float  rate,
int  nmessages 
)

Member Function Documentation

Looper * SensorSimulator::getLooper ( )
protectedinherited
void SensorSimulator::interrupt ( )
inlineinherited

Stop the simulation.

Referenced by FileSim::sendASCIIMessage(), and FileSim::sendBinaryMessage().

bool SensorSimulator::isInterrupted ( ) const
inlineinherited
void SensorSimulator::looperNotify ( )
throw (
)
protectedvirtualinherited

Method called by Looper.

This method should not be a heavy user of resources, since the notification of other clients is delayed until this method finishes. If much work is to be done, this method should post a semaphore for another worker thread to proceed.

Implements nidas::core::LooperClient.

References nidas::util::Exception::what().

n_u::SerialPort* SensorSimulator::port ( )
inlineinherited
void SensorSimulator::readPrompts ( )
throw (n_u::IOException
)
protectedinherited
void SensorSimulator::run ( )
throw (n_u::Exception
)
virtualinherited

Default implementation of run will call the sendMessage() method either after receipt of a prompt or at the given rate if the sensor is not prompted.

run() will return when isInterrupted() is true.

Reimplemented in Csat3Sim.

References MSECS_PER_SEC.

void FixedSim::sendMessage ( )
throw (n_u::IOException
)
virtual

Implement this to send a message from the simulated sensor.

Implements SensorSimulator.

References _msg, and SensorSimulator::writeMessage().

virtual void SensorSimulator::writeMessage ( const std::string &  msg)
throw (n_u::IOException
)
inlinevirtualinherited

Subclasses generate the message to send, then call writeMessage() to send it out.

Referenced by FileSim::sendASCIIMessage(), FileSim::sendBinaryMessage(), and sendMessage().

virtual void SensorSimulator::writeMessage ( const char *  buf,
std::streamsize  l 
)
throw (n_u::IOException
)
inlinevirtualinherited

overloaded function useful for writing binary data

Member Data Documentation

bool SensorSimulator::_interrupted
protectedinherited
Looper * SensorSimulator::_looper = 0
staticprotectedinherited
string FixedSim::_msg
private

Referenced by FixedSim(), and sendMessage().

int SensorSimulator::_nmessages
protectedinherited

Referenced by Csat3Sim::run().

n_u::SerialPort* SensorSimulator::_port
protectedinherited
string SensorSimulator::_prompt
protectedinherited
bool SensorSimulator::_prompted
protectedinherited
float SensorSimulator::_rate
protectedinherited

Referenced by Csat3Sim::run().

string FixedSim::_separator
private

Referenced by FixedSim().

enum sep_type FixedSim::_septype
private

Referenced by FixedSim().


The documentation for this class was generated from the following file: