File statistics_update_candidate.hpp

class IStatisticsUpdateCandidate : public Quality
#include <statistics_update_candidate.hpp>

Defines an interface for all classes that store scores that have been calculated based on statistics and allow to update these statistics accordingly.

Subclassed by AbstractStatisticsUpdateCandidate

Public Types

template<typename IndexVector>
using BitVisitor = std::function<void(const BitScoreVector<IndexVector>&, IStatisticsUpdateFactory<uint8>&)>

A visitor function for handling objects of type BitScoreVector.

Template Parameters:

IndexVector – The type of the vector that provides access to the indices of the outputs, the predicted scores correspond to

template<typename ScoreType, typename IndexVector>
using DenseVisitor = std::function<void(const DenseScoreVector<ScoreType, IndexVector>&, IStatisticsUpdateFactory<ScoreType>&)>

A visitor function for handling objects of type DenseScoreVector.

Template Parameters:
  • ScoreType – The type of the scores that stored by the vector

  • IndexVector – The type of the vector that provides access to the indices of the outputs, the predicted scores correspond to

template<typename ScoreType, typename IndexVector>
using DenseBinnedVisitor = std::function<void(const DenseBinnedScoreVector<ScoreType, IndexVector>&, IStatisticsUpdateFactory<ScoreType>&)>

A visitor function for handling objects of type DenseBinnedScoreVector.

Template Parameters:
  • ScoreType – The type of the scores that stored by the vector

  • IndexVector – The type of the vector that provides access to the indices of the outputs, the predicted scores correspond to

Public Functions

virtual void visit(BitVisitor<CompleteIndexVector> completeBitVisitor, BitVisitor<PartialIndexVector> partialBitVisitor, DenseVisitor<float32, CompleteIndexVector> completeDense32BitVisitor, DenseVisitor<float32, PartialIndexVector> partialDense32BitVisitor, DenseVisitor<float64, CompleteIndexVector> completeDense64BitVisitor, DenseVisitor<float64, PartialIndexVector> partialDense64BitVisitor, DenseBinnedVisitor<float32, CompleteIndexVector> completeDenseBinned32BitVisitor, DenseBinnedVisitor<float32, PartialIndexVector> partialDenseBinned32BitVisitor, DenseBinnedVisitor<float64, CompleteIndexVector> completeDenseBinned64BitVisitor, DenseBinnedVisitor<float64, PartialIndexVector> partialDenseBinned64BitVisitor) const = 0

Invokes one of the given visitor functions, depending on which one is able to handle the particular type of vector that stores the calculated scores.

Parameters: