19#ifndef vtkCellGridCellCenters_h
20#define vtkCellGridCellCenters_h
23#include "vtkFiltersCellGridModule.h"
26VTK_ABI_NAMESPACE_BEGIN
43 std::unordered_map<vtkStringToken, std::unordered_map<vtkStringToken, vtkIdType>>;
87 std::unordered_map<vtkCellAttribute*, vtkCellAttribute*>
AttributeMap;
91 void operator=(
const Query&) =
delete;
A function defined over the physical domain of a vtkCellGrid.
Superclass for algorithms that produce only polydata as output.
A query corresponding to this algorithm.
vtkCellAttribute * GetOutputAttribute(vtkCellAttribute *inputAttribute)
Return an output attribute (or null).
OutputAllocations & GetOutputAllocations()
Return the data structure that AddOutputCenters() modifies in the PassType::CountOutputs pass.
bool IsAnotherPassRequired() override
Force three passes through this query.
bool Initialize() override
Override this if your query-result state requires initialization.
vtkCellGrid * GetInput() const
Get the request's input cell-grid.
OutputAllocations OutputOffsets
Map output cell-typename to input cell-typename to count (offset after the AllocateOutputs pass has r...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
const OutputAllocations & GetOutputAllocations() const
vtkCellGrid * GetOutput() const
Get the request's output cell-grid.
std::unordered_map< vtkStringToken, std::unordered_map< vtkStringToken, vtkIdType > > OutputAllocations
A map used to allocate output vertex cells for various input cell types.
void AddOutputCenters(vtkStringToken inputCellType, vtkStringToken outputCellType, vtkIdType numberOfOutputs)
Responders should call this method during the CountOutputs pass to allocate space in an output cell t...
~Query() override=default
std::unordered_map< vtkCellAttribute *, vtkCellAttribute * > AttributeMap
Output a vertex cell at the center of each input cell.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkCellGridCellCenters * New()
int RequestData(vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *ouInfo) override
This is called by the superclass.
~vtkCellGridCellCenters() override=default
Perform an operation on cells in a vtkCellMetadata instance.
Visualization data composed of cells of arbitrary type.
a simple class to control print indentation
Allocate and hold a VTK object.
Represent a string by its integer hash.