VR-Link API Documentation for HLA 1516
hSetRecordInter.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 #ifndef hSetRecordInter_H_
00007 #define hSetRecordInter_H_
00008 
00009 #if DtHLA
00010 
00011 #include "hInterWData.h"
00012 #include "recordSetList.h"
00013 
00017 
00018 class DT_DLL_VL DtSetRecordInteraction;
00019 class DT_DLL_VL DtExerciseConn;
00020 
00021 typedef void (*DtSetRecordInteractionCb)
00022    (DtSetRecordInteraction *inter, void *user);
00023 
00024 class DT_DLL_VL DtSetRecordInteraction : public DtInteractionWithEncDec
00025 {
00026 public:
00027 
00028    //default constructor
00029    DtSetRecordInteraction();
00030 
00032    DtSetRecordInteraction(const DtSetRecordInteraction& other);
00033 
00035    virtual ~DtSetRecordInteraction();
00036 
00038    DtSetRecordInteraction& operator=
00039       (const DtSetRecordInteraction& other);
00040 
00042    virtual void printData() const;
00043 
00045    virtual void printDataToStream(std::ostream& stream) const;
00046 
00048    virtual void setOriginatingEntityID(const DtEntityIdentifier& entity);
00049    virtual const DtEntityIdentifier& originatingEntityID() const;
00050 
00052    virtual void setReceivingEntityID(const DtEntityIdentifier &entity);
00053    virtual const DtEntityIdentifier receivingEntityID() const;
00054 
00056    virtual void setRequestID(DtU32 id);
00057    virtual DtU32 requestID() const;
00058 
00060    virtual void setReqRelService(enum DtRequiredReliabilityService service);
00061    virtual DtRequiredReliabilityService reqRelService() const;
00062 
00066    virtual void setNumRecordSets(DtU32 number);
00067    virtual DtU32 numRecordSets() const;
00068 
00071    virtual bool setRecordSet(int index, const DtRecordSet &set);
00072    virtual const DtRecordSet &recordSet(int index, 
00073       bool *valid = NULL);
00074 
00076    virtual bool getRecordSet(int index, DtRecordSet& recSet) const;
00077    
00079    virtual const DtRecordSetList &recordSetList() const;
00080    virtual DtRecordSetList *recordSetList();
00081    
00084    virtual const char* name() const;
00085 
00086 public:
00089    static DtInteraction* create();
00090 
00093    static void addCallback(DtExerciseConn *conn, 
00094       DtSetRecordInteractionCb cb, void *usr, 
00095       DtDDMRegionSP region = DtDDMRegionSP());
00096    static void removeCallback(DtExerciseConn *conn,
00097       DtSetRecordInteractionCb cb, void *usr,
00098       DtDDMRegionSP region = DtDDMRegionSP());
00099     
00100 
00101 protected:
00102 
00103    DtEntityIdentifier myOriginatingEnt;
00104    DtEntityIdentifier myReceivingEnt;
00105    DtU32 myRequestId;
00106    DtRequiredReliabilityService myRequiredReliabilityService;
00107    DtRecordSetList myRecordSetList;
00108 
00109 };
00110 
00111 inline void 
00112 DtSetRecordInteraction::setOriginatingEntityID
00113    (const DtEntityIdentifier& id)
00114 {
00115    myOriginatingEnt = id;
00116 }
00117 
00118 inline const DtEntityIdentifier &
00119 DtSetRecordInteraction::originatingEntityID() const
00120 {
00121    return myOriginatingEnt;
00122 }
00123 
00124 inline void 
00125 DtSetRecordInteraction::setReceivingEntityID(
00126       const DtEntityIdentifier &id)
00127 {
00128    myReceivingEnt = id;
00129 }
00130 
00131 inline const DtEntityIdentifier 
00132 DtSetRecordInteraction::receivingEntityID() const
00133 {
00134    return myReceivingEnt;
00135 }
00136 
00137 inline void 
00138 DtSetRecordInteraction::setRequestID(DtU32 id)
00139 {
00140    myRequestId = id;
00141 }
00142 
00143 inline DtU32
00144 DtSetRecordInteraction::requestID() const
00145 {
00146    return myRequestId;
00147 }
00148 
00150 inline void 
00151 DtSetRecordInteraction::setReqRelService(enum DtRequiredReliabilityService ser)
00152 {
00153    myRequiredReliabilityService = ser;
00154 }
00155 
00156 inline DtRequiredReliabilityService 
00157 DtSetRecordInteraction::reqRelService() const
00158 {
00159    return myRequiredReliabilityService;
00160 }
00161 
00162 
00163 inline const DtRecordSetList &
00164 DtSetRecordInteraction::recordSetList() const
00165 {
00166   return myRecordSetList;
00167 }
00168 
00169 inline DtRecordSetList *
00170 DtSetRecordInteraction::recordSetList()
00171 {
00172   return &myRecordSetList;
00173 }
00174    
00175 inline const char* 
00176 DtSetRecordInteraction::name() const
00177 {
00178    return "DtSetRecordInteraction";
00179 }
00180 
00181 #endif
00182 #endif
00183 

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)