Medical Imaging Interaction Toolkit  2023.12.99-ed252ae7
Medical Imaging Interaction Toolkit
mitk::DICOMTagScanner Class Referenceabstract

Abstracts the tag scanning process for a set of DICOM files. More...

#include <mitkDICOMTagScanner.h>

Inheritance diagram for mitk::DICOMTagScanner:
Collaboration diagram for mitk::DICOMTagScanner:

Public Member Functions

 mitkClassMacroItkParent (DICOMTagScanner, itk::Object)
 
virtual void AddTag (const DICOMTag &tag)=0
 Add this tag to the scanning process. More...
 
virtual void AddTags (const DICOMTagList &tags)=0
 Add a list of tags to the scanning process. More...
 
virtual void AddTagPath (const DICOMTagPath &path)=0
 Add this tag path to the scanning process. More...
 
virtual void AddTagPaths (const DICOMTagPathList &paths)=0
 Add a list of tag paths to the scanning process. More...
 
virtual void SetInputFiles (const StringList &filenames)=0
 Define the list of files to scan. This does not ADD to an internal list, but it replaces the whole list of files. More...
 
virtual void Scan ()=0
 Start the scanning process. Calling Scan() will invalidate previous scans, forgetting all about files and tags from files that have been scanned previously. More...
 
virtual DICOMDatasetAccessingImageFrameList GetFrameInfoList () const =0
 Retrieve a result list for file-by-file tag access. More...
 
virtual DICOMTagCache::Pointer GetScanCache () const =0
 Retrieve Pointer to the complete cache of the scan. More...
 

Protected Member Functions

void PushLocale () const
 Remember current locale on stack, activate "C" locale. "C" locale is required for correct parsing of numbers by itk::ImageSeriesReader. More...
 
void PopLocale () const
 Activate last remembered locale from locale stack "C" locale is required for correct parsing of numbers by itk::ImageSeriesReader. More...
 
 DICOMTagScanner ()
 
 ~DICOMTagScanner () override
 

Static Protected Member Functions

static std::string GetActiveLocale ()
 Return active C locale. More...
 

Detailed Description

Abstracts the tag scanning process for a set of DICOM files.

Formerly integrated as a part of DICOMITKSeriesGDCMReader, the tag scanning part has been factored out into DICOMTagScanner classes in order to allow a single scan for multiple reader alternatives. This helps much in the selection process of e.g. DICOMFileReaderSelector.

This is an abstract base class for concrete scanner implementations.

Remarks
When used in a process where multiple classes will access the scan results, care should be taken that all the tags and files of interest are communicated to DICOMTagScanner before requesting the results!

Definition at line 42 of file mitkDICOMTagScanner.h.

Constructor & Destructor Documentation

◆ DICOMTagScanner()

mitk::DICOMTagScanner::DICOMTagScanner ( )
protected

◆ ~DICOMTagScanner()

mitk::DICOMTagScanner::~DICOMTagScanner ( )
overrideprotected

Member Function Documentation

◆ AddTag()

virtual void mitk::DICOMTagScanner::AddTag ( const DICOMTag tag)
pure virtual

Add this tag to the scanning process.

Implemented in mitk::DICOMGDCMTagScanner, and mitk::DICOMDCMTKTagScanner.

◆ AddTagPath()

virtual void mitk::DICOMTagScanner::AddTagPath ( const DICOMTagPath path)
pure virtual

Add this tag path to the scanning process.

Implemented in mitk::DICOMGDCMTagScanner, and mitk::DICOMDCMTKTagScanner.

◆ AddTagPaths()

virtual void mitk::DICOMTagScanner::AddTagPaths ( const DICOMTagPathList paths)
pure virtual

Add a list of tag paths to the scanning process.

Implemented in mitk::DICOMGDCMTagScanner, and mitk::DICOMDCMTKTagScanner.

◆ AddTags()

virtual void mitk::DICOMTagScanner::AddTags ( const DICOMTagList tags)
pure virtual

Add a list of tags to the scanning process.

Implemented in mitk::DICOMGDCMTagScanner, and mitk::DICOMDCMTKTagScanner.

◆ GetActiveLocale()

static std::string mitk::DICOMTagScanner::GetActiveLocale ( )
staticprotected

Return active C locale.

◆ GetFrameInfoList()

virtual DICOMDatasetAccessingImageFrameList mitk::DICOMTagScanner::GetFrameInfoList ( ) const
pure virtual

Retrieve a result list for file-by-file tag access.

Implemented in mitk::DICOMGDCMTagScanner, and mitk::DICOMDCMTKTagScanner.

◆ GetScanCache()

virtual DICOMTagCache::Pointer mitk::DICOMTagScanner::GetScanCache ( ) const
pure virtual

Retrieve Pointer to the complete cache of the scan.

Implemented in mitk::DICOMGDCMTagScanner, and mitk::DICOMDCMTKTagScanner.

◆ mitkClassMacroItkParent()

mitk::DICOMTagScanner::mitkClassMacroItkParent ( DICOMTagScanner  ,
itk::Object   
)

◆ PopLocale()

void mitk::DICOMTagScanner::PopLocale ( ) const
protected

Activate last remembered locale from locale stack "C" locale is required for correct parsing of numbers by itk::ImageSeriesReader.

◆ PushLocale()

void mitk::DICOMTagScanner::PushLocale ( ) const
protected

Remember current locale on stack, activate "C" locale. "C" locale is required for correct parsing of numbers by itk::ImageSeriesReader.

◆ Scan()

virtual void mitk::DICOMTagScanner::Scan ( )
pure virtual

Start the scanning process. Calling Scan() will invalidate previous scans, forgetting all about files and tags from files that have been scanned previously.

Implemented in mitk::DICOMGDCMTagScanner, and mitk::DICOMDCMTKTagScanner.

◆ SetInputFiles()

virtual void mitk::DICOMTagScanner::SetInputFiles ( const StringList filenames)
pure virtual

Define the list of files to scan. This does not ADD to an internal list, but it replaces the whole list of files.

Implemented in mitk::DICOMGDCMTagScanner, and mitk::DICOMDCMTKTagScanner.


The documentation for this class was generated from the following file: