Slicer  5.0
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
vtkMRMLSubjectHierarchyConstants.h
Go to the documentation of this file.
1 /*==============================================================================
2 
3  Program: 3D Slicer
4 
5  Copyright (c) Laboratory for Percutaneous Surgery (PerkLab)
6  Queen's University, Kingston, ON, Canada. All Rights Reserved.
7 
8  See COPYRIGHT.txt
9  or http://www.slicer.org/copyright/copyright.txt for details.
10 
11  Unless required by applicable law or agreed to in writing, software
12  distributed under the License is distributed on an "AS IS" BASIS,
13  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  See the License for the specific language governing permissions and
15  limitations under the License.
16 
17  This file was originally developed by Csaba Pinter, PerkLab, Queen's University
18  and was supported through the Applied Cancer Research Unit program of Cancer Care
19  Ontario with funds provided by the Ontario Ministry of Health and Long-Term Care
20 
21 ==============================================================================*/
22 
23 #ifndef __vtkMRMLSubjectHierarchyConstants_h
24 #define __vtkMRMLSubjectHierarchyConstants_h
25 
26 // MRML includes
27 #include "vtkMRML.h"
28 
29 // STD includes
30 #include <cstdlib>
31 #include <string>
32 #include <vector>
33 
34 class VTK_MRML_EXPORT vtkMRMLSubjectHierarchyConstants
35 {
36 public:
37  //----------------------------------------------------------------------------
38  // Constant strings (std::string types for easy concatenation)
39  //----------------------------------------------------------------------------
40 
42  static const std::string GetSubjectHierarchyAttributePrefix()
43  { return "SubjectHierarchy."; };
45  { return vtkMRMLSubjectHierarchyConstants::GetSubjectHierarchyAttributePrefix() + "ExcludeFromPotentialNodesList"; };
46 
48  static const std::string GetSubjectHierarchyVirtualBranchAttributeName()
50  { return "VirtualBranch"; };
51  static const std::string GetSubjectHierarchyLevelAttributeName()
52  { return "Level"; };
53  static const std::string GetSubjectHierarchyNewItemNamePrefix()
54  { return "New"; };
56  // Non-DICOM levels
57  static const char* GetSubjectHierarchyLevelFolder()
58  { return "Folder"; };
59  // DICOM levels
60  static const std::string GetDICOMLevelPatient()
61  { return "Patient"; };
62  static const std::string GetDICOMLevelStudy()
63  { return "Study"; };
64 
65  // DICOM attributes
66  static const char* GetDICOMUIDName()
67  { return "DICOM"; };
68  static const char* GetDICOMInstanceUIDName()
69  { return "DICOMInstanceUID"; };
70  static const std::string GetDICOMAttributePrefix()
71  { return "DICOM."; };
73  { return vtkMRMLSubjectHierarchyConstants::GetDICOMAttributePrefix() + "ReferencedInstanceUIDs"; };
74 
75  // Patient tags
76  static const std::string GetDICOMPatientNameTagName()
77  { return "PatientName"; };
78  static const std::string GetDICOMPatientNameAttributeName()
80  static const std::string GetDICOMPatientIDTagName()
81  { return "PatientID"; };
82  static const std::string GetDICOMPatientIDAttributeName()
84  static const std::string GetDICOMPatientSexTagName()
85  { return "PatientSex"; };
86  static const std::string GetDICOMPatientSexAttributeName()
88  static const std::string GetDICOMPatientBirthDateTagName()
89  { return "PatientBirthDate"; };
90  static const std::string GetDICOMPatientBirthDateAttributeName()
92  static const std::string GetDICOMPatientCommentsTagName()
93  { return "PatientComments"; };
94  static const std::string GetDICOMPatientCommentsAttributeName()
96 
98  static const std::vector<std::string> GetDICOMPatientTagNames()
99  {
100  std::vector<std::string> patientTagNames;
106  return patientTagNames;
107  }
108 
109  // Study tags
110  static const std::string GetDICOMStudyInstanceUIDTagName()
111  { return "StudyInstanceUID"; };
112  static const std::string GetDICOMStudyInstanceUIDAttributeName()
114  static const std::string GetDICOMStudyIDTagName()
115  { return "StudyID"; };
116  static const std::string GetDICOMStudyIDAttributeName()
118  static const std::string GetDICOMStudyDescriptionTagName()
119  { return "StudyDescription"; };
120  static const std::string GetDICOMStudyDescriptionAttributeName()
122  static const std::string GetDICOMStudyDateTagName()
123  { return "StudyDate"; };
124  static const std::string GetDICOMStudyDateAttributeName()
126  static const std::string GetDICOMStudyTimeTagName()
127  { return "StudyTime"; };
128  static const std::string GetDICOMStudyTimeAttributeName()
130 
132  static const std::vector<std::string> GetDICOMStudyTagNames()
133  {
134  std::vector<std::string> studyTagNames;
140  return studyTagNames;
141  }
142 
143  // Series tags
144  static const std::string GetDICOMSeriesModalityAttributeName()
146  static const std::string GetDICOMSeriesNumberAttributeName()
147  { return vtkMRMLSubjectHierarchyConstants::GetDICOMAttributePrefix() + "SeriesNumber"; };
148 
149  // FrameOfReferenceUID is not strictly a series-level tag (in theory it could change within a series
150  // but for practical applications most likely it will be the same within a sequence)
151  static const std::string GetDICOMFrameOfReferenceUIDTagName()
152  { return "FrameOfReferenceUID"; };
153  static const std::string GetDICOMFrameOfReferenceUIDAttributeName()
155 
156 };
157 
158 #endif
static const std::string GetDICOMPatientBirthDateAttributeName()
static const std::string GetDICOMStudyIDAttributeName()
static const std::string GetSubjectHierarchyNewItemNamePrefix()
static const std::string GetDICOMPatientIDAttributeName()
static const std::string GetDICOMStudyDateAttributeName()
static const std::string GetDICOMPatientBirthDateTagName()
static const std::string GetDICOMPatientCommentsTagName()
static const std::vector< std::string > GetDICOMStudyTagNames()
Get study tag names (attribute names are these values prefixed!)
static const std::string GetDICOMStudyDescriptionAttributeName()
static const std::string GetDICOMFrameOfReferenceUIDAttributeName()
static const std::string GetDICOMFrameOfReferenceUIDTagName()
static const std::string GetDICOMPatientSexTagName()
static const std::string GetDICOMPatientNameTagName()
static const std::string GetSubjectHierarchyAttributePrefix()
Data node subject hierarchy attribute.
static const std::string GetDICOMStudyInstanceUIDAttributeName()
static const std::string GetDICOMPatientCommentsAttributeName()
static const std::string GetDICOMStudyTimeAttributeName()
static const std::string GetSubjectHierarchyExcludeFromTreeAttributeName()
static const std::vector< std::string > GetDICOMPatientTagNames()
Get patient tag names (attribute names are these values prefixed!)
static const std::string GetDICOMPatientSexAttributeName()
static const std::string GetDICOMPatientNameAttributeName()
static const std::string GetSubjectHierarchyLevelAttributeName()
static std::string GetDICOMReferencedInstanceUIDsAttributeName()
static const std::string GetDICOMStudyDescriptionTagName()
static const std::string GetDICOMSeriesNumberAttributeName()
static const std::string GetDICOMStudyInstanceUIDTagName()
static const std::string GetDICOMSeriesModalityAttributeName()