![]() |
ImFusion SDK 4.3
|
#include <ImFusion/Dicom/DicomModule.h>
Basic Pixel Spacing Calibration Macro (PS 3.3 Table 10.7) Pixel Measures Macro (PS 3.3 Table C.7.6.16-2) More...
Basic Pixel Spacing Calibration Macro (PS 3.3 Table 10.7) Pixel Measures Macro (PS 3.3 Table C.7.6.16-2)
Public Member Functions | |
PixelSpacingCalibration (ModuleList &parent, Type type, bool searchIntoSubs=false) | |
bool | load (ImageDescriptor &desc) const |
Loads spacing into the given descriptor and returns true if anything was loaded. | |
void | save (const ImageDescriptor &desc, const std::string &sopClassUID="") |
Stores the spacing in the dataset if it's metric. | |
![]() | |
Module (ModuleList &parent, Type type) | |
Creates a new Dicom Module, registers it with the given parent and sets the given type/conditionality. | |
virtual bool | isMandatory () const |
Evaluates whether this module is mandatory (based on the specified type and optionally condition). | |
void | setCondition (std::function< bool()> predicate) |
Sets a callback function that determines if a conditional module is mandatory. | |
virtual void | checkErrors (bool ignoreMandatory=false) const |
Checks the module for errors. | |
DcmItem & | dataset () override |
Returns the data set this module corresponds to. | |
![]() | |
const std::vector< ElementBase * > & | elements () const |
List of all elements. | |
![]() | |
virtual void * | registerErrorHandler (ErrorCallback handler) |
Registers a new handler callback function. | |
virtual void | unregisterErrorHandler (void *handler) |
Removes a previously registered handler again. | |
void * | forwardErrors (const ErrorRecorder *otherRecorder) |
Convenient function to forward all errors registered to this recorder to another recorder. | |
virtual void | registerError (const Error &error) const |
Sends the given error to all error handler callbacks. | |
void | registerError (Error::Code code, Error::Type type, const std::string &details, TagProxy tag=TagProxy()) const |
Public Attributes | |
Element< vec2 > | pixelSpacing |
Element< vec2 > | imagerSpacing |
Element< double > | sliceThickness |
Element< double > | spacingBetweenSlices |
Additional Inherited Members | |
![]() | |
enum | Type { Mandatory , UserOption , Conditional } |
Conditionality of the module. | |
![]() | |
using | ErrorCallback = std::function<void(const Error&)> |
Alias for a function to call for each error recorded. | |
![]() | |
NotCopyable (NotCopyable &&) noexcept=default | |
NotCopyable & | operator= (NotCopyable &&) noexcept=default |
NotCopyable (const NotCopyable &)=delete | |
NotCopyable & | operator= (const NotCopyable &)=delete |
![]() | |
ModuleList & | m_parent |
List this module is part of. | |
DcmItem & | m_dataset |
The data set this module corresponds to. | |
Type | m_type |
Conditionality of this module. | |
std::function< bool()> | m_typeCondition |
Optional predicate function to evaluate mandatoriness. | |
![]() | |
std::vector< ElementBase * > | m_elements |
List of all elements. | |
bool load | ( | ImageDescriptor & | desc | ) | const |
Loads spacing into the given descriptor and returns true if anything was loaded.
Automatically registers an error when an existing spacing cannot be loaded.
void save | ( | const ImageDescriptor & | desc, |
const std::string & | sopClassUID = "" ) |
Stores the spacing in the dataset if it's metric.
If it's not metric, spacing is not set. Depending on the sopClassUID, sliceThickness or spacingBetweenSlices is set as well.