
00001 //***************************************************************************** 00002 // File : gzDbManager_gzd.h 00003 // Module : 00004 // Description : Class definition of the gizmo db format 00005 // Author : Anders Modén 00006 // Product : Gizmo3D 2.1.1 00007 // 00008 // Copyright © 2003- Saab Training Systems AB, Sweden 00009 // 00010 // NOTE: Gizmo3D is a high performance 3D Scene Graph and effect visualisation 00011 // C++ toolkit for Linux, Mac OS X, Windows (Win32) and IRIX® for 00012 // usage in Game or VisSim development. 00013 // 00014 // 00015 // Revision History... 00016 // 00017 // Who Date Description 00018 // 00019 // AMO 990401 Created file 00020 // 00021 //****************************************************************************** 00022 #ifndef __GZ_DB_GZD_H__ 00023 #define __GZ_DB_GZD_H__ 00024 00030 #include "gzNode.h" 00031 00032 // UserData Db INFO attributes 00033 const gzString GZ_DB_INFO_TYPE_GIZMO3D ="gzd"; 00034 00035 //****************************************************************************** 00036 // Class : gzDbManager_gzd 00037 // 00038 // Purpose : Reader/Writer for Gizmo3D file format 00039 // 00040 // Notes : - 00041 // 00042 // Revision History... 00043 // 00044 // Who Date Description 00045 // 00046 // AMO 010508 Created 00047 // 00048 //****************************************************************************** 00049 class gzDbManager_gzd : public gzDbManager 00050 { 00051 public: 00052 00053 GZ_DB_EXPORT gzDbManager_gzd(); 00054 GZ_DB_EXPORT virtual ~gzDbManager_gzd(); 00055 00056 GZ_DB_EXPORT virtual gzNode * loadDB(gzSerializeAdapter *adapter); 00057 00058 GZ_DB_EXPORT virtual gzBool saveDB(gzNode *node , gzSerializeAdapter *adapter); 00059 00060 GZ_DB_EXPORT virtual gzString getExtensions(); 00061 00062 GZ_DB_EXPORT virtual gzULong getVersion(const gzString &extension); 00063 00064 //----- Module dependency ------ 00065 00066 GZ_DB_EXPORT static gzVoid registerModuleDependency(const gzString &module); 00067 GZ_DB_EXPORT static gzVoid unregisterModuleDependency(const gzString &module); 00068 00069 00070 protected: 00071 00072 GZ_DB_EXPORT virtual gzVoid registerManager(const gzString &extension); 00073 00074 private: 00075 00076 static gzDict<gzString,gzVoid> s_moduleDependencyDict; 00077 }; 00078 00079 #endif // __GZ_DB_GZD_H__ 00080