VR-Forces 4.0.4 Class Documentation
include/vrvVrl/DtWeatherProcessor.h
Go to the documentation of this file.
00001 // /****************************************************************************** 
00002 // ** Copyright (c) 2008 MAK Technologies, Inc. 
00003 // ** All rights reserved. 
00004 // ******************************************************************************/ 
00005 // /****************************************************************************** 
00006 // ** $RCSfile: DtWeatherProcessor.h,v $ $Revision: 1.4 $ $State: Exp $ 
00007 // ******************************************************************************/ 
00008 
00012 
00013 #ifndef DT_PROTOCOL_NAMESPACE
00014 #error Namespace Protocol Macro DT_PROTOCOL_NAMESPACE not defined.
00015 #endif
00016 
00017 #pragma once
00018 
00019 #include <vrvVrl/vrvVrl.h>
00020 #include <vrvUtil/DtVirtualBaseClass.h>
00021 #include <vrvVrl/DtVrlinkConnection.h>
00022 #include <vrfExtObjects/vrfWeatherStateEnums.h>
00023 #include <vrvUtil/DtSignalConnectionManager.h>
00024 
00025 #include <boost/unordered_map.hpp>
00026 
00027 namespace makVrv
00028 { 
00029    class DtSceneEnvironmentalsControllerObjectAgent;  
00030 
00031    namespace DT_PROTOCOL_NAMESPACE
00032    {
00033       class DtVrlinkEnvironmentalStateListenerInterface;  
00034       class DtWeatherStateListener;
00035 
00039       class DL_DLL_IGCONVRLINK DtWeatherProcessor : public makVrv::DtVirtualBaseClass
00040       {
00041 
00042       public:
00043 
00045          DtWeatherProcessor(DtVrlinkConnection& sim);
00046 
00048          virtual ~DtWeatherProcessor();
00049 
00050       protected:
00051 
00053          virtual void initializeEnvironmentState();
00054 
00056          virtual void slot_envDiscovered(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEnvironmentalStateListenerInterface& listener);
00057 
00059          virtual void slot_envToBeDestroyed(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEnvironmentalStateListenerInterface& listener);
00060 
00063          virtual void slot_airTurbidityChanged(float);
00064 
00067          virtual void slot_cloudStateChanged(DtVrfWeatherCloudState);
00068 
00071          virtual void slot_precipitationIntensityChanged(float);
00072 
00075          virtual void slot_precipitationTypeChanged(DtVrfWeatherPrecipitationType);
00076 
00079          virtual void slot_visibilityChanged(float);
00080 
00082          virtual void slot_timeOfDayChanged(float);
00083 
00086          virtual void slot_timeOfDayAdvancementSpeedChanged(float);
00087 
00090          virtual void slot_windDirectionChanged(float);
00091 
00094          virtual void slot_windSpeedChanged(float);
00095 
00098          virtual void slot_forceRefresh();
00099 
00100       protected:
00101 
00102          DtVrlinkConnection& myConnection;
00103          DtSceneEnvironmentalsControllerObjectAgent* myEnvAgent;
00104          bool myAcceptIncomingMessages;
00105 
00106          typedef boost::unordered_map<DtUniqueID,DtWeatherStateListener*> WeatherListenerMap;
00107 
00108          WeatherListenerMap myWeatherListenerMap;
00109 
00110          DtSignalConnectionManager mySignals;
00111       };
00112    }
00113 }

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)