TTK
Loading...
Searching...
No Matches
Macros | Typedefs
ttkMacros.h File Reference

Go to the source code of this file.

Macros

#define TTK_COMMA   ,
 
#define ttkSetEnumMacro(name, enumType)
 
#define ttkVtkTemplateMacroCase( dataType, triangulationType, triangulationClass, call)
 
#define ttkVtkTemplateMacro(dataType, triangulationType, call)
 
#define ttkVtkTemplate2MacroCase2( triangulationClass1, triangulationType2, triangulationClass2, call)
 
#define ttkVtkTemplate2MacroCase1( triangulationType1, triangulationClass1, triangulationType2, call)
 
#define ttkVtkTemplate2Macro(triangulationType1, triangulationType2, call)
 
#define ttkTemplate2IdMacro(call)
 
#define vtkTemplate2MacroCase1(type1N, type1, call)
 
#define vtkTemplate2MacroCase2(type1N, type1, type2N, type2, call)
 
#define ttkTypeMacroErrorCase(idx, type)
 
#define ttkTypeMacroCase(enum, type, number, call)
 
#define ttkTypeMacroT(group, call)
 
#define ttkTypeMacroR(group, call)
 
#define ttkTypeMacroI(group, call)
 
#define ttkTypeMacroA(group, call)
 
#define ttkTypeMacroAT(group0, group1, call)
 
#define ttkTypeMacroRT(group0, group1, call)
 
#define ttkTypeMacroIT(group0, group1, call)
 
#define ttkTypeMacroAI(group0, group1, call)
 
#define ttkTypeMacroRR(group0, group1, call)
 
#define ttkTypeMacroAA(group0, group1, call)
 
#define ttkTypeMacroAAA(group0, group1, group2, call)
 
#define ttkTypeMacroAII(group0, group1, group2, call)
 
#define ttkTypeMacroRRR(group0, group1, group2, call)
 
#define ttkTypeMacroRRI(group0, group1, group2, call)
 

Typedefs

using ttkSimplexIdTypeArray = vtkIntArray
 

Macro Definition Documentation

◆ TTK_COMMA

#define TTK_COMMA   ,

Definition at line 6 of file ttkMacros.h.

◆ ttkSetEnumMacro

#define ttkSetEnumMacro (   name,
  enumType 
)
Value:
virtual void Set##name(int _arg) { \
vtkDebugMacro(<< this->GetClassName() << " (" << this \
<< "): setting " #name " to " << _arg); \
if(this->name != static_cast<enumType>(_arg)) { \
this->name = static_cast<enumType>(_arg); \
this->Modified(); \
} \
} \
vtkSetEnumMacro(name, enumType);

Definition at line 38 of file ttkMacros.h.

◆ ttkTemplate2IdMacro

#define ttkTemplate2IdMacro (   call)
Value:
vtkTemplate2MacroCase1(VTK_LONG_LONG, long long, call); \
vtkTemplate2MacroCase1(VTK_UNSIGNED_LONG_LONG, unsigned long long, call); \
vtkTemplate2MacroCase1(VTK_ID_TYPE, vtkIdType, call); \
vtkTemplate2MacroCase1(VTK_LONG, long, call); \
vtkTemplate2MacroCase1(VTK_UNSIGNED_LONG, unsigned long, call); \
vtkTemplate2MacroCase1(VTK_INT, int, call); \
vtkTemplate2MacroCase1(VTK_UNSIGNED_INT, unsigned int, call);
#define vtkTemplate2MacroCase1(type1N, type1, call)
Definition ttkMacros.h:152

Definition at line 142 of file ttkMacros.h.

◆ ttkTypeMacroA

