13 #ifndef mitkDICOMSortCriterion_h
14 #define mitkDICOMSortCriterion_h
16 #include "itkObjectFactory.h"
59 virtual void Print(std::ostream& os)
const = 0;
Interface to datasets that is presented to sorting classes such as DICOMDatasetSorter.
A tag based sorting criterion for use in DICOMTagBasedSorter.
~DICOMSortCriterion() override
DICOMSortCriterion(const DICOMSortCriterion &other)
virtual bool operator==(const DICOMSortCriterion &other) const =0
DICOMSortCriterion::ConstPointer GetSecondaryCriterion() const
The fallback criterion.
virtual void Print(std::ostream &os) const =0
brief describe this class in given stream.
virtual DICOMTagList GetTagsOfInterest() const =0
Tags used for comparison.
DICOMSortCriterion & operator=(const DICOMSortCriterion &other)
mitkClassMacroItkParent(DICOMSortCriterion, itk::LightObject)
DICOMTagList GetAllTagsOfInterest() const
Tags used for comparison (includes secondary criteria).
virtual double NumericDistance(const mitk::DICOMDatasetAccess *from, const mitk::DICOMDatasetAccess *to) const =0
Calculate a distance between two datasets. This answers the question of consecutive datasets.
bool NextLevelIsLeftBeforeRight(const mitk::DICOMDatasetAccess *left, const mitk::DICOMDatasetAccess *right) const
DICOMSortCriterion::Pointer m_SecondaryCriterion
virtual bool IsLeftBeforeRight(const mitk::DICOMDatasetAccess *left, const mitk::DICOMDatasetAccess *right) const =0
Answer the sorting question.
DICOMSortCriterion(DICOMSortCriterion::Pointer secondaryCriterion)
Find image slices visible on a given plane.
std::vector< DICOMTag > DICOMTagList