00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef __mitkDICOMDIRTree_h
00011 #define __mitkDICOMDIRTree_h
00012
00013 #include "mitkDataObject.h"
00014
00015 class DcmDirectoryModel;
00016
00020 class MITK_COMMON_API mitkDICOMDIRTree : public mitkDataObject
00021 {
00022 public:
00023 MITK_TYPE(mitkDICOMDIRTree,mitkDataObject);
00024 mitkDICOMDIRTree();
00028 virtual void Initialize();
00032 virtual void DeepCopy(mitkDataObject *src);
00036 virtual void ShallowCopy(mitkDataObject *src);
00041 virtual unsigned long long GetActualMemorySize()const;
00045 void SetTreeData(DcmDirectoryModel* data);
00046
00047 string GetFileSetID();
00048 void SetFileSetID(string &ID);
00049
00050 string GetRootRecID(int row);
00051 string GetRecID(int num);
00052 string GetRecID(int row,int parentnum);
00053 string GetRecID(int row,int parentrow,int grandparentnum);
00054 string GetRecID(int row,int parentrow,int grandparentnum,int rootnum);
00055
00056 string GetPatientRecID(int num);
00057 string GetStudyID(int row,int parentnum);
00058 string GetSeriesID(int row,int parentrow,int grandparentnum);
00059 string GetReferencedFileID(int row,int parentrow,int grandparentnum,int rootnum);
00060 int GetChildrenCount(int ParentNum);
00061 int GetChildrenCount(int Parentrow,int grandparentNum);
00062 int GetChildrenCount(int Parentrow,int grandparentNum,int rootNum);
00063 int GetRootCount();
00064 int GetRecCount();
00065 protected:
00066 virtual ~mitkDICOMDIRTree();
00067 private:
00068 void _clear();
00069 DcmDirectoryModel* m_Tree;
00070 string FileSetID;
00071 };
00072
00073 #endif