#define ttkTypeMacroA (   group,
  call 
)
Value:
switch(group) { \
ttkTypeMacroCase(VTK_FLOAT, float, 0, call); \
ttkTypeMacroCase(VTK_DOUBLE, double, 0, call); \
ttkTypeMacroCase(VTK_INT, int, 0, call); \
ttkTypeMacroCase(VTK_UNSIGNED_INT, unsigned int, 0, call); \
ttkTypeMacroCase(VTK_CHAR, char, 0, call); \
ttkTypeMacroCase(VTK_SIGNED_CHAR, signed char, 0, call); \
ttkTypeMacroCase(VTK_UNSIGNED_CHAR, unsigned char, 0, call); \
ttkTypeMacroCase(VTK_LONG, long, 0, call); \
ttkTypeMacroCase(VTK_LONG_LONG, long long, 0, call); \
ttkTypeMacroCase(VTK_UNSIGNED_LONG, unsigned long, 0, call); \
ttkTypeMacroCase(VTK_UNSIGNED_LONG_LONG, unsigned long long, 0, call); \
ttkTypeMacroCase(VTK_ID_TYPE, vtkIdType, 0, call); \
ttkTypeMacroErrorCase(0, group); \
}

Definition at line 234 of file ttkMacros.h.

◆ ttkTypeMacroAA

