VTK-m  2.2
Public Types | Public Member Functions | Static Public Attributes | Private Types | Private Attributes | List of all members
vtkm::cont::CellSetStructured< DIMENSION > Class Template Reference

Defines a 1-, 2-, or 3-dimensional structured grid of points. More...

#include <CastAndCall.h>

Public Types

using SchedulingRangeType = typename InternalsType::SchedulingRangeType
 
template<typename VisitTopology , typename IncidentTopology >
using ExecConnectivityType = vtkm::exec::ConnectivityStructured< VisitTopology, IncidentTopology, Dimension >
 

Public Member Functions

vtkm::Id GetNumberOfCells () const override
 Get the number of cells in the topology. More...
 
vtkm::Id GetNumberOfPoints () const override
 Get the number of points in the topology. More...
 
vtkm::Id GetNumberOfFaces () const override
 
vtkm::Id GetNumberOfEdges () const override
 
void ReleaseResourcesExecution () override
 
void SetPointDimensions (SchedulingRangeType dimensions)
 Set the dimensions of the structured array of points. More...
 
void SetGlobalPointDimensions (SchedulingRangeType dimensions)
 
void SetGlobalPointIndexStart (SchedulingRangeType start)
 
SchedulingRangeType GetPointDimensions () const
 Get the dimensions of the points. More...
 
SchedulingRangeType GetGlobalPointDimensions () const
 
SchedulingRangeType GetCellDimensions () const
 Get the dimensions of the cells. More...
 
SchedulingRangeType GetGlobalCellDimensions () const
 
SchedulingRangeType GetGlobalPointIndexStart () const
 
vtkm::IdComponent GetNumberOfPointsInCell (vtkm::Id=0) const override
 
vtkm::UInt8 GetCellShape (vtkm::Id=0) const override
 
void GetCellPointIds (vtkm::Id id, vtkm::Id *ptids) const override
 
std::shared_ptr< CellSetNewInstance () const override
 
void DeepCopy (const CellSet *src) override
 
template<typename TopologyElement >
SchedulingRangeType GetSchedulingRange (TopologyElement) const
 
template<typename VisitTopology , typename IncidentTopology >
ExecConnectivityType< VisitTopology, IncidentTopology > PrepareForInput (vtkm::cont::DeviceAdapterId device, VisitTopology visitTopology, IncidentTopology incidentTopology, vtkm::cont::Token &token) const
 Prepares the data for a particular device and returns the execution object for it. More...
 
void PrintSummary (std::ostream &out) const override
 
 ~CellSetStructured () override
 
 CellSetStructured ()=default
 
 CellSetStructured (const CellSetStructured &src)
 
CellSetStructuredoperator= (const CellSetStructured &src)
 
 CellSetStructured (CellSetStructured &&src) noexcept
 
CellSetStructuredoperator= (CellSetStructured &&src) noexcept
 

Static Public Attributes

static const vtkm::IdComponent Dimension = DIMENSION
 

Private Types

using Thisclass = vtkm::cont::CellSetStructured< DIMENSION >
 
using InternalsType = vtkm::internal::ConnectivityStructuredInternals< DIMENSION >
 

Private Attributes

InternalsType Structure
 

Detailed Description

template<vtkm::IdComponent DIMENSION>
class vtkm::cont::CellSetStructured< DIMENSION >

Defines a 1-, 2-, or 3-dimensional structured grid of points.

The structured cells form lines, quadrilaterals, or hexahedra for 1-, 2-, or 3-dimensions, respectively, to connect th epoints. The topology is specified by simply providing the dimensions, which is the number of points in the i, j, and k directions of the grid of points.

Member Typedef Documentation

◆ ExecConnectivityType

template<vtkm::IdComponent DIMENSION>
template<typename VisitTopology , typename IncidentTopology >
using vtkm::cont::CellSetStructured< DIMENSION >::ExecConnectivityType = vtkm::exec::ConnectivityStructured<VisitTopology, IncidentTopology, Dimension>

◆ InternalsType

template<vtkm::IdComponent DIMENSION>
using vtkm::cont::CellSetStructured< DIMENSION >::InternalsType = vtkm::internal::ConnectivityStructuredInternals<DIMENSION>
private

