Hammer  1.0.0
Helicity Amplitude Module for Matrix Element Reweighting
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Hammer::MultiDimensional::BinnedIndexing< BasicIndexing > Class Template Reference

#include <BinnedIndexing.hh>

+ Inheritance diagram for Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >:
+ Collaboration diagram for Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >:

Public Member Functions

 BinnedIndexing ()
 
 BinnedIndexing (IndexList dimensions, BinEdgeList edges, bool hasUnderOverFlow)
 
 BinnedIndexing (IndexList dimensions, BinRangeList ranges, bool hasUnderOverFlow)
 
 BinnedIndexing (BinEdgeList edges, bool hasUnderOverFlow)
 
 BinnedIndexing (const BinnedIndexing &)=default
 
 BinnedIndexing (BinnedIndexing &&)=default
 
BinnedIndexingoperator= (const BinnedIndexing &)=default
 
BinnedIndexingoperator= (BinnedIndexing &&)=default
 
 ~BinnedIndexing () noexcept=default
 
const BinEdgeListedges () const
 get the labels of all the indices at once More...
 
const BinValueedge (IndexType pos) const
 
IndexList valueToPos (const BinValue &point) const
 
bool isValid (const BinValue &point) const
 
BinRangeList binEdges (IndexList position) const
 
BinRange binEdge (IndexType position, IndexType coord) const
 
bool isSameBinShape (const BinEdgeList &otherEdges, const IndexList &otherIndices, bool otherUnderOverFlow) const
 
bool isSameBinShape (const BinRangeList &otherRanges, const IndexList &otherIndices, bool otherUnderOverFlow) const
 
template<typename S >
bool isSameBinShape (const BinnedIndexing< S > &other) const
 
bool hasUnderOverFlow () const
 
BasicIndexing::StrideMap getBinStrides (const UniqueIndexList &positions) const
 

Private Member Functions

bool isValid () const
 
void fillEdges (const BinRangeList &ranges)
 

Static Private Member Functions

static IndexList processEdges (const BinEdgeList &edges, bool hasUnderOverFlow)
 
static IndexList processRanges (const IndexList &dimensions, bool hasUnderOverFlow)
 

Private Attributes

BinEdgeList _edges
 the labels of each tensor index More...
 
bool _hasUnderOverFlow
 

Detailed Description

template<class BasicIndexing>
class Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >

Definition at line 28 of file BinnedIndexing.hh.

Constructor & Destructor Documentation

Definition at line 27 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::BinnedIndexing ( IndexList  dimensions,
BinEdgeList  edges,
bool  hasUnderOverFlow 
)

Definition at line 32 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::BinnedIndexing ( IndexList  dimensions,
BinRangeList  ranges,
bool  hasUnderOverFlow 
)

Definition at line 44 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::BinnedIndexing ( BinEdgeList  edges,
bool  hasUnderOverFlow 
)

Definition at line 51 of file BinnedIndexingDefs.hh.

template<class BasicIndexing>
Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::BinnedIndexing ( const BinnedIndexing< BasicIndexing > &  )
default
template<class BasicIndexing>
Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::~BinnedIndexing ( )
defaultnoexcept

Member Function Documentation

template<class BasicIndexing >
BinRange Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::binEdge ( IndexType  position,
IndexType  coord 
) const

Definition at line 111 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
BinRangeList Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::binEdges ( IndexList  position) const

Definition at line 88 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
const BinValue & Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::edge ( IndexType  pos) const

Definition at line 63 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
const BinEdgeList & Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::edges ( ) const

get the labels of all the indices at once

Returns
the list of labels

Definition at line 58 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
void Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::fillEdges ( const BinRangeList ranges)
private

Definition at line 182 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
BasicIndexing::StrideMap Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::getBinStrides ( const UniqueIndexList positions) const

Definition at line 238 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
bool Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::hasUnderOverFlow ( ) const

Definition at line 233 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
bool Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::isSameBinShape ( const BinEdgeList otherEdges,
const IndexList otherIndices,
bool  otherUnderOverFlow 
) const

Definition at line 129 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
bool Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::isSameBinShape ( const BinRangeList otherRanges,
const IndexList otherIndices,
bool  otherUnderOverFlow 
) const

Definition at line 142 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
template<typename S >
bool Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::isSameBinShape ( const BinnedIndexing< S > &  other) const

Definition at line 161 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
bool Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::isValid ( const BinValue point) const

Definition at line 82 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
bool Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::isValid ( ) const
private

Definition at line 172 of file BinnedIndexingDefs.hh.

template<class BasicIndexing>
BinnedIndexing& Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::operator= ( const BinnedIndexing< BasicIndexing > &  )
default
template<class BasicIndexing>
BinnedIndexing& Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::operator= ( BinnedIndexing< BasicIndexing > &&  )
default
template<class BasicIndexing >
IndexList Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::processEdges ( const BinEdgeList edges,
bool  hasUnderOverFlow 
)
staticprivate

Definition at line 208 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
IndexList Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::processRanges ( const IndexList dimensions,
bool  hasUnderOverFlow 
)
staticprivate

Definition at line 220 of file BinnedIndexingDefs.hh.

template<class BasicIndexing >
IndexList Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::valueToPos ( const BinValue point) const

Definition at line 69 of file BinnedIndexingDefs.hh.

Member Data Documentation

template<class BasicIndexing>
BinEdgeList Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::_edges
private

the labels of each tensor index

Definition at line 78 of file BinnedIndexing.hh.

template<class BasicIndexing>
bool Hammer::MultiDimensional::BinnedIndexing< BasicIndexing >::_hasUnderOverFlow
private

Definition at line 79 of file BinnedIndexing.hh.


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