VTK-m  2.1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
vtkm::filter::entity_extraction::GhostCellRemove Class Reference

Removes cells marked as ghost cells. More...

#include <GhostCellRemove.h>

Inheritance diagram for vtkm::filter::entity_extraction::GhostCellRemove:
vtkm::filter::Filter

Public Member Functions

 GhostCellRemove ()
 
void SetRemoveGhostField (bool flag)
 Specify whether the ghost cell array should be removed from the input. More...
 
bool GetRemoveGhostField () const
 Specify whether the ghost cell array should be removed from the input. More...
 
void SetTypesToRemove (vtkm::UInt8 typeFlags)
 Specify which types of cells to remove. More...
 
vtkm::UInt8 GetTypesToRemove () const
 Specify which types of cells to remove. More...
 
void SetTypesToRemoveToAll ()
 Set filter to remove any special cell type. More...
 
bool AreAllTypesRemoved () const
 Returns true if all abnormal cell types are removed. More...
 
void RemoveGhostField ()
 
void RemoveAllGhost ()
 
void RemoveByType (const vtkm::UInt8 &vals)
 
bool GetRemoveAllGhost () const
 
bool GetUseGhostCellsAsField () const
 Specify whether the marked ghost cells or a named field should be used as the ghost field. More...
 
void SetUseGhostCellsAsField (bool flag)
 Specify whether the marked ghost cells or a named field should be used as the ghost field. More...
 
bool GetRemoveByType () const
 
vtkm::UInt8 GetRemoveType () const
 
- Public Member Functions inherited from vtkm::filter::Filter
 Filter ()
 
virtual ~Filter ()
 
vtkm::cont::DataSet Execute (const vtkm::cont::DataSet &input)
 Executes the filter on the input and produces a result dataset. More...
 
vtkm::cont::PartitionedDataSet Execute (const vtkm::cont::PartitionedDataSet &input)
 Executes the filter on the input PartitionedDataSet and produces a result PartitionedDataSet. More...
 
void SetFieldsToPass (const vtkm::filter::FieldSelection &fieldsToPass)
 Specify which fields get passed from input to output. More...
 
void SetFieldsToPass (vtkm::filter::FieldSelection &&fieldsToPass)
 Specify which fields get passed from input to output. More...
 
void SetFieldsToPass (const vtkm::filter::FieldSelection &fieldsToPass, vtkm::filter::FieldSelection::Mode mode)
 
void SetFieldsToPass (std::initializer_list< std::string > fields, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select)
 Specify which fields get passed from input to output. More...
 
void SetFieldsToPass (std::initializer_list< std::pair< std::string, vtkm::cont::Field::Association >> fields, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select)
 Specify which fields get passed from input to output. More...
 
void SetFieldsToPass (const std::string &fieldname, vtkm::cont::Field::Association association, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select)
 Specify which fields get passed from input to output. More...
 
void SetFieldsToPass (const std::string &fieldname, vtkm::filter::FieldSelection::Mode mode)
 Specify which fields get passed from input to output. More...
 
const vtkm::filter::FieldSelectionGetFieldsToPass () const
 Specify which fields get passed from input to output. More...
 
vtkm::filter::FieldSelectionGetFieldsToPass ()
 Specify which fields get passed from input to output. More...
 
void SetPassCoordinateSystems (bool flag)
 Specify whether to always pass coordinate systems. More...
 
bool GetPassCoordinateSystems () const
 Specify whether to always pass coordinate systems. More...
 
void SetOutputFieldName (const std::string &name)
 Specifies the name of the output field generated. More...
 
const std::string & GetOutputFieldName () const
 Specifies the name of the output field generated. More...
 
void SetActiveField (const std::string &name, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::Any)
 Specifies a field to operate on. More...
 
void SetActiveField (vtkm::IdComponent index, const std::string &name, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::Any)
 Specifies a field to operate on. More...
 
const std::string & GetActiveFieldName (vtkm::IdComponent index=0) const
 Specifies a field to operate on. More...
 
vtkm::cont::Field::Association GetActiveFieldAssociation (vtkm::IdComponent index=0) const
 Specifies a field to operate on. More...
 
void SetActiveCoordinateSystem (vtkm::Id coord_idx)
 Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet. More...
 
void SetActiveCoordinateSystem (vtkm::IdComponent index, vtkm::Id coord_idx)
 Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet. More...
 
vtkm::Id GetActiveCoordinateSystemIndex (vtkm::IdComponent index=0) const
 Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet. More...
 
void SetUseCoordinateSystemAsField (bool val)
 Specifies whether to use point coordinates as the input field. More...
 
void SetUseCoordinateSystemAsField (vtkm::IdComponent index, bool val)
 Specifies whether to use point coordinates as the input field. More...
 
