43 #ifndef _MLAB_CANDRIVERINTERFACE_H_ 44 #define _MLAB_CANDRIVERINTERFACE_H_ 48 namespace mira {
namespace can {
82 void open(
const std::string& deviceName,
99 uint8 getBusLoad()
const;
119 virtual void sendMessage(
const CANMessage& pMsg);
125 void processIncomingMessages();
126 void processOutgoingMessages();
132 boost::mutex mOutgoingMutex;
133 boost::condition_variable mOutgoingCondition;
134 std::queue<CANMessage> mOutgoingQueue;
137 boost::thread mIncomingThread;
138 boost::thread mOutgoingThread;
CANBaudRate
An enum of the different CAN baud rates.
Definition: CANDefs.h:59
Abstract class for a hardware specific CAN driver.
boost::shared_ptr< CANDriver > CANDriverPtr
Definition: CANDriver.h:186
A common interface to the CAN bus.
Definition: CANDriverInterface.h:56
CANDriverPtr getDriver() const
Returns a pointer to CAN driver.
Definition: CANDriverInterface.h:108
#define MLAB_CAN_EXPORT
Definition: CANExports.h:57
A general interface for a CAN driver.
Definition: CANInterface.h:83
A definition of a CAN message.
Definition: CANDefs.h:105
boost::shared_ptr< CANDriverInterface > CANDriverInterfacePtr
A shared pointer for CANDriverInterface.
Definition: CANDriverInterface.h:150
250 kBit/s
Definition: CANDefs.h:62