GlobalOptions.hh

Go to the documentation of this file.
00001 /*===========================================================================*\
00002  *                                                                           *
00003  *                              OpenFlipper                                  *
00004  *      Copyright (C) 2001-2009 by Computer Graphics Group, RWTH Aachen      *
00005  *                           www.openflipper.org                             *
00006  *                                                                           *
00007  *---------------------------------------------------------------------------*
00008  *  This file is part of OpenFlipper.                                        *
00009  *                                                                           *
00010  *  OpenFlipper is free software: you can redistribute it and/or modify      *
00011  *  it under the terms of the GNU Lesser General Public License as           *
00012  *  published by the Free Software Foundation, either version 3 of           *
00013  *  the License, or (at your option) any later version with the              *
00014  *  following exceptions:                                                    *
00015  *                                                                           *
00016  *  If other files instantiate templates or use macros                       *
00017  *  or inline functions from this file, or you compile this file and         *
00018  *  link it with other files to produce an executable, this file does        *
00019  *  not by itself cause the resulting executable to be covered by the        *
00020  *  GNU Lesser General Public License. This exception does not however       *
00021  *  invalidate any other reasons why the executable file might be            *
00022  *  covered by the GNU Lesser General Public License.                        *
00023  *                                                                           *
00024  *  OpenFlipper is distributed in the hope that it will be useful,           *
00025  *  but WITHOUT ANY WARRANTY; without even the implied warranty of           *
00026  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            *
00027  *  GNU Lesser General Public License for more details.                      *
00028  *                                                                           *
00029  *  You should have received a copy of the GNU LesserGeneral Public          *
00030  *  License along with OpenFlipper. If not,                                  *
00031  *  see <http://www.gnu.org/licenses/>.                                      *
00032  *                                                                           *
00033 \*===========================================================================*/
00034 
00035 /*===========================================================================*\
00036  *                                                                           *
00037  *   $Revision: 7478 $                                                         *
00038  *   $Author: moebius $                                                      *
00039  *   $Date: 2009-10-20 14:02:41 +0200 (Di, 20. Okt 2009) $                   *
00040  *                                                                           *
00041 \*===========================================================================*/
00042 
00043 
00044 
00045 
00046 //=============================================================================
00047 //
00048 //  Options used throughout the System
00049 //
00050 //=============================================================================
00051 
00058 #ifndef OPTIONS_HH
00059 #define OPTIONS_HH
00060 
00061 #include <OpenFlipper/common/GlobalDefines.hh>
00062 #include <QDir>
00063 #include <QStringList>
00064 #include <QColor>
00065 #include <QIcon>
00066 
00067 namespace OpenFlipper {
00068 namespace Options {
00069 
00071 DLLEXPORT
00072 QDir applicationDir();
00073 
00075 DLLEXPORT
00076 QDir pluginDir();
00077 
00079 DLLEXPORT
00080 QDir textureDir();
00081 
00083 DLLEXPORT
00084 QDir licenseDir();
00085 
00087 DLLEXPORT
00088 QDir scriptDir();
00089 
00091 DLLEXPORT
00092 QDir shaderDir();
00093 
00095 DLLEXPORT
00096 QDir iconDir();
00097 
00099 DLLEXPORT
00100 QDir translationsDir();
00101 
00103 DLLEXPORT
00104 QDir fontsDir();
00105 
00107 DLLEXPORT
00108 QDir dataDir();
00109 
00111 DLLEXPORT
00112 QString applicationDirStr();
00113 
00115 DLLEXPORT
00116 QString pluginDirStr();
00117 
00119 DLLEXPORT
00120 QString shaderDirStr();
00121 
00123 DLLEXPORT
00124 QString textureDirStr();
00125 
00127 DLLEXPORT
00128 QString licenseDirStr();
00129 
00131 DLLEXPORT
00132 QString scriptDirStr();
00133 
00135 DLLEXPORT
00136 QString iconDirStr();
00137 
00139 DLLEXPORT
00140 QString dataDirStr();
00141 
00143 DLLEXPORT
00144 QIcon& OpenFlipperIcon();
00145 
00147 DLLEXPORT
00148 QString translationsDirStr();
00149 
00151 DLLEXPORT
00152 QString fontsDirStr();
00153 
00155 DLLEXPORT
00156 QString helpDirStr();
00157 
00159 DLLEXPORT
00160 void applicationDir(QDir _dir);
00161 
00163 DLLEXPORT
00164 void pluginDir(QDir _dir);
00165 
00167 DLLEXPORT
00168 void shaderDir(QDir _dir);
00169 
00171 DLLEXPORT
00172 void textureDir(QDir _dir);
00173 
00175 DLLEXPORT
00176 void licenseDir(QDir _dir);
00177 
00179 DLLEXPORT
00180 void scriptDir( QDir _dir);
00181 
00183 DLLEXPORT
00184 void iconDir(QDir _dir);
00185 
00187 DLLEXPORT
00188 void translationsDir( QDir _dir);
00189 
00191 DLLEXPORT
00192 void fontsDir(QDir _dir);
00193 
00195 DLLEXPORT
00196 void helpDir(QDir _dir);
00197 
00199 DLLEXPORT
00200 void dataDir(QDir _dir);
00201 
00203 DLLEXPORT
00204 bool applicationDir(QString _dir);
00205 
00207 DLLEXPORT
00208 bool pluginDir(QString _dir);
00209 
00211 DLLEXPORT
00212 bool shaderDir(QString _dir);
00213 
00215 DLLEXPORT
00216 bool textureDir(QString _dir);
00217 
00219 DLLEXPORT
00220 bool licenseDir(QString _dir);
00221 
00223 DLLEXPORT
00224 bool scriptDir(QString _dir);
00225 
00227 DLLEXPORT
00228 bool iconDir(QString _dir);
00229 
00231 DLLEXPORT
00232 bool translationsDir(QString _dir);
00233 
00235 DLLEXPORT
00236 void fontsDir(QDir _dir);
00237 
00239 DLLEXPORT
00240 void helpDir(QDir _dir);
00241 
00243 DLLEXPORT
00244 bool dataDir(QString _dir);
00245 
00246 
00247 //===========================================================================
00250 //===========================================================================
00251 
00253   DLLEXPORT
00254   void optionFiles(QStringList _list);
00255 
00257   DLLEXPORT
00258   QStringList optionFiles();
00259 
00261   DLLEXPORT
00262   void configDir(QDir _dir);
00263 
00265   DLLEXPORT
00266   bool configDir(QString _dir);
00267 
00269   DLLEXPORT
00270   QString configDirStr();
00271 
00273   DLLEXPORT
00274   QDir configDir();
00275 
00278 //===========================================================================
00281 //===========================================================================
00282 
00284   DLLEXPORT
00285   QString currentDirStr();
00286 
00288   DLLEXPORT
00289   QDir currentDir();
00290 
00292   DLLEXPORT
00293   void currentDir(QDir _dir);
00294 
00296   DLLEXPORT
00297   bool currentDir(QString _dir);
00298 
00300   DLLEXPORT
00301   QString currentScriptDirStr();
00302 
00304   DLLEXPORT
00305   QDir currentScriptDir();
00306 
00308   DLLEXPORT
00309   void currentScriptDir(QDir _dir);
00310 
00312   DLLEXPORT
00313   bool currentScriptDir(QString _dir);
00314 
00315 
00316 
00318   DLLEXPORT
00319   QString currentTextureDirStr();
00320 
00322   DLLEXPORT
00323   QDir currentTextureDir();
00324 
00326   DLLEXPORT
00327   void currentTextureDir(QDir _dir);
00328 
00330   DLLEXPORT
00331   bool currentTextureDir(QString _dir);
00332 
00333 
00334 
00336   DLLEXPORT
00337   QString lastDataType();
00338 
00340   DLLEXPORT
00341   void lastDataType(QString _type);
00342 
00345 //===========================================================================
00348 //===========================================================================
00349 
00350   DLLEXPORT
00351   bool is64bit();
00352 
00353   DLLEXPORT
00354   bool is32bit();
00355 
00356   DLLEXPORT
00357   bool isLinux();
00358 
00359   DLLEXPORT
00360   bool isWindows();
00361 
00362   DLLEXPORT
00363   bool isDarwin();
00364 
00366   DLLEXPORT
00367   QString dirSeparator();
00368 
00371 //===========================================================================
00374 //===========================================================================
00375 
00377   DLLEXPORT
00378   QString lang();
00379 
00381   DLLEXPORT
00382   QString translation();
00383 
00385   DLLEXPORT
00386   void translation(QString _translation);
00387 
00390 //===========================================================================
00393 //===========================================================================
00394   enum Experience {
00395     NOVICE,
00396     ADVANCED,
00397     EXPERT
00398   };
00399 
00401   DLLEXPORT
00402   Experience getExperience();
00403 
00405   DLLEXPORT
00406   void setExperience( Experience _exp );
00407 
00410 //===========================================================================
00413 //===========================================================================
00414 
00416   DLLEXPORT
00417   void nogui( bool _nogui );
00418 
00420   DLLEXPORT
00421   bool nogui( );
00422 
00424   DLLEXPORT
00425   bool gui( );
00426 
00428   DLLEXPORT
00429   void stereo( bool _stereo );
00430 
00432   DLLEXPORT
00433   bool stereo( );
00434 
00436   enum StereoMode {
00437     OpenGL,
00438     AnaglyphRedCyan,
00439     AnaglyphCustom,
00440     Philips
00441   };
00442 
00444   DLLEXPORT
00445   void glStereo( bool _stereo );
00446 
00448   DLLEXPORT
00449   bool glStereo( );
00450 
00452   DLLEXPORT
00453   void stereoMode( StereoMode _mode );
00454 
00456   DLLEXPORT
00457   StereoMode stereoMode( );
00458 
00460   DLLEXPORT
00461   void eyeDistance( float _eye );
00462 
00464   DLLEXPORT
00465   float eyeDistance( );
00466 
00468   DLLEXPORT
00469   void focalDistance( float _focal );
00470 
00472   DLLEXPORT
00473   float focalDistance( );
00474 
00476   DLLEXPORT
00477   void anaglyphLeftEyeColorMatrix( std::vector<float> _mat );
00478 
00480   DLLEXPORT
00481   std::vector<float> anaglyphLeftEyeColorMatrix( );
00482 
00484   DLLEXPORT
00485   void anaglyphRightEyeColorMatrix( std::vector<float> _mat );
00486 
00488   DLLEXPORT
00489   std::vector<float> anaglyphRightEyeColorMatrix( );
00490 
00492   DLLEXPORT
00493   void stereoMousePick( bool _stereoPick );
00494 
00496   DLLEXPORT
00497   bool stereoMousePick( );
00498 
00500   DLLEXPORT
00501   void synchronization( bool _synchronization );
00502 
00504   DLLEXPORT
00505   bool synchronization( );
00506 
00508   DLLEXPORT
00509   void wheelZoomFactor( double _factor );
00510 
00512   DLLEXPORT
00513   double wheelZoomFactor( );
00514 
00516   DLLEXPORT
00517   void wheelZoomFactorShift( double _factor );
00518 
00520   DLLEXPORT
00521   double wheelZoomFactorShift( );
00522 
00524   DLLEXPORT
00525   void restrictFrameRate( bool _enable );
00526 
00528   DLLEXPORT
00529   bool restrictFrameRate( );
00530 
00532   DLLEXPORT
00533   void showWheelsAtStartup( bool _show );
00534 
00536   DLLEXPORT
00537   bool showWheelsAtStartup( );
00538 
00540   DLLEXPORT
00541   void maxFrameRate( int _fps );
00542 
00544   DLLEXPORT
00545   int maxFrameRate( );
00546 
00548   DLLEXPORT
00549   void defaultDrawMode( uint _mode, int _viewer );
00550 
00552   DLLEXPORT
00553   uint defaultDrawMode( int _viewer );
00554 
00556   DLLEXPORT
00557   void defaultProjectionMode( int _mode, int _viewer );
00558 
00560   DLLEXPORT
00561   int defaultProjectionMode( int _viewer );
00562 
00564   DLLEXPORT
00565   void defaultViewingDirection( int _mode, int _viewer );
00566 
00568   DLLEXPORT
00569   int defaultViewingDirection( int _viewer );
00570 
00572   DLLEXPORT
00573   void defaultViewerLayout( int _layout );
00574 
00576   DLLEXPORT
00577   int defaultViewerLayout();
00578 
00580   DLLEXPORT
00581   void redrawDisabled( bool disable );
00582 
00584   DLLEXPORT
00585   bool redrawDisabled( );
00586 
00588   DLLEXPORT
00589   bool drawModesInContextMenu();
00590 
00592   DLLEXPORT
00593   void drawModesInContextMenu(bool _show);
00594 
00596   DLLEXPORT
00597   bool gridVisible();
00598 
00600   DLLEXPORT
00601   void gridVisible(bool _visible);
00602 
00604   DLLEXPORT
00605   void glMouse( bool _glMouse );
00606 
00608   DLLEXPORT
00609   bool glMouse( );
00610 
00613 //===========================================================================
00616 //===========================================================================
00617 
00619   DLLEXPORT
00620   void multiView( bool _multiView);
00621 
00623   DLLEXPORT
00624   bool multiView();
00625 
00627   DLLEXPORT
00628   unsigned int examinerWidgets();
00629 
00631   enum LoggerState {
00632     InScene,
00633     Normal,
00634     Hidden
00635   };
00636 
00638   DLLEXPORT
00639   void loggerState( LoggerState _state);
00640 
00642   DLLEXPORT
00643   LoggerState loggerState( );
00644 
00646   DLLEXPORT
00647   void hideToolbox( bool _hide);
00648 
00650   DLLEXPORT
00651   bool hideToolbox( );
00652 
00654   DLLEXPORT
00655   void fullScreen( bool _fs );
00656 
00658   DLLEXPORT
00659   bool fullScreen( );
00660 
00662   DLLEXPORT
00663   QString defaultToolboxMode( );
00664 
00666   DLLEXPORT
00667   void defaultToolboxMode( QString _mode );
00668 
00670   DLLEXPORT
00671   QString windowTitle( );
00672 
00674   DLLEXPORT
00675   void windowTitle( QString _titel );
00676 
00678   DLLEXPORT
00679   void splash( bool _splash );
00680 
00682   DLLEXPORT
00683   bool splash( );
00684 
00686   DLLEXPORT
00687   void defaultBackgroundColor( QColor _color );
00688 
00690   DLLEXPORT
00691   QColor defaultBackgroundColor();
00692 
00694   DLLEXPORT
00695   void defaultBaseColor( QColor _color );
00696 
00698   DLLEXPORT
00699   QColor defaultBaseColor();
00700 
00702   DLLEXPORT
00703   void randomBaseColor(bool _random);
00704 
00706   DLLEXPORT
00707   bool randomBaseColor();
00708 
00711 //===========================================================================
00714 //===========================================================================
00715 
00722   DLLEXPORT
00723   bool scripting( );
00724 
00727   DLLEXPORT
00728   void scripting(bool _status );
00729 
00732 //===========================================================================
00735 //===========================================================================
00736 
00738   DLLEXPORT
00739   bool logToConsole( );
00740 
00742   DLLEXPORT
00743   void logToConsole(bool _logToConsole );
00744 
00746   DLLEXPORT
00747   bool debug();
00748 
00750   DLLEXPORT
00751   void debug(bool _debug );
00752 
00754   DLLEXPORT
00755   void logFileEnabled(bool _enable );
00756 
00758   DLLEXPORT
00759   bool logFileEnabled();
00760 
00762   DLLEXPORT
00763   void logFile(QString _filename);
00764 
00766   DLLEXPORT
00767   QString logFile();
00768 
00771 //===========================================================================
00774 //===========================================================================
00775 
00777   DLLEXPORT
00778   bool backupEnabled( );
00779 
00781   DLLEXPORT
00782   void enableBackup(bool _enableBackup );
00783 
00784 
00787 //===========================================================================
00790 //===========================================================================
00791 
00793   DLLEXPORT
00794   bool loadingSettings( );
00795 
00797   DLLEXPORT
00798   void loadingSettings(bool _loadingSettings );
00799 
00801   DLLEXPORT
00802   bool savingSettings( );
00803 
00805   DLLEXPORT
00806   void savingSettings(bool _savingSettings );
00807 
00809   DLLEXPORT
00810   bool loadingRecentFile( );
00811 
00813   DLLEXPORT
00814   void loadingRecentFile(bool _loadingRecentFile );
00815 
00818 //===========================================================================
00821 //===========================================================================
00822 
00824 DLLEXPORT
00825 int* argc();
00826 
00828 DLLEXPORT
00829 char *** argv();
00830 
00832 DLLEXPORT
00833 void  argc( int* _argc );
00834 
00836 DLLEXPORT
00837 void argv( char*** _argv);
00838 
00840 DLLEXPORT
00841 bool remoteControl();
00842 
00844 DLLEXPORT
00845 void remoteControl( bool _remote );
00846 
00847 //===========================================================================
00850 //===========================================================================
00851 
00857 DLLEXPORT
00858 void doSlotDebugging( bool _debugging );
00859 
00860 DLLEXPORT
00861 bool doSlotDebugging( );
00862 
00865 //===========================================================================
00868 //===========================================================================
00869 
00872 DLLEXPORT
00873 void updateUrl( QString _url );
00874 
00877 DLLEXPORT
00878 QString updateUrl( );
00879 
00882 DLLEXPORT
00883 void updateUsername( QString _username );
00884 
00887 DLLEXPORT
00888 QString updateUsername( );
00889 
00892 DLLEXPORT
00893 void updatePassword( QString _password );
00894 
00897 DLLEXPORT
00898 QString updatePassword( );
00899 
00900 
00903 //===========================================================================
00906 //===========================================================================
00907 
00909 DLLEXPORT
00910 QString coreVersion();
00911 
00914 //===========================================================================
00917 //===========================================================================
00918 
00921 DLLEXPORT
00922 void pickingRenderMode( QString _target );
00923 
00926 DLLEXPORT
00927 QString pickingRenderMode( );
00928 
00931 DLLEXPORT
00932 void renderPicking(bool _enable);
00933 
00936 DLLEXPORT
00937 bool renderPicking( );
00938 
00940 }
00941 }
00942 
00943 //=============================================================================
00944 #endif // OPTIONS_HH defined
00945 //=============================================================================

acg pic Project OpenFlipper, ©  Computer Graphics Group, RWTH Aachen. Documentation generated using doxygen .