00001 #ifndef X3DTK_X3D_SCENE_H 00002 #define X3DTK_X3D_SCENE_H 00003 00004 #include "ProcessHistory.h" 00005 #include "X3DTypes.h" 00006 #include "X3D_X3DGroupingNode.h" 00007 #include "X3D_X3DBoundedObject.h" 00008 00009 namespace X3DTK { 00010 namespace X3D { 00011 00018 class Scene : public X3DGroupingNode, public X3DBoundedObject 00019 { 00020 public: 00022 Scene(); 00024 virtual SFAbstractNode clone() const; 00026 virtual ~Scene(); 00027 00029 void setFileName(const SFString &file); 00030 00032 inline const SFString &getFileName() const {return _fileName;}; 00034 inline ProcessHistory &getProcessHistory() {return _history;}; 00035 00037 virtual void load(const X3DFileElement *element); 00039 virtual SFString &write(SFString &output) const; 00040 00041 protected: 00043 Scene(const Scene &S); 00044 00045 private: 00047 SFString _fileName; 00048 ProcessHistory _history; 00049 }; 00050 00051 } 00052 } 00053 00054 #endif