vtkAffineIdTypeArray.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
13 #ifndef vtkAffineIdTypeArray_h
14 #define vtkAffineIdTypeArray_h
15 
16 #include "vtkAffineArray.h" // Real Superclass
17 #include "vtkCommonCoreModule.h" // For export macro
18 #include "vtkDataArray.h"
19 
20 // Fake the superclass for the wrappers.
21 #ifndef __VTK_WRAP__
22 #define vtkDataArray vtkAffineArray<vtkIdType>
23 #endif
26 {
27 public:
28  vtkImplicitArrayTypeMacro(vtkAffineIdTypeArray, vtkDataArray);
29 #ifndef __VTK_WRAP__
30 #undef vtkDataArray
31 #endif
32 
33  static vtkAffineIdTypeArray* New();
34  static vtkAffineIdTypeArray* ExtendedNew();
35  void PrintSelf(ostream& os, vtkIndent indent) override;
36 
37  // This macro expands to the set of method declarations that
38  // make up the interface of vtkImplicitArray, which is ignored
39  // by the wrappers.
40 #if defined(__VTK_WRAP__) || defined(__WRAP_GCCXML__)
41  vtkCreateReadOnlyWrappedArrayInterface(vtkIdType);
42 #endif
43 
48  {
49  return static_cast<vtkAffineIdTypeArray*>(Superclass::FastDownCast(source));
50  }
51 
58  void ConstructBackend(vtkIdType slope, vtkIdType intercept);
59 
60 protected:
62  ~vtkAffineIdTypeArray() override;
63 
64 private:
65  typedef vtkAffineArray<vtkIdType> RealSuperclass;
66 
68  void operator=(const vtkAffineIdTypeArray&) = delete;
69 };
70 
71 // Define vtkArrayDownCast implementation:
73 
75 #endif
76 // VTK-HeaderTest-Exclude: TYPEMACRO
#define VTKCOMMONCORE_EXPORT
#define VTK_ABI_NAMESPACE_END
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
int vtkIdType
vtkArrayDownCast_FastCastMacro(vtkAffineIdTypeArray)
#define VTK_ABI_NAMESPACE_BEGIN
static vtkAffineIdTypeArray * FastDownCast(vtkAbstractArray *source)
A faster alternative to SafeDownCast for downcasting vtkAbstractArrays.
static vtkObject * New()
void operator=(const vtkObjectBase &)
affine implicit array of vtkIdType.