Loading...
Searching...
No Matches
casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator > Class Template Referenceabstract

This is the virtual base class from which concrete QuantileComputer classes are derived. More...

`#include <StatisticsAlgorithmQuantileComputer.h>`

## Public Member Functions

| StatisticsAlgorithmQuantileComputer ()=delete
virtual | ~StatisticsAlgorithmQuantileComputer ()
virtual StatisticsAlgorithmQuantileComputer< CASA_STATP > * | clone () const =0
| clone this object by returning a pointer to a copy
void | deleteSortedArray ()
| delete any (partially) sorted array
virtual void | reset ()
| reset this object by clearing data.
void | setDataset (StatisticsDataset< CASA_STATP > *ds)
| This must be called upon the copy or assignment of the associated statistics algorithm object.
std::vector< AccumType > & | _getSortedArray ()
| FIXME make protected once refactor is complete.
void | _setSortedArray (const std::vector< AccumType > &v)
| FIXME make protected once refactor is complete.
void | setMedian (std::shared_ptr< AccumType > median)

## Protected Member Functions

| StatisticsAlgorithmQuantileComputer (StatisticsDataset< CASA_STATP > *ds)
| ds should be the dataset object held in the StatisticsAlgorithm object.
| StatisticsAlgorithmQuantileComputer (const StatisticsAlgorithmQuantileComputer &other)
| use copy semantics.
StatisticsAlgorithmQuantileComputer & | operator= (const StatisticsAlgorithmQuantileComputer &other)
| use copy semantics.
StatisticsDataset< CASA_STATP > * | _getDataset ()
std::shared_ptr< AccumType > | _getMedian () const
std::shared_ptr< AccumType > | _getMedianAbsDevMedian () const
void | _setMedianAbsDevMedian (std::shared_ptr< AccumType > medAbsDevMed)

## Private Attributes

std::vector< AccumType > | _sortedArray
StatisticsDataset< CASA_STATP > * | _dataset
| This pointer references the (non-pointer) object in the associated non-QuantileComputer computer object, so this should not be wrapped in a smart pointer.
std::shared_ptr< AccumType > | _median
std::shared_ptr< AccumType > | _medAbsDevMed

## Detailed Description

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>
class casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >

This is the virtual base class from which concrete QuantileComputer classes are derived.

The API developer should never explicitly instantiate a QuantileComputer class; they are used internally by other StatsFramework classes. See the documentation of StatisticsAlgorithm for more details.

Definition at line 44 of file StatisticsAlgorithmQuantileComputer.h.

## Constructor & Destructor Documentation

## StatisticsAlgorithmQuantileComputer() [1/3]

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::StatisticsAlgorithmQuantileComputer | ( |  | ) |

delete

Referenced by clone(), operator=(), and StatisticsAlgorithmQuantileComputer().

## ~StatisticsAlgorithmQuantileComputer()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

virtual casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::~StatisticsAlgorithmQuantileComputer | ( |  | ) |

virtual

## StatisticsAlgorithmQuantileComputer() [2/3]

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::StatisticsAlgorithmQuantileComputer | ( | StatisticsDataset< CASA_STATP > * | ds | ) |

protected

ds should be the dataset object held in the StatisticsAlgorithm object.

The QuantileComputer calculator object should never hold its own version of a dataset object. The algorithm object (caller of this method) is always responsible for deleting the passed object, usually upon its destruction.

## StatisticsAlgorithmQuantileComputer() [3/3]

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::StatisticsAlgorithmQuantileComputer | ( | const StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator > & | other | ) |

protected

use copy semantics.

statistics algorithm object's responsibility to set the _dataset object in the new QuantileComputer calculator object upon a copy. The underlying _dataset object in the new stats calculator object should be a reference to the new _dataset object in the copied statistics algorithm object.

References StatisticsAlgorithmQuantileComputer().

## Member Function Documentation

## _getDataset()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

StatisticsDataset< CASA_STATP > * casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::_getDataset | ( |  | ) |

inline protected

Definition at line 102 of file StatisticsAlgorithmQuantileComputer.h.

References _dataset.

## _getMedian()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

std::shared_ptr< AccumType > casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::_getMedian | ( |  | ) | const

inline protected

Definition at line 104 of file StatisticsAlgorithmQuantileComputer.h.

