Medical Imaging Interaction Toolkit  2021.10.00
Medical Imaging Interaction Toolkit
mitkUSImageMetadata.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef MITKUSIMAGEMETADATA_H_HEADER_INCLUDED_
14 #define MITKUSIMAGEMETADATA_H_HEADER_INCLUDED_
15 
16 #include <MitkUSExports.h>
17 #include <mitkCommon.h>
18 #include <itkObject.h>
19 #include <itkObjectFactory.h>
20 
21 namespace mitk {
28  class MITKUS_EXPORT USImageMetadata : public itk::Object
29  {
30  public:
32  itkFactorylessNewMacro(Self);
33  itkCloneMacro(Self);
34 
35  //## getter and setter ##
36  itkGetMacro(DeviceManufacturer, std::string);
37  itkSetMacro(DeviceManufacturer, std::string);
38  itkGetMacro(DeviceModel, std::string);
39  itkSetMacro(DeviceModel, std::string);
40  itkGetMacro(DeviceComment, std::string);
41  itkSetMacro(DeviceComment, std::string);
42  itkGetMacro(ProbeName, std::string);
43  itkSetMacro(ProbeName, std::string);
44  itkGetMacro(ProbeFrequency, std::string);
45  itkSetMacro(ProbeFrequency, std::string);
46  itkGetMacro(Zoom, std::string);
47  itkSetMacro(Zoom, std::string);
48  itkGetMacro(DeviceIsVideoOnly, bool);
49  itkSetMacro(DeviceIsVideoOnly, bool);
50  itkGetMacro(DeviceIsCalibrated, bool);
51  itkSetMacro(DeviceIsCalibrated, bool);
52  itkGetMacro(DeviceClass, std::string);
53  itkSetMacro(DeviceClass, std::string);
54 
55  // The following constants define how metadata is written to and read from an mitk image
56  // when defining new properties, add them here, define them in the cpp, and add them to
57  // USImage's getMetadata and setMetadata methods as well
58  static const char* PROP_DEV_MANUFACTURER;
59  static const char* PROP_DEV_MODEL;
60  static const char* PROP_DEV_COMMENT;
61  static const char* PROP_DEV_ISVIDEOONLY;
62  static const char* PROP_DEV_ISCALIBRATED;
63  static const char* PROP_PROBE_NAME;
64  static const char* PROP_PROBE_FREQUENCY;
65  static const char* PROP_ZOOM;
66  static const char* PROP_DEVICE_CLASS;
67 
68  protected:
73  ~USImageMetadata() override;
74 
75  std::string m_DeviceManufacturer;
76  std::string m_DeviceModel;
77  std::string m_DeviceComment;
78  std::string m_ProbeName;
79  std::string m_ProbeFrequency;
80  std::string m_Zoom;
81  std::string m_DeviceClass;
84  };
85 } // namespace mitk
86 #endif
DataCollection - Class to facilitate loading/accessing structured data.
static const char * PROP_PROBE_FREQUENCY
This class encapsulates all necessary metadata to describe a US Image.
static const char * PROP_DEV_COMMENT
static const char * PROP_DEV_ISCALIBRATED
#define mitkClassMacroItkParent(className, SuperClassName)
Definition: mitkCommon.h:45
static const char * PROP_DEV_MANUFACTURER
static const char * PROP_DEVICE_CLASS
static const char * PROP_ZOOM
static const char * PROP_DEV_MODEL
static const char * PROP_PROBE_NAME
static const char * PROP_DEV_ISVIDEOONLY