OSDN Git Service

Create a new command for edge enhancement before edge detection
[eos/hostdependX86LINUX64.git] / include / lmolvie.h
1 /*
2 # lmolvie.h : $Revision$  
3 # $Date$ 
4 # Created by $Author$
5 # Usage : lmolvie.h 
6 # Attention
7 #   $Loccker$
8 #       $State$ 
9 #
10 */
11 /* $Log$ */
12 #ifndef LMOLVIE_H
13 #define LMOLVIE_H
14
15 #include <GL/glut.h>
16 #include "pdbFile.h"
17 #include "Contour.h"
18
19 #undef  IDLE_FUNCTION
20 #define KEYBOARD_FUNCTION 
21 #define MOUSE_FUNCTION 
22 #define MOTION_FUNCTION 
23 #define PASSIVEMOTION_FUNCTION 
24
25 //int mainwindow, parallelwindow;
26
27 typedef struct molvieInfo {
28     long flagRedirect;
29
30     long flagIn;
31     char* In;
32     FILE* fptIn;
33     
34     long flagOut;
35     char* Out;
36     FILE* fptOut;
37     
38     long flagconfigFile;
39     char* configFile;
40     FILE* fptconfigFile;
41     
42     long flagmode;
43     long mode;
44     
45 } molvieInfo;
46
47 typedef struct cameraInfo {
48         GLdouble Fovy;
49         GLdouble Aspect;
50         GLdouble ClipNear;
51         GLdouble ClipFar;
52         GLdouble Eye[3];
53         GLdouble Centre[3];
54         GLdouble Up[3];
55 } cameraInfo;
56
57 typedef enum displayMode{
58         none=0,
59         atom=1,
60         stick=2,
61         serial=3,
62         residue=4,
63         temp=5,
64         sticktemp=6,
65         stickresidue=7
66 }displayMode;
67
68 typedef enum operationMode {
69         normal=0,
70         drive=1,
71         parallel=2,
72         surface=3,
73         multi=4,
74         coaster=5
75 } operationMode;
76
77 typedef struct Coord {
78         GLfloat x;
79         GLfloat y;
80         GLfloat z;
81 } Coord; 
82
83 extern void lmolviePDBread(FILE* fptIn);
84 extern pdbFile* get_pdb(void);
85 extern void lmolvieInitNormal(void);
86 extern void lmolvieIdleTest(void);
87 extern void lmolvieIdleNormal(void);
88 extern void lmolvieDisplayTest(void);
89 extern void lmolvieDisplayNormal(void);
90 //extern void viewerDisplay(void);
91 extern void lmolvieReshapeNormal(int width, int height);
92 extern void myCameraRotateY(GLdouble angle);
93 extern void lmolvieMouse(int button, int state, int x, int y);
94 extern void lmolvieMouseMotion(int x, int y);
95 extern void lmolvieMousePassiveMotion(int x, int y);
96 extern void lmolvieMouseDrive(int button, int state, int x, int y);
97 extern void lmolvieMouseMotionDrive(int x, int y);
98 extern void lmolvieMousePassiveMotionDrive(int x, int y);
99 extern void lmolvieMouseParallel(int button, int state, int x, int y);
100 extern void lmolvieMouseMotionParallel(int x, int y);
101 extern void lmolvieMousePassiveMotionParallel(int x, int y);
102 extern void lmolvieMouseMulti(int button, int state, int x, int y);
103 extern void lmolvieMouseMotionMulti(int x, int y);
104 extern void lmolvieMousePassiveMotionMulti(int x, int y);
105 extern void lmolvieKeyboard(unsigned char pushkey, int x, int y);
106 extern void lmolvieKeyboardNormal(unsigned char pushkey, int x, int y);
107 extern void lmolvieKeyboardDrive(unsigned char pushkey, int x, int y);
108 extern void lmolvieKeyboardParallel(unsigned char pushkey, int x, int y);
109 extern void lmolvieKeyboardSurface(unsigned char pushkey, int x, int y);
110 //extern void moveKeyboard(int movekey, int x, int y);
111 //extern void moveKeyboard0(int movekey, int x, int y);
112
113 extern void lmolvieInitParallel(void);
114 extern void lmolvieDisplayParallel(void);
115 extern void lmolvieReshapeParallel(int width, int height);
116
117 extern operationMode operationModeGet(void);
118 extern void operationModeSet(operationMode);
119
120 extern void myCameraRotateX(GLdouble angle);        
121 extern void myCameraRotateY(GLdouble angle);        
122 extern void myCameraRotateZ(GLdouble angle);
123 extern void myCameraEyeRotateX(GLdouble angle);
124 extern void myCameraEyeRotateY(GLdouble angle);
125 extern void myCameraTranslateX(GLdouble pan);        
126 extern void myCameraTranslateY(GLdouble pan);        
127 extern void myCameraTranslateZ(GLdouble pan); 
128 //extern void setMyCamera(pdbCenter pdbCenter, GLfloat h);
129 extern void resetMyCamera();
130 extern cameraInfo* getMyCamera(void);
131 extern void upCalc();
132 extern void moveMyCamera(double movedistance);
133
134 //extern pdbCenter getpdbCenter(int returnID);
135 //extern void putpdbCenter(pdbFile* putpdbfile);
136
137 extern void lmolvieLightSet(void);
138 extern GLfloat* get_LightPos(int index);
139
140 //extern elementSwitch get_elementSwitch(int ID);
141 //extern void put_elementSwitch(int ID, char atom);
142 //extern void DrawAtom(void);
143
144 extern void monoSound(float amplitude, float Hz);
145 extern void lmolvieVoice(void);
146
147 extern void drawContour(contourLinesSet* contour);
148
149 extern void scaleBarSwitch();
150
151 //molvieViewer
152 extern void lmolvieViewerIdle(void);
153 extern void lmolvieViewerKeyboard(unsigned char pushkey, int x, int y);
154 extern void lmolvieViewerSpecial(int pushkey, int x, int y);
155 extern void lmolvieViewerMouse(int button, int state, int x, int y);
156 extern void lmolvieViewerMouseMotion(int x, int y);
157 extern void lmolvieViewerMousePassiveMotion(int x, int y);
158 extern void lmolvieViewerDisplay(void);
159
160 //molvieMrcViewer
161 extern void lmolvieMrcViewerKeyboard(unsigned char pushkey, int x, int y);
162 extern void lmolvieMrcViewerMouse(int button, int state, int x, int y);
163 extern void lmolvieMrcViewerMouseMotion(int x, int y);
164 extern void lmolvieMrcViewerMousePassiveMotion(int x, int y);
165 extern void lmolvieMrcViewerDisplay(void);
166
167 //molvieProjection
168 extern void lmolvieProjectionKeyboard(unsigned char pushkey, int x, int y);
169 extern void lmolvieProjectionMouse(int button, int state, int x, int y);
170 extern void lmolvieProjectionMouseMotion(int x, int y);
171 extern void lmolvieProjectionMousePassiveMotion(int x, int y);
172
173 //molvieDock
174 extern void lmolvieDockKeyboard(unsigned char pushkey, int x, int y);
175 //extern void newPDBload(pdbFile* loadpdb);
176 extern void displayMultiPDB1();
177 extern void lmolvieDockDisplay(void);
178
179 //molvieFlight
180 extern void lmolvieFlightKeyboard(unsigned char pushkey, int x, int y);
181 extern void lmolvieFlightDisplay(void);
182 extern void lmolvieFlightIdle(void);
183
184 //molvieTest
185 extern void lmolvieTest(void);
186 extern GLboolean myDisplayListMakeAtom(void);
187
188 extern void setDriveMyCamera();
189 extern void resetDriveMyCamera();
190 extern void setCameraCentreTag(int tag);
191
192
193 #endif /* LMOLVIE_H */