Flex  0.17.9
Public Member Functions | Private Types | Private Attributes | List of all members
gs::TopNGenerator< T, CMP_T > Class Template Reference

#include <top_n_generator.h>

Public Member Functions

 TopNGenerator (size_t n)
 
void push (const T &val, size_t idx)
 
void generate_indices (std::vector< size_t > &indices)
 
void generate_pairs (std::vector< T > &values, std::vector< size_t > &indices)
 

Private Types

using unit_t = TopNUnit< T >
 

Private Attributes

size_t n_
 
std::priority_queue< unit_t, std::vector< unit_t >, CMP_T > pq_
 
std::vector< size_t > replicated_indices_
 

Member Typedef Documentation

◆ unit_t

template<typename T , typename CMP_T >
using gs::TopNGenerator< T, CMP_T >::unit_t = TopNUnit<T>
private

Constructor & Destructor Documentation

◆ TopNGenerator()

template<typename T , typename CMP_T >
gs::TopNGenerator< T, CMP_T >::TopNGenerator ( size_t  n)
inline

Member Function Documentation

◆ generate_indices()

template<typename T , typename CMP_T >
void gs::TopNGenerator< T, CMP_T >::generate_indices ( std::vector< size_t > &  indices)
inline

◆ generate_pairs()

template<typename T , typename CMP_T >
void gs::TopNGenerator< T, CMP_T >::generate_pairs ( std::vector< T > &  values,
std::vector< size_t > &  indices 
)
inline

◆ push()

template<typename T , typename CMP_T >
void gs::TopNGenerator< T, CMP_T >::push ( const T &  val,
size_t  idx 
)
inline

Member Data Documentation

◆ n_

template<typename T , typename CMP_T >
size_t gs::TopNGenerator< T, CMP_T >::n_
private

◆ pq_

template<typename T , typename CMP_T >
std::priority_queue<unit_t, std::vector<unit_t>, CMP_T> gs::TopNGenerator< T, CMP_T >::pq_
private

◆ replicated_indices_

template<typename T , typename CMP_T >
std::vector<size_t> gs::TopNGenerator< T, CMP_T >::replicated_indices_
private

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