Medical Imaging Interaction Toolkit  2025.12.02
Medical Imaging Interaction Toolkit
mitkSortByImagePositionPatient.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 mitkSortByImagePositionPatient_h
14 #define mitkSortByImagePositionPatient_h
15 
16 #include "mitkDICOMSortCriterion.h"
17 
18 #include "mitkVector.h"
19 
20 namespace mitk
21 {
22 
34 {
35  public:
36 
38  mitkNewMacro1Param( SortByImagePositionPatient, DICOMSortCriterion::Pointer );
39 
40  DICOMTagList GetTagsOfInterest() const override;
41  bool IsLeftBeforeRight(const mitk::DICOMDatasetAccess* left, const mitk::DICOMDatasetAccess* right) const override;
42 
43  double NumericDistance(const mitk::DICOMDatasetAccess* from, const mitk::DICOMDatasetAccess* to) const override;
44 
45  void Print(std::ostream& os) const override;
46 
47  bool operator==(const DICOMSortCriterion& other) const override;
48 
49  protected:
50 
51  SortByImagePositionPatient( DICOMSortCriterion::Pointer secondaryCriterion = nullptr );
53 
56 
58 
59  private:
60 };
61 
62 }
63 
64 #endif
#define MITKDICOM_EXPORT
use the deprecated old MITK testing style If possible
Interface to datasets that is presented to sorting classes such as DICOMDatasetSorter.
A tag based sorting criterion for use in DICOMTagBasedSorter.
Sort by distance of image origin along image normal (for use in DICOMTagBasedSorter).
bool operator==(const DICOMSortCriterion &other) const override
mitkNewMacro1Param(SortByImagePositionPatient, DICOMSortCriterion::Pointer)
SortByImagePositionPatient & operator=(const SortByImagePositionPatient &other)
bool IsLeftBeforeRight(const mitk::DICOMDatasetAccess *left, const mitk::DICOMDatasetAccess *right) const override
Answer the sorting question.
SortByImagePositionPatient(const SortByImagePositionPatient &other)
void Print(std::ostream &os) const override
brief describe this class in given stream.
double InternalNumericDistance(const mitk::DICOMDatasetAccess *from, const mitk::DICOMDatasetAccess *to, bool &possible) const
mitkClassMacro(SortByImagePositionPatient, DICOMSortCriterion)
double NumericDistance(const mitk::DICOMDatasetAccess *from, const mitk::DICOMDatasetAccess *to) const override
Calculate a distance between two datasets. This answers the question of consecutive datasets.
SortByImagePositionPatient(DICOMSortCriterion::Pointer secondaryCriterion=nullptr)
DICOMTagList GetTagsOfInterest() const override
Tags used for comparison.
Find image slices visible on a given plane.
std::vector< DICOMTag > DICOMTagList
Definition: mitkDICOMTag.h:59