FeeServer::Packet Class Reference
[Packets.]

#include <feeserver/fee_packet.hh>

Inheritance diagram for FeeServer::Packet:

Inheritance graph
[legend]
Collaboration diagram for FeeServer::Packet:

Collaboration graph
[legend]

List of all members.


Detailed Description

A packet. Base class for other packet strutures. It defines member functions to encode/decode a package to/from a byte buffer.

Public Member Functions

 Packet (unsigned int id=0, short error=0, unsigned short flags=0, unsigned char *data=0, size_t size=0)
 Packet (const Header &h, unsigned char *data=0, size_t size=0)
virtual ~Packet ()
size_t ToBuffer (std::vector< unsigned char > &buf) const
size_t FromBuffer (const unsigned char *buf, size_t size)
bool ValidateChecksum () const

Public Attributes

Header _header
size_t _size
std::vector< unsigned char > _data

Constructor & Destructor Documentation

FeeServer::Packet::Packet ( unsigned int  id = 0,
short  error = 0,
unsigned short  flags = 0,
unsigned char *  data = 0,
size_t  size = 0 
)

Constructor

Parameters:
id Acknowledge Id. Copy of the request number.
error Return code
flags Flags
data The return data block.
size Size of the return block.

FeeServer::Packet::Packet ( const Header h,
unsigned char *  data = 0,
size_t  size = 0 
)

Constructor

Parameters:
h The header to use
data The payload
size The size

virtual FeeServer::Packet::~Packet (  )  [inline, virtual]

Desctructor


Member Function Documentation

size_t FeeServer::Packet::ToBuffer ( std::vector< unsigned char > &  buf  )  const

Copy to a byte buffer

Parameters:
buf Bufffer to copy to. The member function automatically enlarges the buffer if needed.
Returns:
number of bytes written to buffer

size_t FeeServer::Packet::FromBuffer ( const unsigned char *  buf,
size_t  size 
)

Copy from a byte buffer

Parameters:
buf Buffer to copy from.
size Size of buffer
Returns:
number of bytes copies

bool FeeServer::Packet::ValidateChecksum (  )  const

Validate the check sum

Returns:
true if the check sum matches, false otherwise


Member Data Documentation

Size of payloady

std::vector<unsigned char> FeeServer::Packet::_data

Payload


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

Generated on Thu Jun 26 17:02:32 2008 for FeeServer++ 0.9 by  doxygen 1.5.6