![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /***************************************************************************** 00002 * Copyright (c) 2012 MAK Technologies, Inc. 00003 * All rights reserved. 00004 *****************************************************************************/ 00005 00009 00010 #pragma once 00011 00012 #include <vrvCore/vrvCore.h> 00013 00014 #include <vrvUtil/DtBaseSettingsManager.h> 00015 00016 #include <vrvCore/DtSharedRadioCommunicationsSettings.h> 00017 00018 #include <string> 00019 00020 namespace makVrv 00021 { 00022 00023 class DtDe; 00024 00027 class DT_DLL_VRVCORE DtRadioCommunicationsSettingsManager 00028 : public DtBaseSharedSettingsManager<makArchives::DtRadioCommunicationsSettingsRecord, 00029 DtSharedRadioCommunicationsSettings> 00030 { 00031 protected: 00032 00034 typedef makArchives::DtRadioCommunicationsSettingsRecord::CommLineMode 00035 CommLineMode; 00036 00038 typedef makArchives::DtRadioCommunicationsSettingsRecord::DefaultColoringMode 00039 DefaultColoringMode; 00040 00041 public: 00042 00044 static DtRadioCommunicationsSettingsManager& instance( DtDe& de ); 00045 00047 static void registerInstance( DtDe& de, 00048 DtRadioCommunicationsSettingsManager* instance ); 00049 00051 virtual ~DtRadioCommunicationsSettingsManager(); 00052 00056 00059 00060 virtual float commLineLifetime() const; 00061 virtual void setCommLineLifetime( float lifetime ); 00062 00063 virtual float squawkIndicatorLifetime() const; 00064 virtual void setSquawkIndicatorLifetime( float lifetime ); 00065 00066 virtual float commLineAnimationRate() const; 00067 virtual void setCommLineAnimationRate( float rate ); 00068 00069 virtual float squawkIndicatorAnimationRate() const; 00070 virtual void setSquawkIndicatorAnimationRate( float rate ); 00071 00072 virtual bool displayCommLines() const; 00073 virtual void setDisplayCommLines( bool show ); 00074 00075 virtual bool displaySquawkIndicators() const; 00076 virtual void setDisplaySquawkIndicators( bool show ); 00077 00078 virtual bool displayRadioCommunications() const; 00079 virtual void setDisplayRadioCommunications( bool show ); 00080 00081 virtual CommLineMode commLineRenderMode() const; 00082 virtual void setCommLineRenderMode( CommLineMode mode ); 00083 00084 virtual double greatCircleExaggerationAmount() const; 00085 virtual void setGreatCircleExaggerationAmount( double amount ); 00086 00087 virtual DefaultColoringMode defaultColoringMode() const; 00088 virtual void setDefaultColoringMode( DefaultColoringMode mode ); 00089 00091 00094 00095 virtual bool showDefaultFrequency() const; 00096 virtual void setShowDefaultFrequency( bool show ); 00097 00098 virtual void getDefaultFrequencyColor( float& r, float& g, float& b ) const; 00099 virtual void setDefaultFrequencyColor( float r, float g, float b ); 00100 00102 00105 00106 virtual void getFrequencyRangeColor( int rangeIndex, float& r, float& g, float& b ) const; 00107 virtual void setFrequencyRangeColor( int rangeIndex, float r, float g, float b ); 00108 00109 virtual bool showFrequencyRangeFrequency( int rangeIndex ) const; 00110 virtual void setShowFrequencyRangeFrequency( int rangeIndex, bool show ); 00111 00112 virtual void getFrequencyRange( int rangeIndex, float& lowFreq, float& highFreq ) const; 00113 virtual int addFrequencyRange( float lowFreq, float highFreq ); 00114 00115 virtual int numFrequencyRanges() const; 00116 virtual void clearFrequencyRanges(); 00117 00119 00121 00122 protected: 00123 00125 template <typename ManagerClass> 00126 friend ManagerClass& defaultManagerInstanceFunction( DtDe&, bool ); 00127 00129 template <typename ManagerClass> 00130 friend void defaultManagerRegisterInstanceFunction( DtDe&, ManagerClass* ); 00131 00133 DtRadioCommunicationsSettingsManager( DtDe& de ); 00134 00135 }; 00136 00137 }