Medical Imaging Interaction Toolkit  2025.12.02
Medical Imaging Interaction Toolkit
mitkDICOMCodeSequenceWithModifiers.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkDICOMCodeSequenceWithModifiers_h
14 #define mitkDICOMCodeSequenceWithModifiers_h
15 
16 
17 #include <mitkDICOMCodeSequence.h>
18 
19 #include <vector>
20 
21 #include <MitkDICOMExports.h>
22 
23 namespace mitk
24 {
33  {
34  public:
35  using ModifierVector = std::vector<DICOMCodeSequence>;
36 
38 
45  DICOMCodeSequenceWithModifiers(const std::string& value, const std::string& scheme, const std::string& meaning);
46 
53 
54  ~DICOMCodeSequenceWithModifiers() override = default;
55 
60 
65  void AddModifier(const DICOMCodeSequence& modifier);
66 
71  const ModifierVector& GetModifiers() const;
72 
79  const DICOMCodeSequence& GetModifier(std::size_t index) const;
80 
87  DICOMCodeSequence& GetModifier(std::size_t index);
88 
95  void SetModifier(std::size_t index, const DICOMCodeSequence& modifier);
96 
101  void SetModifiers(const ModifierVector& modifiers);
102 
107 
112  std::size_t GetModifierCount() const;
113 
118  bool HasModifiers() const;
119 
125  bool operator==(const DICOMCodeSequenceWithModifiers& other) const;
126 
132  bool operator!=(const DICOMCodeSequenceWithModifiers& other) const;
133 
134  private:
135  ModifierVector m_Modifiers;
136  };
137 
138 } // namespace mitk
139 
140 #endif
#define MITKDICOM_EXPORT
Represents a DICOM Code Sequence with optional modifiers.
void AddModifier(const DICOMCodeSequence &modifier)
Adds a modifier code.
void SetModifiers(const ModifierVector &modifiers)
Sets all modifier codes.
DICOMCodeSequenceWithModifiers(DICOMCodeSequenceWithModifiers &&)=default
DICOMCodeSequenceWithModifiers & operator=(const DICOMCodeSequenceWithModifiers &)=default
void SetModifier(std::size_t index, const DICOMCodeSequence &modifier)
Sets a modifier code at the specified index.
~DICOMCodeSequenceWithModifiers() override=default
const ModifierVector & GetModifiers() const
Gets all modifier codes.
DICOMCodeSequenceWithModifiers(const std::string &value, const std::string &scheme, const std::string &meaning)
Constructs a DICOMCodeSequenceWithModifiers with the specified attributes.
DICOMCodeSequenceWithModifiers & operator=(DICOMCodeSequenceWithModifiers &&)=default
DICOMCodeSequence & GetModifier(std::size_t index)
Gets a modifier code at the specified index.
bool operator!=(const DICOMCodeSequenceWithModifiers &other) const
Inequality comparison operator.
bool operator==(const DICOMCodeSequenceWithModifiers &other) const
Equality comparison operator.
DICOMCodeSequenceWithModifiers(const DICOMCodeSequenceWithModifiers &)=default
bool HasModifiers() const
Checks if there are any modifiers.
DICOMCodeSequenceWithModifiers(const DICOMCodeSequence &code)
Constructs from a DICOMCodeSequence.
void ClearModifiers()
Clears all modifier codes.
const DICOMCodeSequence & GetModifier(std::size_t index) const
Gets a modifier code at the specified index.
std::size_t GetModifierCount() const
Gets the number of modifiers.
Represents a DICOM Code Sequence with value, scheme, and meaning.
Find image slices visible on a given plane.