Viskores
1.0
viskores
filter
flow
Pathline.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_Pathline_h
20
#define viskores_filter_flow_Pathline_h
21
22
#include <
viskores/filter/flow/FilterParticleAdvectionUnsteadyState.h
>
23
#include <
viskores/filter/flow/FlowTypes.h
>
24
#include <
viskores/filter/flow/viskores_filter_flow_export.h
>
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
Pathline;
38
39
template
<>
40
struct
FlowTraits
<
Pathline
>
41
{
42
using
ParticleType
=
viskores::Particle
;
43
using
TerminationType
= viskores::worklet::flow::NormalTermination;
44
using
AnalysisType
= viskores::worklet::flow::StreamlineAnalysis<ParticleType>;
45
using
ArrayType
=
viskores::cont::ArrayHandle<viskores::Vec3f>
;
46
using
FieldType
= viskores::worklet::flow::VelocityField<ArrayType>;
47
};
48
57
class
VISKORES_FILTER_FLOW_EXPORT
Pathline
58
:
public
viskores::filter::flow::FilterParticleAdvectionUnsteadyState
<Pathline>
59
{
60
public
:
61
using
ParticleType
=
typename
FlowTraits<Pathline>::ParticleType
;
62
using
TerminationType
=
typename
FlowTraits<Pathline>::TerminationType
;
63
using
AnalysisType
=
typename
FlowTraits<Pathline>::AnalysisType
;
64
using
ArrayType
=
typename
FlowTraits<Pathline>::ArrayType
;
65
using
FieldType
=
typename
FlowTraits<Pathline>::FieldType
;
66
67
VISKORES_CONT
FieldType
GetField(
const
viskores::cont::DataSet
& data)
const
;
68
69
VISKORES_CONT
TerminationType
GetTermination(
const
viskores::cont::DataSet
& data)
const
;
70
71
VISKORES_CONT
AnalysisType
GetAnalysis(
const
viskores::cont::DataSet
& data)
const
;
72
};
73
74
}
75
}
76
}
// namespace viskores::filter::flow
77
78
#endif // viskores_filter_flow_Pathline_h
viskores::filter::flow::Pathline::ParticleType
typename FlowTraits< Pathline >::ParticleType ParticleType
Definition:
Pathline.h:61
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::Pathline::ArrayType
typename FlowTraits< Pathline >::ArrayType ArrayType
Definition:
Pathline.h:64
viskores::filter::flow::Pathline::TerminationType
typename FlowTraits< Pathline >::TerminationType TerminationType
Definition:
Pathline.h:62
viskores::filter::flow::FlowTraits
Definition:
FilterParticleAdvectionSteadyState.h:34
viskores::cont::ArrayHandle
Manages an array-worth of data.
Definition:
ArrayHandle.h:313
viskores_filter_flow_export.h
viskores::filter::flow::FlowTraits< Pathline >::TerminationType
viskores::worklet::flow::NormalTermination TerminationType
Definition:
Pathline.h:43
viskores::filter::flow::Pathline::FieldType
typename FlowTraits< Pathline >::FieldType FieldType
Definition:
Pathline.h:65
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::Pathline::AnalysisType
typename FlowTraits< Pathline >::AnalysisType AnalysisType
Definition:
Pathline.h:63
viskores::filter::flow::FlowTraits< Pathline >::AnalysisType
viskores::worklet::flow::StreamlineAnalysis< ParticleType > AnalysisType
Definition:
Pathline.h:44
viskores::filter::flow::FlowTraits< Pathline >::FieldType
viskores::worklet::flow::VelocityField< ArrayType > FieldType
Definition:
Pathline.h:46
viskores::filter::flow::Pathline
Advect particles in a time-varying vector field and display the path they take.
Definition:
Pathline.h:57
FlowTypes.h
FilterParticleAdvectionUnsteadyState.h
Generated by
1.8.17