00001
00011
00012
00013 #ifndef IMEDGINEROI_BASE_H
00014 #define IMEDGINEROI_BASE_H
00015
00016 #include "../global/global_definitions.h"
00017
00018 #include <Inventor/nodes/SoSeparator.h>
00019 #include <Inventor/nodes/SoCoordinate3.h>
00020 #include <Inventor/SbLinear.h>
00021
00022 namespace imedgine
00023 {
00024
00038
00039
00040 class ROIBase
00041 {
00042
00043 public:
00044
00045
00049
00050 ROIBase(SoSeparator* root);
00051
00052
00055
00056 virtual ~ROIBase();
00057
00058
00062
00063 void finishROI();
00064
00065
00069
00070 void addPoint(SbVec3f point);
00071
00072 protected:
00073
00074 SoSeparator* root_;
00075
00076
00079 std::vector<region_of_interest_type> ROI_container_;
00080
00081
00085 region_of_interest_type current_ROI_;
00086 };
00087 }
00088
00089 #endif