bool GetUseCoordinateSystemAsField (vtkm::IdComponent index=0) const
 Specifies whether to use point coordinates as the input field. More...
 
vtkm::IdComponent GetNumberOfActiveFields () const
 Return the number of active fields currently set. More...
 
virtual bool CanThread () const
 Returns whether the filter can execute on partitions in concurrent threads. More...
 
void SetThreadsPerCPU (vtkm::Id numThreads)
 
void SetThreadsPerGPU (vtkm::Id numThreads)
 
vtkm::Id GetThreadsPerCPU () const
 
vtkm::Id GetThreadsPerGPU () const
 
bool GetRunMultiThreadedFilter () const
 
void SetRunMultiThreadedFilter (bool val)
 
void SetInvoker (vtkm::cont::Invoker inv)
 Specify the vtkm::cont::Invoker to be used to execute worklets by this filter instance. More...
 

Private Member Functions

vtkm::cont::DataSet DoExecute (const vtkm::cont::DataSet &input) override
 

Private Attributes

bool UseGhostCellsAsField = true
 
bool RemoveField = false
 
vtkm::UInt8 TypesToRemove = 0xFF
 

Additional Inherited Members

- Protected Member Functions inherited from vtkm::filter::Filter
vtkm::cont::DataSet CreateResult (const vtkm::cont::DataSet &inDataSet) const
 Create the output data set for DoExecute. More...
 
vtkm::cont::DataSet CreateResultField (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::Field &resultField) const
 Create the output data set for DoExecute More...
 
