INET Framework for OMNeT++/OMNEST
IPv6NDMessage_m.h
Go to the documentation of this file.
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_