CARMA C++
CanIo.h
Go to the documentation of this file.
1 
9 #ifndef CARMA_CANBUS_CANIO_H
10 #define CARMA_CANBUS_CANIO_H
11 
12 #include "carma/canbus/CanOutput.h"
13 #include "carma/canbus/Message.h"
14 
15 namespace carma {
16 namespace canbus {
17 
22 class CanIo : public CanOutput {
23 public:
24 
30  virtual ~CanIo( );
31 
37  virtual carma::canbus::Message getMessage( ) = 0;
38 
44  virtual BusStatusMap getBusStatus( ) const;
45 
51  virtual void echoAll( bool enable );
52 
58  virtual void clearReadQueue( );
59 
66  virtual void setTimestampEchoLatency( int tsLatency, busIdType busId );
67 
73  virtual void queueMessage( const Message & msg );
74 
75 protected:
76 
77 private:
78 
79  // There are no private methods or data.
80 
81 }; // End class CanIo
82 }} // End namespace carma::canbus
83 #endif
Declaration of carma::canbus::CanOutput interface.
Declaration of carma::canbus::Message class.
virtual carma::canbus::Message getMessage()=0
Retrieve a CAN message.
Class to encapsulate a CAN message.
Definition: Message.h:21
virtual void queueMessage(const Message &msg)
Queue CAN message to be read for simulation purposes.
virtual ~CanIo()
Virtual destructor.
std::map< busIdType, busStatusType > BusStatusMap
Map to hold bus status for multiple busses.
Definition: Types.h:153
virtual void setTimestampEchoLatency(int tsLatency, busIdType busId)
Set timestamp echo latency.
virtual BusStatusMap getBusStatus() const
Retrieve bus statistics.
virtual void echoAll(bool enable)
Enable or disable echoing sent messages back through the read interface.
unsigned short busIdType
Carma Bus Id type.
Definition: Types.h:70
virtual void clearReadQueue()
Clear any underlying read buffers.
CanOutput interface.
Definition: CanOutput.h:26
CanIo interface.
Definition: CanIo.h:22