INET Framework for OMNeT++/OMNEST
RIPPacket_m.h
Go to the documentation of this file.
00001 //
00002 // Generated file, do not edit! Created by opp_msgc 4.2 from ansa/rip/RIPPacket.msg.
00003 //
00004 
00005 #ifndef _RIPPACKET_M_H_
00006 #define _RIPPACKET_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 "IPAddress.h"
00018 // }}
00019 
00020 
00021 
00032 enum RIPCommand {
00033     Request = 1,
00034     Response = 2
00035 };
00036 
00040 struct RouteEntry
00041 {
00042     RouteEntry();
00043     short addressID;
00044     short mustBeZero2;
00045     IPAddress ipAddress;
00046     long mustBeZero3;
00047     long mustBeZero4;
00048     long metric;
00049 };
00050 
00051 void doPacking(cCommBuffer *b, RouteEntry& a);
00052 void doUnpacking(cCommBuffer *b, RouteEntry& a);
00053 
00066 class RIPPacket : public ::cMessage
00067 {
00068   protected:
00069     char command_var;
00070     char version_var;
00071     short mustBeZero1_var;
00072     RouteEntry *routeEntry_var; // array ptr
00073     unsigned int routeEntry_arraysize;
00074 
00075   private:
00076     void copy(const RIPPacket& other);
00077 
00078   protected:
00079     // protected and unimplemented operator==(), to prevent accidental usage
00080     bool operator==(const RIPPacket&);
00081 
00082   public:
00083     RIPPacket(const char *name=NULL, int kind=0);
00084     RIPPacket(const RIPPacket& other);
00085     virtual ~RIPPacket();
00086     RIPPacket& operator=(const RIPPacket& other);
00087     virtual RIPPacket *dup() const {return new RIPPacket(*this);}
00088     virtual void parsimPack(cCommBuffer *b);
00089     virtual void parsimUnpack(cCommBuffer *b);
00090 
00091     // field getter/setter methods
00092     virtual char getCommand() const;
00093     virtual void setCommand(char command);
00094     virtual char getVersion() const;
00095     virtual void setVersion(char version);
00096     virtual short getMustBeZero1() const;
00097     virtual void setMustBeZero1(short mustBeZero1);
00098     virtual void setRouteEntryArraySize(unsigned int size);
00099     virtual unsigned int getRouteEntryArraySize() const;
00100     virtual RouteEntry& getRouteEntry(unsigned int k);
00101     virtual const RouteEntry& getRouteEntry(unsigned int k) const {return const_cast<RIPPacket*>(this)->getRouteEntry(k);}
00102     virtual void setRouteEntry(unsigned int k, const RouteEntry& routeEntry);
00103 };
00104 
00105 inline void doPacking(cCommBuffer *b, RIPPacket& obj) {obj.parsimPack(b);}
00106 inline void doUnpacking(cCommBuffer *b, RIPPacket& obj) {obj.parsimUnpack(b);}
00107 
00108 
00109 #endif // _RIPPACKET_M_H_