|
INET Framework for OMNeT++/OMNEST
|
00001 // 00002 // Generated file, do not edit! Created by opp_msgc 4.2 from linklayer/contract/Ieee802Ctrl.msg. 00003 // 00004 00005 #ifndef _IEEE802CTRL_M_H_ 00006 #define _IEEE802CTRL_M_H_ 00007 00008 #include <omnetpp.h> 00009 00010 // opp_msgc version check 00011 #define MSGC_VERSION 0x0402 00012 #if (MSGC_VERSION!=OMNETPP_VERSION) 00013 # error Version mismatch! Probably this file was generated by an earlier version of opp_msgc: 'make clean' should help. 00014 #endif 00015 00016 // cplusplus {{ 00017 #include "MACAddress.h" 00018 // }} 00019 00020 00021 00035 enum Ieee802MessageKind { 00036 IEEE802CTRL_DATA = 2003, 00037 IEEE802CTRL_REGISTER_DSAP = 2004, 00038 IEEE802CTRL_DEREGISTER_DSAP = 2005, 00039 IEEE802CTRL_SENDPAUSE = 2006 00040 }; 00041 00059 enum SAPCode { 00060 SAP_IBM_SNA = 0x04, 00061 SAP_IP = 0x06, 00062 SAP_3COM = 0x80, 00063 SAP_SNAP = 0xAA, 00064 SAP_BANYAN = 0xBC, 00065 SAP_NOVELL_IPX = 0xE0, 00066 SAP_LAN_MANAGER = 0xF4, 00067 SAP_CLNS = 0xFE 00068 }; 00069 00082 enum EtherType { 00083 ETHERTYPE_IP = 0x0800, 00084 ETHERTYPE_ARP = 0x0806, 00085 ETHERTYPE_RARP = 0x8035 00086 }; 00087 00103 class Ieee802Ctrl : public ::cObject 00104 { 00105 protected: 00106 MACAddress src_var; 00107 MACAddress dest_var; 00108 int etherType_var; 00109 int ssap_var; 00110 int dsap_var; 00111 int pauseUnits_var; 00112 int inputPort_var; 00113 00114 private: 00115 void copy(const Ieee802Ctrl& other); 00116 00117 protected: 00118 // protected and unimplemented operator==(), to prevent accidental usage 00119 bool operator==(const Ieee802Ctrl&); 00120 00121 public: 00122 Ieee802Ctrl(); 00123 Ieee802Ctrl(const Ieee802Ctrl& other); 00124 virtual ~Ieee802Ctrl(); 00125 Ieee802Ctrl& operator=(const Ieee802Ctrl& other); 00126 virtual Ieee802Ctrl *dup() const {return new Ieee802Ctrl(*this);} 00127 virtual void parsimPack(cCommBuffer *b); 00128 virtual void parsimUnpack(cCommBuffer *b); 00129 00130 // field getter/setter methods 00131 virtual MACAddress& getSrc(); 00132 virtual const MACAddress& getSrc() const {return const_cast<Ieee802Ctrl*>(this)->getSrc();} 00133 virtual void setSrc(const MACAddress& src); 00134 virtual MACAddress& getDest(); 00135 virtual const MACAddress& getDest() const {return const_cast<Ieee802Ctrl*>(this)->getDest();} 00136 virtual void setDest(const MACAddress& dest); 00137 virtual int getEtherType() const; 00138 virtual void setEtherType(int etherType); 00139 virtual int getSsap() const; 00140 virtual void setSsap(int ssap); 00141 virtual int getDsap() const; 00142 virtual void setDsap(int dsap); 00143 virtual int getPauseUnits() const; 00144 virtual void setPauseUnits(int pauseUnits); 00145 virtual int getInputPort() const; 00146 virtual void setInputPort(int inputPort); 00147 }; 00148 00149 inline void doPacking(cCommBuffer *b, Ieee802Ctrl& obj) {obj.parsimPack(b);} 00150 inline void doUnpacking(cCommBuffer *b, Ieee802Ctrl& obj) {obj.parsimUnpack(b);} 00151 00152 00153 #endif // _IEEE802CTRL_M_H_