ExternalFaces worklet is not templated on device adapter.
This should help reduce the amount of code generation, when building the ExternalFaces worklet for all device adapters.
This commit is contained in:
parent
02d10e38c4
commit
dbee92752e
@ -46,7 +46,6 @@ namespace vtkm
|
||||
namespace worklet
|
||||
{
|
||||
|
||||
template<typename DeviceAdapter>
|
||||
struct ExternalFaces
|
||||
{
|
||||
//Unary predicate operator
|
||||
@ -239,14 +238,15 @@ public:
|
||||
/// \param output_pointId3Array: Output point-ids
|
||||
template <typename StorageT,
|
||||
typename StorageU,
|
||||
typename StorageV>
|
||||
typename StorageV,
|
||||
typename DeviceAdapter>
|
||||
void run(const vtkm::cont::ArrayHandle<vtkm::UInt8, StorageT> shapes,
|
||||
const vtkm::cont::ArrayHandle<vtkm::IdComponent, StorageU> numIndices,
|
||||
const vtkm::cont::ArrayHandle<vtkm::Id, StorageV> conn,
|
||||
vtkm::cont::ArrayHandle<vtkm::UInt8, StorageT> &output_shapes,
|
||||
vtkm::cont::ArrayHandle<vtkm::IdComponent, StorageU> &output_numIndices,
|
||||
vtkm::cont::ArrayHandle<vtkm::Id, StorageV> &output_conn
|
||||
)
|
||||
vtkm::cont::ArrayHandle<vtkm::Id, StorageV> &output_conn,
|
||||
DeviceAdapter)
|
||||
{
|
||||
//Create a worklet to map the number of faces to each cell
|
||||
vtkm::cont::ArrayHandle<vtkm::Id> facesPerCell;
|
||||
|
@ -44,13 +44,14 @@ vtkm::cont::DataSet RunExternalFaces(vtkm::cont::DataSet &ds)
|
||||
vtkm::cont::ArrayHandle<vtkm::Id> output_conn;
|
||||
|
||||
//Run the External Faces worklet
|
||||
vtkm::worklet::ExternalFaces<VTKM_DEFAULT_DEVICE_ADAPTER_TAG>().run(
|
||||
vtkm::worklet::ExternalFaces().run(
|
||||
shapes,
|
||||
numIndices,
|
||||
conn,
|
||||
output_shapes,
|
||||
output_numIndices,
|
||||
output_conn);
|
||||
output_conn,
|
||||
VTKM_DEFAULT_DEVICE_ADAPTER_TAG());
|
||||
|
||||
vtkm::cont::DataSet new_ds;
|
||||
for(vtkm::IdComponent i=0; i < ds.GetNumberOfCoordinateSystems(); ++i)
|
||||
|
Loading…
Reference in New Issue
Block a user