add changelog

This commit is contained in:
Li-Ta Lo 2021-12-15 16:29:38 -07:00
parent 08c1b5a113
commit a3c4460077
3 changed files with 22 additions and 2 deletions

@ -0,0 +1,18 @@
## NewFilterField
As part of the New Filter Interface Design, `FilterField`, `FilterDataSet`
and `FilterDataSetWithField` are now refactored into a single
`NewFilterField`. A `NewFilterField` takes an input `DataSet` with some
`Fields`, operates on the input `CellSet` and/or `Field` and generates an
output DataSet, possibly with a new `CellSet` and/or `Field`.
Unlike the old `FilterField`, `NewFilterField` can support arbitrary number
of *active* `Field`s. They are set by the extended `SetActiveField` method
which now also takes an integer index.
`SupportedType` and `Policy` are no longer supported or needed by
`NewFilterField`. Implementations are given full responsibility of extracting
an `ArrayHandle` with proper value and storage type list from an input `Field`
(through a variant of `CastAndCall`). Automatic type conversion from unsupported
value types to `FloatDefault` is also added to UnknownArrayHandle. See
`DotProduct::DoExecute` for an example on how to use the new facility.

@ -85,6 +85,8 @@ public:
return this->UseCoordinateSystemAsField[index];
}
//@}
protected:
VTKM_CONT
const vtkm::cont::Field& GetFieldFromDataSet(const vtkm::cont::DataSet& input) const
{

@ -44,7 +44,7 @@ namespace filter
namespace vector_calculus
{
VTKM_CONT_EXPORT DotProduct::DotProduct()
VTKM_CONT DotProduct::DotProduct()
{
this->SetOutputFieldName("dotproduct");
}
@ -82,7 +82,7 @@ struct ResolveTypeFunctor
}
};
VTKM_CONT_EXPORT vtkm::cont::DataSet DotProduct::DoExecute(const vtkm::cont::DataSet& inDataSet)
VTKM_CONT vtkm::cont::DataSet DotProduct::DoExecute(const vtkm::cont::DataSet& inDataSet)
{
const auto& primaryArray = this->GetFieldFromDataSet(inDataSet).GetData();