#define ttkTypeMacroAA (   group0,
  group1,
  call 
)
Value:
switch(group1) { \
ttkTypeMacroCase(VTK_FLOAT, float, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase(VTK_DOUBLE, double, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase(VTK_INT, int, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase( \
VTK_UNSIGNED_INT, unsigned int, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase(VTK_CHAR, char, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase( \
VTK_SIGNED_CHAR, signed char, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase( \
VTK_UNSIGNED_CHAR, unsigned char, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase(VTK_LONG, long, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase( \
VTK_LONG_LONG, long long, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase( \
VTK_UNSIGNED_LONG, unsigned long, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase(VTK_UNSIGNED_LONG_LONG, unsigned long long, 1, \
ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase(VTK_ID_TYPE, vtkIdType, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroErrorCase(1, group1); \
}
#define ttkTypeMacroA(group, call)
Definition ttkMacros.h:234

Definition at line 357 of file ttkMacros.h.

◆ ttkTypeMacroAAA

#define ttkTypeMacroAAA (   group0,
  group1,
  group2,
  call 
)
Value:
switch(group2) { \
ttkTypeMacroCase( \
VTK_FLOAT, float, 2, ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroCase( \
VTK_DOUBLE, double, 2, ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroCase(VTK_INT, int, 2, ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroCase(VTK_UNSIGNED_INT, unsigned int, 2, \
ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroCase(VTK_CHAR, char, 2, ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroCase( \
VTK_SIGNED_CHAR, signed char, 2, ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroCase(VTK_UNSIGNED_CHAR, unsigned char, 2, \
ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroCase(VTK_LONG, long, 2, ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroCase( \
VTK_LONG_LONG, long long, 2, ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroCase(VTK_UNSIGNED_LONG, unsigned long, 2, \
ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroCase(VTK_UNSIGNED_LONG_LONG, unsigned long long, 2, \
ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroCase( \
VTK_ID_TYPE, vtkIdType, 2, ttkTypeMacroAA(group0, group1, call)); \
ttkTypeMacroErrorCase(2, group2); \
}
#define ttkTypeMacroAA(group0, group1, call)
Definition ttkMacros.h:357

Definition at line 380 of file ttkMacros.h.

◆ ttkTypeMacroAI

#define ttkTypeMacroAI (   group0,
  group1,
  call 
)
Value:
switch(group1) { \
ttkTypeMacroCase(VTK_INT, int, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase( \
VTK_LONG_LONG, long long, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroCase(VTK_ID_TYPE, vtkIdType, 1, ttkTypeMacroA(group0, call)); \
ttkTypeMacroErrorCase(1, group1); \
}

Definition at line 341 of file ttkMacros.h.

◆ ttkTypeMacroAII

#define ttkTypeMacroAII (   group0,
  group1,
  group2,
  call 
)
Value:
switch(group2) { \
ttkTypeMacroCase(VTK_INT, int, 2, ttkTypeMacroAI(group0, group1, call)); \
ttkTypeMacroCase( \
VTK_LONG_LONG, long long, 2, ttkTypeMacroAI(group0, group1, call)); \
ttkTypeMacroCase( \
VTK_ID_TYPE, vtkIdType, 2, ttkTypeMacroAI(group0, group1, call)); \
ttkTypeMacroErrorCase(2, group2); \
}
#define ttkTypeMacroAI(group0, group1, call)
Definition ttkMacros.h:341

Definition at line 406 of file ttkMacros.h.

◆ ttkTypeMacroAT

#define ttkTypeMacroAT (   group0,
  group1,
  call 
)
Value:
switch(group1) { \
ttkTypeMacroA(group0, call)); \
ttkTypeMacroA(group0, call)); \
ttkTypeMacroA(group0, call)); \
ttkTypeMacroA(group0, call)); \
ttkTypeMacroA(group0, call)); \
ttkTypeMacroA(group0, call)); \
ttkTypeMacroErrorCase(1, group1); \
}
CompactTriangulation is a class implemented based on the TopoCluster data structure,...
ExplicitTriangulation is a class that provides time efficient traversal methods on triangulations of ...
Implicit Triangulation class without preconditioning.
Implicit Triangulation class with preconditioning.
Periodic implicit Triangulation class without preconditioning.
Periodic implicit Triangulation class with preconditioning.

Definition at line 272 of file ttkMacros.h.

◆ ttkTypeMacroCase

#define ttkTypeMacroCase (   enum,
  type,
  number,
  call 
)
Value:
case enum: { \
typedef type T##number; \
call; \
} break;

Definition at line 189 of file ttkMacros.h.

◆ ttkTypeMacroErrorCase

#define ttkTypeMacroErrorCase (   idx,
  type 
)
Value:
default: { \
this->printErr("Unsupported " #idx "-th Template Data Type: " \
+ std::to_string(static_cast<int>(type))); \
} break;

Definition at line 183 of file ttkMacros.h.

◆ ttkTypeMacroI

#define ttkTypeMacroI (   group,
  call 
)
Value:
switch(group) { \
ttkTypeMacroCase(VTK_INT, int, 0, call); \
ttkTypeMacroCase(VTK_UNSIGNED_INT, unsigned int, 0, call); \
ttkTypeMacroCase(VTK_CHAR, char, 0, call); \
ttkTypeMacroCase(VTK_SIGNED_CHAR, signed char, 0, call); \
ttkTypeMacroCase(VTK_UNSIGNED_CHAR, unsigned char, 0, call); \
ttkTypeMacroCase(VTK_LONG, long, 0, call); \
ttkTypeMacroCase(VTK_LONG_LONG, long long, 0, call); \
ttkTypeMacroCase(VTK_UNSIGNED_LONG, unsigned long, 0, call); \
ttkTypeMacroCase(VTK_UNSIGNED_LONG_LONG, unsigned long long, 0, call); \
ttkTypeMacroCase(VTK_ID_TYPE, vtkIdType, 0, call); \
ttkTypeMacroErrorCase(0, group); \
}

Definition at line 219 of file ttkMacros.h.

◆ ttkTypeMacroIT

#define ttkTypeMacroIT (   group0,
  group1,
  call 
)
Value:
switch(group1) { \
ttkTypeMacroI(group0, call)); \
ttkTypeMacroI(group0, call)); \
ttkTypeMacroI(group0, call)); \
ttkTypeMacroI(group0, call)); \
ttkTypeMacroI(group0, call)); \
ttkTypeMacroI(group0, call)); \
ttkTypeMacroErrorCase(1, group1); \
}
#define ttkTypeMacroI(group, call)
Definition ttkMacros.h:219

Definition at line 318 of file ttkMacros.h.

◆ ttkTypeMacroR

#define ttkTypeMacroR (   group,
  call 
)
Value:
switch(group) { \
ttkTypeMacroCase(VTK_FLOAT, float, 0, call); \
ttkTypeMacroCase(VTK_DOUBLE, double, 0, call); \
ttkTypeMacroErrorCase(0, group); \
}

Definition at line 212 of file ttkMacros.h.

◆ ttkTypeMacroRR

#define ttkTypeMacroRR (   group0,
  group1,
  call 
)
Value:
switch(group1) { \
ttkTypeMacroCase(VTK_FLOAT, float, 1, ttkTypeMacroR(group0, call)); \
ttkTypeMacroCase(VTK_DOUBLE, double, 1, ttkTypeMacroR(group0, call)); \
ttkTypeMacroErrorCase(1, group1); \
}
#define ttkTypeMacroR(group, call)
Definition ttkMacros.h:212

Definition at line 350 of file ttkMacros.h.

◆ ttkTypeMacroRRI

#define ttkTypeMacroRRI (   group0,
  group1,
  group2,
  call 
)
Value:
switch(group2) { \
ttkTypeMacroCase(VTK_INT, int, 2, ttkTypeMacroRR(group0, group1, call)); \
ttkTypeMacroCase( \
VTK_LONG_LONG, long long, 2, ttkTypeMacroRR(group0, group1, call)); \
ttkTypeMacroCase( \
VTK_ID_TYPE, vtkIdType, 2, ttkTypeMacroRR(group0, group1, call)); \
ttkTypeMacroErrorCase(2, group2); \
}
#define ttkTypeMacroRR(group0, group1, call)
Definition ttkMacros.h:350

Definition at line 425 of file ttkMacros.h.

◆ ttkTypeMacroRRR

#define ttkTypeMacroRRR (   group0,
  group1,
  group2,
  call 
)
Value:
switch(group2) { \
ttkTypeMacroCase( \
VTK_FLOAT, float, 2, ttkTypeMacroRR(group0, group1, call)); \
ttkTypeMacroCase( \
VTK_DOUBLE, double, 2, ttkTypeMacroRR(group0, group1, call)); \
ttkTypeMacroErrorCase(2, group2); \
}

Definition at line 416 of file ttkMacros.h.

◆ ttkTypeMacroRT

#define ttkTypeMacroRT (   group0,
  group1,
  call 
)
Value:
switch(group1) { \
ttkTypeMacroR(group0, call)); \
ttkTypeMacroR(group0, call)); \
ttkTypeMacroR(group0, call)); \
ttkTypeMacroR(group0, call)); \
ttkTypeMacroR(group0, call)); \
ttkTypeMacroR(group0, call)); \
ttkTypeMacroErrorCase(1, group1); \
}

