00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _OPENCITY_GRAPHICMANAGER_H_
00020 #define _OPENCITY_GRAPHICMANAGER_H_
00021
00022 #include "main.h"
00023
00024
00025 class Renderer;
00026 class Structure;
00027
00028 class Model;
00029 class Movement;
00030 class Agent;
00031
00032
00036 class GraphicManager {
00037 public:
00038 GraphicManager();
00039 virtual ~GraphicManager();
00040
00041
00042
00046 const uint
00047 GetSelection(
00048 const uint & rcuiWinX,
00049 const uint & rcuiWinY ) const;
00050
00051
00052
00056 void
00057 DisplayTerrain(
00058 const uint & rcuiW,
00059 const uint & rcuiL ) const;
00060
00061
00062
00067 void
00068 DisplayStructure(
00069 const Structure* pcStructure,
00070 const uint & rcuiW,
00071 const uint & rcuiL ) const;
00072
00073
00074
00079 void
00080 DisplayGC(
00081 const OPENCITY_GRAPHIC_CODE & enumGC,
00082 const uint & rcuiW,
00083 const uint & rcuiL ) const;
00084
00085
00086 void
00087 DisplayTerrainHighlight(
00088 const uint & rcuiW,
00089 const uint & rcuiL,
00090 const OPENCITY_TOOL_CODE & enumTool ) const;
00091
00092
00093 void
00094 DisplayStructureHighlight(
00095 const Structure* pcStructure,
00096 const uint & rcuiW,
00097 const uint & rcuiL,
00098 const OPENCITY_TOOL_CODE & enumTool ) const;
00099
00100
00101 void
00102 DisplayTerrainSelection(
00103 const uint & rcuiW,
00104 const uint & rcuiL,
00105 const uint & rcuiID ) const;
00106
00107
00108 void
00109 DisplayStructureSelection(
00110 const Structure* pcStructure,
00111 const uint & rcuiW,
00112 const uint & rcuiL,
00113 const uint & rcuiID ) const;
00114
00115
00116
00119 void
00120 Display(
00121 const OC_FLOAT & rcfW,
00122 const OC_FLOAT & rcfL,
00123 const OC_FLOAT & rcfH,
00124 const Movement* const pm ) const;
00125
00126
00127 void
00128 DisplayAgent(float x, float y, const Agent* const pAgent) const;
00129
00130
00131 private:
00132 Model* tabpModel [OC_GRAPHIC_CODE_MAX];
00133
00134 };
00135
00136 #endif
00137
00138
00139
00140
00141
00142
00143
00144
00145
00146
00147
00148
00149
00150
00151
00152
00153
00154
00155
00156
00157
00158
00159
00160
00161
00162
00163
00164
00165
00166
00167
00168
00169
00170
00171
00172
00173
00174
00175
00176
00177
00178