30 #ifndef DOXYGEN_SHOULD_SKIP_THIS 37 template <
template <
typename >
class ALLOC >
43 _column_types(column_types, alloc),
44 _columns_of_interest(alloc), _goal(goal) {
50 template <
template <
typename >
class ALLOC >
52 const DBRowGenerator< ALLOC >& from,
62 template <
template <
typename >
class ALLOC >
64 const DBRowGenerator< ALLOC >& from) :
69 template <
template <
typename >
class ALLOC >
71 DBRowGenerator< ALLOC >&& from,
82 template <
template <
typename >
class ALLOC >
89 template <
template <
typename >
class ALLOC >
96 template <
template <
typename >
class ALLOC >
98 operator=(
const DBRowGenerator< ALLOC >& from) {
108 template <
template <
typename >
class ALLOC >
110 operator=(DBRowGenerator< ALLOC >&& from) {
120 template <
template <
typename >
class ALLOC >
127 template <
template <
typename >
class ALLOC >
129 const DBRow< DBTranslatedValue, ALLOC >& row) {
136 template <
template <
typename >
class ALLOC >
143 template <
template <
typename >
class ALLOC >
151 template <
template <
typename >
class ALLOC >
153 const std::vector< std::size_t, ALLOC< std::size_t > >& cols_of_interest) {
160 template <
template <
typename >
class ALLOC >
162 std::vector< std::size_t, ALLOC< std::size_t > >&& cols_of_interest) {
168 template <
template <
typename >
class ALLOC >
169 INLINE
const std::vector< std::size_t, ALLOC< std::size_t > >&
176 template <
template <
typename >
class ALLOC >
184 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
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
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 ...
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
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