VR-Link API Documentation for HLA Evolved
recQueryPdu.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 DtRecordQueryPdu_H_
00011 #define DtRecordQueryPdu_H_
00012 
00013 #if DtDIS
00014 
00015 #include <vlutil/vlMachineTypes.h>
00016 #include "hostStructs.h"
00017 #include "dInteraction.h"
00018 #include "exerciseConn.h"
00019 
00020 #include "packets/recQueryP.h"
00021 
00022 
00023 class DT_DLL_VL DtRecordQueryPdu;
00024 
00026 typedef void (*DtRecordQueryPduCb)(DtRecordQueryPdu* pdu, void* usr);
00027 
00028 
00032 class DT_DLL_VL DtRecordQueryPdu : public DtInteraction
00033 {
00034 
00035 public:
00036 
00038    DtRecordQueryPdu(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00039    DtRecordQueryPdu(const DtNetRecordQueryPdu* initial,
00040       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00041    DtRecordQueryPdu(const DtRecordQueryPdu& orig);
00042 
00044    virtual ~DtRecordQueryPdu();
00045 
00047    DtRecordQueryPdu& operator=(const DtRecordQueryPdu& orig);
00048 
00050    virtual void setOriginatingEntityID(const DtEntityIdentifier& entity);
00051    virtual const DtEntityIdentifier& originatingEntityID() const;
00052 
00054    virtual void setReceivingEntityID(const DtEntityIdentifier& entity);
00055    virtual const DtEntityIdentifier& receivingEntityID() const;
00056 
00058    virtual void setRequestID(DtU32 id);
00059    virtual DtU32 requestID() const;
00060 
00062    virtual void setReqRelService(enum DtRequiredReliabilityService service);
00063    virtual DtRequiredReliabilityService reqRelService() const;
00064 
00066    virtual void setEventType(DtEventType type);
00067    virtual DtEventType eventType() const;
00068 
00070    virtual void setTime(DtU32 value);
00071    virtual DtU32 time() const;
00072 
00075    virtual bool setNumRecords(DtU32 num);
00076    virtual DtU32 numRecords() const;
00077 
00080    virtual bool setRecordID(int index, DtDatumParam value);
00081    virtual bool getRecordID(int index, DtDatumParam& value) const;
00082 
00084    virtual void printData() const;
00085 
00087    virtual void printDataToStream(std::ostream &stream) const;
00088 
00089 public:
00090 
00093    static DtPdu* create(const DtNetPacket* initial,
00094       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00095 
00098    static void addCallback(DtExerciseConn* conn,
00099       DtRecordQueryPduCb cb, void* usr);
00100    static void removeCallback(DtExerciseConn* conn,
00101       DtRecordQueryPduCb cb, void* usr);
00102 
00103 protected:
00104 
00106    virtual DtPduKind internalGetPduKind() const;
00107 
00110    virtual DtNetRecordQueryPdu* netPduStruct()  const; 
00111 
00114    DtRecordQueryPdu* self() const;
00115 
00117    virtual char* var() const;
00118 
00119 protected:
00120 
00122    static const int theStaticSize;
00123 
00124 protected:
00125 
00127    DtEntityIdentifier myEntityID;
00128 
00129 };
00130 
00131 #endif
00132 #endif
00133 

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)