1 |
|
|
2 |
< |
// SimEvent.h: interface for the SimEvent class. |
2 |
> |
// main.h |
3 |
|
// |
4 |
|
////////////////////////////////////////////////////////////////////// |
5 |
|
|
6 |
|
#ifndef _MAIN_H__ |
7 |
|
#define _MAIN_H__ |
8 |
|
|
9 |
+ |
#define FROG_VERSION 1.081 |
10 |
+ |
#define FROG_AUTHORLIST "Loic.Quertenmont@cern.ch\nVincent.Roberfroid@cern.ch" |
11 |
+ |
|
12 |
+ |
#include "Includes/GL/glew.h" |
13 |
|
#ifdef linux |
14 |
+ |
#include "Includes/GL/glxew.h" |
15 |
|
#include <GL/gl.h> |
16 |
|
#include <GL/glu.h> |
17 |
< |
#include "Includes/GLUT/glut.h" |
13 |
< |
#include <ext/hash_map> |
14 |
< |
using namespace __gnu_cxx; |
15 |
< |
typedef hash_map<unsigned int, char*, hash<unsigned int>, equal_to<unsigned int> > HASH_Map; |
17 |
> |
#include "Includes/GLUT/glut.h" |
18 |
|
#else |
19 |
< |
#include <windows.h> |
19 |
> |
#include <windows.h> |
20 |
> |
#include "Includes/GL/wglew.h" |
21 |
|
#include <gl/gl.h> |
22 |
|
#include <gl/glu.h> |
23 |
< |
#include <gl/glut.h> |
23 |
> |
#include <gl/glut.h> |
24 |
|
#pragma comment (lib,"glaux.lib") |
25 |
|
#pragma comment (lib,"glu32.lib") |
26 |
|
#pragma comment (lib,"opengl32.lib") |
27 |
|
#pragma comment (lib,"glut.lib") |
28 |
|
#pragma comment (lib,"glut32.lib") |
29 |
< |
|
27 |
< |
#include <hash_map> |
28 |
< |
using namespace stdext; |
29 |
< |
typedef hash_map<unsigned int, char*, hash_compare<unsigned int, std::less<unsigned int> > > HASH_Map; |
29 |
> |
#pragma comment (lib,"Includes/CURL/Lib/libcurl.lib") |
30 |
|
#endif |
31 |
– |
|
31 |
|
|
32 |
< |
HASH_Map test; |
32 |
> |
bool SCREENSAVER = false; |
33 |
|
|
34 |
|
#include <time.h> |
35 |
|
time_t start; |
41 |
|
#include "Includes/FROG/FROG_Objects.h" |
42 |
|
#include "Includes/FROG/FROG_Events.h" |
43 |
|
#include "Includes/FROG/FROG_Geometry.h" |
45 |
– |
#include "Includes/FROG/FROG_DetId.h" |
44 |
|
|
45 |
+ |
#include "Includes/FROG/FROG_Fonts.h" |
46 |
|
#include "Includes/FROG/FROG_Element_Tools.h" |
47 |
|
|
48 |
< |
#include "Includes/FROG/Logo.h" |
50 |
< |
#include "Includes/FROG/Texture.h" |
48 |
> |
#include "Includes/FROG/FROG_Texture.h" |
49 |
|
#include "Includes/FROG/FROG_ReadCards.h" |
50 |
< |
#include "Includes/FROG/FROG_Struct.h" |
51 |
< |
#include "Includes/FROG/FROG_Camera.h" |
52 |
< |
#include "Includes/FROG/ObjectInfo.h" |
50 |
> |
#include "Includes/FROG/FROG_Net_Tools.h" |
51 |
> |
#include "Includes/FROG/FROG_View_Tools.h" |
52 |
> |
|
53 |
> |
FROG_Fonts* Fonts; |
54 |
> |
FROG_ReadCards* Card; |
55 |
> |
FROG_Objects_Extended* frogObjects_; |
56 |
> |
|
57 |
> |
std::vector<FROG_View*> ActiveViews; |
58 |
> |
FROG_View_Screen* ViewScreen; |
59 |
> |
FROG_View* ViewMain; |
60 |
|
|
61 |
+ |
unsigned int shadowMapTexture; |
62 |
|
|
57 |
– |
FROG_Element_Base *prim2; |
63 |
|
|
64 |
|
int SAVE_WINDOW_W = 800; |
65 |
|
int SAVE_WINDOW_H = 600; |
71 |
|
int WINDOW_WIDTH = 800; |
72 |
|
int WINDOW_HEIGHT = 600; |
73 |
|
int SCREENSHOT = 0; |
74 |
< |
char* SCREENSHOT_FORMAT = new char[255]; |
70 |
< |
|
71 |
< |
int TEMP_I = 0; |
72 |
< |
|
73 |
< |
FROG_Camera Cam; |
74 |
> |
char SCREENSHOT_FORMAT[255] = {"png"}; |
75 |
|
|
75 |
– |
int CMS_TRACKER_RADIUS = 129; |
76 |
– |
int CMS_TRACKER_LENGTH = 300; |
76 |
|
|
78 |
– |
float PT_CUTOFF = 1.0; |
79 |
– |
double EECAL_CUTOFF[3] = {0.2,0.6,0.0001}; |
80 |
– |
double EHCAL_CUTOFF[4] = {1.5,1.5,0.5,5.0}; |
77 |
|
|
78 |
+ |
int TEMP_I = 0; |
79 |
|
bool MouseStates[3]; |
80 |
|
|
84 |
– |
std::vector<GLuint> theSimTracks; |
85 |
– |
|
81 |
|
GLuint LogoTexture; |
82 |
< |
GLuint MarkerTexture; |
88 |
< |
|
89 |
< |
double t = 0; |
82 |
> |
GLuint LogoTxtTexture; |
83 |
|
|
84 |
|
std::string inputVisFile; |
85 |
+ |
std::string inputVisFileFromCard; |
86 |
|
std::vector<std::string> inputGeom; |
87 |
|
|
88 |
+ |
// MultiThreading Variables |
89 |
+ |
#ifdef linux |
90 |
+ |
pthread_t Thread_H; |
91 |
+ |
#else |
92 |
+ |
HANDLE Thread_H = NULL; |
93 |
+ |
DWORD Thread_Id = 0; |
94 |
+ |
#endif |
95 |
+ |
bool Thread_Run = false; |
96 |
+ |
|
97 |
+ |
|
98 |
+ |
|
99 |
+ |
int updateVisFileTime = -1; |
100 |
+ |
|
101 |
|
FROG_Events* events; |
102 |
|
FROG_Element_Event* event; |
103 |
|
|
106 |
|
char gSim = 0; |
107 |
|
char gReco = 15; |
108 |
|
|
109 |
< |
unsigned int mCLicked_DetId = 0; |
109 |
> |
unsigned int mCLicked_DetId = (unsigned int) -1; |
110 |
|
bool mDisplayMother = false; |
104 |
– |
int mObj_I = -1; |
105 |
– |
int mColl_I = -1; |
111 |
|
bool mLoading = true; |
112 |
|
int mLoading_I = 0; |
113 |
|
|
114 |
|
int eventNumber = 0; |
115 |
+ |
int eventTime = 5; |
116 |
|
|
117 |
|
bool mHelpScreen= false; |
112 |
– |
bool mRotate = true; |
113 |
– |
|
118 |
|
|
119 |
|
bool stateChanged = false; |
116 |
– |
float mDt = 0.005f; |
120 |
|
|
121 |
|
bool print_FrameWork = false; |
122 |
|
|
123 |
< |
GLint Menu_Geom = 0; |
124 |
< |
GLint Menu_SimEvent = 0; |
125 |
< |
GLint Menu_RecoEvent = 0; |
126 |
< |
GLint Menu_Main = 0; |
127 |
< |
|
128 |
< |
WidthAndColor WaC_BackGround = {1.0 , 0.0 , 1.0 , 0.0 , 1.0}; |
126 |
< |
WidthAndColor WaC_Txt = {1.0 , 0.0 , 1.0 , 1.0 , 1.0}; |
127 |
< |
WidthAndColor WaC_CMS_Framework = {1.0 , 1.0 , 0.5 , 1.0 , 0.3}; |
128 |
< |
WidthAndColor WaC_LHC_Axis = {3.0 , 1.0 , 0.5 , 1.0 , 0.3}; |
129 |
< |
WidthAndColor WaC_Default_SimTrack = {2.0 , 0.0 , 1.0 , 1.0 , 1.0}; |
130 |
< |
WidthAndColor WaC_Selected_Object = {2.0 , 1.0 , 1.0 , 0.0 , 1.0}; |
131 |
< |
|
132 |
< |
std::vector<IdAndWidthAndColor*> WaC_SimTracks; |
133 |
< |
std::vector<IdAndWidthAndColor*> WaC_RecoTracks; |
123 |
> |
float BackGround_Color[4] = {0.0 , 0.0 , 0.0 , 1.0}; |
124 |
> |
float Txt_Color[4] = {0.0 , 1.0 , 1.0 , 1.0}; |
125 |
> |
float Framework_Color[4] = {1.0 , 0.5 , 1.0 , 0.3}; |
126 |
> |
float Framework_Thickness = 1.0; |
127 |
> |
float ZAxis_Color[4] = {1.0 , 0.5 , 1.0 , 0.3}; |
128 |
> |
float ZAxis_Thickness = 3; |
129 |
|
|
135 |
– |
//void DrawTrack(MySimTrack* track, MySimVertex* vertex1, MySimVertex* vertex2); |
130 |
|
void reshape (int w, int h); |
131 |
|
void display(); |
132 |
+ |
void display2(); |
133 |
+ |
void displaytext(); |
134 |
|
|
139 |
– |
void defineColorForSimTrack(int i); |
140 |
– |
|
141 |
– |
void init(); |
135 |
|
void LoadCard(const char* inputCard ); |
136 |
|
void gl_select(int x, int y); |
137 |
|
void list_hits(GLint hits, GLuint *names); |
138 |
|
|
139 |
+ |
void AutomaticEventChanging (int Extra); |
140 |
+ |
|
141 |
+ |
|
142 |
+ |
void updateEventsFile(); |
143 |
+ |
|
144 |
+ |
|
145 |
|
#endif |
146 |
|
|