Viskores  1.0
PathParticle.h
Go to the documentation of this file.
1 //============================================================================
2 // The contents of this file are covered by the Viskores license. See
3 // LICENSE.txt for details.
4 //
5 // By contributing to this file, all contributors agree to the Developer
6 // Certificate of Origin Version 1.1 (DCO 1.1) as stated in DCO.txt.
7 //============================================================================
8 
9 //============================================================================
10 // Copyright (c) Kitware, Inc.
11 // All rights reserved.
12 // See LICENSE.txt for details.
13 //
14 // This software is distributed WITHOUT ANY WARRANTY; without even
15 // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
16 // PURPOSE. See the above copyright notice for more information.
17 //============================================================================
18 
19 #ifndef viskores_filter_flow_PathParticle_h
20 #define viskores_filter_flow_PathParticle_h
21 
25 
26 #include <viskores/filter/flow/worklet/Analysis.h>
27 #include <viskores/filter/flow/worklet/Field.h>
28 #include <viskores/filter/flow/worklet/Termination.h>
29 
30 namespace viskores
31 {
32 namespace filter
33 {
34 namespace flow
35 {
36 
37 class PathParticle;
38 
39 template <>
41 {
43  using TerminationType = viskores::worklet::flow::NormalTermination;
44  using AnalysisType = viskores::worklet::flow::NoAnalysis<ParticleType>;
46  using FieldType = viskores::worklet::flow::VelocityField<ArrayType>;
47 };
48 
50 
53 
54 class VISKORES_FILTER_FLOW_EXPORT PathParticle
56 {
57 public:
63 
64  VISKORES_CONT FieldType GetField(const viskores::cont::DataSet& data) const;
65 
66  VISKORES_CONT TerminationType GetTermination(const viskores::cont::DataSet& data) const;
67 
68  VISKORES_CONT AnalysisType GetAnalysis(const viskores::cont::DataSet& data) const;
69 };
70 
71 }
72 }
73 } // namespace viskores::filter::flow
74 
75 #endif // viskores_filter_flow_PathParticle_h
viskores::filter::flow::FilterParticleAdvectionUnsteadyState
Superclass for filters that operate on flow that changes over time.
Definition: FilterParticleAdvectionUnsteadyState.h:38
viskores::cont::DataSet
Contains and manages the geometric data structures that Viskores operates on.
Definition: DataSet.h:66
viskores::filter::flow::PathParticle::ArrayType
typename FlowTraits< PathParticle >::ArrayType ArrayType
Definition: PathParticle.h:61
viskores::filter::flow::PathParticle::TerminationType
typename FlowTraits< PathParticle >::TerminationType TerminationType
Definition: PathParticle.h:59
viskores::filter::flow::PathParticle::AnalysisType
typename FlowTraits< PathParticle >::AnalysisType AnalysisType
Definition: PathParticle.h:60
viskores::filter::flow::FlowTraits
Definition: FilterParticleAdvectionSteadyState.h:34
viskores::filter::flow::PathParticle
Advect particles in a vector field.
Definition: PathParticle.h:54
viskores::filter::flow::PathParticle::FieldType
typename FlowTraits< PathParticle >::FieldType FieldType
Definition: PathParticle.h:62
viskores::cont::ArrayHandle
Manages an array-worth of data.
Definition: ArrayHandle.h:313
viskores_filter_flow_export.h
VISKORES_CONT
#define VISKORES_CONT
Definition: ExportMacros.h:65
viskores
Groups connected points that have the same field value.
Definition: Atomic.h:27
viskores::Particle
Definition: Particle.h:105
viskores::filter::flow::FlowTraits< PathParticle >::AnalysisType
viskores::worklet::flow::NoAnalysis< ParticleType > AnalysisType
Definition: PathParticle.h:44
viskores::filter::flow::FlowTraits< PathParticle >::TerminationType
viskores::worklet::flow::NormalTermination TerminationType
Definition: PathParticle.h:43
viskores::filter::flow::FlowTraits< PathParticle >::FieldType
viskores::worklet::flow::VelocityField< ArrayType > FieldType
Definition: PathParticle.h:46
viskores::filter::flow::PathParticle::ParticleType
typename FlowTraits< PathParticle >::ParticleType ParticleType
Definition: PathParticle.h:58
FlowTypes.h
FilterParticleAdvectionUnsteadyState.h