diff --git a/vtkm/filter/FilterDataSet.hxx b/vtkm/filter/FilterDataSet.hxx index 315d02360..767df827b 100644 --- a/vtkm/filter/FilterDataSet.hxx +++ b/vtkm/filter/FilterDataSet.hxx @@ -52,7 +52,7 @@ template inline VTKM_CONT ResultDataSet FilterDataSet::Execute(const vtkm::cont::DataSet &input) { - return this->Execute(input, vtkm::filter::DefaultPolicy()); + return this->Execute(input, vtkm::filter::PolicyDefault()); } //----------------------------------------------------------------------------- @@ -118,7 +118,7 @@ inline VTKM_CONT bool FilterDataSet::MapFieldOntoOutput(ResultDataSet& result, const vtkm::cont::Field& field) { - return this->MapFieldOntoOutput(result, field, vtkm::filter::DefaultPolicy()); + return this->MapFieldOntoOutput(result, field, vtkm::filter::PolicyDefault()); } //----------------------------------------------------------------------------- diff --git a/vtkm/filter/FilterDataSetWithField.hxx b/vtkm/filter/FilterDataSetWithField.hxx index cbbda3b13..9282487f1 100644 --- a/vtkm/filter/FilterDataSetWithField.hxx +++ b/vtkm/filter/FilterDataSetWithField.hxx @@ -55,7 +55,7 @@ ResultDataSet FilterDataSetWithField::Execute(const vtkm::cont::DataSet { return this->Execute(input, input.GetField(inFieldName), - vtkm::filter::DefaultPolicy()); + vtkm::filter::PolicyDefault()); } //----------------------------------------------------------------------------- @@ -66,7 +66,7 @@ ResultDataSet FilterDataSetWithField::Execute(const vtkm::cont::DataSet { return this->Execute(input, field, - vtkm::filter::DefaultPolicy()); + vtkm::filter::PolicyDefault()); } //----------------------------------------------------------------------------- @@ -77,7 +77,7 @@ ResultDataSet FilterDataSetWithField::Execute(const vtkm::cont::DataSet { return this->Execute(input, field, - vtkm::filter::DefaultPolicy()); + vtkm::filter::PolicyDefault()); } //----------------------------------------------------------------------------- @@ -179,7 +179,7 @@ inline VTKM_CONT bool FilterDataSetWithField::MapFieldOntoOutput(ResultDataSet& result, const vtkm::cont::Field& field) { - return this->MapFieldOntoOutput(result, field, vtkm::filter::DefaultPolicy()); + return this->MapFieldOntoOutput(result, field, vtkm::filter::PolicyDefault()); } //----------------------------------------------------------------------------- diff --git a/vtkm/filter/FilterField.hxx b/vtkm/filter/FilterField.hxx index b539d1931..4c0a22b2d 100644 --- a/vtkm/filter/FilterField.hxx +++ b/vtkm/filter/FilterField.hxx @@ -43,7 +43,7 @@ ResultField FilterField::Execute(const vtkm::cont::DataSet &input, { return this->Execute(input, input.GetField(inFieldName), - vtkm::filter::DefaultPolicy()); + vtkm::filter::PolicyDefault()); } //----------------------------------------------------------------------------- @@ -54,7 +54,7 @@ ResultField FilterField::Execute(const vtkm::cont::DataSet &input, { return this->Execute(input, field, - vtkm::filter::DefaultPolicy()); + vtkm::filter::PolicyDefault()); } //----------------------------------------------------------------------------- @@ -65,7 +65,7 @@ ResultField FilterField::Execute(const vtkm::cont::DataSet &input, { return this->Execute(input, field, - vtkm::filter::DefaultPolicy()); + vtkm::filter::PolicyDefault()); } //----------------------------------------------------------------------------- diff --git a/vtkm/filter/PolicyBase.h b/vtkm/filter/PolicyBase.h index 3fbd6a2ac..32b4e1309 100644 --- a/vtkm/filter/PolicyBase.h +++ b/vtkm/filter/PolicyBase.h @@ -21,9 +21,14 @@ #ifndef vtk_m_filter_PolicyBase_h #define vtk_m_filter_PolicyBase_h +#include + +#include #include +#include #include #include +#include #include @@ -31,10 +36,20 @@ namespace vtkm { namespace filter { template -class PolicyBase +struct PolicyBase { + typedef VTKM_DEFAULT_TYPE_LIST_TAG FieldTypeList; + typedef VTKM_DEFAULT_STORAGE_LIST_TAG FieldStorageList; + typedef vtkm::cont::CellSetListTagStructured StructuredCellSetList; + typedef vtkm::cont::CellSetListTagUnstructured UnstructuredCellSetList; + typedef VTKM_DEFAULT_CELL_SET_LIST_TAG AllCellSetList; + typedef VTKM_DEFAULT_COORDINATE_SYSTEM_TYPE_LIST_TAG CoordinateTypeList; + typedef VTKM_DEFAULT_COORDINATE_SYSTEM_STORAGE_LIST_TAG CoordinateStorageList; + + // List of backends to try in sequence (if one fails, the next is attempted). + typedef VTKM_DEFAULT_DEVICE_ADAPTER_LIST_TAG DeviceAdapterList; }; diff --git a/vtkm/filter/PolicyDefault.h b/vtkm/filter/PolicyDefault.h index feab2f786..014bcf076 100644 --- a/vtkm/filter/PolicyDefault.h +++ b/vtkm/filter/PolicyDefault.h @@ -18,37 +18,21 @@ // this software. //============================================================================ -#ifndef vtk_m_filter_DefaultPolicy_h -#define vtk_m_filter_DefaultPolicy_h +#ifndef vtk_m_filter_PolicyDefault_h +#define vtk_m_filter_PolicyDefault_h #include -#include -#include -#include -#include namespace vtkm { namespace filter { -class DefaultPolicy : public vtkm::filter::PolicyBase< DefaultPolicy > +struct PolicyDefault : vtkm::filter::PolicyBase< PolicyDefault > { -public: - typedef VTKM_DEFAULT_TYPE_LIST_TAG FieldTypeList; - typedef VTKM_DEFAULT_STORAGE_LIST_TAG FieldStorageList; - - typedef vtkm::cont::CellSetListTagStructured StructuredCellSetList; - typedef vtkm::cont::CellSetListTagUnstructured UnstructuredCellSetList; - typedef VTKM_DEFAULT_CELL_SET_LIST_TAG AllCellSetList; - - typedef VTKM_DEFAULT_COORDINATE_SYSTEM_TYPE_LIST_TAG CoordinateTypeList; - typedef VTKM_DEFAULT_COORDINATE_SYSTEM_STORAGE_LIST_TAG CoordinateStorageList; - - // List of backends to try in sequence (if one fails, the next is attempted). - typedef VTKM_DEFAULT_DEVICE_ADAPTER_LIST_TAG DeviceAdapterList; + // Inherit defaults from PolicyBase }; } } -#endif //vtk_m_filter_DefaultPolicy_h +#endif //vtk_m_filter_PolicyDefault_h diff --git a/vtkm/filter/testing/UnitTestMarchingCubesFilter.cxx b/vtkm/filter/testing/UnitTestMarchingCubesFilter.cxx index 8ab3325e8..b1df29588 100644 --- a/vtkm/filter/testing/UnitTestMarchingCubesFilter.cxx +++ b/vtkm/filter/testing/UnitTestMarchingCubesFilter.cxx @@ -183,7 +183,7 @@ public: vtkm::cont::DataSet Make3DRadiantDataSet(vtkm::IdComponent dim=5); }; -class RadiantDataSetPolicy : public vtkm::filter::PolicyBase< RadiantDataSetPolicy > +class PolicyRadiantDataSet : public vtkm::filter::PolicyBase< PolicyRadiantDataSet > { typedef MakeRadiantDataSet::DataArrayHandle DataHandleType; typedef MakeRadiantDataSet::ConnectivityArrayHandle CountingHandleType; @@ -200,17 +200,11 @@ public: TransformHandleType::StorageTag> {}; typedef TypeListTagRadiantTypes FieldStorageList; - typedef vtkm::filter::DefaultPolicy::FieldTypeList FieldTypeList; struct TypeListTagRadiantCellSetTypes : vtkm::ListTagBase< MakeRadiantDataSet::CellSet > {}; typedef TypeListTagRadiantCellSetTypes AllCellSetList; - - typedef vtkm::filter::DefaultPolicy::CoordinateTypeList CoordinateTypeList; - typedef vtkm::filter::DefaultPolicy::CoordinateStorageList CoordinateStorageList; - - typedef vtkm::filter::DefaultPolicy::DeviceAdapterList DeviceAdapterList; }; inline vtkm::cont::DataSet MakeRadiantDataSet::Make3DRadiantDataSet(vtkm::IdComponent dim) @@ -346,13 +340,13 @@ void TestMarchingCubesCustomPolicy() //We specify a custom execution policy here, since the contourField is a //custom field type - result = mc.Execute( dataSet, contourField, RadiantDataSetPolicy() ); + result = mc.Execute( dataSet, contourField, PolicyRadiantDataSet() ); //Map a field onto the resulting dataset vtkm::cont::Field projectedField = dataSet.GetField("distanceToOther"); - mc.MapFieldOntoOutput(result, projectedField, RadiantDataSetPolicy()); - mc.MapFieldOntoOutput(result, contourField, RadiantDataSetPolicy()); + mc.MapFieldOntoOutput(result, projectedField, PolicyRadiantDataSet()); + mc.MapFieldOntoOutput(result, contourField, PolicyRadiantDataSet()); const vtkm::cont::DataSet& outputData = result.GetDataSet(); VTKM_TEST_ASSERT(outputData.GetNumberOfCellSets() == 1, diff --git a/vtkm/filter/testing/UnitTestPointElevationFilter.cxx b/vtkm/filter/testing/UnitTestPointElevationFilter.cxx index c35be4041..6f1019603 100644 --- a/vtkm/filter/testing/UnitTestPointElevationFilter.cxx +++ b/vtkm/filter/testing/UnitTestPointElevationFilter.cxx @@ -125,7 +125,7 @@ void TestPointElevationWithPolicy() vtkm::filter::ResultField result; - vtkm::filter::DefaultPolicy p; + vtkm::filter::PolicyDefault p; result = filter.Execute(inputData, inputData.GetCoordinateSystem(), p);