17 #ifndef mitkDICOMFileReader_h
18 #define mitkDICOMFileReader_h
20 #include "itkObjectFactory.h"
29 #include <unordered_map>
65 static bool IsDICOM(
const std::string&
filename );
67 virtual bool CanHandleFile(
const std::string& filename ) = 0;
70 void SetInputFiles(
const StringList& filenames );
75 virtual void AnalyzeInputFiles() = 0;
78 unsigned int GetNumberOfOutputs()
const;
86 virtual bool LoadImages() = 0;
94 void SetConfigurationLabel(
const std::string& );
96 std::string GetConfigurationLabel()
const;
98 void SetConfigurationDescription(
const std::string& );
100 std::string GetConfigurationDescription()
const;
103 void PrintConfiguration( std::ostream& os )
const;
105 void PrintOutputs( std::ostream& os,
bool filenameDetails =
false )
const;
124 virtual void SetAdditionalTagsOfInterest(
const AdditionalTagsMapType& tagList);
136 virtual void SetTagLookupTableToPropertyFunctor(
147 void SetNumberOfOutputs(
unsigned int numberOfOutputs );
154 virtual void InternalPrintConfiguration( std::ostream& os )
const = 0;
156 virtual AdditionalTagsMapType GetAdditionalTagsOfInterest()
const;
163 std::vector<DICOMImageBlockDescriptor> m_Outputs;
165 std::string m_ConfigLabel;
166 std::string m_ConfigDescription;
168 AdditionalTagsMapType m_AdditionalTagsOfInterest;
itk::SmartPointer< Self > Pointer
#define MITKDICOMREADER_EXPORT
DataCollection - Class to facilitate loading/accessing structured data.
std::map< DICOMTagPath, std::string > AdditionalTagsMapType
MITKCORE_EXPORT bool operator==(const InteractionEvent &a, const InteractionEvent &b)
std::function< mitk::BaseProperty::Pointer(const DICOMCachedValueLookupTable &) > TagLookupTableToPropertyFunctor
static const std::string filename
DICOMImageBlockDescriptor::AdditionalTagsMapType AdditionalTagsMapType
#define mitkClassMacroItkParent(className, SuperClassName)
Output descriptor for DICOMFileReader.
std::vector< std::string > StringList
std::vector< DICOMTagPath > DICOMTagPathList
Interface for DICOM readers that produce mitk::Images.