X3D_BBoxUpdaterStateVariables.h

Go to the documentation of this file.
00001 #ifndef X3DTK_X3D_BBOXUPDATERSTATEVARIABLES_H
00002 #define X3DTK_X3D_BBOXUPDATERSTATEVARIABLES_H
00003 
00004 #include "X3D_SceneGraphTypes.h"
00005 #include "StateVariables.h"
00006 #include "BBox.h"
00007 
00008 #include <list>
00009 
00010 namespace X3DTK {
00011 namespace X3D {
00012 
00019 class BBoxUpdaterStateVariables : public StateVariables
00020 {
00021 public:
00023   BBoxUpdaterStateVariables();
00025   virtual ~BBoxUpdaterStateVariables();
00026   
00028   virtual void finish();
00029   
00031   void setStaticProcessing(bool value);
00033   void addBBox(SFNode N, BBox *BB);
00035   void setShapeBBox(const BBox &BB);
00037   void addBBoxToMergeList(const BBox &BB);
00038   
00040   inline bool getStaticProcessing() const {return _staticProcessing;};
00042   BBox getShapeBBox() const {return _shapeBBox;};
00044   BBox *getBBox(SFNode N) const;
00046   BBox mergeBBox();
00047   
00048 private:
00049   bool _staticProcessing;
00050   BBox _shapeBBox;
00051   std::list<std::pair<SFNode, BBox *> > _BBList;
00052   std::list<BBox> _BBToMergeList;  
00053 };
00054 
00055 }
00056 }
00057 
00058 #endif

Generated on Fri Jul 30 12:02:29 2004 for X3DToolKit by doxygen 1.3.6