Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

EtherCtrlDescriptor Class Reference

List of all members.

Public Methods

 EtherCtrlDescriptor (void *p=NULL)
virtual ~EtherCtrlDescriptor ()
EtherCtrlDescriptor & operator= (const EtherCtrlDescriptor &other)
virtual cObject * dup () const
virtual int getFieldCount ()
virtual const char * getFieldName (int field)
virtual int getFieldType (int field)
virtual const char * getFieldTypeString (int field)
virtual const char * getFieldEnumName (int field)
virtual int getArraySize (int field)
virtual bool getFieldAsString (int field, int i, char *resultbuf, int bufsize)
virtual bool setFieldAsString (int field, int i, const char *value)
virtual const char * getFieldStructName (int field)
virtual void * getFieldStructPointer (int field, int i)
virtual sFieldWrapper * getFieldWrapper (int field, int i)

Constructor & Destructor Documentation

EtherCtrlDescriptor::EtherCtrlDescriptor void *    p = NULL
 

Definition at line 170 of file EtherCtrl_m.cc.

Referenced by dup().

00170                                                 : cStructDescriptor(p)
00171 {
00172 }

EtherCtrlDescriptor::~EtherCtrlDescriptor   [virtual]
 

Definition at line 174 of file EtherCtrl_m.cc.

00175 {
00176 }


Member Function Documentation

virtual cObject* EtherCtrlDescriptor::dup   const [inline, virtual]
 

Definition at line 151 of file EtherCtrl_m.cc.

References EtherCtrlDescriptor().

00151 {return new EtherCtrlDescriptor(*this);}

int EtherCtrlDescriptor::getArraySize int    field [virtual]
 

Definition at line 229 of file EtherCtrl_m.cc.

00230 {
00231     EtherCtrl *pp = (EtherCtrl *)p;
00232     switch (field) {
00233         default: return 0;
00234     }
00235 }

bool EtherCtrlDescriptor::getFieldAsString int    field,
int    i,
char *    resultbuf,
int    bufsize
[virtual]
 

Definition at line 237 of file EtherCtrl_m.cc.

References EtherCtrl::getDest(), EtherCtrl::getDsap(), EtherCtrl::getEtherType(), EtherCtrl::getPauseUnits(), EtherCtrl::getSrc(), and EtherCtrl::getSsap().

00238 {
00239     EtherCtrl *pp = (EtherCtrl *)p;
00240     switch (field) {
00241         case 0: {std::stringstream out; out << pp->getSrc(); opp_strprettytrunc(resultbuf,out.str().c_str(),bufsize-1); return true;}
00242         case 1: {std::stringstream out; out << pp->getDest(); opp_strprettytrunc(resultbuf,out.str().c_str(),bufsize-1); return true;}
00243         case 2: long2string(pp->getEtherType(),resultbuf,bufsize); return true;
00244         case 3: long2string(pp->getSsap(),resultbuf,bufsize); return true;
00245         case 4: long2string(pp->getDsap(),resultbuf,bufsize); return true;
00246         case 5: long2string(pp->getPauseUnits(),resultbuf,bufsize); return true;
00247         default: return false;
00248     }
00249 }

int EtherCtrlDescriptor::getFieldCount   [virtual]
 

Definition at line 178 of file EtherCtrl_m.cc.

00179 {
00180     return 6;
00181 }

const char * EtherCtrlDescriptor::getFieldEnumName int    field [virtual]
 

Definition at line 222 of file EtherCtrl_m.cc.

00223 {
00224     switch (field) {
00225         default: return NULL;
00226     }
00227 }

const char * EtherCtrlDescriptor::getFieldName int    field [virtual]
 

Definition at line 196 of file EtherCtrl_m.cc.

00197 {
00198     switch (field) {
00199         case 0: return "src";
00200         case 1: return "dest";
00201         case 2: return "etherType";
00202         case 3: return "ssap";
00203         case 4: return "dsap";
00204         case 5: return "pauseUnits";
00205         default: return NULL;
00206     }
00207 }

const char * EtherCtrlDescriptor::getFieldStructName int    field [virtual]
 

Definition at line 265 of file EtherCtrl_m.cc.

00266 {
00267     switch (field) {
00268         case 0: return "MACAddress"; break;
00269         case 1: return "MACAddress"; break;
00270         default: return NULL;
00271     }
00272 }

void * EtherCtrlDescriptor::getFieldStructPointer int    field,
int    i
[virtual]
 

Definition at line 274 of file EtherCtrl_m.cc.

References EtherCtrl::getDest(), and EtherCtrl::getSrc().

00275 {
00276     EtherCtrl *pp = (EtherCtrl *)p;
00277     switch (field) {
00278         case 0: return (void *)&pp->getSrc(); break;
00279         case 1: return (void *)&pp->getDest(); break;
00280         default: return NULL;
00281     }
00282 }

int EtherCtrlDescriptor::getFieldType int    field [virtual]
 

Definition at line 183 of file EtherCtrl_m.cc.

00184 {
00185     switch (field) {
00186         case 0: return FT_STRUCT;
00187         case 1: return FT_STRUCT;
00188         case 2: return FT_BASIC;
00189         case 3: return FT_BASIC;
00190         case 4: return FT_BASIC;
00191         case 5: return FT_BASIC;
00192         default: return FT_INVALID;
00193     }
00194 }

const char * EtherCtrlDescriptor::getFieldTypeString int    field [virtual]
 

Definition at line 209 of file EtherCtrl_m.cc.

00210 {
00211     switch (field) {
00212         case 0: return "MACAddress";
00213         case 1: return "MACAddress";
00214         case 2: return "int";
00215         case 3: return "int";
00216         case 4: return "int";
00217         case 5: return "int";
00218         default: return NULL;
00219     }
00220 }

sFieldWrapper * EtherCtrlDescriptor::getFieldWrapper int    field,
int    i
[virtual]
 

Definition at line 284 of file EtherCtrl_m.cc.

00285 {
00286     return NULL;
00287 }

EtherCtrlDescriptor& EtherCtrlDescriptor::operator= const EtherCtrlDescriptor &    other
 

bool EtherCtrlDescriptor::setFieldAsString int    field,
int    i,
const char *    value
[virtual]
 

Definition at line 251 of file EtherCtrl_m.cc.

References EtherCtrl::setDsap(), EtherCtrl::setEtherType(), EtherCtrl::setPauseUnits(), and EtherCtrl::setSsap().

00252 {
00253     EtherCtrl *pp = (EtherCtrl *)p;
00254     switch (field) {
00255         case 0: return false;
00256         case 1: return false;
00257         case 2: pp->setEtherType(string2long(value)); return true;
00258         case 3: pp->setSsap(string2long(value)); return true;
00259         case 4: pp->setDsap(string2long(value)); return true;
00260         case 5: pp->setPauseUnits(string2long(value)); return true;
00261         default: return false;
00262     }
00263 }


The documentation for this class was generated from the following file:
Generated on Sat May 15 20:30:46 2004 for Ethernet by doxygen1.2.17