13 #include "croflexception.h"
38 FFRAME_FLAG_MEM = (1 << 0),
45 std::bitset<32> flags;
50 #define DEFAULT_FFRAME_SIZE 128
69 uint8_t* _data = NULL,
77 size_t len = DEFAULT_FFRAME_SIZE);
89 reset(uint8_t *_data,
size_t _datalen);
155 uint8_t *data,
size_t datalen) {};
226 return (0 == datalen);
252 operator<< (std::ostream& os,
fframe const& frame) {
253 os <<
indent(0) <<
"<fframe: ";
254 os <<
"data:" << (
void*)frame.
soframe() <<
" ";
255 os <<
"datalen:" << frame.
framelen() <<
" ";
256 os <<
"self-contained-mem:" << (frame.flags.test(FFRAME_FLAG_MEM) ?
"yes" :
"no") <<
" ";
257 os <<
"next:" << (
void*)frame.next <<
" ";
258 os <<
"prev:" << (
void*)frame.prev <<
" ";
259 os <<
">" << std::endl;
virtual size_t need_bytes() const
Definition: fframe.h:136
virtual uint8_t & operator[](size_t index)
Definition: fframe.cc:100
virtual void payload_insert(uint8_t *data, size_t datalen)
Definition: fframe.h:154
virtual size_t pdulen() const
Returns length of this PDU.
Definition: fframe.h:113
virtual void initialize()
Definition: fframe.h:148
fframe & operator=(const fframe &frame)
Definition: fframe.cc:79
void shift_right(size_t bytes)
Definition: fframe.h:244
bool empty() const
Definition: fframe.h:224
void shift_left(size_t bytes)
Definition: fframe.h:234
fframe(uint8_t *_data=NULL, size_t _datalen=0)
Definition: fframe.cc:9
virtual ~fframe()
Definition: fframe.cc:35
virtual size_t framelen() const
Definition: fframe.h:202
virtual uint8_t * sosdu() const
Returns pointer to begin of SDU encapsulated in this PDU (if any).
Definition: fframe.h:119
C++ abstraction for malloc'ed memory areas.
Definition: cmemory.h:44
virtual uint8_t * sopdu() const
Returns pointer to begin of this PDU.
Definition: fframe.h:106
virtual uint8_t * soframe() const
Definition: fframe.h:192
virtual uint8_t * payload() const
Definition: fframe.h:162
virtual size_t payloadlen() const
Definition: fframe.h:172
virtual bool complete() const
Definition: fframe.h:131
virtual void validate(uint16_t total_len=0) const
Definition: fframe.h:142
virtual void reset(uint8_t *_data, size_t _datalen)
Definition: fframe.cc:50
Definition: croflexception.h:27