MeVisLabToolboxReference
MeVisLab/Standard/Sources/ML/MLVesselGraph/mlPropertiesMacros.h File Reference

Defines convenience-macros for backward-compatible access to properties of graph-elements. More...

Go to the source code of this file.

Defines

#define STATIC_CASTED_GRAPH_PROPERTY(VisibleType, StoredType, lowerCaseName, upperCaseName)
#define STATIC_GRAPH_PROPERTY(Type, lowerCaseName, upperCaseName)
#define READ_OLD_STATIC_PROPERTY(Type, parent, tagName, setFunction)

Detailed Description

Defines convenience-macros for backward-compatible access to properties of graph-elements.

Author:
Michael Schmidt
Date:
12/2010

Definition in file mlPropertiesMacros.h.


Define Documentation

#define READ_OLD_STATIC_PROPERTY (   Type,
  parent,
  tagName,
  setFunction 
)
Value:
{                                                                  \
    Type tmp;                                                        \
    parent->readChild(tmp, tagName);                                 \
    setFunction(tmp);                                                \
  }

Definition at line 36 of file mlPropertiesMacros.h.

#define STATIC_CASTED_GRAPH_PROPERTY (   VisibleType,
  StoredType,
  lowerCaseName,
  upperCaseName 
)
Value:
private:                                                                                                                               \
  DefaultPropertyAccessor<StoredType> _##lowerCaseName##Accessor;                                                                      \
public:                                                                                                                                \
  VisibleType get##upperCaseName() const { return static_cast<VisibleType>(_##lowerCaseName##Accessor.get(*this)); }                   \
  void set##upperCaseName(const VisibleType& newValue) { _##lowerCaseName##Accessor.set(*this, static_cast<StoredType>(newValue)); }

Definition at line 12 of file mlPropertiesMacros.h.

#define STATIC_GRAPH_PROPERTY (   Type,
  lowerCaseName,
  upperCaseName 
)
Value:
private:                                                                                              \
  DefaultPropertyAccessor<Type> _##lowerCaseName##Accessor;                                           \
public:                                                                                               \
  ML_DEPRECATED Type& lowerCaseName() { return _##lowerCaseName##Accessor(*this); }                   \
  Type get##upperCaseName() const { return _##lowerCaseName##Accessor.get(*this); }                   \
  void set##upperCaseName(const Type& newValue) { _##lowerCaseName##Accessor.set(*this, newValue); }

Definition at line 20 of file mlPropertiesMacros.h.