VR-Forces 4.0.4 Class Documentation
include/vrvCore/DtObserverMode.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2009 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 /******************************************************************************
00006 ** $RCSfile: DtObserverMode.h,v $ $Revision: 1.3 $ $State: Exp $
00007 ******************************************************************************/
00008 
00012 
00013 #ifndef DtObserverMode_H_
00014 #define DtObserverMode_H_
00015 
00016 #include <vrvCore/vrvCore.h> 
00017 
00018 #include <makArchives/DtObserverModeRecord.h>
00019 #include <vrvCore/DtObserverObject.h>
00020 
00021 #include <string>
00022 
00023 
00024 namespace makVrv
00025 {
00026    class DtDe;
00027 
00033    class DT_DLL_VRVCORE DtObserverMode
00034    {
00035    public:
00036       
00039       DtObserverMode();
00040 
00042       DtObserverMode( const DtObserverMode& orig );
00043       
00045       virtual ~DtObserverMode();  
00046       
00048       DtObserverMode& operator=( const DtObserverMode& orig );
00049 
00053       void setIntKey( int intKey );
00054       
00056       int intKey() const;
00057      
00059       void setName( const std::string& name );
00060       
00062       const std::string& name() const;
00063     
00066       void setIs2D( bool trueOrFalse );  
00067       
00069       bool is2D() const;
00070       
00072       void setModelSet( int modelSet );
00073       
00075       int modelSet() const;
00076 
00078       void setKeyMap( const std::string& keyMap );
00079       
00081       const std::string& keyMap() const;
00082       
00084 
00085       virtual int gainPrecision() const;
00086       virtual void setGainPrecision( int amt );
00088       
00090 
00091       virtual int orbitSpeedGain() const;
00092       virtual void setOrbitSpeedGain( int gain );
00094       
00096 
00097       virtual int linearScaledSpeedGain() const;
00098       virtual void setLinearScaledSpeedGain( int gain );
00100        
00102 
00103       virtual int linearUnscaledSpeedGain() const;
00104       virtual void setLinearUnscaledSpeedGain( int gain );
00106       
00107      
00109 
00110       virtual int rotationSpeedGain() const;
00111       virtual void setRotationSpeedGain( int gain );
00113        
00115 
00116       virtual double modelScaleFactor() const;
00117       virtual void setModelScaleFactor( double modelScaleFactor );
00119 
00120 
00121       DtObserverObject::ScaleType modelScaleType() const;
00122       void setModelScaleType( DtObserverObject::ScaleType modelScaleFactor );
00124 
00126 
00127       double maxModelScaleFactor() const;
00128       void setMaxModelScaleFactor( double maxModelScaleFactor );
00130 
00132       void setObserverSetting( int settingKey, bool value );
00133 
00135       bool observerSetting( int settingKey ) const;
00136              
00138       void getRecord( DtDe& de, makArchives::DtObserverModeRecord& record ) const;
00139 
00141       void setFromRecord( DtDe& de, const makArchives::DtObserverModeRecord& record );
00142        
00143    protected:
00145       DtObserverMode( int intKey );
00146 
00147    protected:
00148 
00149       typedef std::map< int, bool> ObserverSettingsMap;
00150 
00151       int myIntKey;
00152       std::string myName; // Display name
00153       int myModelSet;
00154       bool myIs2D;
00155       std::string myKeyMap;
00156       int myOrbitSpeedGain;
00157       int myLinearScaledSpeedGain;
00158       int myLinearUnscaledSpeedGain;
00159       int myRotationSpeedGain;
00160       int myGainPrecision;
00161       double myModelScaleFactor;
00162       DtObserverObject::ScaleType myModelScaleType;
00163       double myMaxModelScaleFactor;
00164       ObserverSettingsMap myObserverSettings;
00165    };
00166 }
00167 
00168 #endif
00169 

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)