Game Develop C++ Platform: CodeCompilationHelpers.h Source File

| Game Develop C++ Platform Platform for developing native games based on OpenGL and SFML with Game Develop

- Main Page
- Modules
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Groups Pages
CodeCompilationHelpers.h
Go to the documentation of this file.
1
6 #if defined(GD_IDE_ONLY) && !defined(GD_NO_WX_GUI)
7 #ifndef CodeCompilationHelpers_H
8 #define CodeCompilationHelpers_H
9
10 #include <map>
11 #include <string>
12 #include <iostream>
13 #include <vector>
14 #include <set>
15 #include <boost/shared_ptr.hpp>
16 #include <SFML/System.hpp>
17 #include "GDCpp/IDE/CodeCompiler.h"
18 namespace gd {class ArbitraryResourceWorker;}
19 class CodeExecutionEngine;
20 namespace gd { class Layout; }
21 namespace gd { class SourceFile; }
22 namespace gd { class ExternalEvents; }
23 namespace gd { class Project; }
24
34 class GD_API CodeCompilationHelpers
35 {
36 public:
44 static void CreateSceneEventsCompilationTask(gd::Project & game, gd::Layout & scene);
45
53 static void CreateExternalSourceFileCompilationTask(gd::Project & game, gd::SourceFile & file, gd::Layout * scene = NULL);
54
61 static void CreateExternalEventsCompilationTask(gd::Project & game, gd::ExternalEvents & events);
62 };
63
72 class GD_API EventsCodeCompilerPostWork : public CodeCompilerExtraWork
73 {
74 public:
75 virtual bool Execute();
76
77 gd::Project * game;
78 gd::Layout * scene;
79
80 EventsCodeCompilerPostWork(gd::Project * game_, gd::Layout * scene_) : game(game_), scene(scene_) {};
81 virtual ~EventsCodeCompilerPostWork() {};
82 };
83
92 class GD_API EventsCodeCompilerLinkingPostWork : public CodeCompilerExtraWork
93 {
94 public:
95 virtual bool Execute();
96
97 gd::Project * game;
98 gd::Layout * scene;
99
100 EventsCodeCompilerLinkingPostWork(gd::Project * game_, gd::Layout * scene_) : game(game_), scene(scene_) {};
101 virtual ~EventsCodeCompilerLinkingPostWork() {};
102 };
103
113 class GD_API EventsCodeCompilerPreWork : public CodeCompilerExtraWork
114 {
115 public:
116 virtual bool Execute();
117
118 gd::Project * game;
119 gd::Layout * scene;
120
121 EventsCodeCompilerPreWork(gd::Project * game_, gd::Layout * scene_) : game(game_), scene(scene_) {};
122 virtual ~EventsCodeCompilerPreWork() {};
123 };
124
133 class GD_API EventsCodeCompilerRuntimePreWork : public CodeCompilerExtraWork
134 {
135 public:
136 virtual bool Execute();
137
138 gd::Project * game;
139 gd::Layout * scene;
140 gd::ArbitraryResourceWorker & resourceWorker;
141
142 EventsCodeCompilerRuntimePreWork(gd::Project * game_, gd::Layout * scene_, gd::ArbitraryResourceWorker & resourceWorker_) : game(game_), scene(scene_), resourceWorker(resourceWorker_) {};
143 virtual ~EventsCodeCompilerRuntimePreWork() {};
144 };
145
154 class GD_API ExternalEventsCodeCompilerPreWork : public CodeCompilerExtraWork
155 {
156 public:
157 virtual bool Execute();
158
159 gd::Project * game;
160 gd::ExternalEvents * externalEvents;
161
162 ExternalEventsCodeCompilerPreWork(gd::Project * game_, gd::ExternalEvents * events_) : game(game_), externalEvents(events_) {};
163 virtual ~ExternalEventsCodeCompilerPreWork() {};
164 };
165
175 class GD_API ExternalEventsCodeCompilerPostWork : public CodeCompilerExtraWork
176 {
177 public:
178 virtual bool Execute();
179
180 gd::Project * game;
181 gd::ExternalEvents * externalEvents;
182
183 ExternalEventsCodeCompilerPostWork(gd::Project * game_, gd::ExternalEvents * events_) : game(game_), externalEvents(events_) {};
184 virtual ~ExternalEventsCodeCompilerPostWork() {};
185 };
186
195 class GD_API ExternalEventsCodeCompilerRuntimePreWork : public CodeCompilerExtraWork
196 {
197 public:
198 virtual bool Execute();
199
200 gd::Project * game;
201 gd::ExternalEvents * externalEvents;
202 gd::ArbitraryResourceWorker & resourceWorker;
203
204 ExternalEventsCodeCompilerRuntimePreWork(gd::Project * game_, gd::ExternalEvents * events_, gd::ArbitraryResourceWorker & resourceWorker_) : game(game_), externalEvents(events_), resourceWorker(resourceWorker_) {};
205 virtual ~ExternalEventsCodeCompilerRuntimePreWork() {};
206 };
207
216 class GD_API SourceFileCodeCompilerPostWork : public CodeCompilerExtraWork
217 {
218 public:
219 virtual bool Execute();
220
221 gd::Layout * scene;
222
223 SourceFileCodeCompilerPostWork(gd::Layout * scene_) : scene(scene_) {};
224 virtual ~SourceFileCodeCompilerPostWork() {};
225 };
226
227 #endif // CodeCompilationHelpers_H
228 #endif