Definition at line 295 of file ttkMacros.h.

◆ ttkTypeMacroT

#define ttkTypeMacroT (   group,
  call 
)
Value:
switch(group) { \
ttkTypeMacroCase( \
ttkTypeMacroErrorCase(0, group); \
}

Definition at line 195 of file ttkMacros.h.

◆ ttkVtkTemplate2Macro

#define ttkVtkTemplate2Macro (   triangulationType1,
  triangulationType2,
  call 
)
Value:
switch(triangulationType1) { \
ttkVtkTemplate2MacroCase1(ttk::Triangulation::Type::EXPLICIT, \
ttk::ExplicitTriangulation, triangulationType2, \
call); \
ttkVtkTemplate2MacroCase1(ttk::Triangulation::Type::IMPLICIT, \
triangulationType2, call); \
ttkVtkTemplate2MacroCase1(ttk::Triangulation::Type::HYBRID_IMPLICIT, \
triangulationType2, call); \
ttkVtkTemplate2MacroCase1(ttk::Triangulation::Type::PERIODIC, \
triangulationType2, call); \
ttkVtkTemplate2MacroCase1(ttk::Triangulation::Type::HYBRID_PERIODIC, \
triangulationType2, call); \
ttkVtkTemplate2MacroCase1(ttk::Triangulation::Type::COMPACT, \
ttk::CompactTriangulation, triangulationType2, \
call); \
}

Definition at line 120 of file ttkMacros.h.

◆ ttkVtkTemplate2MacroCase1