◆ SchedulingRangeType

template<vtkm::IdComponent DIMENSION>
using vtkm::cont::CellSetStructured< DIMENSION >::SchedulingRangeType = typename InternalsType::SchedulingRangeType

◆ Thisclass

template<vtkm::IdComponent DIMENSION>
using vtkm::cont::CellSetStructured< DIMENSION >::Thisclass = vtkm::cont::CellSetStructured<DIMENSION>
private

Constructor & Destructor Documentation

◆ ~CellSetStructured()

template<vtkm::IdComponent DIMENSION>
vtkm::cont::CellSetStructured< DIMENSION >::~CellSetStructured ( )
inlineoverride

◆ CellSetStructured() [1/3]

template<vtkm::IdComponent DIMENSION>
vtkm::cont::CellSetStructured< DIMENSION >::CellSetStructured ( )
default

◆ CellSetStructured() [2/3]

template<vtkm::IdComponent DIMENSION>
vtkm::cont::CellSetStructured< DIMENSION >::CellSetStructured ( const CellSetStructured< DIMENSION > &  src)
inline

◆ CellSetStructured() [3/3]

template<vtkm::IdComponent DIMENSION>
vtkm::cont::CellSetStructured< DIMENSION >::CellSetStructured ( CellSetStructured< DIMENSION > &&  src)
inlinenoexcept

Member Function Documentation

◆ DeepCopy()

template<vtkm::IdComponent DIMENSION>
void vtkm::cont::CellSetStructured< DIMENSION >::DeepCopy ( const CellSet src)
inlineoverride

◆ GetCellDimensions()

template<vtkm::IdComponent DIMENSION>
SchedulingRangeType vtkm::cont::CellSetStructured< DIMENSION >::GetCellDimensions ( ) const
inline

Get the dimensions of the cells.

This is typically one less than the dimensions of the points.

◆ GetCellPointIds()

template<vtkm::IdComponent DIMENSION>
void vtkm::cont::CellSetStructured< DIMENSION >::GetCellPointIds ( vtkm::Id  id,
vtkm::Id ptids 
) const
inlineoverride

◆ GetCellShape()

template<vtkm::IdComponent DIMENSION>
vtkm::UInt8 vtkm::cont::CellSetStructured< DIMENSION >::GetCellShape ( vtkm::Id  = 0) const
inlineoverride

◆ GetGlobalCellDimensions()

template<vtkm::IdComponent DIMENSION>
SchedulingRangeType vtkm::cont::CellSetStructured< DIMENSION >::GetGlobalCellDimensions ( ) const
inline

◆ GetGlobalPointDimensions()

template<vtkm::IdComponent DIMENSION>
SchedulingRangeType vtkm::cont::CellSetStructured< DIMENSION >::GetGlobalPointDimensions ( ) const
inline

◆ GetGlobalPointIndexStart()

template<vtkm::IdComponent DIMENSION>
SchedulingRangeType vtkm::cont::CellSetStructured< DIMENSION >::GetGlobalPointIndexStart ( ) const
inline

◆ GetNumberOfCells()

template<vtkm::IdComponent DIMENSION>
vtkm::Id vtkm::cont::CellSetStructured< DIMENSION >::GetNumberOfCells ( ) const
inlineoverride

Get the number of cells in the topology.

◆ GetNumberOfEdges()

template<vtkm::IdComponent DIMENSION>
vtkm::Id vtkm::cont::CellSetStructured< DIMENSION >::GetNumberOfEdges ( ) const
inlineoverride

◆ GetNumberOfFaces()

template<vtkm::IdComponent DIMENSION>
vtkm::Id vtkm::cont::CellSetStructured< DIMENSION >::GetNumberOfFaces ( ) const
inlineoverride

◆ GetNumberOfPoints()

template<vtkm::IdComponent DIMENSION>
vtkm::Id vtkm::cont::CellSetStructured< DIMENSION >::GetNumberOfPoints ( ) const
inlineoverride

Get the number of points in the topology.

◆ GetNumberOfPointsInCell()

