casacore
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
casacore::LatticeStatsDataProviderBase< T > Class Template Referenceabstract

Abstract base class of data providers which allows stats framework to iterate through a lattice. More...

#include <LatticeStatsDataProviderBase.h>

Public Member Functions

virtual ~LatticeStatsDataProviderBase ()
 
virtual uInt estimatedSteps () const =0
 estimated number of steps to iterate through the the lattice More...
 
virtual void finalize ()
 Take any actions necessary to finalize the provider. More...
 
uInt getMaskStride ()
 Get the stride for the current mask (only called if hasMask() returns True). More...
 
std::vector< std::pair< typename NumericTraits< T >::PrecisionType, typename NumericTraits< T >::PrecisionType > > getRanges ()
 Get the associated range(s) of the current dataset. More...
 
uInt getStride ()
 Get the stride for the current data set. More...
 
const T * getWeights ()
 Returns NULL; lattices do not have associated weights. More...
 
Bool hasRanges () const
 Does the current data set have associated range(s)? More...
 
Bool hasWeights () const
 returns False; lattices do not have associated weights. More...
 
Bool isInclude () const
 If the associated data set has ranges, are these include (return True) or exclude (return False) ranges? More...
 
void minMaxPos (IPosition &minpos, IPosition &maxpos) const
 get the positions of the min and max More...
 
virtual void reset ()
 reset the provider to point to the beginning of the first data set it manages. More...
 
void setProgressMeter (CountedPtr< LattStatsProgress > pm)
 
void setRanges (const std::vector< std::pair< typename NumericTraits< T >::PrecisionType, typename NumericTraits< T >::PrecisionType > > &ranges, Bool isInclude)
 set the data ranges More...
 
- Public Member Functions inherited from casacore::StatsDataProvider< NumericTraits< T >::PrecisionType, const T *, const Bool * >
virtual ~StatsDataProvider ()
 
virtual void operator++ ()=0
 increment the data provider to the next dataset, mask, range set, and weights. More...
 
virtual Bool atEnd () const=0
 Are there any data sets left to provide? More...
 
virtual uInt64 getCount ()=0
 get the count of elements in the current data set. More...
 
virtual const T * getData ()=0
 get an iterator to the first element of the current dataset More...
 
virtual const BoolgetMask ()=0
 Get an iterator to the first element of the mask for the current dataset. More...
 
virtual uInt getNMaxThreads () const
 If OpenMP is enabled and statistics methods are being called in a multi-threaded context, get maximum number of threads that should be used. More...
 
virtual Bool hasMask () const=0
 Does the current data set have an associated mask? More...
 
virtual void updateMaxPos (const LocationType &)
 In general, unless you are writing statistics algorithm code, you shouldn't need to call these methods. More...
 
virtual void updateMinPos (const LocationType &)
 

Protected Member Functions

 LatticeStatsDataProviderBase ()
 
void _updateMaxPos (const IPosition &maxPos)
 
void _updateMinPos (const IPosition &minPos)
 
void _updateProgress ()
 
- Protected Member Functions inherited from casacore::StatsDataProvider< NumericTraits< T >::PrecisionType, const T *, const Bool * >
 StatsDataProvider ()
 

Private Attributes

Bool _hasRanges
 
Bool _isInclude
 
std::vector< std::pair< typename NumericTraits< T >::PrecisionType, typename NumericTraits< T >::PrecisionType > > _ranges
 
CountedPtr< LattStatsProgress_progressMeter
 
IPosition _minPos
 
IPosition _maxPos
 

Detailed Description

template<class T>
class casacore::LatticeStatsDataProviderBase< T >

Abstract base class of data providers which allows stats framework to iterate through a lattice.

Definition at line 44 of file LatticeStatsDataProviderBase.h.

Constructor & Destructor Documentation

◆ ~LatticeStatsDataProviderBase()

template<class T >
virtual casacore::LatticeStatsDataProviderBase< T >::~LatticeStatsDataProviderBase ( )
virtual

◆ LatticeStatsDataProviderBase()

Member Function Documentation

◆ _updateMaxPos()

template<class T >
void casacore::LatticeStatsDataProviderBase< T >::_updateMaxPos ( const IPosition maxPos)
inlineprotected

◆ _updateMinPos()

template<class T >
void casacore::LatticeStatsDataProviderBase< T >::_updateMinPos ( const IPosition minPos)
inlineprotected

◆ _updateProgress()

template<class T >
void casacore::LatticeStatsDataProviderBase< T >::_updateProgress ( )
protected

◆ estimatedSteps()

template<class T >
virtual uInt casacore::LatticeStatsDataProviderBase< T >::estimatedSteps ( ) const
pure virtual

estimated number of steps to iterate through the the lattice

Implemented in casacore::MaskedLatticeStatsDataProvider< T >, and casacore::LatticeStatsDataProvider< T >.

