33 #include <boost/enable_shared_from_this.hpp>
35 #include "../common/WProperties.h"
37 #include "../graphicsEngine/WROI.h"
44 class WRMBranch :
public boost::enable_shared_from_this< WRMBranch >
50 typedef boost::shared_ptr< WRMBranch >
SPtr;
55 typedef boost::shared_ptr< const WRMBranch >
ConstSPtr;
61 explicit WRMBranch( boost::shared_ptr< WROIManager > roiManager );
101 void addRoi( osg::ref_ptr< WROI > roi );
108 void removeRoi( osg::ref_ptr< WROI > roi );
122 bool dirty(
bool reset =
false );
141 bool contains( osg::ref_ptr< WROI > roi );
174 void getRois( std::vector< osg::ref_ptr< WROI > >& roiVec );
181 std::vector< osg::ref_ptr< WROI > >
getRois()
const;
188 void addChangeNotifier( boost::shared_ptr< boost::function<
void() > > notifier );
204 template <
typename Comparator >
205 void sort( Comparator comp );
221 std::vector< osg::ref_ptr< WROI > >
m_rois;
278 template <
typename Comparator >
285 #endif // WRMBRANCH_H