00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052 #ifndef __EXMANAGERLoad_H__
00053 #define __EXMANAGERLoad_H__
00054
00055
00056
00057 #include "ExDefine.h"
00058 #include "ExNihiloNameSpace.h"
00059
00060 #include "Math/ExMath.h"
00061
00062 #include "Manager/ExManager.h"
00063 #include "Manager/ExManagerConsole.h"
00064 #include "Manager/ExManagerSpecialEffect.h"
00065 #include "Manager/ExManagerMap.h"
00066
00067 #include "Manager/ManagerObject/ExManagerInterface.h"
00068 #include "Manager/ManagerObject/ExManagerSpirit.h"
00069 #include "Manager/ManagerObject/ExManagerAnimation.h"
00070 #include "Manager/ManagerObject/ExManagerCamera.h"
00071 #include "Manager/ManagerObject/ExManagerModele.h"
00072 #include "Manager/ManagerObject/ExManagerGizmo.h"
00073 #include "Manager/ManagerObject/ExManagerParticuleSystem.h"
00074 #include "Manager/ManagerObject/ExManagerLight.h"
00075 #include "Manager/ManagerObject/ExManagerVertexProgram.h"
00076 #include "Manager/ManagerObject/ExManagerObjectWindow.h"
00077 #include "Manager/ManagerObject/ExManagerMesh.h"
00078 #include "Manager/ManagerObject/ExManagerSound.h"
00079 #include "Manager/ManagerObject/ExManagerTexture.h"
00080
00081 #include "Object/Object2D/ExCLoadingAnimation.h"
00082
00083 enum FileType
00084 {
00085 FILE_CONSOL,
00086 FILE_COMMAND,
00087 FILE_SET,
00088 FILE_SOUND,
00089 FILE_MODEL,
00090 FILE_MAP,
00091 FILE_PARTICUL,
00092 FILE_WINDOW,
00093 FILE_INTERFACE,
00094 FILE_TEXTURE,
00095 FILE_MESH,
00096 FILE_UNKNOWN_TYPE
00097 };
00098
00099 class ExManagerLoad : public ExManagerObject<ExCLoadingAnimation>
00100 {
00101 private:
00102
00103
00104
00105 ExManagerAnimation *ManagerAnimation;
00106 ExManagerWindow *ManagerWindow;
00107 ExManagerConsole *ManagerConsole;
00108
00109 ExManagerInterface *ManagerInterface;
00110 ExManagerSpirit *ManagerSpirit;
00111
00112 ExManagerMap *ManagerMap;
00113 ExManagerCamera *ManagerCamera;
00114 ExManagerModel *ManagerModel;
00115 ExManagerGizmo *ManagerGizmo;
00116 ExManagerParticuleSystem *ManagerParticuleSystem;
00117 ExManagerLight *ManagerLight;
00118 ExManagerVertexProgram *ManagerVertexProgram;
00119 ExManagerObjectWindow *ManagerObjectWindow;
00120 ExManagerSpecialEffect *ManagerSpecialEffect;
00121 ExManagerMesh *ManagerMesh;
00122 ExManagerSound *ManagerSound;
00123 ExManagerTexture *ManagerTexture;
00124
00125 FileType GetFileType(std::string FileName);
00126
00127
00128
00129 static bool m_flag;
00130 static ExManagerLoad *m_instance;
00131 ExManagerLoad(void);
00132 ~ExManagerLoad(void);
00133 public:
00134
00135
00136
00137 static ExManagerLoad* CreateSingleton(void);
00138
00139 inline void SetManagerAnim(ExManagerAnimation *Anim){ManagerAnimation = Anim;}
00140 inline void SetManagerConsole(ExManagerConsole * Console){ManagerConsole=Console;}
00141 inline void SetManagerInterface(ExManagerInterface * Interface){ManagerInterface=Interface;}
00142 inline void SetManagerSpirit(ExManagerSpirit * Spirit){ManagerSpirit=Spirit;}
00143 inline void SetManagerMap(ExManagerMap *Map){ManagerMap = Map;}
00144 inline void SetManagerCamera(ExManagerCamera *Cam){ManagerCamera = Cam;}
00145 inline void SetManagerModel(ExManagerModel *Model){ManagerModel = Model;}
00146 inline void SetManagerGizmo(ExManagerGizmo *Gizmo){ManagerGizmo = Gizmo;}
00147 inline void SetManagerParticuleSystem(ExManagerParticuleSystem *ParticuleSystem){ManagerParticuleSystem = ParticuleSystem;}
00148 inline void SetManagerLight(ExManagerLight *Light){ManagerLight = Light;}
00149 inline void SetManagerVertexProgram(ExManagerVertexProgram *VertexProgram){ManagerVertexProgram = VertexProgram;}
00150 inline void SetManagerObjectWindow(ExManagerObjectWindow *ObjectWindow){ManagerObjectWindow = ObjectWindow;}
00151 inline void SetManagerSpecialEffect(ExManagerSpecialEffect *SpecialEffect){ManagerSpecialEffect = SpecialEffect;}
00152 inline void SetManagerMesh(ExManagerMesh *Mesh){ManagerMesh = Mesh;}
00153 inline void SetManagerSound(ExManagerSound * Sound){ManagerSound=Sound;}
00154 inline void SetManagerTexture(ExManagerTexture * Texture){ManagerTexture=Texture;}
00155
00156 void Reset(void);
00157 void Init(void);
00158 void Load(std::string FileName);
00159 void LoadSetOfFile(const char *FileName);
00160 ExCAction InputCommand(ExCCommand Command);
00161 ExCAction InputAction(ExCAction Action);
00162
00163 void DisplayFileType(void);
00164 };
00165
00166 #endif //__EXMANAGERLoad_H__