References _median.

## _getMedianAbsDevMedian()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

std::shared_ptr< AccumType > casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::_getMedianAbsDevMedian | ( |  | ) | const

inline protected

Definition at line 106 of file StatisticsAlgorithmQuantileComputer.h.

References _medAbsDevMed.

## _getSortedArray()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

std::vector< AccumType > & casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::_getSortedArray | ( |  | ) |

inline

FIXME make protected once refactor is complete.

Definition at line 67 of file StatisticsAlgorithmQuantileComputer.h.

References _sortedArray.

## _setMedianAbsDevMedian()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

void casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::_setMedianAbsDevMedian | ( | std::shared_ptr< AccumType > | medAbsDevMed | ) |

inline protected

Definition at line 110 of file StatisticsAlgorithmQuantileComputer.h.

References _medAbsDevMed.

## _setSortedArray()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

void casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::_setSortedArray | ( | const std::vector< AccumType > & | v | ) |

inline

FIXME make protected once refactor is complete.

Definition at line 70 of file StatisticsAlgorithmQuantileComputer.h.

References _sortedArray.

## clone()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

virtual StatisticsAlgorithmQuantileComputer< CASA_STATP > * casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::clone | ( |  | ) | const

pure virtual

clone this object by returning a pointer to a copy

Implemented in casacore::ClassicalQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >, casacore::ClassicalQuantileComputer< CASA_STATP >, casacore::ConstrainedRangeQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >, casacore::ConstrainedRangeQuantileComputer< CASA_STATP >, and casacore::HingesFencesQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >.

References StatisticsAlgorithmQuantileComputer().

## deleteSortedArray()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

void casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::deleteSortedArray | ( |  | ) |

delete any (partially) sorted array

## operator=()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

StatisticsAlgorithmQuantileComputer & casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::operator= | ( | const StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator > & | other | ) |

protected

use copy semantics.

The _dataset object is not copied. It is the associated statistics algorithm object's responsibility to set the _dataset object in the new QuantileComputer calculator object upon an assignment. The underlying _dataset object in the new stats calculator object should be a reference to that in the newly assigned statistics algorithm object.

References StatisticsAlgorithmQuantileComputer().

## reset()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

virtual void casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::reset | ( |  | ) |

virtual

reset this object by clearing data.

Reimplemented in casacore::ClassicalQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >, casacore::ClassicalQuantileComputer< CASA_STATP >, and casacore::HingesFencesQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >.

## setDataset()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

void casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::setDataset | ( | StatisticsDataset< CASA_STATP > * | ds | ) |

This must be called upon the copy or assignment of the associated statistics algorithm object.

Otherwise, there is generally no reason to call it.

## setMedian()

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

void casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::setMedian | ( | std::shared_ptr< AccumType > | median | ) |

inline

Definition at line 72 of file StatisticsAlgorithmQuantileComputer.h.

References _median, and casacore::median().

## Member Data Documentation

## _dataset

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

StatisticsDataset<CASA_STATP>* casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::_dataset

private

This pointer references the (non-pointer) object in the associated non-QuantileComputer computer object, so this should not be wrapped in a smart pointer.

Definition at line 119 of file StatisticsAlgorithmQuantileComputer.h.

Referenced by _getDataset().

## _medAbsDevMed

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

std::shared_ptr<AccumType> casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::_medAbsDevMed

private

Definition at line 120 of file StatisticsAlgorithmQuantileComputer.h.

Referenced by _getMedianAbsDevMedian(), and _setMedianAbsDevMedian().

## _median

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

std::shared_ptr<AccumType> casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::_median

private

Definition at line 120 of file StatisticsAlgorithmQuantileComputer.h.

Referenced by _getMedian(), and setMedian().

## _sortedArray

template<class AccumType, class DataIterator, class MaskIterator = const Bool *, class WeightsIterator = DataIterator>

std::vector<AccumType> casacore::StatisticsAlgorithmQuantileComputer< AccumType, DataIterator, MaskIterator, WeightsIterator >::_sortedArray

private

Definition at line 115 of file StatisticsAlgorithmQuantileComputer.h.

Referenced by _getSortedArray(), and _setSortedArray().

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

- scimath/StatsFramework/StatisticsAlgorithmQuantileComputer.h