Alexandria 2.32.0
SDC-CH common library for the Euclid project
Loading...
Searching...
No Matches
Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType > Struct Template Reference
Inheritance diagram for Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType >:
Collaboration diagram for Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType >:

Public Member Functions

 ComputationImpl (BinType &&bin_type)
 ComputationImpl (const ComputationImpl &)=default
const BinStrategy< VarType > & getBinStrategy () const final
std::unique_ptr< ComputationInterfaceclone () const final
template<typename IterType, typename WeightIterType>
void computeBins (IterType begin, IterType end, WeightIterType wbegin)
void clip (VarType min, VarType max) final
std::tuple< VarType, VarType, VarType > getStats () const final
Public Member Functions inherited from Euclid::Histogram::Histogram< VarType, WeightType >::ComputationInterface
virtual ~ComputationInterface ()=default
 ComputationInterface ()
size_t size () const

Public Attributes

BinType m_binning
ssize_t m_clip_left
ssize_t m_clip_right
std::shared_ptr< std::vector< WeightType > > m_counts
Public Attributes inherited from Euclid::Histogram::Histogram< VarType, WeightType >::ComputationInterface
std::shared_ptr< std::vector< WeightType > > m_counts
ssize_t m_clip_left
ssize_t m_clip_right

Detailed Description

template<typename VarType, typename WeightType = float>
template<typename BinType>
struct Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType >

Concrete implementation of ComputationInterface given a BinType

Template Parameters
BinTypeType of the binning strategy

Definition at line 345 of file Histogram.h.

Constructor & Destructor Documentation

◆ ComputationImpl() [1/2]

template<typename VarType, typename WeightType = float>
template<typename BinType>
Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType >::ComputationImpl ( BinType && bin_type)
inlineexplicit

Definition at line 351 of file Histogram.h.

References m_binning.

Referenced by ComputationImpl().

◆ ComputationImpl() [2/2]

template<typename VarType, typename WeightType = float>
template<typename BinType>
Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType >::ComputationImpl ( const ComputationImpl< BinType > & )
default

References ComputationImpl().

Here is the call graph for this function:

Member Function Documentation

◆ clip()

template<typename VarType, typename WeightType>
template<typename BinType>
void Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType >::clip ( VarType min,
VarType max )
finalvirtual

◆ clone()

template<typename VarType, typename WeightType = float>
template<typename BinType>
std::unique_ptr< ComputationInterface > Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType >::clone ( ) const
inlinefinalvirtual

Implements Euclid::Histogram::Histogram< VarType, WeightType >::ComputationInterface.

Definition at line 359 of file Histogram.h.

References Euclid::make_unique().

Here is the call graph for this function:

◆ computeBins()

template<typename VarType, typename WeightType>
template<typename BinType>
template<typename IterType, typename WeightIterType>
void Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType >::computeBins ( IterType begin,
IterType end,
WeightIterType wbegin )

Fill the bin counts

Template Parameters
IterTypeIterator type for both the edges and the values of the variable
WeightIterTypeIterator type for the weights
Parameters
beginBeginning of the data
endEnd of the data
wbeginBeginning of the weights

Definition at line 101 of file ComputationImpl.icpp.

References computeBins(), Euclid::Histogram::computeBinsForwarder(), m_binning, m_clip_left, m_clip_right, m_counts, and Euclid::Histogram::HasComputeBins< BinType, IterType >::value.

Referenced by computeBins().

Here is the call graph for this function:

◆ getBinStrategy()

template<typename VarType, typename WeightType = float>
template<typename BinType>
const BinStrategy< VarType > & Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType >::getBinStrategy ( ) const
inlinefinalvirtual

◆ getStats()

template<typename VarType, typename WeightType>
template<typename BinType>
std::tuple< VarType, VarType, VarType > Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType >::getStats ( ) const
finalvirtual

Member Data Documentation

◆ m_binning

template<typename VarType, typename WeightType = float>
template<typename BinType>
BinType Euclid::Histogram::Histogram< VarType, WeightType >::ComputationImpl< BinType >::m_binning

Definition at line 349 of file Histogram.h.

Referenced by clip(), ComputationImpl(), computeBins(), getBinStrategy(), and getStats().

◆ m_clip_left

template<typename VarType, typename WeightType = float>
template<typename BinType>
ssize_t Euclid::Histogram::Histogram< VarType, WeightType >::ComputationInterface::m_clip_left

Definition at line 319 of file Histogram.h.

Referenced by clip(), computeBins(), and getStats().

◆ m_clip_right

template<typename VarType, typename WeightType = float>
template<typename BinType>
ssize_t Euclid::Histogram::Histogram< VarType, WeightType >::ComputationInterface::m_clip_right

Definition at line 319 of file Histogram.h.

Referenced by clip(), computeBins(), and getStats().

◆ m_counts

template<typename VarType, typename WeightType = float>
template<typename BinType>
std::shared_ptr<std::vector<WeightType> > Euclid::Histogram::Histogram< VarType, WeightType >::ComputationInterface::m_counts

Definition at line 318 of file Histogram.h.

Referenced by computeBins(), and getStats().


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