Go to the documentation of this file.
65 #ifndef PROTOCOLMANAGER_H
66 #define PROTOCOLMANAGER_H
113 virtual
void clear();
virtual void clear()
Clears the protocol handlers list.
A list of uint8_t values.
Communicator const & m_communicator
const_iterator begin() const
Interface class for protocol manager.
std::list< value_type > container_type
A typedef for a container type.
A base struct for a communication interface.
virtual value_type add(IProtocolHandler *handler)
Adds the protocol handler.
MessageLocation findMessage(XsProtocolType &type, const XsByteArray &raw) override
Searches for a raw message in a raw data.
container_type::const_iterator const_iterator
A typedef for a const iterator.
virtual value_type find(XsProtocolType type)
Searches the registered protocol handlers for a handler that matches the given protocol type and retu...
Interface class for protocol handlers.
container_type m_protocolHandlers
int likelyMinimumMessageSize() const
Structure for storing a single message.
std::shared_ptr< IProtocolHandler > value_type
A typedef for a value type.
virtual bool hasProtocol(XsProtocolType type) const
bool validateMessage(XsMessage const &message) const override
Check a message for a validity.
const_iterator end() const
XsProtocolType
Protocol types (XsDevice::enableProtocol())
ProtocolManager(Communicator const &)
Default constructor.
XsMessage convertToMessage(XsProtocolType &type, MessageLocation &location, const XsByteArray &raw) override
Converts raw data using location into a XsMessage object.
virtual ~ProtocolManager()
virtual bool remove(XsProtocolType type)
Removes a protocol handler of a specified type.
Stores the location of a message in a buffer using a start position and a size.
Supplies multi-protocol data stream parsing.