VR-Link API Documentation for HLA 1.3
setRecordPdu.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00009 
00010 #ifndef DtSetRecordPdu_H_
00011 #define DtSetRecordPdu_H_
00012 
00013 #if DtDIS
00014 
00015 #include <vlutil/vlMachineTypes.h>
00016 #include "hostStructs.h"
00017 #include "recordSetPdu.h"
00018 #include "exerciseConn.h"
00019 
00020 #include "packets/setRecordP.h"
00021 
00022 
00023 class DT_DLL_VL DtSetRecordPdu;
00024 
00025 typedef DtSetRecordPdu DtSetRecordInteraction;
00026 
00028 typedef void (*DtSetRecordPduCb)(DtSetRecordPdu* pdu, void* usr);
00029 
00030 
00035 
00036 class DT_DLL_VL DtSetRecordPdu : public DtRecordSetPdu
00037 {
00038 
00039 public:
00040 
00042    DtSetRecordPdu(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00043    DtSetRecordPdu(const DtNetSetRecordPdu* initial,
00044       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00045    DtSetRecordPdu(const DtSetRecordPdu& orig);
00046 
00048    virtual ~DtSetRecordPdu();
00049 
00051    DtSetRecordPdu& operator=(const DtSetRecordPdu& orig);
00052 
00054    virtual void setOriginatingEntityID(const DtEntityIdentifier& entity);
00055    virtual const DtEntityIdentifier& originatingEntityID() const;
00056 
00058    virtual void setReceivingEntityID(const DtEntityIdentifier& entity);
00059    virtual const DtEntityIdentifier& receivingEntityID() const;
00060 
00062    virtual void setRequestID(DtU32 id);
00063    virtual DtU32 requestID() const;
00064 
00066    virtual void setReqRelService(enum DtRequiredReliabilityService service);
00067    virtual DtRequiredReliabilityService reqRelService() const;
00068 
00070    virtual void printData() const;
00071    virtual void printDataToStream(std::ostream& stream) const;
00072 
00073 public:
00074 
00077    static DtPdu* create(const DtNetPacket* initial,
00078       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00079 
00082    static void addCallback(DtExerciseConn* conn,
00083       DtSetRecordPduCb cb, void* usr);
00084    static void removeCallback(DtExerciseConn* conn,
00085       DtSetRecordPduCb cb, void* usr);
00086 
00087 protected:
00088 
00090    virtual DtNetRecordSetPdu* netRecordSetPduStruct() const;
00091 
00093    virtual DtPduKind internalGetPduKind() const;
00094 
00097    virtual DtNetSetRecordPdu* netPduStruct()  const; 
00098 
00101    DtSetRecordPdu* self() const;
00102 
00103 protected:
00104 
00106    static const int theStaticSize;
00107 
00108 protected:
00109 
00111    DtEntityIdentifier myEntityID;
00112 
00113 };
00114 
00115 #endif
00116 #endif
00117 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)