![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtVrlinkRemoteGraphicSetProcessor.h,v $ $Revision: 1.8 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 #ifndef DT_PROTOCOL_NAMESPACE 00015 #error Namespace Protocol Macro DT_PROTOCOL_NAMESPACE not defined. 00016 #endif 00017 #include <vrvVrl/vrvVrl.h> 00018 #include <vrvCore/DtUniqueID.h> 00019 #include <vrvUtil/DtVirtualBaseClass.h> 00020 #include <vrvVrl/vrvControlToolkitDataTypes_v0.h> 00021 #include <vrvControl/vrvControlToolkitDataTypes.h> 00022 #include <vl/dataInter.h> 00023 00024 namespace makVrv 00025 { 00026 class DtVrvCommand; 00027 class DtVrvCommandFactory; 00028 class DtVrvCommandExecutorAgent; 00029 class DtVrlinkDriver; 00030 00031 namespace DT_PROTOCOL_NAMESPACE 00032 { 00033 class DtVrlinkConnection; 00034 00038 class DL_DLL_IGCONVRLINK DtVrvCommandProcessor : public DtVirtualBaseClass 00039 { 00040 public: 00042 static DtVrvCommandProcessor* findInstance(DtVrlinkConnection& baseSimulation); 00043 00045 static void registerInstance(DtVrlinkConnection& baseSimulation, DtVrvCommandProcessor*); 00046 00047 00049 DtVrvCommandProcessor(DtVrlinkConnection& baseSimulation, DtVrlinkDriver& driver ); 00050 00052 virtual ~DtVrvCommandProcessor(); 00053 00054 protected: 00055 virtual DtVrvCommand* createCommand(vrvControlToolkit::DtVrvControl_v1* vrvControl); 00056 virtual DtVrvCommand* createCommand_v0(vrvControlToolkit::DtVrvControl_v0* vrvControl); 00057 virtual void processInteraction(const DtDataInteraction& dataInter); 00058 virtual void processVrvCommand(DtVrvCommand* cmd); 00059 virtual DtUniqueID findUniqueIdFromGlobalId(const std::string& id); 00060 00061 DtVrlinkConnection& myVrlinkConnection; 00062 DtVrlinkDriver& myVrlinkDriver; 00063 DtVrvCommandExecutorAgent* myVrvCommandExecutor; 00064 DtVrvCommandFactory* myCommandFactory; 00065 }; 00066 00067 } 00068 }