template<vtkm::IdComponent DIMENSION>
vtkm::IdComponent vtkm::cont::CellSetStructured< DIMENSION >::GetNumberOfPointsInCell ( vtkm::Id  = 0) const
inlineoverride

◆ GetPointDimensions()

template<vtkm::IdComponent DIMENSION>
SchedulingRangeType vtkm::cont::CellSetStructured< DIMENSION >::GetPointDimensions ( ) const
inline

Get the dimensions of the points.

◆ GetSchedulingRange()

template<vtkm::IdComponent DIMENSION>
template<typename TopologyElement >
SchedulingRangeType vtkm::cont::CellSetStructured< DIMENSION >::GetSchedulingRange ( TopologyElement  ) const
inline

◆ NewInstance()

template<vtkm::IdComponent DIMENSION>
std::shared_ptr<CellSet> vtkm::cont::CellSetStructured< DIMENSION >::NewInstance ( ) const
inlineoverride

◆ operator=() [1/2]

template<vtkm::IdComponent DIMENSION>
CellSetStructured& vtkm::cont::CellSetStructured< DIMENSION >::operator= ( CellSetStructured< DIMENSION > &&  src)
inlinenoexcept

◆ operator=() [2/2]

template<vtkm::IdComponent DIMENSION>
CellSetStructured& vtkm::cont::CellSetStructured< DIMENSION >::operator= ( const CellSetStructured< DIMENSION > &  src)
inline

◆ PrepareForInput()

template<vtkm::IdComponent DIMENSION>
template<typename VisitTopology , typename IncidentTopology >
ExecConnectivityType<VisitTopology, IncidentTopology> vtkm::cont::CellSetStructured< DIMENSION >::PrepareForInput ( vtkm::cont::DeviceAdapterId  device,
VisitTopology  visitTopology,
IncidentTopology  incidentTopology,
vtkm::cont::Token token 
) const
inline

Prepares the data for a particular device and returns the execution object for it.

Parameters
deviceSpecifies the device on which the cell set will ve available.
visitTopologySpecifies the "visit" topology element. This is the element that will be indexed in the resulting connectivity object. This is typically vtkm::TopologyElementTagPoint or vtkm::TopologyElementTagCell.
incidentTopologySpecifies the "incident" topology element. This is the element that will incident to the elements that are visited. This is typically vtkm::TopologyElementTagPoint or vtkm::TopologyElementTagCell.
tokenProvides a vtkm::cont::Token object that will define the span which the return execution object must be valid.
Returns
A connectivity object that can be used in the execution environment on the specified device.

◆ PrintSummary()

template<vtkm::IdComponent DIMENSION>
void vtkm::cont::CellSetStructured< DIMENSION >::PrintSummary ( std::ostream &  out) const
inlineoverride

◆ ReleaseResourcesExecution()

template<vtkm::IdComponent DIMENSION>
void vtkm::cont::CellSetStructured< DIMENSION >::ReleaseResourcesExecution ( )
inlineoverride

◆ SetGlobalPointDimensions()

template<vtkm::IdComponent DIMENSION>
void vtkm::cont::CellSetStructured< DIMENSION >::SetGlobalPointDimensions ( SchedulingRangeType  dimensions)
inline

◆ SetGlobalPointIndexStart()

template<vtkm::IdComponent DIMENSION>
void vtkm::cont::CellSetStructured< DIMENSION >::SetGlobalPointIndexStart ( SchedulingRangeType  start)
inline

◆ SetPointDimensions()

template<vtkm::IdComponent DIMENSION>
void vtkm::cont::CellSetStructured< DIMENSION >::SetPointDimensions ( SchedulingRangeType  dimensions)
inline

Set the dimensions of the structured array of points.

Member Data Documentation

◆ Dimension

template<vtkm::IdComponent DIMENSION>
const vtkm::IdComponent vtkm::cont::CellSetStructured< DIMENSION >::Dimension = DIMENSION
static

◆ Structure

template<vtkm::IdComponent DIMENSION>
InternalsType vtkm::cont::CellSetStructured< DIMENSION >::Structure
private

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