Class quantile::detail::CentroidsMerger

template<typename RealType, typename IndexType>
class CentroidsMerger

Public Functions

DEVICE CentroidsMerger(Centroids<RealType, IndexType> *buf, Centroids<RealType, IndexType> *centroids, bool const forward)
DEVICE Centroids< RealType, IndexType > * quantile::detail::CentroidsMerger::getNextCentroid() const
DEVICE bool quantile::detail::CentroidsMerger::hasNext() const
DEVICE void quantile::detail::CentroidsMerger::merge(IndexType const max_count)
DEVICE void quantile::detail::CentroidsMerger::next()
DEVICE IndexType quantile::detail::CentroidsMerger::prefixSum() const
DEVICE IndexType quantile::detail::CentroidsMerger::totalWeight() const

Private Functions

DEVICE void quantile::detail::CentroidsMerger::mergeMinMax()
DEVICE void quantile::detail::CentroidsMerger::setCurrCentroid()

Private Members

Centroids<RealType, IndexType> *buf_
Centroids<RealType, IndexType> *centroids_
Centroids<RealType, IndexType> *curr_centroid_
IndexType prefix_sum_ = {0}
IndexType const total_weight_
bool const forward_