VR-Link API Documentation for DIS
hRemObjReqInt.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00007 #ifndef hRemObjReqInt_H_
00008 #define hRemObjReqInt_H_
00009 
00010 #if DtHLA
00011 
00012 #include "hIntWEncDec.h"
00013 #include "hostStructs.h"
00014 #include <matrix/vlMath.h>
00015 #include "objDesList.h"
00016 
00017 
00018 
00022 
00023 class DT_DLL_VL DtRemoveObjectRequestInter;
00024 class DT_DLL_VL DtExerciseConn;
00025 
00026 
00028 typedef void (*DtRemoveObjectRequestInterCb)
00029    (DtRemoveObjectRequestInter* inter, void* usr);
00030 
00035 
00036 
00037 class DT_DLL_VL DtRemoveObjectRequestInter : public DtInteractionWithEncDec
00038 {
00039 public:
00040 
00042    DtRemoveObjectRequestInter();
00043 
00045    virtual ~DtRemoveObjectRequestInter();
00046 
00048    DtRemoveObjectRequestInter(const DtRemoveObjectRequestInter& orig);
00049 
00051    DtRemoveObjectRequestInter& operator=(
00052       const DtRemoveObjectRequestInter& orig);
00053 
00055    virtual void printData() const;
00056 
00058    virtual void printDataToStream(std::ostream& stream) const;
00059 
00061    virtual const DtGlobalObjectDesignatorList& objectIDs() const;
00062    virtual DtGlobalObjectDesignatorList* objectIDs();
00063 
00065    virtual void setNumIds(DtU8 numIds);
00066    virtual DtU8 numIds() const;
00067 
00069    virtual void setNthObjectId(
00070       DtInt32 idIndex, const DtGlobalObjectDesignator& id);
00071    virtual const DtGlobalObjectDesignator& nthObjectId(DtInt32 idIndex) const;
00072 
00074    virtual void setRequestId(DtU32 id);
00075    virtual DtU32 requestId() const;
00076 
00078    virtual const char* name() const;
00079 
00080 public:
00081 
00084    static DtInteraction* create();
00085 
00088    static void addCallback(DtExerciseConn* conn,
00089       DtRemoveObjectRequestInterCb cb, void* usr,
00090       DtDDMRegionSP region = DtDDMRegionSP());
00091    static void removeCallback(DtExerciseConn* conn,
00092       DtRemoveObjectRequestInterCb cb, void* usr,
00093       DtDDMRegionSP region = DtDDMRegionSP());
00094 
00095 protected:
00096 
00097    DtGlobalObjectDesignatorList myObjectList;
00098    DtGlobalObjectDesignator myNthId;
00099    DtU32 myRequestId;
00100 };
00101 
00102 inline void DtRemoveObjectRequestInter::setRequestId(DtU32 id)
00103 {
00104    myRequestId = id;
00105 }
00106 
00107 inline DtU32 DtRemoveObjectRequestInter::requestId() const
00108 {
00109    return myRequestId;
00110 }
00111 
00112 inline const char* DtRemoveObjectRequestInter::name() const
00113 {
00114    return "DtRemoveObjectRequestInter";
00115 }
00116 
00117 #endif
00118 #endif
00119 
00120 

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)