LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
geo::part::details::PartitionSorterByAreaRangeLower< Range > Struct Template Reference

Ordering class to sort partition by specified range (lower boundary). More...

#include "Partitions.h"

Public Types

using Sorter_t = PartitionSorterByAreaRangeLower< Range >
 
using KeyExtractor_t = PartitionRangeLowerBoundExtractor< Range >
 
using Key_t = decltype(Sorter_t::key(std::declval< PartitionBase >()))
 Type of sorting key. In short: double. More...
 

Public Member Functions

template<typename A , typename B >
bool operator() (A const &a, B const &b) const
 

Static Public Member Functions

template<typename T >
static auto key (T const &obj)
 
static Key_t key (Key_t k)
 
static bool sortKey (Key_t a, Key_t b)
 

Static Public Attributes

static constexpr auto range = Range
 

Detailed Description

template<PartitionBase::AreaRangeMember_t Range>
struct geo::part::details::PartitionSorterByAreaRangeLower< Range >

Ordering class to sort partition by specified range (lower boundary).

Definition at line 71 of file Partitions.h.

Member Typedef Documentation

template<PartitionBase::AreaRangeMember_t Range>
using geo::part::details::PartitionSorterByAreaRangeLower< Range >::Key_t = decltype(Sorter_t::key(std::declval<PartitionBase>()))

Type of sorting key. In short: double.

Definition at line 690 of file Partitions.h.

template<PartitionBase::AreaRangeMember_t Range>
using geo::part::details::PartitionSorterByAreaRangeLower< Range >::KeyExtractor_t = PartitionRangeLowerBoundExtractor<Range>

Definition at line 679 of file Partitions.h.

template<PartitionBase::AreaRangeMember_t Range>
using geo::part::details::PartitionSorterByAreaRangeLower< Range >::Sorter_t = PartitionSorterByAreaRangeLower<Range>

Definition at line 677 of file Partitions.h.

Member Function Documentation

template<PartitionBase::AreaRangeMember_t Range>
template<typename T >
static auto geo::part::details::PartitionSorterByAreaRangeLower< Range >::key ( T const &  obj)
inlinestatic

Definition at line 684 of file Partitions.h.

685  {
686  return KeyExtractor_t()(obj);
687  }
PartitionRangeLowerBoundExtractor< Range > KeyExtractor_t
Definition: Partitions.h:679
template<PartitionBase::AreaRangeMember_t Range>
static Key_t geo::part::details::PartitionSorterByAreaRangeLower< Range >::key ( Key_t  k)
inlinestatic

Definition at line 692 of file Partitions.h.

692 { return k; } // shortcut
template<PartitionBase::AreaRangeMember_t Range>
template<typename A , typename B >
bool geo::part::details::PartitionSorterByAreaRangeLower< Range >::operator() ( A const &  a,
B const &  b 
) const
inline

Definition at line 696 of file Partitions.h.

697  {
698  return sortKey(key(a), key(b));
699  }
template<PartitionBase::AreaRangeMember_t Range>
static bool geo::part::details::PartitionSorterByAreaRangeLower< Range >::sortKey ( Key_t  a,
Key_t  b 
)
inlinestatic

Definition at line 693 of file Partitions.h.

693 { return a < b; }

Member Data Documentation

template<PartitionBase::AreaRangeMember_t Range>
constexpr auto geo::part::details::PartitionSorterByAreaRangeLower< Range >::range = Range
static

Definition at line 681 of file Partitions.h.


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