◆ finalize()

template<class T >
virtual void casacore::LatticeStatsDataProviderBase< T >::finalize ( )
virtual

Take any actions necessary to finalize the provider.

This will be called when atEnd() returns True.

Implements casacore::StatsDataProvider< NumericTraits< T >::PrecisionType, const T *, const Bool * >.

Reimplemented in casacore::MaskedLatticeStatsDataProvider< T >, and casacore::LatticeStatsDataProvider< T >.

◆ getMaskStride()

template<class T >
uInt casacore::LatticeStatsDataProviderBase< T >::getMaskStride ( )
virtual

Get the stride for the current mask (only called if hasMask() returns True).

Implements casacore::StatsDataProvider< NumericTraits< T >::PrecisionType, const T *, const Bool * >.

◆ getRanges()

template<class T >
std::vector<std::pair<typename NumericTraits<T>::PrecisionType, typename NumericTraits<T>::PrecisionType> > casacore::LatticeStatsDataProviderBase< T >::getRanges ( )
virtual

Get the associated range(s) of the current dataset.

Only called if hasRanges() returns True;

Implements casacore::StatsDataProvider< NumericTraits< T >::PrecisionType, const T *, const Bool * >.

◆ getStride()

template<class T >
uInt casacore::LatticeStatsDataProviderBase< T >::getStride ( )
virtual

◆ getWeights()

template<class T >
const T* casacore::LatticeStatsDataProviderBase< T >::getWeights ( )
virtual

Returns NULL; lattices do not have associated weights.

Implements casacore::StatsDataProvider< NumericTraits< T >::PrecisionType, const T *, const Bool * >.

◆ hasRanges()

template<class T >
Bool casacore::LatticeStatsDataProviderBase< T >::hasRanges ( ) const
virtual

Does the current data set have associated range(s)?

Implements casacore::StatsDataProvider< NumericTraits< T >::PrecisionType, const T *, const Bool * >.

◆ hasWeights()

template<class T >
Bool casacore::LatticeStatsDataProviderBase< T >::hasWeights ( ) const
virtual

returns False; lattices do not have associated weights.

Implements casacore::StatsDataProvider< NumericTraits< T >::PrecisionType, const T *, const Bool * >.

◆ isInclude()

template<class T >
Bool casacore::LatticeStatsDataProviderBase< T >::isInclude ( ) const
virtual

If the associated data set has ranges, are these include (return True) or exclude (return False) ranges?

Implements casacore::StatsDataProvider< NumericTraits< T >::PrecisionType, const T *, const Bool * >.

◆ minMaxPos()

template<class T >
void casacore::LatticeStatsDataProviderBase< T >::minMaxPos ( IPosition minpos,
IPosition maxpos 
) const

get the positions of the min and max

◆ reset()

template<class T >
virtual void casacore::LatticeStatsDataProviderBase< T >::reset ( )
virtual

reset the provider to point to the beginning of the first data set it manages.

Implements casacore::StatsDataProvider< NumericTraits< T >::PrecisionType, const T *, const Bool * >.

Reimplemented in casacore::MaskedLatticeStatsDataProvider< T >, and casacore::LatticeStatsDataProvider< T >.

◆ setProgressMeter()

template<class T >
void casacore::LatticeStatsDataProviderBase< T >::setProgressMeter ( CountedPtr< LattStatsProgress pm)

◆ setRanges()

template<class T >
void casacore::LatticeStatsDataProviderBase< T >::setRanges ( const std::vector< std::pair< typename NumericTraits< T >::PrecisionType, typename NumericTraits< T >::PrecisionType > > &  ranges,
Bool  isInclude 
)

set the data ranges

Member Data Documentation

◆ _hasRanges

template<class T >
Bool casacore::LatticeStatsDataProviderBase< T >::_hasRanges
private

Definition at line 101 of file LatticeStatsDataProviderBase.h.

◆ _isInclude

template<class T >
Bool casacore::LatticeStatsDataProviderBase< T >::_isInclude
private

Definition at line 101 of file LatticeStatsDataProviderBase.h.

◆ _maxPos

template<class T >
IPosition casacore::LatticeStatsDataProviderBase< T >::_maxPos
private

◆ _minPos

template<class T >
IPosition casacore::LatticeStatsDataProviderBase< T >::_minPos
private

◆ _progressMeter

template<class T >
CountedPtr<LattStatsProgress> casacore::LatticeStatsDataProviderBase< T >::_progressMeter
private

Definition at line 103 of file LatticeStatsDataProviderBase.h.

◆ _ranges

template<class T >
std::vector<std::pair<typename NumericTraits<T>::PrecisionType, typename NumericTraits<T>::PrecisionType> > casacore::LatticeStatsDataProviderBase< T >::_ranges
private

Definition at line 102 of file LatticeStatsDataProviderBase.h.


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