MeVisLab Toolbox Reference
MarkerConversion.h
Go to the documentation of this file.
1// Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2// **InsertLicense** code
3//----------------------------------------------------------------------------------
5
9
10#pragma once
11
13#if defined(MLAB_CMAKE_BUILDSYSTEM)
15#endif
16#include <mlTypeDefs.h>
17#include "mlUtilsAPI.h"
18#include <mlMatrix4.h> // Matrix4 cannot (with my knowledge) be forward declared because it is a typedef for a template
19
20ML_START_NAMESPACE
21
22class XMarker;
23class XMarkerList;
24class MedicalImageProperties;
25
27
40
42 typedef enum {
46 } Type;
47 };
48
49 // Note: inline this class and do NOT export since this would lead to C4275 because of not-expotability of std::runtime_error.
50 class MissingReferenceImagePropertiesException : public std::runtime_error
51 {
52 public:
53 inline MissingReferenceImagePropertiesException( const std::string& message ) : std::runtime_error( message ) { };
54 };
55
57
62 XMarkerList& markerList, ConversionMode::Type conversionMode, SelectedComponents::Type selectedComponents,
63 const MedicalImageProperties* referenceImage );
64
67
71 XMarkerList& list, SelectedComponents::Type selectedComponents,
72 const Matrix4& transformation );
73
77 XMarker& marker, SelectedComponents::Type selectedComponents,
78 const ml::Matrix4& transformation );
79
82
89 XMarkerList& markerList_voxel, SelectedComponents::Type selectedComponents );
90
97 XMarker& marker, SelectedComponents::Type selectedComponents );
98
106 XMarkerList& markerList, SelectedComponents::Type selectedComponents );
107
115 XMarker& marker, SelectedComponents::Type selectedComponents );
116
123 XMarkerList& markerList, SelectedComponents::Type selectedComponents,
124 const ml::MedicalImageProperties& referenceImageProps );
125
132 XMarker& marker, SelectedComponents::Type selectedComponents,
133 const ml::MedicalImageProperties& referenceImageProps );
134
138 XMarkerList& markerList, SelectedComponents::Type selectedComponents,
139 const ml::MedicalImageProperties& referenceImageProps );
140
144 XMarker& marker, SelectedComponents::Type selectedComponents,
145 const ml::MedicalImageProperties& referenceImageProps );
146
150 XMarkerList& markerList, SelectedComponents::Type selectedComponents,
151 const ml::MedicalImageProperties& referenceImageProps );
152
156 XMarker& marker, SelectedComponents::Type selectedComponents,
157 const ml::MedicalImageProperties& referenceImageProps );
158
162 XMarkerList& markerList, SelectedComponents::Type selectedComponents,
163 const ml::MedicalImageProperties& referenceImageProps );
164
171 XMarker& marker, SelectedComponents::Type selectedComponents,
172 const ml::MedicalImageProperties& referenceImageProps );
173
177}
178
179ML_END_NAMESPACE
Project global and OS specific declarations.
#define MARKERCONVERSION_EXPORT
void MARKERCONVERSION_EXPORT ConvertIntegerToFloatVoxelMarker(XMarker &marker, SelectedComponents::Type selectedComponents)
void MARKERCONVERSION_EXPORT ConvertFloatVoxelToWorldMarkerList(XMarkerList &markerList, SelectedComponents::Type selectedComponents, const ml::MedicalImageProperties &referenceImageProps)
void MARKERCONVERSION_EXPORT ConvertIntegerToFloatVoxelMarkerList(XMarkerList &markerList, SelectedComponents::Type selectedComponents)
void MARKERCONVERSION_EXPORT ConvertIntegerVoxelToWorldMarkerList(XMarkerList &markerList, SelectedComponents::Type selectedComponents, const ml::MedicalImageProperties &referenceImageProps)
void MARKERCONVERSION_EXPORT ConvertMarkerList(XMarkerList &markerList, ConversionMode::Type conversionMode, SelectedComponents::Type selectedComponents, const MedicalImageProperties *referenceImage)
void MARKERCONVERSION_EXPORT ConvertFloatVoxelToWorldMarker(XMarker &marker, SelectedComponents::Type selectedComponents, const ml::MedicalImageProperties &referenceImageProps)
void MARKERCONVERSION_EXPORT ConvertFloatToIntegerVoxelMarker(XMarker &marker, SelectedComponents::Type selectedComponents)
void MARKERCONVERSION_EXPORT ConvertWorldToIntegerVoxelMarkerList(XMarkerList &markerList, SelectedComponents::Type selectedComponents, const ml::MedicalImageProperties &referenceImageProps)
void MARKERCONVERSION_EXPORT ConvertWorldToFloatVoxelMarker(XMarker &marker, SelectedComponents::Type selectedComponents, const ml::MedicalImageProperties &referenceImageProps)
bool MARKERCONVERSION_EXPORT IsDirectionVectorConversionEnabled(SelectedComponents::Type selectedComponents)
Returns 'true' if the direction vector is to be converted according to selectedComponents.
void MARKERCONVERSION_EXPORT ConvertIntegerVoxelToWorldMarker(XMarker &marker, SelectedComponents::Type selectedComponents, const ml::MedicalImageProperties &referenceImageProps)
void MARKERCONVERSION_EXPORT ConvertFloatToIntegerVoxelMarkerList(XMarkerList &markerList_voxel, SelectedComponents::Type selectedComponents)
void MARKERCONVERSION_EXPORT ConvertWorldToIntegerVoxelMarker(XMarker &marker, SelectedComponents::Type selectedComponents, const ml::MedicalImageProperties &referenceImageProps)
void MARKERCONVERSION_EXPORT ApplyTransformationMatrixToMarkerList(XMarkerList &list, SelectedComponents::Type selectedComponents, const Matrix4 &transformation)
void MARKERCONVERSION_EXPORT ConvertWorldToFloatVoxelMarkerList(XMarkerList &markerList, SelectedComponents::Type selectedComponents, const ml::MedicalImageProperties &referenceImageProps)
void MARKERCONVERSION_EXPORT ApplyTransformationMatrixToMarker(XMarker &marker, SelectedComponents::Type selectedComponents, const ml::Matrix4 &transformation)
Tmat4< MLdouble > Matrix4
The standard 4x4 matrix of type double.
Definition mlMatrix4.h:713
STL namespace.