![]() |
VR-Link API Documentation for DIS
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #ifndef tDataInter_H_ 00008 #define tDataInter_H_ 00009 00010 #if DtTENA 00011 00012 #include "tInterWData.h" 00013 #include <vlpi/entityIdentifier.h> 00014 #include "globalObjDes.h" 00015 00019 00020 class DT_DLL_VL DtDataInteraction; 00021 00023 typedef void (*DtDataInteractionCb)(DtDataInteraction* inter, void* usr); 00024 00025 00031 class DT_DLL_VL DtDataInteraction : public DtInteractionWithData 00032 { 00033 public: 00035 DtDataInteraction(); 00036 00038 virtual ~DtDataInteraction(); 00039 00041 DtDataInteraction(const DtDataInteraction& orig); 00042 00044 DtDataInteraction& operator=( 00045 const DtDataInteraction& orig); 00046 00048 virtual void setSenderId(const DtEntityIdentifier& id); 00049 00051 virtual const DtEntityIdentifier& senderId() const; 00052 00054 virtual void setReceiverId(const DtEntityIdentifier& id); 00055 00057 virtual const DtEntityIdentifier& receiverId() const; 00058 00060 virtual void setRequestId(unsigned long id); 00061 00063 virtual unsigned long requestId() const; 00064 00066 virtual const char* name() const; 00067 00069 virtual void printData() const; 00070 00072 virtual void printDataToStream(std::ostream& stream) const; 00073 00074 public: 00075 00078 static DtInteraction* create(); 00079 00082 static void addCallback(DtExerciseConn* conn, 00083 DtDataInteractionCb cb, void* usr); 00084 00087 static void removeCallback(DtExerciseConn* conn, 00088 DtDataInteractionCb cb, void* usr); 00089 00090 00091 protected: 00092 DtEntityIdentifier myOrigEnt; 00093 DtEntityIdentifier myReceiveEnt; 00094 int myRequestId; 00095 }; 00096 00097 #endif 00098 #endif 00099 00100