mirror of
https://gitlab.kitware.com/vtk/vtk-m
synced 2024-09-16 17:22:55 +00:00
use pimpl pattern for osc worklet
This commit is contained in:
parent
b4bb02830a
commit
6ffb75c5a5
@ -24,7 +24,7 @@ Oscillator::Oscillator(vtkm::Id3 dims)
|
||||
//-----------------------------------------------------------------------------
|
||||
void Oscillator::SetTime(vtkm::Float64 time)
|
||||
{
|
||||
this->Worklet.SetTime(time);
|
||||
this->Worklet->SetTime(time);
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
@ -35,7 +35,7 @@ void Oscillator::AddPeriodic(vtkm::Float64 x,
|
||||
vtkm::Float64 omega,
|
||||
vtkm::Float64 zeta)
|
||||
{
|
||||
this->Worklet.AddPeriodic(x, y, z, radius, omega, zeta);
|
||||
this->Worklet->AddPeriodic(x, y, z, radius, omega, zeta);
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
@ -46,7 +46,7 @@ void Oscillator::AddDamped(vtkm::Float64 x,
|
||||
vtkm::Float64 omega,
|
||||
vtkm::Float64 zeta)
|
||||
{
|
||||
this->Worklet.AddDamped(x, y, z, radius, omega, zeta);
|
||||
this->Worklet->AddDamped(x, y, z, radius, omega, zeta);
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
@ -57,7 +57,7 @@ void Oscillator::AddDecaying(vtkm::Float64 x,
|
||||
vtkm::Float64 omega,
|
||||
vtkm::Float64 zeta)
|
||||
{
|
||||
this->Worklet.AddDecaying(x, y, z, radius, omega, zeta);
|
||||
this->Worklet->AddDecaying(x, y, z, radius, omega, zeta);
|
||||
}
|
||||
|
||||
|
||||
@ -85,7 +85,7 @@ vtkm::cont::DataSet Oscillator::Execute() const
|
||||
vtkm::cont::ArrayHandle<vtkm::Float64> outArray;
|
||||
//todo, we need to use the policy to determine the valid conversions
|
||||
//that the dispatcher should do
|
||||
this->Invoke(this->Worklet, coordinates, outArray);
|
||||
this->Invoke(*(this->Worklet), coordinates, outArray);
|
||||
dataSet.AddField(vtkm::cont::make_FieldPoint("oscillating", outArray));
|
||||
|
||||
return dataSet;
|
||||
|
@ -64,7 +64,8 @@ public:
|
||||
|
||||
private:
|
||||
vtkm::Id3 Dims;
|
||||
vtkm::worklet::OscillatorSource Worklet;
|
||||
//vtkm::worklet::OscillatorSource Worklet;
|
||||
std::unique_ptr<vtkm::worklet::OscillatorSource> Worklet;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user