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 #include "X3DRoute.h" 00009 00010 namespace X3DTK { 00011 namespace X3D { 00012 00019 class Scene : public X3DGroupingNode, public X3DBoundedObject 00020 { 00021 friend class ProcessHistory; 00022 friend class X3DRoute; 00023 public: 00025 Scene(); 00027 virtual ~Scene(); 00028 00030 void setFileName(const SFString &file); 00031 00033 inline const SFString &getFileName() const {return _fileName;}; 00035 inline const MFRoute &getRoutes() const {return _routes;}; 00037 inline ProcessHistory &getProcessHistory() {return _history;}; 00039 void removeRoutes(); 00040 00041 private: 00043 void setProcessHistory(const ProcessHistory &history); 00045 void setRoutes(const MFRoute &routes); 00046 00048 SFString _fileName; 00049 MFRoute _routes; 00050 ProcessHistory _history; 00051 }; 00052 00053 } 00054 } 00055 00056 #endif