ForwardTransform interface works. Maybe to give filters a class?
This commit is contained in:
parent
765192e4e0
commit
68bd1d023b
@ -64,8 +64,8 @@ public:
|
||||
{
|
||||
public:
|
||||
typedef void ControlSignature(WholeArrayIn<ScalarAll>, // sigIn
|
||||
WholeArrayIn<vtkm::Float64>, // lowFilter
|
||||
WholeArrayIn<vtkm::Float64>, // highFilter
|
||||
WholeArrayIn<Scalar>, // lowFilter
|
||||
WholeArrayIn<Scalar>, // highFilter
|
||||
FieldOut<ScalarAll>); // cA in even indices,
|
||||
// cD in odd indices
|
||||
typedef void ExecutionSignature(_1, _2, _3, _4, WorkIndex);
|
||||
@ -93,14 +93,14 @@ public:
|
||||
OutputCoeffType &coeffOut,
|
||||
const vtkm::Id &workIndex) const
|
||||
{
|
||||
vtkm::Float64 tmp = static_cast<vtkm::Float64>(signalIn.Get(workIndex));
|
||||
vtkm::Float64 tmp = static_cast<vtkm::Float64>(signalIn.Get( workIndex ));
|
||||
if( workIndex % 2 == 0 ) // calculate cA, approximate coeffs
|
||||
{
|
||||
coeffOut = static_cast<OutputCoeffType>( tmp + lowFilter.Get(0) );
|
||||
coeffOut = static_cast<OutputCoeffType>( tmp + lowFilter.Get( workIndex/2 ) );
|
||||
}
|
||||
else // calculate cD, detail coeffs
|
||||
{
|
||||
coeffOut = static_cast<OutputCoeffType>( tmp + highFilter.Get(0) );
|
||||
coeffOut = static_cast<OutputCoeffType>( tmp + highFilter.Get( (workIndex-1)/2 ) );
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -43,11 +43,11 @@ void TestWavelets()
|
||||
|
||||
// make two filter array handles
|
||||
vtkm::cont::ArrayHandle<vtkm::Float64> lowFilter =
|
||||
// vtkm::cont::make_ArrayHandle(vtkm::worklet::internal::hm4_44, 9);
|
||||
vtkm::cont::make_ArrayHandle( tmpVector );
|
||||
vtkm::cont::make_ArrayHandle(vtkm::worklet::internal::hm4_44, 9);
|
||||
// vtkm::cont::make_ArrayHandle( tmpVector );
|
||||
vtkm::cont::ArrayHandle<vtkm::Float64> highFilter =
|
||||
// vtkm::cont::make_ArrayHandle(vtkm::worklet::internal::h4, 9);
|
||||
vtkm::cont::make_ArrayHandle( tmpVector );
|
||||
vtkm::cont::make_ArrayHandle(vtkm::worklet::internal::h4, 9);
|
||||
// vtkm::cont::make_ArrayHandle( tmpVector );
|
||||
|
||||
|
||||
vtkm::worklet::Wavelets::ForwardTransform forwardTransform;
|
||||
@ -62,7 +62,9 @@ void TestWavelets()
|
||||
|
||||
for (vtkm::Id i = 0; i < outputArray1.GetNumberOfValues(); ++i)
|
||||
{
|
||||
std::cout<< outputArray1.GetPortalConstControl().Get(i) << std::endl;
|
||||
std::cout << outputArray1.GetPortalConstControl().Get(i) << ", ";
|
||||
if( i % 2 != 0 )
|
||||
std::cout << std::endl;
|
||||
// << outputArray2.GetPortalConstControl().Get(i) << std::endl;
|
||||
// VTKM_TEST_ASSERT(
|
||||
// test_equal( output1DArray.GetPortalConstControl().Get(i),
|
||||
|
Loading…
Reference in New Issue
Block a user