![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2007 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: simInternalCommunicationInterface.h,v $ $Revision: 1.1 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00013 00014 #ifndef simInternalCommunicationInterface_h 00015 #define simInternalCommunicationInterface_h 00016 00017 #include "vrfmsgs/vrfObjectMessageExecutive.h" 00018 00019 class DtVrfObject; 00020 00028 class DtSimInternalCommunicationInterface 00029 { 00030 private: 00032 DtSimInternalCommunicationInterface(); 00034 DtSimInternalCommunicationInterface(const DtSimInternalCommunicationInterface& orig); 00036 DtSimInternalCommunicationInterface& operator=(const DtSimInternalCommunicationInterface& orig); 00037 00038 public: 00040 static DtSimInternalCommunicationInterface* create(DtVrfObject* vrfObj); 00041 00042 protected: 00044 DtSimInternalCommunicationInterface(DtVrfObject* vrfObj); 00046 virtual bool init(); 00047 00048 public: 00049 virtual ~DtSimInternalCommunicationInterface(); 00050 00053 virtual void sendMessage(DtVrfObjectMessage* message); 00054 00057 00058 virtual void addMessageCallback(DtVrfObjectMessageCallbackFcn fcn, void* usr); 00059 virtual void removeMessageCallback(DtVrfObjectMessageCallbackFcn fcn, void* usr); 00061 00064 00065 virtual void addMessageCallback(int type, DtVrfObjectMessageCallbackFcn fcn, void* usr); 00066 virtual void removeMessageCallback(int type, DtVrfObjectMessageCallbackFcn fcn, void* usr); 00068 00072 virtual void receiveMessage(const DtVrfObjectMessage* message); 00073 00075 virtual DtVrfObject* vrfObject(); 00076 00077 protected: 00078 DtVrfObject* myVrfObject; 00079 DtVrfObjectMessageExecutive myMessageExecutive; 00080 }; 00081 00082 #endif