ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/FastOpenGlDisplayer/soft/main.h
Revision: 1.19
Committed: Fri May 2 14:30:34 2008 UTC (17 years ago) by querten
Content type: text/plain
Branch: MAIN
CVS Tags: Version_0_26
Changes since 1.18: +15 -16 lines
Log Message:
ScreenShot can be vectorial now + Reorganization

File Contents

# User Rev Content
1 querten 1.1
2     // SimEvent.h: interface for the SimEvent class.
3     //
4     //////////////////////////////////////////////////////////////////////
5    
6     #ifndef _MAIN_H__
7     #define _MAIN_H__
8    
9    
10     #ifdef linux
11     #include <GL/gl.h>
12     #include <GL/glu.h>
13 querten 1.19 #include "Includes/GLUT/glut.h"
14 querten 1.12 #include <ext/hash_map>
15     using namespace __gnu_cxx;
16     typedef hash_map<unsigned int, char*, hash<unsigned int>, equal_to<unsigned int> > HASH_Map;
17 querten 1.1 #else
18     #define _CRT_SECURE_NO_DEPRECATE 1
19 querten 1.19 #include <windows.h>
20 querten 1.1 #include <gl/gl.h>
21     #include <gl/glu.h>
22     #include <gl/glut.h>
23     #pragma comment (lib,"glaux.lib")
24     #pragma comment (lib,"glu32.lib")
25     #pragma comment (lib,"opengl32.lib")
26     #pragma comment (lib,"glut.lib")
27     #pragma comment (lib,"glut32.lib")
28 querten 1.19
29 querten 1.12 #include <hash_map>
30     using namespace stdext;
31 roberfro 1.14 typedef hash_map<unsigned int, char*, hash_compare<unsigned int, std::less<unsigned int> > > HASH_Map;
32 querten 1.1 #endif
33    
34 querten 1.12 HASH_Map test;
35    
36     #include <time.h>
37     time_t start;
38     time_t end;
39    
40 querten 1.1 #include <stdio.h>
41     #include <math.h>
42    
43     #include "../interface/SimEvent.h"
44     #include "../interface/Geometry.h"
45    
46 querten 1.19 #include "Includes/FROG/DrawPrimitive.h"
47     #include "Includes/FROG/Logo.h"
48     #include "Includes/FROG/Texture.h"
49     #include "Includes/FROG/ReadCards.h"
50     #include "Includes/FROG/FROG_Struct.h"
51     #include "Includes/FROG/FROG_Camera.h"
52     #include "Includes/FROG/ObjectInfo.h"
53 querten 1.1
54     int SAVE_WINDOW_W = 800;
55     int SAVE_WINDOW_H = 600;
56     int SAVE_WINDOW_X = 10;
57     int SAVE_WINDOW_Y = 10;
58    
59 querten 1.19 bool FULLSCREEN = false;
60     int WINDOW_WIDTH = 800;
61     int WINDOW_HEIGHT = 600;
62     int SCREENSHOT = 0;
63     char* SCREENSHOT_FORMAT = new char[255];
64 querten 1.1
65 querten 1.7 int TEMP_I = 0;
66    
67 querten 1.16 FROG_Camera Cam;
68 querten 1.1
69     int CMS_TRACKER_RADIUS = 129;
70 querten 1.6 int CMS_TRACKER_LENGTH = 300;
71 querten 1.1
72     int TRACKING_RADIUS = 129;//295;
73 querten 1.6 int TRACKING_LENGTH = 300;//645;
74 querten 1.1
75     float PT_CUTOFF = 1.0;
76 querten 1.7 double EECAL_CUTOFF[3] = {0.2,0.6,0.0001};
77     double EHCAL_CUTOFF[4] = {1.5,1.5,0.5,5.0};
78 querten 1.1
79     bool MouseStates[3];
80    
81     std::vector<GLuint> theSimTracks;
82 querten 1.5 GLuint theGeomMuon[3];
83 querten 1.6 GLuint theGeomMuonInEvent;
84 querten 1.1 GLuint theGeomTracker[6];
85     GLuint theGeomTrackerInEvent;
86     GLuint theGeomEcal[3];
87     GLuint theGeomEcalInEvent;
88     GLuint theGeomHcal[4];
89     GLuint theGeomHcalInEvent;
90    
91     GLuint LogoTexture;
92    
93     double t = 0;
94    
95 querten 1.4 std::string inputVisFile;
96     std::string inputTrackerGeom;
97     std::string inputEcalGeom;
98     std::string inputHcalGeom;
99 querten 1.5 std::string inputMuonGeom;
100 querten 1.1
101     MySimEvent* event;
102     MySimEvents* events;
103    
104     Geometry* geom;
105    
106     char gTracker = 0;
107     char gEcal = 0;
108     char gHcal = 0;
109 querten 1.5 char gMuon = 0;
110 querten 1.13 char gSim = 0;
111 querten 1.7 char gReco = 15;
112 querten 1.1
113 querten 1.12 int mObj_I = -1;
114     int mColl_I = -1;
115 querten 1.1 bool mLoading = true;
116     int mLoading_I = 0;
117    
118     int eventNumber = 0;
119    
120     bool mHelpScreen= false;
121     bool mRotate = true;
122 roberfro 1.15
123 querten 1.17
124 roberfro 1.15 bool stateChanged = false;
125 querten 1.1 float mDt = 0.005f;
126    
127 querten 1.17 bool print_FrameWork = false;
128 querten 1.16
129    
130 querten 1.1 GLint Menu_Geom_Tracker = 0;
131     GLint Menu_Geom_Ecal = 0;
132     GLint Menu_Geom_Hcal = 0;
133 querten 1.5 GLint Menu_Geom_Muon = 0;
134 querten 1.1 GLint Menu_Geom = 0;
135     GLint Menu_SimEvent = 0;
136     GLint Menu_RecoEvent = 0;
137     GLint Menu_Main = 0;
138    
139     WidthAndColor WaC_BackGround = {1.0 , 0.0 , 1.0 , 0.0 , 1.0};
140     WidthAndColor WaC_Txt = {1.0 , 0.0 , 1.0 , 1.0 , 1.0};
141     WidthAndColor WaC_CMS_Framework = {1.0 , 1.0 , 0.5 , 1.0 , 0.3};
142     WidthAndColor WaC_LHC_Axis = {3.0 , 1.0 , 0.5 , 1.0 , 0.3};
143     WidthAndColor WaC_Default_SimTrack = {2.0 , 0.0 , 1.0 , 1.0 , 1.0};
144 querten 1.17 WidthAndColor WaC_Selected_Object = {2.0 , 1.0 , 1.0 , 0.0 , 1.0};
145 querten 1.1
146 querten 1.8 std::vector<IdAndWidthAndColor*> WaC_SimTracks;
147 querten 1.17 std::vector<IdAndWidthAndColor*> WaC_RecoTracks;
148 querten 1.8
149 querten 1.1 void DrawTrack(MySimTrack* track, MySimVertex* vertex1, MySimVertex* vertex2);
150     void reshape (int w, int h);
151     void display();
152 querten 1.5 void initGeomMuon();
153 querten 1.6 void initGeomMuonInEvent();
154 querten 1.1 void initGeomTracker();
155     void initGeomTrackerInEvent();
156     void initGeomEcal();
157     void initGeomEcalInEvent();
158     void initGeomHcal();
159     void initGeomHcalInEvent();
160 roberfro 1.14 void defineColorForSimTrack(int i);
161 querten 1.5
162 querten 1.1 void initSimTrack();
163     void init();
164     void menu_callback(int value);
165     void menu_create();
166     void LoadCard(const char* inputCard );
167 roberfro 1.9 void gl_select(int x, int y);
168     void list_hits(GLint hits, GLuint *names);
169 querten 1.1
170 querten 1.2 #endif
171