27 #ifndef DOXYGEN_SHOULD_SKIP_THIS 34 template <
template <
typename >
class ALLOC >
40 _column_types(column_types, alloc),
41 _columns_of_interest(alloc), _goal(goal) {
47 template <
template <
typename >
class ALLOC >
49 const DBRowGenerator< ALLOC >& from,
59 template <
template <
typename >
class ALLOC >
61 const DBRowGenerator< ALLOC >& from) :
66 template <
template <
typename >
class ALLOC >
68 DBRowGenerator< ALLOC >&& from,
79 template <
template <
typename >
class ALLOC >
86 template <
template <
typename >
class ALLOC >
93 template <
template <
typename >
class ALLOC >
95 operator=(
const DBRowGenerator< ALLOC >& from) {
105 template <
template <
typename >
class ALLOC >
107 operator=(DBRowGenerator< ALLOC >&& from) {
117 template <
template <
typename >
class ALLOC >
124 template <
template <
typename >
class ALLOC >
126 const DBRow< DBTranslatedValue, ALLOC >& row) {
133 template <
template <
typename >
class ALLOC >
140 template <
template <
typename >
class ALLOC >
148 template <
template <
typename >
class ALLOC >
150 const std::vector< std::size_t, ALLOC< std::size_t > >& cols_of_interest) {
157 template <
template <
typename >
class ALLOC >
159 std::vector< std::size_t, ALLOC< std::size_t > >&& cols_of_interest) {
165 template <
template <
typename >
class ALLOC >
166 INLINE
const std::vector< std::size_t, ALLOC< std::size_t > >&
173 template <
template <
typename >
class ALLOC >
181 template <
template <
typename >
class ALLOC >
ALLOC< DBTranslatedValue > allocator_type
type for the allocators passed in arguments of methods
std::vector< std::size_t, ALLOC< std::size_t > > _columns_of_interest
the set of columns of interest
The base class for all DBRow generators.
bool setInputRow(const DBRow< DBTranslatedValue, ALLOC > &row)
sets the input row from which the generator will create its output rows
DBRowGeneratorGoal
the type of things that a DBRowGenerator is designed for
DBRowGenerator< ALLOC > & operator=(const DBRowGenerator< ALLOC > &)
copy constructor
void decreaseRemainingRows()
decrease the number of remaining output rows
virtual ~DBRowGenerator()
destructor
virtual void setColumnsOfInterest(const std::vector< std::size_t, ALLOC< std::size_t > > &cols_of_interest)
sets the columns of interest: the output DBRow needs only contain correct values fot these columns ...
gum is the global namespace for all aGrUM entities
virtual std::size_t _computeRows(const DBRow< DBTranslatedValue, ALLOC > &row) final
computes the rows it will provide as output
virtual void reset()
resets the generator. There are therefore no more ouput row to generate
DBRowGeneratorGoal goal() const
returns the goal of the DBRowGenerator
bool hasRows()
returns true if there are still rows that can be output by the DBRowGenerator
DBTranslatedValueType
The nature of the elements handled by translators (discrete, continuous).
allocator_type getAllocator() const
returns the allocator used
DBRowGeneratorGoal _goal
the goal of the DBRowGenerator (just remove missing values or not)
allocator_type getAllocator() const
returns the allocator used
DBRowGenerator(const std::vector< DBTranslatedValueType, ALLOC< DBTranslatedValueType > > column_types, const DBRowGeneratorGoal goal, const allocator_type &alloc=allocator_type())
default constructor
const std::vector< std::size_t, ALLOC< std::size_t > > & columnsOfInterest() const
returns the current set of columns of interest
std::vector< DBTranslatedValueType, ALLOC< DBTranslatedValueType > > _column_types
the types of the columns in the DatabaseTable
std::size_t _nb_remaining_output_rows
the number of output rows still to retrieve through the generate method