#define ttkVtkTemplate2MacroCase1 (   triangulationType1,
  triangulationClass1,
  triangulationType2,
  call 
)
Value:
case triangulationType1: { \
switch(triangulationType2) { \
ttkVtkTemplate2MacroCase2(triangulationClass1, \
ttkVtkTemplate2MacroCase2(triangulationClass1, \
ttkVtkTemplate2MacroCase2(triangulationClass1, \
ttkVtkTemplate2MacroCase2(triangulationClass1, \
ttkVtkTemplate2MacroCase2(triangulationClass1, \
ttkVtkTemplate2MacroCase2(triangulationClass1, \
} \
}; break;

Definition at line 95 of file ttkMacros.h.

◆ ttkVtkTemplate2MacroCase2

#define ttkVtkTemplate2MacroCase2 (   triangulationClass1,
  triangulationType2,
  triangulationClass2,
  call 
)
Value:
case triangulationType2: { \
typedef triangulationClass1 TTK_TT1; \
typedef triangulationClass2 TTK_TT2; \
(call); \
}; break;

Definition at line 87 of file ttkMacros.h.

◆ ttkVtkTemplateMacro

#define ttkVtkTemplateMacro (   dataType,
  triangulationType,
  call 
)
Value:
switch(triangulationType) { \
ttkVtkTemplateMacroCase(dataType, ttk::Triangulation::Type::EXPLICIT, \
ttkVtkTemplateMacroCase(dataType, ttk::Triangulation::Type::IMPLICIT, \
ttkVtkTemplateMacroCase(dataType, \
ttkVtkTemplateMacroCase(dataType, ttk::Triangulation::Type::PERIODIC, \
ttkVtkTemplateMacroCase(dataType, \
ttkVtkTemplateMacroCase(dataType, ttk::Triangulation::Type::COMPACT, \
}

Definition at line 69 of file ttkMacros.h.

◆ ttkVtkTemplateMacroCase

#define ttkVtkTemplateMacroCase (   dataType,
  triangulationType,
  triangulationClass,
  call 
)
Value:
case triangulationType: { \
typedef triangulationClass TTK_TT; \
switch(dataType) { vtkTemplateMacro((call)); }; \
}; break;

Definition at line 62 of file ttkMacros.h.

◆ vtkTemplate2MacroCase1

#define vtkTemplate2MacroCase1 (   type1N,
  type1,
  call 
)
Value:
vtkTemplate2MacroCase2(type1N, type1, VTK_DOUBLE, double, call); \
vtkTemplate2MacroCase2(type1N, type1, VTK_FLOAT, float, call); \
vtkTemplate2MacroCase2(type1N, type1, VTK_LONG_LONG, long long, call); \
vtkTemplate2MacroCase2( \
type1N, type1, VTK_UNSIGNED_LONG_LONG, unsigned long long, call); \
vtkTemplate2MacroCase2(type1N, type1, VTK_ID_TYPE, vtkIdType, call); \
vtkTemplate2MacroCase2(type1N, type1, VTK_LONG, long, call); \
vtkTemplate2MacroCase2( \
type1N, type1, VTK_UNSIGNED_LONG, unsigned long, call); \
vtkTemplate2MacroCase2(type1N, type1, VTK_INT, int, call); \
vtkTemplate2MacroCase2(type1N, type1, VTK_UNSIGNED_INT, unsigned int, call); \
vtkTemplate2MacroCase2(type1N, type1, VTK_SHORT, short, call); \
vtkTemplate2MacroCase2( \
type1N, type1, VTK_UNSIGNED_SHORT, unsigned short, call); \
vtkTemplate2MacroCase2(type1N, type1, VTK_CHAR, char, call); \
vtkTemplate2MacroCase2(type1N, type1, VTK_SIGNED_CHAR, signed char, call); \
vtkTemplate2MacroCase2(type1N, type1, VTK_UNSIGNED_CHAR, unsigned char, call)
#define vtkTemplate2MacroCase2(type1N, type1, type2N, type2, call)
Definition ttkMacros.h:173

Definition at line 152 of file ttkMacros.h.

◆ vtkTemplate2MacroCase2

#define vtkTemplate2MacroCase2 (   type1N,
  type1,
  type2N,
  type2,
  call 
)
Value:
case vtkTemplate2PackMacro(type1N, type2N): { \
typedef type1 VTK_T1; \
typedef type2 VTK_T2; \
call; \
}; break

Definition at line 173 of file ttkMacros.h.

Typedef Documentation

◆ ttkSimplexIdTypeArray

using ttkSimplexIdTypeArray = vtkIntArray

Definition at line 11 of file ttkMacros.h.