Public Member Functions | Public Attributes | Protected Member Functions
packet_handler::payloadBase Class Reference

Provides base class for payloads. More...

#include <payload_base.hpp>

Inheritance diagram for packet_handler::payloadBase:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual bool deserialise (ecl::PushAndPop< unsigned char > &byteStream)=0
 payloadBase (const bool is_dynamic_=false, const unsigned char length_=0)
virtual bool serialise (ecl::PushAndPop< unsigned char > &byteStream)=0
virtual ~payloadBase ()

Public Attributes

const bool is_dynamic
const unsigned char length
bool yes

Protected Member Functions

template<typename T >
void buildBytes (const T &V, ecl::PushAndPop< unsigned char > &buffer)
template<>
void buildBytes (const float &V, ecl::PushAndPop< unsigned char > &buffer)
template<typename T >
void buildVariable (T &V, ecl::PushAndPop< unsigned char > &buffer)
template<>
void buildVariable (float &V, ecl::PushAndPop< unsigned char > &buffer)

Detailed Description

Provides base class for payloads.

Definition at line 38 of file payload_base.hpp.


Constructor & Destructor Documentation

packet_handler::payloadBase::payloadBase ( const bool  is_dynamic_ = false,
const unsigned char  length_ = 0 
) [inline]

Definition at line 64 of file payload_base.hpp.

virtual packet_handler::payloadBase::~payloadBase ( ) [inline, virtual]

Definition at line 69 of file payload_base.hpp.


Member Function Documentation

template<typename T >
void packet_handler::payloadBase::buildBytes ( const T &  V,
ecl::PushAndPop< unsigned char > &  buffer 
) [inline, protected]

Definition at line 96 of file payload_base.hpp.

template<>
void packet_handler::payloadBase::buildBytes ( const float &  V,
ecl::PushAndPop< unsigned char > &  buffer 
) [inline, protected]

Definition at line 130 of file payload_base.hpp.

template<typename T >
void packet_handler::payloadBase::buildVariable ( T &  V,
ecl::PushAndPop< unsigned char > &  buffer 
) [inline, protected]

Definition at line 82 of file payload_base.hpp.

template<>
void packet_handler::payloadBase::buildVariable ( float &  V,
ecl::PushAndPop< unsigned char > &  buffer 
) [inline, protected]

Need to be very careful with this - it will only work across platforms if they happen to be doing reinterpret_cast with the same float standard.

Parameters:
V
buffer

Definition at line 113 of file payload_base.hpp.

virtual bool packet_handler::payloadBase::deserialise ( ecl::PushAndPop< unsigned char > &  byteStream) [pure virtual]
virtual bool packet_handler::payloadBase::serialise ( ecl::PushAndPop< unsigned char > &  byteStream) [pure virtual]

Member Data Documentation

it indicates the type of derived packet. if packet type is dynamic, length of packet can be changed during communication session. Ohterwise can not.

Definition at line 52 of file payload_base.hpp.

it indicates length of data part of packet, except header and length field. if packet is fixed type, this value should be matched with length field. if packet is dynamic type, this value indicates minimal value of length field.

Definition at line 59 of file payload_base.hpp.

this is simple magic to write the flag, when we get the packet from the host or when we want to send the data

Definition at line 46 of file payload_base.hpp.


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


kobuki_driver
Author(s): Daniel Stonier , Younghun Ju , Jorge Santos Simon
autogenerated on Thu Jun 6 2019 20:24:37