00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CS_REGION_H__
00020 #define __CS_REGION_H__
00021
00022 #include "csutil/csobject.h"
00023 #include "iengine/region.h"
00024
00025 struct iEngine;
00026
00031 class csRegion : public csObject
00032 {
00033 private:
00034 iEngine* engine;
00035
00036 public:
00040 csRegion (iEngine*);
00041
00046 virtual ~csRegion ();
00047
00053 virtual bool IsInRegion (iObject* obj);
00054
00058 virtual void DeleteAll ();
00059
00063 virtual bool PrepareTextures ();
00064
00068 virtual bool ShineLights ();
00069
00076 virtual bool Prepare ();
00077
00078 SCF_DECLARE_IBASE_EXT (csObject);
00079
00080
00081 struct Region : public iRegion
00082 {
00083 SCF_DECLARE_EMBEDDED_IBASE (csRegion);
00084
00086 virtual iObject *QueryObject();
00087
00092 virtual void Clear ();
00093
00097 virtual void DeleteAll ();
00098
00102 virtual bool PrepareTextures ();
00103
00107 virtual bool ShineLights ();
00108
00115 virtual bool Prepare ();
00116
00118 virtual iSector *FindSector (const char *iName);
00120 virtual iMeshWrapper *FindMeshObject (const char *iName);
00122 virtual iMeshFactoryWrapper *FindMeshFactory (const char *iName);
00124 virtual iTextureWrapper *FindTexture (const char *iName);
00126 virtual iMaterialWrapper *FindMaterial (const char *iName);
00128 virtual iCameraPosition *FindCameraPosition (const char *iName);
00130 virtual iCollection *FindCollection (const char *iName);
00131
00137 virtual bool IsInRegion (iObject* obj);
00138 } scfiRegion;
00139 friend struct Region;
00140 };
00141
00142 #endif // __CS_REGION_H__