X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=common%2FclitkDicomRT_StructureSet.h;h=c26122ee1976884fe0fa8c0ce887bc370150ef69;hb=755bb12001696923319a0b95f7109ab92e645abf;hp=5e4cf972d0a158284d4d5e721865bb0bef5eb016;hpb=5b568893e14e5d955fa14f653bd176b54c6aee0c;p=clitk.git diff --git a/common/clitkDicomRT_StructureSet.h b/common/clitkDicomRT_StructureSet.h index 5e4cf97..c26122e 100644 --- a/common/clitkDicomRT_StructureSet.h +++ b/common/clitkDicomRT_StructureSet.h @@ -27,8 +27,16 @@ // vv #include "vvImage.h" +// gdcm +#include "clitkConfiguration.h" +#if CLITK_USE_SYSTEM_GDCM == 1 +#include +#include +#endif + // gdcm #if GDCM_MAJOR_VERSION == 2 +// This is not use if CLITK_USE_SYSTEM_GDCM==1 #include "gdcmReader.h" #include "gdcmWriter.h" #include "gdcmAttribute.h" @@ -44,15 +52,21 @@ public: typedef itk::SmartPointer Pointer; itkNewMacro(Self); - typedef typename std::map::iterator ROIIteratorType; - typedef typename std::map::const_iterator ROIConstIteratorType; + typedef std::map ROIMapContainer; + typedef ROIMapContainer::iterator ROIIteratorType; + typedef ROIMapContainer::const_iterator ROIConstIteratorType; void Print(std::ostream & os = std::cout) const; void Read(const std::string & filename); + bool IsDicomRTStruct(const std::string & filename); void Write(const std::string & filename); clitk::DicomRT_ROI * GetROIFromROINumber(int n); - std::map & GetROIs() { return mROIs; } + clitk::DicomRT_ROI* GetROIFromROIName(const std::string& name); + //clitk::DicomRT_ROI* GetROIFromROINameRegEx(const std::string& regEx); + clitk::DicomRT_ROI* GetROIFromROINameSubstr(const std::string& s); + ROIMapContainer * GetROIsFromROINameSubstr(const std::string& s); + ROIMapContainer & GetROIs() { return mROIs; } const std::string & GetStudyID() const; const std::string & GetStudyTime() const; const std::string & GetStudyDate() const;