![]() |
VR-Link API Documentation for HLA 1516
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #ifndef tStopInter_H_ 00008 #define tStopInter_H_ 00009 00010 #if DtTENA 00011 00012 #include "tInteraction.h" 00013 #include <vlpi/entityIdentifier.h> 00014 #include <vlutil/vlTime.h> 00015 00019 00020 class DT_DLL_VL DtStopFreezeInteraction; 00021 00023 typedef void (*DtStopFreezeInteractionCb)(DtStopFreezeInteraction* inter, void* usr); 00024 00025 00026 00030 class DT_DLL_VL DtStopFreezeInteraction : public DtInteraction 00031 { 00032 public: 00034 DtStopFreezeInteraction(); 00035 00037 virtual ~DtStopFreezeInteraction(); 00038 00040 DtStopFreezeInteraction(const DtStopFreezeInteraction& orig); 00041 00043 DtStopFreezeInteraction& operator=(const DtStopFreezeInteraction& orig); 00044 00046 virtual void setSenderId(const DtEntityIdentifier& id); 00047 00049 virtual const DtEntityIdentifier& senderId() const; 00050 00052 virtual void setReceiverId(const DtEntityIdentifier& id); 00053 00055 virtual const DtEntityIdentifier& receiverId() const; 00056 00058 virtual void setRealWorldTime(const DtTime time); 00059 00061 virtual DtTime realWorldTime() const; 00062 00064 virtual void setRequestId(int id); 00065 00067 virtual int requestId() const; 00068 00070 virtual DtStopReason reason() const; 00071 00073 virtual void setReason(DtStopReason reason); 00074 00076 virtual bool reflectWhenFrozen() const; 00077 00079 virtual void setReflectWhenFrozen(bool flag); 00080 00082 virtual bool runClockWhenFrozen() const; 00083 00085 virtual void setRunClockWhenFrozen(bool flag); 00086 00088 virtual bool updateWhenFrozen() const; 00089 00091 virtual void setUpdateWhenFrozen(bool flag); 00092 00094 virtual const char* name() const; 00095 00097 virtual void printData() const; 00098 00100 virtual void printDataToStream(std::ostream& stream) const; 00101 00102 public: 00103 00106 static DtInteraction* create(); 00107 00110 static void addCallback(DtExerciseConn* conn, 00111 DtStopFreezeInteractionCb cb, void* usr); 00112 00115 static void removeCallback(DtExerciseConn* conn, 00116 DtStopFreezeInteractionCb cb, void* usr); 00117 00118 00119 protected: 00120 DtEntityIdentifier myOrigEnt; 00121 DtEntityIdentifier myReceiveEnt; 00122 int myRequestId; 00123 DtStopReason myReason; 00124 DtTime myRealTime; 00125 bool myReflect; 00126 bool myUpdate; 00127 bool myRunClock; 00128 }; 00129 00130 #endif 00131 #endif 00132 00133