PastryMessage_m.h

Go to the documentation of this file.
00001 //
00002 // Generated file, do not edit! Created by opp_msgc 4.1 from overlay/pastry/PastryMessage.msg.
00003 //
00004 
00005 #ifndef _PASTRYMESSAGE_M_H_
00006 #define _PASTRYMESSAGE_M_H_
00007 
00008 #include <omnetpp.h>
00009 
00010 // opp_msgc version check
00011 #define MSGC_VERSION 0x0401
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 <IPvXAddress.h>
00018 #include <NodeHandle.h>
00019 #include <OverlayKey.h>
00020 #include <CommonMessages_m.h>
00021 
00022 
00023 static const int PASTRYTYPE_L = 8;
00024 static const int PASTRYSTATETYPE_L = 8;
00025 static const int PASTRYREQUESTTYPE_L = 0;
00026 static const int LASTHOPFLAG_L = 8;
00027 static const int TIMESTAMP_L = 32;
00028 static const int PASTRYFINDNODEEXTDATA_L = NODEHANDLE_L + HOPCOUNT_L;
00029 
00030 #define PASTRY_L(msg) (BASEOVERLAY_L(msg) + PASTRYTYPE_L)
00031 #define PASTRYJOIN_L(msg) (PASTRY_L(msg) + TRANSPORTADDRESS_L + HOPCOUNT_L)
00032 #define PASTRYREQ_L(msg) (PASTRY_L(msg) + TRANSPORTADDRESS_L + PASTRYREQUESTTYPE_L)
00033 #define PASTRYSTATE_L(msg) (PASTRY_L(msg) + TRANSPORTADDRESS_L \
00034         + NODEHANDLE_L * \
00035         (msg->getRoutingTableArraySize() + msg->getLeafSetArraySize() \
00036         + msg->getNeighborhoodSetArraySize()) + ARRAYSIZE_L + HOPCOUNT_L + \
00037         LASTHOPFLAG_L + TIMESTAMP_L)
00038 #define PASTRYNEWLEAFS_L(msg) (msg->getLeafsArraySize() * NODEHANDLE_L + \
00039         ARRAYSIZE_L)
00040 #define PASTRYLEAFSET_L(msg) (PASTRY_L(msg) + TRANSPORTADDRESS_L \
00041         + NODEHANDLE_L * msg->getLeafSetArraySize() + ARRAYSIZE_L)
00042 #define PASTRYRTREQ_L(msg) (PASTRY_L(msg) + TRANSPORTADDRESS_L)
00043 #define PASTRYRTABLE_L(msg) (PASTRY_L(msg) + TRANSPORTADDRESS_L \
00044         + NODEHANDLE_L * msg->getRoutingTableArraySize() + ARRAYSIZE_L)
00045 // }}
00046 
00047 
00048 
00068 enum PastryMsgType {
00069     PASTRY_MSG_STD = 0,
00070     PASTRY_MSG_JOIN = 1,
00071     PASTRY_MSG_STATE = 2,
00072     PASTRY_MSG_REQ = 3,
00073     PASTRY_MSG_LEAFSET = 4,
00074     PASTRY_MSG_ROWREQ = 5,
00075     PASTRY_MSG_RROW = 6,
00076     PASTRY_MSG_LEAFSET_PULL = 7,
00077     PASTRY_REQ_REPAIR = 8,
00078     PASTRY_REQ_STATE = 9,
00079     PASTRY_REQ_LEAFSET = 10
00080 };
00081 
00096 enum PastryStateMsgType {
00097     PASTRY_STATE_STD = 0,
00098     PASTRY_STATE_JOIN = 1,
00099     PASTRY_STATE_MINJOIN = 2,
00100     PASTRY_STATE_UPDATE = 3,
00101     PASTRY_STATE_REPAIR = 4,
00102     PASTRY_STATE_JOINUPDATE = 5
00103 };
00104 
00114 class PastryMessage : public ::BaseOverlayMessage
00115 {
00116   protected:
00117     int pastryMsgType_var;
00118 
00119     // protected and unimplemented operator==(), to prevent accidental usage
00120     bool operator==(const PastryMessage&);
00121 
00122   public:
00123     PastryMessage(const char *name=NULL, int kind=0);
00124     PastryMessage(const PastryMessage& other);
00125     virtual ~PastryMessage();
00126     PastryMessage& operator=(const PastryMessage& other);
00127     virtual PastryMessage *dup() const {return new PastryMessage(*this);}
00128     virtual void parsimPack(cCommBuffer *b);
00129     virtual void parsimUnpack(cCommBuffer *b);
00130 
00131     // field getter/setter methods
00132     virtual int getPastryMsgType() const;
00133     virtual void setPastryMsgType(int pastryMsgType_var);
00134 };
00135 
00136 inline void doPacking(cCommBuffer *b, PastryMessage& obj) {obj.parsimPack(b);}
00137 inline void doUnpacking(cCommBuffer *b, PastryMessage& obj) {obj.parsimUnpack(b);}
00138 
00148 class PastryJoinMessage : public ::PastryMessage
00149 {
00150   protected:
00151     ::TransportAddress sendStateTo_var;
00152 
00153     // protected and unimplemented operator==(), to prevent accidental usage
00154     bool operator==(const PastryJoinMessage&);
00155 
00156   public:
00157     PastryJoinMessage(const char *name=NULL, int kind=0);
00158     PastryJoinMessage(const PastryJoinMessage& other);
00159     virtual ~PastryJoinMessage();
00160     PastryJoinMessage& operator=(const PastryJoinMessage& other);
00161     virtual PastryJoinMessage *dup() const {return new PastryJoinMessage(*this);}
00162     virtual void parsimPack(cCommBuffer *b);
00163     virtual void parsimUnpack(cCommBuffer *b);
00164 
00165     // field getter/setter methods
00166     virtual TransportAddress& getSendStateTo();
00167     virtual const TransportAddress& getSendStateTo() const {return const_cast<PastryJoinMessage*>(this)->getSendStateTo();}
00168     virtual void setSendStateTo(const TransportAddress& sendStateTo_var);
00169 };
00170 
00171 inline void doPacking(cCommBuffer *b, PastryJoinMessage& obj) {obj.parsimPack(b);}
00172 inline void doUnpacking(cCommBuffer *b, PastryJoinMessage& obj) {obj.parsimUnpack(b);}
00173 
00190 class PastryStateMessage : public ::PastryMessage
00191 {
00192   protected:
00193     int pastryStateMsgType_var;
00194     ::NodeHandle sender_var;
00195     ::NodeHandle *routingTable_var; // array ptr
00196     unsigned int routingTable_arraysize;
00197     ::NodeHandle *leafSet_var; // array ptr
00198     unsigned int leafSet_arraysize;
00199     ::NodeHandle *neighborhoodSet_var; // array ptr
00200     unsigned int neighborhoodSet_arraysize;
00201     int joinHopCount_var;
00202     bool lastHop_var;
00203     simtime_t timestamp_var;
00204 
00205     // protected and unimplemented operator==(), to prevent accidental usage
00206     bool operator==(const PastryStateMessage&);
00207 
00208   public:
00209     PastryStateMessage(const char *name=NULL, int kind=0);
00210     PastryStateMessage(const PastryStateMessage& other);
00211     virtual ~PastryStateMessage();
00212     PastryStateMessage& operator=(const PastryStateMessage& other);
00213     virtual PastryStateMessage *dup() const {return new PastryStateMessage(*this);}
00214     virtual void parsimPack(cCommBuffer *b);
00215     virtual void parsimUnpack(cCommBuffer *b);
00216 
00217     // field getter/setter methods
00218     virtual int getPastryStateMsgType() const;
00219     virtual void setPastryStateMsgType(int pastryStateMsgType_var);
00220     virtual NodeHandle& getSender();
00221     virtual const NodeHandle& getSender() const {return const_cast<PastryStateMessage*>(this)->getSender();}
00222     virtual void setSender(const NodeHandle& sender_var);
00223     virtual void setRoutingTableArraySize(unsigned int size);
00224     virtual unsigned int getRoutingTableArraySize() const;
00225     virtual NodeHandle& getRoutingTable(unsigned int k);
00226     virtual const NodeHandle& getRoutingTable(unsigned int k) const {return const_cast<PastryStateMessage*>(this)->getRoutingTable(k);}
00227     virtual void setRoutingTable(unsigned int k, const NodeHandle& routingTable_var);
00228     virtual void setLeafSetArraySize(unsigned int size);
00229     virtual unsigned int getLeafSetArraySize() const;
00230     virtual NodeHandle& getLeafSet(unsigned int k);
00231     virtual const NodeHandle& getLeafSet(unsigned int k) const {return const_cast<PastryStateMessage*>(this)->getLeafSet(k);}
00232     virtual void setLeafSet(unsigned int k, const NodeHandle& leafSet_var);
00233     virtual void setNeighborhoodSetArraySize(unsigned int size);
00234     virtual unsigned int getNeighborhoodSetArraySize() const;
00235     virtual NodeHandle& getNeighborhoodSet(unsigned int k);
00236     virtual const NodeHandle& getNeighborhoodSet(unsigned int k) const {return const_cast<PastryStateMessage*>(this)->getNeighborhoodSet(k);}
00237     virtual void setNeighborhoodSet(unsigned int k, const NodeHandle& neighborhoodSet_var);
00238     virtual int getJoinHopCount() const;
00239     virtual void setJoinHopCount(int joinHopCount_var);
00240     virtual bool getLastHop() const;
00241     virtual void setLastHop(bool lastHop_var);
00242     virtual simtime_t getTimestamp() const;
00243     virtual void setTimestamp(simtime_t timestamp_var);
00244 };
00245 
00246 inline void doPacking(cCommBuffer *b, PastryStateMessage& obj) {obj.parsimPack(b);}
00247 inline void doUnpacking(cCommBuffer *b, PastryStateMessage& obj) {obj.parsimUnpack(b);}
00248 
00259 class PastryFindNodeExtData : public ::cPacket
00260 {
00261   protected:
00262     ::TransportAddress sendStateTo_var;
00263     int joinHopCount_var;
00264 
00265     // protected and unimplemented operator==(), to prevent accidental usage
00266     bool operator==(const PastryFindNodeExtData&);
00267 
00268   public:
00269     PastryFindNodeExtData(const char *name=NULL, int kind=0);
00270     PastryFindNodeExtData(const PastryFindNodeExtData& other);
00271     virtual ~PastryFindNodeExtData();
00272     PastryFindNodeExtData& operator=(const PastryFindNodeExtData& other);
00273     virtual PastryFindNodeExtData *dup() const {return new PastryFindNodeExtData(*this);}
00274     virtual void parsimPack(cCommBuffer *b);
00275     virtual void parsimUnpack(cCommBuffer *b);
00276 
00277     // field getter/setter methods
00278     virtual TransportAddress& getSendStateTo();
00279     virtual const TransportAddress& getSendStateTo() const {return const_cast<PastryFindNodeExtData*>(this)->getSendStateTo();}
00280     virtual void setSendStateTo(const TransportAddress& sendStateTo_var);
00281     virtual int getJoinHopCount() const;
00282     virtual void setJoinHopCount(int joinHopCount_var);
00283 };
00284 
00285 inline void doPacking(cCommBuffer *b, PastryFindNodeExtData& obj) {obj.parsimPack(b);}
00286 inline void doUnpacking(cCommBuffer *b, PastryFindNodeExtData& obj) {obj.parsimUnpack(b);}
00287 
00297 class PastryNewLeafsMessage : public ::cPacket
00298 {
00299   protected:
00300     ::NodeHandle *leafs_var; // array ptr
00301     unsigned int leafs_arraysize;
00302 
00303     // protected and unimplemented operator==(), to prevent accidental usage
00304     bool operator==(const PastryNewLeafsMessage&);
00305 
00306   public:
00307     PastryNewLeafsMessage(const char *name=NULL, int kind=0);
00308     PastryNewLeafsMessage(const PastryNewLeafsMessage& other);
00309     virtual ~PastryNewLeafsMessage();
00310     PastryNewLeafsMessage& operator=(const PastryNewLeafsMessage& other);
00311     virtual PastryNewLeafsMessage *dup() const {return new PastryNewLeafsMessage(*this);}
00312     virtual void parsimPack(cCommBuffer *b);
00313     virtual void parsimUnpack(cCommBuffer *b);
00314 
00315     // field getter/setter methods
00316     virtual void setLeafsArraySize(unsigned int size);
00317     virtual unsigned int getLeafsArraySize() const;
00318     virtual NodeHandle& getLeafs(unsigned int k);
00319     virtual const NodeHandle& getLeafs(unsigned int k) const {return const_cast<PastryNewLeafsMessage*>(this)->getLeafs(k);}
00320     virtual void setLeafs(unsigned int k, const NodeHandle& leafs_var);
00321 };
00322 
00323 inline void doPacking(cCommBuffer *b, PastryNewLeafsMessage& obj) {obj.parsimPack(b);}
00324 inline void doUnpacking(cCommBuffer *b, PastryNewLeafsMessage& obj) {obj.parsimUnpack(b);}
00325 
00335 class PastrySendState : public ::cPacket
00336 {
00337   protected:
00338     ::TransportAddress dest_var;
00339 
00340     // protected and unimplemented operator==(), to prevent accidental usage
00341     bool operator==(const PastrySendState&);
00342 
00343   public:
00344     PastrySendState(const char *name=NULL, int kind=0);
00345     PastrySendState(const PastrySendState& other);
00346     virtual ~PastrySendState();
00347     PastrySendState& operator=(const PastrySendState& other);
00348     virtual PastrySendState *dup() const {return new PastrySendState(*this);}
00349     virtual void parsimPack(cCommBuffer *b);
00350     virtual void parsimUnpack(cCommBuffer *b);
00351 
00352     // field getter/setter methods
00353     virtual TransportAddress& getDest();
00354     virtual const TransportAddress& getDest() const {return const_cast<PastrySendState*>(this)->getDest();}
00355     virtual void setDest(const TransportAddress& dest_var);
00356 };
00357 
00358 inline void doPacking(cCommBuffer *b, PastrySendState& obj) {obj.parsimPack(b);}
00359 inline void doUnpacking(cCommBuffer *b, PastrySendState& obj) {obj.parsimUnpack(b);}
00360 
00373 class PastryLeafsetMessage : public ::PastryMessage
00374 {
00375   protected:
00376     ::NodeHandle sender_var;
00377     ::TransportAddress sendStateTo_var;
00378     ::NodeHandle *leafSet_var; // array ptr
00379     unsigned int leafSet_arraysize;
00380     simtime_t timestamp_var;
00381 
00382     // protected and unimplemented operator==(), to prevent accidental usage
00383     bool operator==(const PastryLeafsetMessage&);
00384 
00385   public:
00386     PastryLeafsetMessage(const char *name=NULL, int kind=0);
00387     PastryLeafsetMessage(const PastryLeafsetMessage& other);
00388     virtual ~PastryLeafsetMessage();
00389     PastryLeafsetMessage& operator=(const PastryLeafsetMessage& other);
00390     virtual PastryLeafsetMessage *dup() const {return new PastryLeafsetMessage(*this);}
00391     virtual void parsimPack(cCommBuffer *b);
00392     virtual void parsimUnpack(cCommBuffer *b);
00393 
00394     // field getter/setter methods
00395     virtual NodeHandle& getSender();
00396     virtual const NodeHandle& getSender() const {return const_cast<PastryLeafsetMessage*>(this)->getSender();}
00397     virtual void setSender(const NodeHandle& sender_var);
00398     virtual TransportAddress& getSendStateTo();
00399     virtual const TransportAddress& getSendStateTo() const {return const_cast<PastryLeafsetMessage*>(this)->getSendStateTo();}
00400     virtual void setSendStateTo(const TransportAddress& sendStateTo_var);
00401     virtual void setLeafSetArraySize(unsigned int size);
00402     virtual unsigned int getLeafSetArraySize() const;
00403     virtual NodeHandle& getLeafSet(unsigned int k);
00404     virtual const NodeHandle& getLeafSet(unsigned int k) const {return const_cast<PastryLeafsetMessage*>(this)->getLeafSet(k);}
00405     virtual void setLeafSet(unsigned int k, const NodeHandle& leafSet_var);
00406     virtual simtime_t getTimestamp() const;
00407     virtual void setTimestamp(simtime_t timestamp_var);
00408 };
00409 
00410 inline void doPacking(cCommBuffer *b, PastryLeafsetMessage& obj) {obj.parsimPack(b);}
00411 inline void doUnpacking(cCommBuffer *b, PastryLeafsetMessage& obj) {obj.parsimUnpack(b);}
00412 
00424 class PastryRoutingRowRequestMessage : public ::PastryMessage
00425 {
00426   protected:
00427     ::TransportAddress sendStateTo_var;
00428     int row_var;
00429 
00430     // protected and unimplemented operator==(), to prevent accidental usage
00431     bool operator==(const PastryRoutingRowRequestMessage&);
00432 
00433   public:
00434     PastryRoutingRowRequestMessage(const char *name=NULL, int kind=0);
00435     PastryRoutingRowRequestMessage(const PastryRoutingRowRequestMessage& other);
00436     virtual ~PastryRoutingRowRequestMessage();
00437     PastryRoutingRowRequestMessage& operator=(const PastryRoutingRowRequestMessage& other);
00438     virtual PastryRoutingRowRequestMessage *dup() const {return new PastryRoutingRowRequestMessage(*this);}
00439     virtual void parsimPack(cCommBuffer *b);
00440     virtual void parsimUnpack(cCommBuffer *b);
00441 
00442     // field getter/setter methods
00443     virtual TransportAddress& getSendStateTo();
00444     virtual const TransportAddress& getSendStateTo() const {return const_cast<PastryRoutingRowRequestMessage*>(this)->getSendStateTo();}
00445     virtual void setSendStateTo(const TransportAddress& sendStateTo_var);
00446     virtual int getRow() const;
00447     virtual void setRow(int row_var);
00448 };
00449 
00450 inline void doPacking(cCommBuffer *b, PastryRoutingRowRequestMessage& obj) {obj.parsimPack(b);}
00451 inline void doUnpacking(cCommBuffer *b, PastryRoutingRowRequestMessage& obj) {obj.parsimUnpack(b);}
00452 
00465 class PastryRoutingRowMessage : public ::PastryMessage
00466 {
00467   protected:
00468     ::NodeHandle sender_var;
00469     ::NodeHandle *routingTable_var; // array ptr
00470     unsigned int routingTable_arraysize;
00471     int row_var;
00472     simtime_t timestamp_var;
00473 
00474     // protected and unimplemented operator==(), to prevent accidental usage
00475     bool operator==(const PastryRoutingRowMessage&);
00476 
00477   public:
00478     PastryRoutingRowMessage(const char *name=NULL, int kind=0);
00479     PastryRoutingRowMessage(const PastryRoutingRowMessage& other);
00480     virtual ~PastryRoutingRowMessage();
00481     PastryRoutingRowMessage& operator=(const PastryRoutingRowMessage& other);
00482     virtual PastryRoutingRowMessage *dup() const {return new PastryRoutingRowMessage(*this);}
00483     virtual void parsimPack(cCommBuffer *b);
00484     virtual void parsimUnpack(cCommBuffer *b);
00485 
00486     // field getter/setter methods
00487     virtual NodeHandle& getSender();
00488     virtual const NodeHandle& getSender() const {return const_cast<PastryRoutingRowMessage*>(this)->getSender();}
00489     virtual void setSender(const NodeHandle& sender_var);
00490     virtual void setRoutingTableArraySize(unsigned int size);
00491     virtual unsigned int getRoutingTableArraySize() const;
00492     virtual NodeHandle& getRoutingTable(unsigned int k);
00493     virtual const NodeHandle& getRoutingTable(unsigned int k) const {return const_cast<PastryRoutingRowMessage*>(this)->getRoutingTable(k);}
00494     virtual void setRoutingTable(unsigned int k, const NodeHandle& routingTable_var);
00495     virtual int getRow() const;
00496     virtual void setRow(int row_var);
00497     virtual simtime_t getTimestamp() const;
00498     virtual void setTimestamp(simtime_t timestamp_var);
00499 };
00500 
00501 inline void doPacking(cCommBuffer *b, PastryRoutingRowMessage& obj) {obj.parsimPack(b);}
00502 inline void doUnpacking(cCommBuffer *b, PastryRoutingRowMessage& obj) {obj.parsimUnpack(b);}
00503 
00514 class PastryRequestMessage : public ::PastryMessage
00515 {
00516   protected:
00517     ::TransportAddress sendStateTo_var;
00518     int pastryReqType_var;
00519 
00520     // protected and unimplemented operator==(), to prevent accidental usage
00521     bool operator==(const PastryRequestMessage&);
00522 
00523   public:
00524     PastryRequestMessage(const char *name=NULL, int kind=0);
00525     PastryRequestMessage(const PastryRequestMessage& other);
00526     virtual ~PastryRequestMessage();
00527     PastryRequestMessage& operator=(const PastryRequestMessage& other);
00528     virtual PastryRequestMessage *dup() const {return new PastryRequestMessage(*this);}
00529     virtual void parsimPack(cCommBuffer *b);
00530     virtual void parsimUnpack(cCommBuffer *b);
00531 
00532     // field getter/setter methods
00533     virtual TransportAddress& getSendStateTo();
00534     virtual const TransportAddress& getSendStateTo() const {return const_cast<PastryRequestMessage*>(this)->getSendStateTo();}
00535     virtual void setSendStateTo(const TransportAddress& sendStateTo_var);
00536     virtual int getPastryReqType() const;
00537     virtual void setPastryReqType(int pastryReqType_var);
00538 };
00539 
00540 inline void doPacking(cCommBuffer *b, PastryRequestMessage& obj) {obj.parsimPack(b);}
00541 inline void doUnpacking(cCommBuffer *b, PastryRequestMessage& obj) {obj.parsimUnpack(b);}
00542 
00543 
00544 #endif // _PASTRYMESSAGE_M_H_