Utilities for the conversion of trigger gate data formats. More...
#include "icaruscode/PMT/Trigger/Utilities/TrackedTriggerGate.h"#include "sbnobj/ICARUS/PMT/Trigger/Data/OpticalTriggerGate.h"#include <iterator>Go to the source code of this file.
Namespaces | |
| icarus::trigger | |
| icarus::trigger::GateOps | |
| Gate operations expressed as generic functions. | |
Functions | |
Gate operations | |
Currently the following operations are supported:
Operations on more than one gate can take a sequence (begin and end iterators), a collection or an arbitrary number of gates. | |
| template<typename GateObj > | |
| GateObj | icarus::trigger::discriminate (GateObj const &gate, typename GateObj::OpeningCount_t threshold=1U, typename GateObj::OpeningCount_t pass=1U, typename GateObj::OpeningCount_t fail=0U) |
Returns a discriminated version of gate. More... | |
| template<typename BIter , typename EIter > | |
| auto | icarus::trigger::sumGatesSequence (BIter const begin, EIter const end) |
| Sums a sequence of gates. More... | |
| template<typename GateColl > | |
| auto | icarus::trigger::sumGates (GateColl const &gates) |
| Sums all the gates in a collection. More... | |
| template<typename AGate , typename BGate , typename... OTrigGates> | |
| auto | icarus::trigger::sumGates (AGate A, BGate const &B, OTrigGates const &...others) |
| Sums all the specified gates. More... | |
| template<typename BIter , typename EIter > | |
| auto | icarus::trigger::mulGatesSequence (BIter const begin, EIter const end) |
| Multiplies a sequence of gates. More... | |
| template<typename GateColl > | |
| auto | icarus::trigger::mulGates (GateColl const &gates) |
| Multiplies all the gates in a collection. More... | |
| template<typename AGate , typename BGate , typename... OTrigGates> | |
| auto | icarus::trigger::mulGates (AGate A, BGate const &B, OTrigGates const &...others) |
| Multiplies all the specified gates. More... | |
| template<typename BIter , typename EIter > | |
| auto | icarus::trigger::maxGatesSequence (BIter const begin, EIter const end) |
| Computes the gate with the maximum opening of a sequence of gates. More... | |
| template<typename GateColl > | |
| auto | icarus::trigger::maxGates (GateColl const &gates) |
| Computes the gate with the maximum opening of gates from collection. More... | |
| template<typename AGate , typename BGate , typename... OTrigGates> | |
| auto | icarus::trigger::maxGates (AGate A, BGate const &B, OTrigGates const &...others) |
| Computes the gate with the maximum opening of the specified gates. More... | |
| template<typename BIter , typename EIter > | |
| auto | icarus::trigger::minGatesSequence (BIter const begin, EIter const end) |
| Computes the gate with the minimum opening of a sequence of gates. More... | |
| template<typename GateColl > | |
| auto | icarus::trigger::minGates (GateColl const &gates) |
| Computes the gate with the minimum opening of gates from collection. More... | |
| template<typename AGate , typename BGate , typename... OTrigGates> | |
| auto | icarus::trigger::minGates (AGate A, BGate const &B, OTrigGates const &...others) |
| Computes the gate with the minimum opening of the specified gates. More... | |
| template<typename Op , typename AGate , typename BGate , typename... OGates> | |
| AGate | icarus::trigger::OpGates (Op op, AGate A, BGate const &B, OGates const &...others) |
| Applies an operation to two gates. More... | |
| template<typename Op , typename GateColl > | |
| auto | icarus::trigger::OpGateColl (Op op, GateColl const &gates) |
| Computes the result of an operation on all gates from collection. More... | |
| template<typename Op , typename BIter , typename EIter > | |
| auto | icarus::trigger::OpGatesSequence (Op op, BIter const begin, EIter const end) |
| Computes the result of an operation on all gates in the sequence. More... | |
Variables | |
Binary gate operations. | |
The return gate is the same type as the first operand. | |
| constexpr auto | icarus::trigger::GateOps::Min = [](auto A, auto const& B){ A.Min(B); return A; } |
| constexpr auto | icarus::trigger::GateOps::Max = [](auto A, auto const& B){ A.Max(B); return A; } |
| constexpr auto | icarus::trigger::GateOps::Sum = [](auto A, auto const& B){ A.Sum(B); return A; } |
| constexpr auto | icarus::trigger::GateOps::Mul = [](auto A, auto const& B){ A.Mul(B); return A; } |
Utilities for the conversion of trigger gate data formats.
This library is header-only.
Definition in file TriggerGateOperations.h.
1.8.5