Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef MITKANNOTATIONPROPERTY_H_HEADER_INCLUDED
00020 #define MITKANNOTATIONPROPERTY_H_HEADER_INCLUDED
00021
00022 #include "mitkCommon.h"
00023 #include "mitkBaseProperty.h"
00024 #include "mitkVector.h"
00025
00026 #include <itkConfigure.h>
00027
00028 #include <string>
00029
00030
00031 namespace mitk {
00032
00037 class MITK_CORE_EXPORT AnnotationProperty : public BaseProperty
00038 {
00039 public:
00040 mitkClassMacro(AnnotationProperty, BaseProperty);
00041 typedef std::string ValueType;
00042
00043 itkNewMacro( AnnotationProperty );
00044 mitkNewMacro2Param( AnnotationProperty,
00045 const char *, const Point3D & );
00046 mitkNewMacro2Param( AnnotationProperty,
00047 const std::string &, const Point3D & );
00048 mitkNewMacro4Param( AnnotationProperty,
00049 const char *, ScalarType, ScalarType, ScalarType );
00050 mitkNewMacro4Param( AnnotationProperty,
00051 const std::string &, ScalarType, ScalarType, ScalarType );
00052
00053 itkGetStringMacro( Label );
00054 itkSetStringMacro( Label );
00055
00056 const Point3D &GetPosition() const;
00057 void SetPosition( const Point3D &position );
00058
00059 virtual bool operator==(const BaseProperty& property ) const;
00060 virtual std::string GetValueAsString() const;
00061
00062
00063 protected:
00064
00065 std::string m_Label;
00066 Point3D m_Position;
00067
00068 AnnotationProperty();
00069 AnnotationProperty( const char *label, const Point3D &position );
00070 AnnotationProperty( const std::string &label, const Point3D &position );
00071 AnnotationProperty( const char *label, ScalarType x, ScalarType y, ScalarType z );
00072 AnnotationProperty( const std::string &label, ScalarType x, ScalarType y, ScalarType z );
00073
00074 };
00075
00076 }
00077
00078 #endif