Main Page | Class Hierarchy | Class List | Directories | File List | Class Members

LifeVariables.h

00001 
00011 #ifndef _LIFEVARIABLES_
00012 #define _LIFEVARIABLES_
00013 
00014 #include <glui.h>
00015 
00016 #include "Histogram.h"
00017 #include "RawReader.h"
00018 #include "MenuBar.h"
00019 #include "StateBar.h"
00020 #include "FileDialog.h"
00021 #include "OptionPanel.h"
00022 #include "CDensities.h"
00023 #include "CTex.h"
00024 #include "CVolvoxels.h"
00025 #include "OrthographicSpace.h"
00026 #include "Histogram.h"
00027 #include "ViewPort.h"
00028 #include "TxPoint.h"
00029 #include "ColorCube.h"
00030 #include "ColorCubePanel.h"
00031 #include "ArcBall.h"
00032 #include "OrthographicCamera.h"
00033 #include "CScanner.h"
00034 #include "utilityfuncs.h"
00035 
00036 
00037 /*
00038  * Section: Program defaults
00039  *
00040  *    This section defines the program defaults that might be overwritten from
00041  *    some configuration file.
00042  *
00043  */
00044  
00046 #define DEFAULT_PATH "d:/root/data/"
00047 
00049 #define X_RES 900
00050 
00052 #define Y_RES 700
00053 
00055 #define DEBUG_MODE 1
00056 
00058 #define HISTOGRAM_WND_HEIGHT 150
00059 
00061 extern int xResolution;
00062 extern int yResolution;
00063 
00064 
00065 
00066 /*
00067  * Section: Events
00068  *
00069  *    This section contains event definitions that are generated by graphical
00070  *    components. 
00071  *
00072  */
00073 
00075 #define SELECT_FILE_ID 9
00076 
00078 #define OPEN_FILE_ID 10
00079 
00081 #define SHOWOPENFILEDLG_ID 11
00082 
00084 #define CONFIRMOPENFILEDLG_ID 12
00085 
00087 #define CANCELOPENFILEDLG_ID 13
00088 
00090 #define REFRESH_ID 14
00091 
00093 #define MODESELECT_ID 20
00094 
00096 #define PLANESELECT_ID 30
00097 
00099 #define SLICESELECT_ID 31
00100 
00102 #define INTERPOLATIONSELECT_ID 32
00103 
00105 #define VOLUMEINTERPOLATIONSELECT_ID 33
00106 
00107 
00109 #define TXFUNCTIONSELECT_ID 40
00110 
00111 
00112 #define VIEWINGDIRECTION_ID 60
00113 
00114 
00115 #define FRONT_VIEW      0 // 0x0501
00116 //#define BACK_VIEW       1 // 0x0502
00117 #define SIDE_VIEW       1 // 0x0503
00118 #define TOP_VIEW        2 // 0x0504
00119 #define BOTTOM_VIEW     3 // 0x0505
00120 
00121 /*
00122  * Section: Global Variables
00123  *
00124  *    This section defines the extern objects that are used in the program. All 
00125  *    extern objects are initialised in the main class.
00126  * 
00127  */
00128 
00131 #define SLICE_VISUALISATION 0
00132 
00135 #define VOLUME_VISUALISATION 1
00136  
00138 #define XY_PLANE 0
00139 
00141 #define XZ_PLANE 1
00142 
00144 #define YZ_PLANE 2
00145 
00147 #define NEAREST_SLICE 0
00148 
00150 #define BILINEAR_SLICE 1
00151 
00153 #define NEAREST_VOLUME 0
00154 
00156 #define TRILINEAR_VOLUME 1
00157 
00158 
00160 #define FIRST_HIT 0
00161 
00163 #define XRAY 1
00164 
00166 #define MIP 2
00167 
00168 
00170 #define COMPOSITING 3
00171 
00172 
00173 
00175 #define FONT GLUT_BITMAP_HELVETICA_10
00176 
00177 using namespace std;
00178 
00180 extern bool refresh;
00181 
00183 extern RawReader *reader;
00184 
00186 extern MenuBar *menuBar;
00187 
00189 extern StateBar *stateBar;
00190 
00192 extern FileDialog *fileDialog; 
00193 
00195 extern OptionPanel *optionPanel;
00196 
00198 extern ViewPort *mainViewPort;
00199 
00203 extern Histogram *histogram;
00204 
00205 extern OrthographicCamera *mainCamera;
00206 
00208 extern int mouseBtn;
00209 
00210 
00211 
00213 extern ColorCubePanel *colorSelector;
00214 
00216 extern CDensities GDensities;
00217 
00219 extern CVolVoxels GVolVoxels;
00220 
00222 extern CTex GTex;
00223 
00225 extern CScanner   GScanner;
00226 
00227 
00275 extern enum ProgramState {START, 
00276                           LOADING,
00277                           LOADED,
00278                           SLICE_MODE,
00279                           SWITCHING,
00280                           VOLUME_MODE,
00281                           UNLOADING,
00282                           UNLOADED };
00283 
00284 
00285 /*
00286  * Section: Global Functions
00287  *
00288  *    This section defines the globale callback functions that are used in the 
00289  *    program. This is done since GLUI and Glut needs some callbacks.
00290  * 
00291  */
00292 
00293 
00297 extern void showGlDebugMessages();
00298 
00307 extern void renderString(int x, int y, void *font, string text);
00308 
00317 extern void renderString(int x, int y, void *font, int nr);
00318 
00319 
00325 extern void display();
00326 
00327 
00333 extern void reshape(int x, int y);
00334 
00337 extern void idle();
00338 
00343 extern void eventListener(int msgNr);
00344 
00347 extern void keyEvent(unsigned char key, int x, int y);
00348 
00353 extern void enterLoadedMode() throw (Error);
00354 
00358 extern void enterUnloadedMode() throw (Error);
00359 
00363 extern void enterSlicingMode() throw (Error);
00364 
00366 extern void enterVolumeMode() throw (Error);
00367 
00368 #endif

Generated on Mon Dec 12 15:20:26 2005 for CCube by  doxygen 1.4.1