VTK-m  2.2
FilterParticleAdvectionUnsteadyState.h
Go to the documentation of this file.
1 //============================================================================
2 // Copyright (c) Kitware, Inc.
3 // All rights reserved.
4 // See LICENSE.txt for details.
5 //
6 // This software is distributed WITHOUT ANY WARRANTY; without even
7 // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
8 // PURPOSE. See the above copyright notice for more information.
9 //============================================================================
10 
11 #ifndef vtk_m_filter_flow_FilterParticleAdvectionUnsteadyState_h
12 #define vtk_m_filter_flow_FilterParticleAdvectionUnsteadyState_h
13 
16 
17 namespace vtkm
18 {
19 namespace filter
20 {
21 namespace flow
22 {
23 
24 template <typename Derived>
25 struct FlowTraits;
26 
29 template <typename Derived>
31 {
32 public:
37 
41  VTKM_CONT void SetPreviousTime(vtkm::FloatDefault t1) { this->Time1 = t1; }
42 
46  VTKM_CONT void SetNextTime(vtkm::FloatDefault t2) { this->Time2 = t2; }
47 
49  VTKM_CONT void SetNextDataSet(const vtkm::cont::DataSet& ds) { this->Input2 = { ds }; }
50 
52  VTKM_CONT void SetNextDataSet(const vtkm::cont::PartitionedDataSet& pds) { this->Input2 = pds; }
53 
54 private:
55  VTKM_CONT FieldType GetField(const vtkm::cont::DataSet& data) const;
56 
57  VTKM_CONT TerminationType GetTermination(const vtkm::cont::DataSet& data) const;
58 
59  VTKM_CONT AnalysisType GetAnalysis(const vtkm::cont::DataSet& data) const;
60 
61  VTKM_CONT vtkm::cont::PartitionedDataSet DoExecutePartitions(
62  const vtkm::cont::PartitionedDataSet& input);
63 
65  vtkm::FloatDefault Time1 = -1;
66  vtkm::FloatDefault Time2 = -1;
67 };
68 
69 }
70 }
71 } // namespace vtkm::filter::flow
72 
73 #endif // vtk_m_filter_flow_FilterParticleAdvectionUnsteadyState_h
vtkm
Groups connected points that have the same field value.
Definition: Atomic.h:19
vtkm::filter::flow::FlowTraits
Definition: FilterParticleAdvectionSteadyState.h:26
vtkm::cont::DataSet
Contains and manages the geometric data structures that VTK-m operates on.
Definition: DataSet.h:57
vtkm::filter::flow::FilterParticleAdvectionUnsteadyState::SetNextDataSet
void SetNextDataSet(const vtkm::cont::PartitionedDataSet &pds)
Specifies the data for the later time step.
Definition: FilterParticleAdvectionUnsteadyState.h:52
vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Pathline >::FieldType
typename FlowTraits< Pathline >::FieldType FieldType
Definition: FilterParticleAdvectionUnsteadyState.h:34
vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Pathline >::TerminationType
typename FlowTraits< Pathline >::TerminationType TerminationType
Definition: FilterParticleAdvectionUnsteadyState.h:35
VTKM_CONT
#define VTKM_CONT
Definition: ExportMacros.h:57
vtkm::filter::flow::FilterParticleAdvectionUnsteadyState::SetNextDataSet
void SetNextDataSet(const vtkm::cont::DataSet &ds)
Specifies the data for the later time step.
Definition: FilterParticleAdvectionUnsteadyState.h:49
vtkm::filter::flow::FilterParticleAdvectionUnsteadyState::SetNextTime
void SetNextTime(vtkm::FloatDefault t2)
Specifies time value for the next data set.
Definition: FilterParticleAdvectionUnsteadyState.h:46
vtkm::filter::flow::FilterParticleAdvection
base class for advecting particles in a vector field.
Definition: FilterParticleAdvection.h:32
VTKM_FILTER_FLOW_EXPORT
#define VTKM_FILTER_FLOW_EXPORT
Definition: vtkm_filter_flow_export.h:44
vtkm::FloatDefault
vtkm::Float32 FloatDefault
The floating point type to use when no other precision is specified.
Definition: Types.h:236
vtkm::filter::flow::FilterParticleAdvectionUnsteadyState::Input2
vtkm::cont::PartitionedDataSet Input2
Definition: FilterParticleAdvectionUnsteadyState.h:64
vtkm::filter::flow::FilterParticleAdvectionUnsteadyState
Superclass for filters that operate on flow that changes over time.
Definition: FilterParticleAdvectionUnsteadyState.h:30
vtkm_filter_flow_export.h
vtkm::filter::flow::FilterParticleAdvectionUnsteadyState::SetPreviousTime
void SetPreviousTime(vtkm::FloatDefault t1)
Specifies time value for the input data set.
Definition: FilterParticleAdvectionUnsteadyState.h:41
vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Pathline >::AnalysisType
typename FlowTraits< Pathline >::AnalysisType AnalysisType
Definition: FilterParticleAdvectionUnsteadyState.h:36
vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Pathline >::ParticleType
typename FlowTraits< Pathline >::ParticleType ParticleType
Definition: FilterParticleAdvectionUnsteadyState.h:33
FilterParticleAdvection.h
vtkm::cont::PartitionedDataSet
Comprises a set of vtkm::cont::DataSet objects.
Definition: PartitionedDataSet.h:26