31 #ifndef vtkTypeTemplate_h
32 #define vtkTypeTemplate_h
40 #ifndef VTK_LEGACY_REMOVE
42 template<
class ThisT,
class BaseT>
58 return static_cast<ThisT*
>(o);
80 return BaseT::IsTypeOf(type);
94 vtkTemplateTypeMacro (vtkSetGet.h));
99 void operator=(const
vtkTypeTemplate<ThisT, BaseT>&) VTK_DELETE_FUNCTION;
101 static const
char* GetClassNameInternalCachedName()
104 return thisType.c_str();
107 const char* GetClassNameInternal() const VTK_OVERRIDE
109 return this->GetClassNameInternalCachedName();
113 #endif // VTK_LEGACY_REMOVE
114 #endif // header guard
Provides the equivalent of vtkTypeMacro for use with template classes.
ThisT * NewInstance() const
vtkTypeBool IsA(const char *type) override
static vtkTypeBool IsTypeOf(const char *type)
static ThisT * SafeDownCast(vtkObjectBase *o)
virtual vtkObjectBase * NewInstanceInternal() const
abstract base class for most VTK objects
virtual vtkTypeBool IsA(const char *name)
Return 1 if this class is the same type of (or a subclass of) the named class.