RINASim  October 2016
Documentation of framework for OMNeT++
UserDataField_Base Class Reference

#include <UserDataField_m.h>

Inheritance diagram for UserDataField_Base:
UserDataField

Public Member Functions

virtual ~UserDataField_Base ()
 
virtual UserDataField_Basedup () const
 
virtual void parsimPack (omnetpp::cCommBuffer *b) const
 
virtual void parsimUnpack (omnetpp::cCommBuffer *b)
 
virtual bool getSduSeqNumPresent () const
 
virtual void setSduSeqNumPresent (bool sduSeqNumPresent)
 
virtual bool getNoLength () const
 
virtual void setNoLength (bool noLength)
 
virtual bool getMidFragment () const
 
virtual void setMidFragment (bool midFragment)
 
virtual bool getFirstFragment () const
 
virtual void setFirstFragment (bool firstFragment)
 
virtual bool getLastFragment () const
 
virtual void setLastFragment (bool lastFragment)
 
virtual bool getCompleteSDU () const
 
virtual void setCompleteSDU (bool completeSDU)
 
virtual unsigned int getSduSeqNum () const
 
virtual void setSduSeqNum (unsigned int sduSeqNum)
 

Protected Member Functions

bool operator== (const UserDataField_Base &)
 
 UserDataField_Base (const char *name=nullptr, int kind=0)
 
 UserDataField_Base (const UserDataField_Base &other)
 
UserDataField_Baseoperator= (const UserDataField_Base &other)
 

Protected Attributes

bool sduSeqNumPresent
 
bool noLength
 
bool midFragment
 
bool firstFragment
 
bool lastFragment
 
bool completeSDU
 
unsigned int sduSeqNum
 

Private Member Functions

void copy (const UserDataField_Base &other)
 

Detailed Description

Class generated from DIF/Delimiting/UserDataField.msg:26 by nedtool.

packet UserDataField
{
    (true);  // see the generated C++ header for more info
    // SDU delimiter flags
    bool sduSeqNumPresent = false;
    bool noLength = true;
    bool midFragment = false;
    bool firstFragment = false;
    bool lastFragment = false;
    bool completeSDU = false;
    unsigned int sduSeqNum = 0;
    byteLength = 1; //SDU delimiter flags = 1B; presence of other fields depend on Data/PDUData content
}

UserDataField_Base is only useful if it gets subclassed, and UserDataField is derived from it. The minimum code to be written for UserDataField is the following:

class UserDataField : public UserDataField_Base
{
  private:
    void copy(const UserDataField& other) { ... }
  public:
    UserDataField(const char *name=nullptr, int kind=0) : UserDataField_Base(name,kind) {}
    UserDataField(const UserDataField& other) : UserDataField_Base(other) {copy(other);}
    UserDataField& operator=(const UserDataField& other) {if (this==&other) return *this; UserDataField_Base::operator=(other); copy(other); return *this;}
    virtual UserDataField *dup() const {return new UserDataField(*this);}
    // ADD CODE HERE to redefine and implement pure virtual functions from UserDataField_Base
};

The following should go into a .cc (.cpp) file:

Register_Class(UserDataField);

Definition at line 67 of file UserDataField_m.h.

Constructor & Destructor Documentation

UserDataField_Base::UserDataField_Base ( const char *  name = nullptr,
int  kind = 0 
)
protected

Definition at line 164 of file UserDataField_m.cc.

UserDataField_Base::UserDataField_Base ( const UserDataField_Base other)
protected

Definition at line 177 of file UserDataField_m.cc.

UserDataField_Base::~UserDataField_Base ( )
virtual

Definition at line 182 of file UserDataField_m.cc.

Member Function Documentation

void UserDataField_Base::copy ( const UserDataField_Base other)
private

Definition at line 194 of file UserDataField_m.cc.

Referenced by operator=(), and UserDataField_Base().

virtual UserDataField_Base* UserDataField_Base::dup ( ) const
inlinevirtual

Reimplemented in UserDataField.

Definition at line 92 of file UserDataField_m.h.

bool UserDataField_Base::getCompleteSDU ( ) const
virtual

Definition at line 279 of file UserDataField_m.cc.

Referenced by UserDataFieldDescriptor::getFieldValueAsString().

bool UserDataField_Base::getFirstFragment ( ) const
virtual

Definition at line 259 of file UserDataField_m.cc.

Referenced by UserDataFieldDescriptor::getFieldValueAsString().

bool UserDataField_Base::getLastFragment ( ) const
virtual

Definition at line 269 of file UserDataField_m.cc.

Referenced by UserDataFieldDescriptor::getFieldValueAsString().

bool UserDataField_Base::getMidFragment ( ) const
virtual

Definition at line 249 of file UserDataField_m.cc.

Referenced by UserDataFieldDescriptor::getFieldValueAsString().

bool UserDataField_Base::getNoLength ( ) const
virtual

Definition at line 239 of file UserDataField_m.cc.

Referenced by UserDataFieldDescriptor::getFieldValueAsString().

unsigned int UserDataField_Base::getSduSeqNum ( ) const
virtual

Reimplemented in UserDataField.

Definition at line 289 of file UserDataField_m.cc.

Referenced by UserDataFieldDescriptor::getFieldValueAsString().

bool UserDataField_Base::getSduSeqNumPresent ( ) const
virtual

Definition at line 229 of file UserDataField_m.cc.

Referenced by UserDataFieldDescriptor::getFieldValueAsString().

UserDataField_Base & UserDataField_Base::operator= ( const UserDataField_Base other)
protected

Definition at line 186 of file UserDataField_m.cc.

Referenced by UserDataField::operator=().

bool UserDataField_Base::operator== ( const UserDataField_Base )
protected
void UserDataField_Base::parsimPack ( omnetpp::cCommBuffer *  b) const
virtual

Definition at line 205 of file UserDataField_m.cc.

void UserDataField_Base::parsimUnpack ( omnetpp::cCommBuffer *  b)
virtual

Definition at line 217 of file UserDataField_m.cc.

void UserDataField_Base::setFirstFragment ( bool  firstFragment)
virtual
void UserDataField_Base::setLastFragment ( bool  lastFragment)
virtual
void UserDataField_Base::setMidFragment ( bool  midFragment)
virtual
void UserDataField_Base::setNoLength ( bool  noLength)
virtual
void UserDataField_Base::setSduSeqNum ( unsigned int  sduSeqNum)
virtual

Reimplemented in UserDataField.

Definition at line 294 of file UserDataField_m.cc.

Referenced by UserDataFieldDescriptor::setFieldValueAsString().

void UserDataField_Base::setSduSeqNumPresent ( bool  sduSeqNumPresent)
virtual

Member Data Documentation

bool UserDataField_Base::completeSDU
protected
bool UserDataField_Base::firstFragment
protected
bool UserDataField_Base::lastFragment
protected
bool UserDataField_Base::midFragment
protected
bool UserDataField_Base::noLength
protected
unsigned int UserDataField_Base::sduSeqNum
protected
bool UserDataField_Base::sduSeqNumPresent
protected

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