vtkm::cont::DataSet CreateResultField (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, vtkm::cont::Field::Association resultFieldAssociation, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const
 Create the output data set for DoExecute More...
 
vtkm::cont::DataSet CreateResultFieldPoint (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const
 Create the output data set for DoExecute More...
 
vtkm::cont::DataSet CreateResultFieldCell (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const
 Create the output data set for DoExecute More...
 
vtkm::cont::PartitionedDataSet CreateResult (const vtkm::cont::PartitionedDataSet &input, const vtkm::cont::PartitionedDataSet &resultPartitions) const
 Create the output data set for DoExecute. More...
 
template<typename FieldMapper >
vtkm::cont::PartitionedDataSet CreateResult (const vtkm::cont::PartitionedDataSet &input, const vtkm::cont::PartitionedDataSet &resultPartitions, FieldMapper &&fieldMapper) const
 Create the output data set for DoExecute. More...
 
template<typename FieldMapper >
vtkm::cont::DataSet CreateResult (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, FieldMapper &&fieldMapper) const
 Create the output data set for DoExecute. More...
 
template<typename FieldMapper >
vtkm::cont::DataSet CreateResultCoordinateSystem (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, const vtkm::cont::CoordinateSystem &resultCoordSystem, FieldMapper &&fieldMapper) const
 Create the output data set for DoExecute. More...
 
template<typename FieldMapper >
vtkm::cont::DataSet CreateResultCoordinateSystem (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, const std::string &coordsName, const vtkm::cont::UnknownArrayHandle &coordsData, FieldMapper &&fieldMapper) const
 Create the output data set for DoExecute. More...
 
const vtkm::cont::FieldGetFieldFromDataSet (const vtkm::cont::DataSet &input) const
 Retrieve an input field from a vtkm::cont::DataSet object. More...
 
const vtkm::cont::FieldGetFieldFromDataSet (vtkm::IdComponent index, const vtkm::cont::DataSet &input) const
 Retrieve an input field from a vtkm::cont::DataSet object. More...
 
virtual vtkm::cont::PartitionedDataSet DoExecutePartitions (const vtkm::cont::PartitionedDataSet &inData)
 
template<typename Functor , typename... Args>
void CastAndCallScalarField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const
 Convenience method to get the array from a filter's input scalar field. More...
 
template<typename Functor , typename... Args>
void CastAndCallScalarField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const
 Convenience method to get the array from a filter's input scalar field. More...
 
template<vtkm::IdComponent VecSize, typename Functor , typename... Args>
void CastAndCallVecField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const
 Convenience method to get the array from a filter's input vector field. More...
 
template<vtkm::IdComponent VecSize, typename Functor , typename... Args>
void CastAndCallVecField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const
 Convenience method to get the array from a filter's input vector field. More...
 
template<typename Functor , typename... Args>
void CastAndCallVariableVecField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const
 This method is like CastAndCallVecField except that it can be used for a field of unknown vector size (or scalars). More...
 
template<typename Functor , typename... Args>
void CastAndCallVariableVecField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const
 This method is like CastAndCallVecField except that it can be used for a field of unknown vector size (or scalars). More...
 
- Protected Attributes inherited from vtkm::filter::Filter
vtkm::cont::Invoker Invoke
 

Detailed Description

Removes cells marked as ghost cells.

This filter inspects the ghost cell field of the input and removes any cells marked as ghost cells. Although this filter nominally operates on ghost cells, other classifications, such as blanked cells, can also be recorded in the ghost cell array. See vtkm::CellClassification for the list of flags typical in a ghost array.

By default, if the input is a structured data set the filter will attempt to output a structured data set. This will be the case if all the cells along a boundary are marked as ghost cells together, which is common. If creating a structured data set is not possible, an explicit data set is produced.

Constructor & Destructor Documentation

◆ GhostCellRemove()

vtkm::filter::entity_extraction::GhostCellRemove::GhostCellRemove ( )

Member Function Documentation

◆ AreAllTypesRemoved()

bool vtkm::filter::entity_extraction::GhostCellRemove::AreAllTypesRemoved ( ) const
inline

Returns true if all abnormal cell types are removed.

◆ DoExecute()

vtkm::cont::DataSet vtkm::filter::entity_extraction::GhostCellRemove::DoExecute ( const vtkm::cont::DataSet input)
overrideprivatevirtual

Implements vtkm::filter::Filter.

◆ GetRemoveAllGhost()

bool vtkm::filter::entity_extraction::GhostCellRemove::GetRemoveAllGhost ( ) const
inline

◆ GetRemoveByType()

bool vtkm::filter::entity_extraction::GhostCellRemove::GetRemoveByType ( ) const
inline

◆ GetRemoveGhostField()

bool vtkm::filter::entity_extraction::GhostCellRemove::GetRemoveGhostField ( ) const
inline

Specify whether the ghost cell array should be removed from the input.

If this flag is true, then the ghost cell array will not be passed to the output.

◆ GetRemoveType()

vtkm::UInt8 vtkm::filter::entity_extraction::GhostCellRemove::GetRemoveType ( ) const
inline

◆ GetTypesToRemove()

vtkm::UInt8 vtkm::filter::entity_extraction::GhostCellRemove::GetTypesToRemove ( ) const
inline

Specify which types of cells to remove.

The types to remove are specified by the flags in vtkm::CellClassification. Any cell with a ghost array flag matching one or more of these flags will be removed.

◆ GetUseGhostCellsAsField()

bool vtkm::filter::entity_extraction::GhostCellRemove::GetUseGhostCellsAsField ( ) const
inline

Specify whether the marked ghost cells or a named field should be used as the ghost field.

When this flag is true (the default), the filter will get from the input vtkm::cont::DataSet the field (with the GetGhostCellField method). When this flag is false, the SetActiveField method of this class should be used to select which field to use as ghost cells.

◆ RemoveAllGhost()

void vtkm::filter::entity_extraction::GhostCellRemove::RemoveAllGhost ( )
inline

◆ RemoveByType()

void vtkm::filter::entity_extraction::GhostCellRemove::RemoveByType ( const vtkm::UInt8 vals)
inline

◆ RemoveGhostField()

void vtkm::filter::entity_extraction::GhostCellRemove::RemoveGhostField ( )
inline

◆ SetRemoveGhostField()

void vtkm::filter::entity_extraction::GhostCellRemove::SetRemoveGhostField ( bool  flag)
inline

Specify whether the ghost cell array should be removed from the input.

If this flag is true, then the ghost cell array will not be passed to the output.

◆ SetTypesToRemove()

void vtkm::filter::entity_extraction::GhostCellRemove::SetTypesToRemove ( vtkm::UInt8  typeFlags)
inline

Specify which types of cells to remove.

The types to remove are specified by the flags in vtkm::CellClassification. Any cell with a ghost array flag matching one or more of these flags will be removed.

◆ SetTypesToRemoveToAll()

void vtkm::filter::entity_extraction::GhostCellRemove::SetTypesToRemoveToAll ( )
inline

Set filter to remove any special cell type.

This method sets the state to remove any cell that does not have a "normal" ghost cell value of 0. Any other value represents a cell that is placeholder or otherwise not really considered part of the cell set.

◆ SetUseGhostCellsAsField()

void vtkm::filter::entity_extraction::GhostCellRemove::SetUseGhostCellsAsField ( bool  flag)
inline

Specify whether the marked ghost cells or a named field should be used as the ghost field.

When this flag is true (the default), the filter will get from the input vtkm::cont::DataSet the field (with the GetGhostCellField method). When this flag is false, the SetActiveField method of this class should be used to select which field to use as ghost cells.

Member Data Documentation

◆ RemoveField

bool vtkm::filter::entity_extraction::GhostCellRemove::RemoveField = false
private

◆ TypesToRemove

vtkm::UInt8 vtkm::filter::entity_extraction::GhostCellRemove::TypesToRemove = 0xFF
private

◆ UseGhostCellsAsField

bool vtkm::filter::entity_extraction::GhostCellRemove::UseGhostCellsAsField = true
private

The documentation for this class was generated from the following file: