00001 00002 // X3D_Switch.h // 00004 00005 #ifndef SWITCH_H 00006 #define SWITCH_H 00007 00008 #include "X3DTypes.h" 00009 #include "X3D_X3DGroupingNode.h" 00010 #include "X3D_X3DBoundedObject.h" 00011 00012 namespace X3DTK { 00013 namespace X3D { 00014 00019 00020 class Switch : public X3DGroupingNode, public X3DBoundedObject 00021 { 00022 public: 00024 Switch(); 00026 Switch(const SFInt32 &whichChoice, 00027 const SFVec3f &bboxCenter, 00028 const SFVec3f &bboxSize); 00030 virtual SFAbstractNode clone() const; 00032 virtual ~Switch(); 00033 00035 void setWhichChoice(const SFInt32 &whichChoice); 00036 00038 inline const SFInt32 &getWhichChoice() const {return _whichChoice;}; 00039 00041 void load(const X3DFileElement *element); 00043 virtual SFString &write(SFString &output) const; 00044 00045 protected: 00047 Switch(const Switch &T); 00048 00049 private: 00051 SFInt32 _whichChoice; 00052 }; 00053 00054 } 00055 } 00056 00057 #endif