|
INET Framework for OMNeT++/OMNEST
|
00001 // 00002 // Generated file, do not edit! Created by opp_msgc 4.2 from networklayer/icmpv6/IPv6NDMessage.msg. 00003 // 00004 00005 #ifndef _IPV6NDMESSAGE_M_H_ 00006 #define _IPV6NDMESSAGE_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 "ICMPv6Message_m.h" 00018 #include "IPv6Address.h" 00019 #include "MACAddress.h" 00020 // }} 00021 00022 00023 00038 class IPv6NDPrefixInformation : public ::cObject 00039 { 00040 protected: 00041 unsigned int prefixLength_var; 00042 bool onlinkFlag_var; 00043 bool autoAddressConfFlag_var; 00044 unsigned int validLifetime_var; 00045 unsigned int preferredLifetime_var; 00046 IPv6Address prefix_var; 00047 00048 private: 00049 void copy(const IPv6NDPrefixInformation& other); 00050 00051 protected: 00052 // protected and unimplemented operator==(), to prevent accidental usage 00053 bool operator==(const IPv6NDPrefixInformation&); 00054 00055 public: 00056 IPv6NDPrefixInformation(); 00057 IPv6NDPrefixInformation(const IPv6NDPrefixInformation& other); 00058 virtual ~IPv6NDPrefixInformation(); 00059 IPv6NDPrefixInformation& operator=(const IPv6NDPrefixInformation& other); 00060 virtual IPv6NDPrefixInformation *dup() const {return new IPv6NDPrefixInformation(*this);} 00061 virtual void parsimPack(cCommBuffer *b); 00062 virtual void parsimUnpack(cCommBuffer *b); 00063 00064 // field getter/setter methods 00065 virtual unsigned int getPrefixLength() const; 00066 virtual void setPrefixLength(unsigned int prefixLength); 00067 virtual bool getOnlinkFlag() const; 00068 virtual void setOnlinkFlag(bool onlinkFlag); 00069 virtual bool getAutoAddressConfFlag() const; 00070 virtual void setAutoAddressConfFlag(bool autoAddressConfFlag); 00071 virtual unsigned int getValidLifetime() const; 00072 virtual void setValidLifetime(unsigned int validLifetime); 00073 virtual unsigned int getPreferredLifetime() const; 00074 virtual void setPreferredLifetime(unsigned int preferredLifetime); 00075 virtual IPv6Address& getPrefix(); 00076 virtual const IPv6Address& getPrefix() const {return const_cast<IPv6NDPrefixInformation*>(this)->getPrefix();} 00077 virtual void setPrefix(const IPv6Address& prefix); 00078 }; 00079 00080 inline void doPacking(cCommBuffer *b, IPv6NDPrefixInformation& obj) {obj.parsimPack(b);} 00081 inline void doUnpacking(cCommBuffer *b, IPv6NDPrefixInformation& obj) {obj.parsimUnpack(b);} 00082 00093 class IPv6NDMessage : public ::ICMPv6Message 00094 { 00095 protected: 00096 int code_var; 00097 00098 private: 00099 void copy(const IPv6NDMessage& other); 00100 00101 protected: 00102 // protected and unimplemented operator==(), to prevent accidental usage 00103 bool operator==(const IPv6NDMessage&); 00104 00105 public: 00106 IPv6NDMessage(const char *name=NULL, int kind=0); 00107 IPv6NDMessage(const IPv6NDMessage& other); 00108 virtual ~IPv6NDMessage(); 00109 IPv6NDMessage& operator=(const IPv6NDMessage& other); 00110 virtual IPv6NDMessage *dup() const {return new IPv6NDMessage(*this);} 00111 virtual void parsimPack(cCommBuffer *b); 00112 virtual void parsimUnpack(cCommBuffer *b); 00113 00114 // field getter/setter methods 00115 virtual int getCode() const; 00116 virtual void setCode(int code); 00117 }; 00118 00119 inline void doPacking(cCommBuffer *b, IPv6NDMessage& obj) {obj.parsimPack(b);} 00120 inline void doUnpacking(cCommBuffer *b, IPv6NDMessage& obj) {obj.parsimUnpack(b);} 00121 00132 class IPv6RouterSolicitation : public ::IPv6NDMessage 00133 { 00134 protected: 00135 MACAddress sourceLinkLayerAddress_var; 00136 00137 private: 00138 void copy(const IPv6RouterSolicitation& other); 00139 00140 protected: 00141 // protected and unimplemented operator==(), to prevent accidental usage 00142 bool operator==(const IPv6RouterSolicitation&); 00143 00144 public: 00145 IPv6RouterSolicitation(const char *name=NULL, int kind=0); 00146 IPv6RouterSolicitation(const IPv6RouterSolicitation& other); 00147 virtual ~IPv6RouterSolicitation(); 00148 IPv6RouterSolicitation& operator=(const IPv6RouterSolicitation& other); 00149 virtual IPv6RouterSolicitation *dup() const {return new IPv6RouterSolicitation(*this);} 00150 virtual void parsimPack(cCommBuffer *b); 00151 virtual void parsimUnpack(cCommBuffer *b); 00152 00153 // field getter/setter methods 00154 virtual MACAddress& getSourceLinkLayerAddress(); 00155 virtual const MACAddress& getSourceLinkLayerAddress() const {return const_cast<IPv6RouterSolicitation*>(this)->getSourceLinkLayerAddress();} 00156 virtual void setSourceLinkLayerAddress(const MACAddress& sourceLinkLayerAddress); 00157 }; 00158 00159 inline void doPacking(cCommBuffer *b, IPv6RouterSolicitation& obj) {obj.parsimPack(b);} 00160 inline void doUnpacking(cCommBuffer *b, IPv6RouterSolicitation& obj) {obj.parsimUnpack(b);} 00161 00182 class IPv6RouterAdvertisement : public ::IPv6NDMessage 00183 { 00184 protected: 00185 unsigned int curHopLimit_var; 00186 bool managedAddrConfFlag_var; 00187 bool otherStatefulConfFlag_var; 00188 unsigned short routerLifetime_var; 00189 unsigned int reachableTime_var; 00190 unsigned int retransTimer_var; 00191 MACAddress sourceLinkLayerAddress_var; 00192 unsigned int MTU_var; 00193 IPv6NDPrefixInformation *prefixInformation_var; // array ptr 00194 unsigned int prefixInformation_arraysize; 00195 00196 private: 00197 void copy(const IPv6RouterAdvertisement& other); 00198 00199 protected: 00200 // protected and unimplemented operator==(), to prevent accidental usage 00201 bool operator==(const IPv6RouterAdvertisement&); 00202 00203 public: 00204 IPv6RouterAdvertisement(const char *name=NULL, int kind=0); 00205 IPv6RouterAdvertisement(const IPv6RouterAdvertisement& other); 00206 virtual ~IPv6RouterAdvertisement(); 00207 IPv6RouterAdvertisement& operator=(const IPv6RouterAdvertisement& other); 00208 virtual IPv6RouterAdvertisement *dup() const {return new IPv6RouterAdvertisement(*this);} 00209 virtual void parsimPack(cCommBuffer *b); 00210 virtual void parsimUnpack(cCommBuffer *b); 00211 00212 // field getter/setter methods 00213 virtual unsigned int getCurHopLimit() const; 00214 virtual void setCurHopLimit(unsigned int curHopLimit); 00215 virtual bool getManagedAddrConfFlag() const; 00216 virtual void setManagedAddrConfFlag(bool managedAddrConfFlag); 00217 virtual bool getOtherStatefulConfFlag() const; 00218 virtual void setOtherStatefulConfFlag(bool otherStatefulConfFlag); 00219 virtual unsigned short getRouterLifetime() const; 00220 virtual void setRouterLifetime(unsigned short routerLifetime); 00221 virtual unsigned int getReachableTime() const; 00222 virtual void setReachableTime(unsigned int reachableTime); 00223 virtual unsigned int getRetransTimer() const; 00224 virtual void setRetransTimer(unsigned int retransTimer); 00225 virtual MACAddress& getSourceLinkLayerAddress(); 00226 virtual const MACAddress& getSourceLinkLayerAddress() const {return const_cast<IPv6RouterAdvertisement*>(this)->getSourceLinkLayerAddress();} 00227 virtual void setSourceLinkLayerAddress(const MACAddress& sourceLinkLayerAddress); 00228 virtual unsigned int getMTU() const; 00229 virtual void setMTU(unsigned int MTU); 00230 virtual void setPrefixInformationArraySize(unsigned int size); 00231 virtual unsigned int getPrefixInformationArraySize() const; 00232 virtual IPv6NDPrefixInformation& getPrefixInformation(unsigned int k); 00233 virtual const IPv6NDPrefixInformation& getPrefixInformation(unsigned int k) const {return const_cast<IPv6RouterAdvertisement*>(this)->getPrefixInformation(k);} 00234 virtual void setPrefixInformation(unsigned int k, const IPv6NDPrefixInformation& prefixInformation); 00235 }; 00236 00237 inline void doPacking(cCommBuffer *b, IPv6RouterAdvertisement& obj) {obj.parsimPack(b);} 00238 inline void doUnpacking(cCommBuffer *b, IPv6RouterAdvertisement& obj) {obj.parsimUnpack(b);} 00239 00253 class IPv6NeighbourSolicitation : public ::IPv6NDMessage 00254 { 00255 protected: 00256 IPv6Address targetAddress_var; 00257 MACAddress sourceLinkLayerAddress_var; 00258 00259 private: 00260 void copy(const IPv6NeighbourSolicitation& other); 00261 00262 protected: 00263 // protected and unimplemented operator==(), to prevent accidental usage 00264 bool operator==(const IPv6NeighbourSolicitation&); 00265 00266 public: 00267 IPv6NeighbourSolicitation(const char *name=NULL, int kind=0); 00268 IPv6NeighbourSolicitation(const IPv6NeighbourSolicitation& other); 00269 virtual ~IPv6NeighbourSolicitation(); 00270 IPv6NeighbourSolicitation& operator=(const IPv6NeighbourSolicitation& other); 00271 virtual IPv6NeighbourSolicitation *dup() const {return new IPv6NeighbourSolicitation(*this);} 00272 virtual void parsimPack(cCommBuffer *b); 00273 virtual void parsimUnpack(cCommBuffer *b); 00274 00275 // field getter/setter methods 00276 virtual IPv6Address& getTargetAddress(); 00277 virtual const IPv6Address& getTargetAddress() const {return const_cast<IPv6NeighbourSolicitation*>(this)->getTargetAddress();} 00278 virtual void setTargetAddress(const IPv6Address& targetAddress); 00279 virtual MACAddress& getSourceLinkLayerAddress(); 00280 virtual const MACAddress& getSourceLinkLayerAddress() const {return const_cast<IPv6NeighbourSolicitation*>(this)->getSourceLinkLayerAddress();} 00281 virtual void setSourceLinkLayerAddress(const MACAddress& sourceLinkLayerAddress); 00282 }; 00283 00284 inline void doPacking(cCommBuffer *b, IPv6NeighbourSolicitation& obj) {obj.parsimPack(b);} 00285 inline void doUnpacking(cCommBuffer *b, IPv6NeighbourSolicitation& obj) {obj.parsimUnpack(b);} 00286 00303 class IPv6NeighbourAdvertisement : public ::IPv6NDMessage 00304 { 00305 protected: 00306 bool routerFlag_var; 00307 bool solicitedFlag_var; 00308 bool overrideFlag_var; 00309 IPv6Address targetAddress_var; 00310 MACAddress targetLinkLayerAddress_var; 00311 00312 private: 00313 void copy(const IPv6NeighbourAdvertisement& other); 00314 00315 protected: 00316 // protected and unimplemented operator==(), to prevent accidental usage 00317 bool operator==(const IPv6NeighbourAdvertisement&); 00318 00319 public: 00320 IPv6NeighbourAdvertisement(const char *name=NULL, int kind=0); 00321 IPv6NeighbourAdvertisement(const IPv6NeighbourAdvertisement& other); 00322 virtual ~IPv6NeighbourAdvertisement(); 00323 IPv6NeighbourAdvertisement& operator=(const IPv6NeighbourAdvertisement& other); 00324 virtual IPv6NeighbourAdvertisement *dup() const {return new IPv6NeighbourAdvertisement(*this);} 00325 virtual void parsimPack(cCommBuffer *b); 00326 virtual void parsimUnpack(cCommBuffer *b); 00327 00328 // field getter/setter methods 00329 virtual bool getRouterFlag() const; 00330 virtual void setRouterFlag(bool routerFlag); 00331 virtual bool getSolicitedFlag() const; 00332 virtual void setSolicitedFlag(bool solicitedFlag); 00333 virtual bool getOverrideFlag() const; 00334 virtual void setOverrideFlag(bool overrideFlag); 00335 virtual IPv6Address& getTargetAddress(); 00336 virtual const IPv6Address& getTargetAddress() const {return const_cast<IPv6NeighbourAdvertisement*>(this)->getTargetAddress();} 00337 virtual void setTargetAddress(const IPv6Address& targetAddress); 00338 virtual MACAddress& getTargetLinkLayerAddress(); 00339 virtual const MACAddress& getTargetLinkLayerAddress() const {return const_cast<IPv6NeighbourAdvertisement*>(this)->getTargetLinkLayerAddress();} 00340 virtual void setTargetLinkLayerAddress(const MACAddress& targetLinkLayerAddress); 00341 }; 00342 00343 inline void doPacking(cCommBuffer *b, IPv6NeighbourAdvertisement& obj) {obj.parsimPack(b);} 00344 inline void doUnpacking(cCommBuffer *b, IPv6NeighbourAdvertisement& obj) {obj.parsimUnpack(b);} 00345 00361 class IPv6Redirect : public ::IPv6NDMessage 00362 { 00363 protected: 00364 IPv6Address targetAddress_var; 00365 IPv6Address destinationAddress_var; 00366 MACAddress targetLinkLayerAddress_var; 00367 00368 private: 00369 void copy(const IPv6Redirect& other); 00370 00371 protected: 00372 // protected and unimplemented operator==(), to prevent accidental usage 00373 bool operator==(const IPv6Redirect&); 00374 00375 public: 00376 IPv6Redirect(const char *name=NULL, int kind=0); 00377 IPv6Redirect(const IPv6Redirect& other); 00378 virtual ~IPv6Redirect(); 00379 IPv6Redirect& operator=(const IPv6Redirect& other); 00380 virtual IPv6Redirect *dup() const {return new IPv6Redirect(*this);} 00381 virtual void parsimPack(cCommBuffer *b); 00382 virtual void parsimUnpack(cCommBuffer *b); 00383 00384 // field getter/setter methods 00385 virtual IPv6Address& getTargetAddress(); 00386 virtual const IPv6Address& getTargetAddress() const {return const_cast<IPv6Redirect*>(this)->getTargetAddress();} 00387 virtual void setTargetAddress(const IPv6Address& targetAddress); 00388 virtual IPv6Address& getDestinationAddress(); 00389 virtual const IPv6Address& getDestinationAddress() const {return const_cast<IPv6Redirect*>(this)->getDestinationAddress();} 00390 virtual void setDestinationAddress(const IPv6Address& destinationAddress); 00391 virtual MACAddress& getTargetLinkLayerAddress(); 00392 virtual const MACAddress& getTargetLinkLayerAddress() const {return const_cast<IPv6Redirect*>(this)->getTargetLinkLayerAddress();} 00393 virtual void setTargetLinkLayerAddress(const MACAddress& targetLinkLayerAddress); 00394 }; 00395 00396 inline void doPacking(cCommBuffer *b, IPv6Redirect& obj) {obj.parsimPack(b);} 00397 inline void doUnpacking(cCommBuffer *b, IPv6Redirect& obj) {obj.parsimUnpack(b);} 00398 00399 00400 #endif // _IPV6NDMESSAGE_M_H_