vtkbone
Macros
vtkboneMacros.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define vtkboneGetAsStringMacro(classname, enumname)
 
#define vtkboneSetStringMacro(name)    virtual void Set##name(const char* _arg) vtkboneSetStringBodyMacro(name, _arg)
 
#define vtkboneSetStringBodyMacro(name, _arg)
 
#define vtkboneGetStringMacro(name)
 

Macro Definition Documentation

◆ vtkboneGetAsStringMacro

#define vtkboneGetAsStringMacro (   classname,
  enumname 
)
Value:
const char* classname::Get##enumname##AsString (int arg) \
{ \
if (arg >=0 && arg < classname::NUMBER_OF_##enumname) \
{ \
return enumname##_s[arg]; \
} \
else \
{ \
return NULL; \
} \
}

Definition at line 26 of file vtkboneMacros.h.

◆ vtkboneSetStringMacro

#define vtkboneSetStringMacro (   name)     virtual void Set##name(const char* _arg) vtkboneSetStringBodyMacro(name, _arg)

Definition at line 44 of file vtkboneMacros.h.

◆ vtkboneSetStringBodyMacro

#define vtkboneSetStringBodyMacro (   name,
  _arg 
)
Value:
{ \
if (this->name == nullptr && _arg == nullptr) \
{ \
return; \
} \
if (this->name && _arg && (!strcmp(this->name, _arg))) \
{ \
return; \
} \
delete[] this->name; \
if (_arg) \
{ \
size_t n = strlen(_arg) + 1; \
char* cp1 = new char[n]; \
const char* cp2 = (_arg); \
this->name = cp1; \
do \
{ \
*cp1++ = *cp2++; \
} while (--n); \
} \
else \
{ \
this->name = nullptr; \
} \
this->Modified(); \
}
name

Definition at line 50 of file vtkboneMacros.h.

◆ vtkboneGetStringMacro

#define vtkboneGetStringMacro (   name)
Value:
virtual char* Get##name() \
{ \
return this->name; \
}

Definition at line 84 of file vtkboneMacros.h.