VR-Forces 4.0.4 Class Documentation
include/vrfVrlSharedSource/DtVrlinkReflectedEnvironmentStateInterceptor.h
Go to the documentation of this file.
00001 /****************************************************************************** 
00002 ** Copyright (c) 2007 MAK Technologies, Inc. 
00003 ** All rights reserved. 
00004 ******************************************************************************/ 
00005 /****************************************************************************** 
00006 ** $RCSfile: DtVrlinkReflectedEnvironmentStateInterceptor.h,v $ $Revision: 1.1 $ $State: Exp $ 
00007 ******************************************************************************/ 
00008 
00011 
00013 
00014 #pragma once
00015 
00016 #include <vrvUtil/DtVirtualBaseClass.h>
00017 #include <vlutil/vlTime.h>
00018 #include <vl/globalObjDes.h>
00019 
00020 #include <matrix/vlVector.h>
00021 #include <matrix/vlTaitBryan.h>
00022 #include <vlpi/disEnums.h>
00023 #include <vlpi/entityType.h>
00024 
00025 class DtStateRepository;
00026 class DtEnvironmentProcessRepository;
00027 
00028 namespace makVrv
00029 {
00030    namespace DT_PROTOCOL_NAMESPACE
00031    {
00032       class DtVrlinkConnection;
00033       class DtVrlinkTacticalGraphicStateListener;
00034    }
00035 }
00036 
00037 namespace makVrf
00038 {    
00039    namespace VRF_PROTOCOL_NAMESPACE
00040    {
00044       template <typename StateRepClass>
00045       class DtEnvironmentStateInterceptor : public StateRepClass
00046       {
00047       public:
00048 
00051          DtEnvironmentStateInterceptor(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkTacticalGraphicStateListener* listener);
00052 
00054          virtual ~DtEnvironmentStateInterceptor();
00055 
00056       private:
00058          //\throws DtCorrutedState this class is not copyable.
00059          DtEnvironmentStateInterceptor(const DtEnvironmentStateInterceptor& orig);
00060 
00062          //\throws DtCorrutedState this class is not copyable.
00063          DtEnvironmentStateInterceptor& operator=(const DtEnvironmentStateInterceptor& orig);
00064 
00066          //\throws DtCorrutedState this class is not copyable.
00067          virtual DtStateRepository* clone(bool copy = false) const; 
00068 
00069       public:
00070 
00071       protected:
00072          makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkTacticalGraphicStateListener* myListener;
00073       };
00074 
00076       class DtEnvironmentStateInterceptorCreator : public makVrv::DtVirtualBaseClass
00077       {
00078       public:
00079 
00081          static DtEnvironmentStateInterceptorCreator& instance(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection& sim);
00082 
00084          virtual ~DtEnvironmentStateInterceptorCreator();
00085 
00087          virtual DtEnvironmentProcessRepository* create(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkTacticalGraphicStateListener* listener);
00088 
00089       protected:
00090          DtEnvironmentStateInterceptorCreator();
00091       };
00092    }
00093 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)