VTK  9.3.0
vtkCuller.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
19#ifndef vtkCuller_h
20#define vtkCuller_h
21
22#include "vtkObject.h"
23#include "vtkRenderingCoreModule.h" // For export macro
24
25VTK_ABI_NAMESPACE_BEGIN
26class vtkProp;
27class vtkRenderer;
28
29class VTKRENDERINGCORE_EXPORT vtkCuller : public vtkObject
30{
31public:
32 vtkTypeMacro(vtkCuller, vtkObject);
33 void PrintSelf(ostream& os, vtkIndent indent) override;
34
38 virtual double Cull(vtkRenderer* ren, vtkProp** propList, int& listLength, int& initialized) = 0;
39
40protected:
42 ~vtkCuller() override;
43
44private:
45 vtkCuller(const vtkCuller&) = delete;
46 void operator=(const vtkCuller&) = delete;
47};
48
49VTK_ABI_NAMESPACE_END
50#endif
a superclass for prop cullers
Definition vtkCuller.h:30
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual double Cull(vtkRenderer *ren, vtkProp **propList, int &listLength, int &initialized)=0
This is called outside the render loop by vtkRenderer.
~vtkCuller() override
a simple class to control print indentation
Definition vtkIndent.h:29
abstract base class for most VTK objects
Definition vtkObject.h:49
abstract superclass for all actors, volumes and annotations
Definition vtkProp.h:43
abstract specification for renderers
Definition vtkRenderer.h:59