Public Member Functions | List of all members
beluga::actions::detail::propagate_base_fn Struct Reference

Implementation detail for a propagate range adaptor object. More...

#include <propagate.hpp>

Inheritance diagram for beluga::actions::detail::propagate_base_fn:
Inheritance graph
[legend]

Public Member Functions

template<class ExecutionPolicy , class Range , class StateSamplingFunction , std::enable_if_t< std::is_execution_policy_v< std::decay_t< ExecutionPolicy >>, int > = 0, std::enable_if_t< ranges::range< Range >, int > = 0>
constexpr auto operator() (ExecutionPolicy &&policy, Range &range, StateSamplingFunction fn) const -> Range &
 Overload that implements the propagate algorithm. More...
 
template<class ExecutionPolicy , class StateSamplingFunction , std::enable_if_t< std::is_execution_policy_v< ExecutionPolicy >, int > = 0>
constexpr auto operator() (ExecutionPolicy policy, StateSamplingFunction fn) const
 Overload that returns a view closure to compose with other views. More...
 
template<class Range , class StateSamplingFunction , class ExecutionPolicy , std::enable_if_t< ranges::range< Range >, int > = 0, std::enable_if_t< std::is_execution_policy_v< ExecutionPolicy >, int > = 0>
constexpr auto operator() (Range &&range, StateSamplingFunction fn, ExecutionPolicy policy) const -> Range &
 Overload that re-orders arguments from a view closure. More...
 

Detailed Description

Implementation detail for a propagate range adaptor object.

Definition at line 39 of file propagate.hpp.

Member Function Documentation

◆ operator()() [1/3]

template<class ExecutionPolicy , class Range , class StateSamplingFunction , std::enable_if_t< std::is_execution_policy_v< std::decay_t< ExecutionPolicy >>, int > = 0, std::enable_if_t< ranges::range< Range >, int > = 0>
constexpr auto beluga::actions::detail::propagate_base_fn::operator() ( ExecutionPolicy &&  policy,
Range &  range,
StateSamplingFunction  fn 
) const -> Range&
inlineconstexpr

Overload that implements the propagate algorithm.

Template Parameters
ExecutionPolicyAn execution policy.
RangeAn input range of particles.
StateSamplingFunctionA callable that samples a posterior state given a prior state. Callables satisfying Beluga named requirements: StateSamplingFunction are also supported. This will be bound to the default random number generator for ranges.
Parameters
policyThe execution policy to use.
rangeAn existing range of particles to apply this action to.
fnA state sampling function instance.

Definition at line 57 of file propagate.hpp.

◆ operator()() [2/3]

template<class ExecutionPolicy , class StateSamplingFunction , std::enable_if_t< std::is_execution_policy_v< ExecutionPolicy >, int > = 0>
constexpr auto beluga::actions::detail::propagate_base_fn::operator() ( ExecutionPolicy  policy,
StateSamplingFunction  fn 
) const
inlineconstexpr

Overload that returns a view closure to compose with other views.

Definition at line 97 of file propagate.hpp.

◆ operator()() [3/3]

template<class Range , class StateSamplingFunction , class ExecutionPolicy , std::enable_if_t< ranges::range< Range >, int > = 0, std::enable_if_t< std::is_execution_policy_v< ExecutionPolicy >, int > = 0>
constexpr auto beluga::actions::detail::propagate_base_fn::operator() ( Range &&  range,
StateSamplingFunction  fn,
ExecutionPolicy  policy 
) const -> Range&
inlineconstexpr

Overload that re-orders arguments from a view closure.

Definition at line 88 of file propagate.hpp.


The documentation for this struct was generated from the following file:


beluga
Author(s):
autogenerated on Tue Jul 16 2024 02:59:54