VTK  9.3.20240424
vtkCompositer.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
17#ifndef vtkCompositer_h
18#define vtkCompositer_h
19
20#include "vtkObject.h"
21#include "vtkRenderingParallelModule.h" // For export macro
22
23VTK_ABI_NAMESPACE_BEGIN
25class vtkCompositer;
26class vtkDataArray;
27class vtkFloatArray;
29
30class VTKRENDERINGPARALLEL_EXPORT vtkCompositer : public vtkObject
31{
32public:
33 static vtkCompositer* New();
34 vtkTypeMacro(vtkCompositer, vtkObject);
35 void PrintSelf(ostream& os, vtkIndent indent) override;
36
41 virtual void CompositeBuffer(
42 vtkDataArray* pBuf, vtkFloatArray* zBuf, vtkDataArray* pTmp, vtkFloatArray* zTmp);
43
45
49 vtkGetObjectMacro(Controller, vtkMultiProcessController);
51
53
56 vtkSetMacro(NumberOfProcesses, int);
57 vtkGetMacro(NumberOfProcesses, int);
59
61
64 static void DeleteArray(vtkDataArray* da);
65 static void ResizeFloatArray(vtkFloatArray* fa, int numComp, vtkIdType size);
66 static void ResizeUnsignedCharArray(vtkUnsignedCharArray* uca, int numComp, vtkIdType size);
68
69protected:
71 ~vtkCompositer() override;
72
75
76private:
77 vtkCompositer(const vtkCompositer&) = delete;
78 void operator=(const vtkCompositer&) = delete;
79};
80
81VTK_ABI_NAMESPACE_END
82#endif
Super class for composite algorithms.
static void DeleteArray(vtkDataArray *da)
Methods that allocate and delete memory with special MPIPro calls.
vtkMultiProcessController * Controller
static void ResizeFloatArray(vtkFloatArray *fa, int numComp, vtkIdType size)
Methods that allocate and delete memory with special MPIPro calls.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void CompositeBuffer(vtkDataArray *pBuf, vtkFloatArray *zBuf, vtkDataArray *pTmp, vtkFloatArray *zTmp)
This method gets called on every process.
virtual void SetController(vtkMultiProcessController *)
Access to the controller.
static void ResizeUnsignedCharArray(vtkUnsignedCharArray *uca, int numComp, vtkIdType size)
Methods that allocate and delete memory with special MPIPro calls.
static vtkCompositer * New()
~vtkCompositer() override
abstract superclass for arrays of numeric data
dynamic, self-adjusting array of float
a simple class to control print indentation
Definition vtkIndent.h:108
Multiprocessing communication superclass.
abstract base class for most VTK objects
Definition vtkObject.h:162
dynamic, self-adjusting array of unsigned char
int vtkIdType
Definition vtkType.h:315