109 this->debut = valeur;
116 this->debut = _debut;
117 this->len = (_fin - _debut) / _pas;
120 this->fin = _debut + _pas * this->
len;
132 this->debut = _f.
debut;
180 std::vector<conversion_elementaire>
config;
190 std::vector<conversion_elementaire>::iterator i;
191 for (i = this->config.begin(); i != this->config.end(); i ++)
193 delete (*i).p_convers;
207 this->config.push_back (conv_elem);
230 if (_f.
len == 1 || _conv.
len == 1 || _f.
len == _conv.
len)
237 this->config.push_back (conv_elem);
280 template <
typename T>
284 liste_conversions.clear();
292 std::vector<conversion_elementaire>::const_iterator i;
299 bool si_passe_filtre =
false;
302 if ((*i).filtre.len == 1) {
304 if ((*i).filtre.debut == valeur_initiale)
305 si_passe_filtre =
true;
310 if ( ((*i).filtre.fin - valeur_initiale >= 0) == (valeur_initiale - (*i).filtre.debut >= 0)
311 && (valeur_initiale - (*i).filtre.debut) % (*i).filtre.pas == 0 ) {
312 si_passe_filtre =
true;
317 if (si_passe_filtre) {
321 if ((*i).p_convers != NULL) {
324 if ((*i).filtre.len == 1) {
327 if ((*i).p_convers->len == 1) {
329 liste_conversions.push_back ((*i).p_convers->debut);
332 for (
int s = (*i).p_convers->debut; s != (*i).p_convers->fin; s += (*i).p_convers->pas) {
333 liste_conversions.push_back (s);
335 liste_conversions.push_back ((*i).p_convers->fin);
341 int rang = (valeur_initiale - (*i).filtre.debut) / (*i).filtre.pas;
343 int valeur_convertie = (*i).p_convers->debut + rang * (*i).p_convers->pas;
346 liste_conversions.push_back (valeur_convertie);
350 liste_conversions.push_back (valeur_initiale);
355 return liste_conversions.size();
Definition: DataIdFilter.hxx:159
filtre_elementaire filtre
Definition: DataIdFilter.hxx:162
conversion_elementaire(const conversion_elementaire &_ce)
Definition: DataIdFilter.hxx:169
conversion_elementaire()
Definition: DataIdFilter.hxx:166
filtre_elementaire * p_convers
Definition: DataIdFilter.hxx:163
Definition: DataIdFilter.hxx:153
bool config_elementaire(filtre_elementaire &_f)
Definition: DataIdFilter.hxx:198
T applique_filtre_conversion(T valeur_initiale, std::vector< T > &liste_conversions) const
Definition: DataIdFilter.hxx:281
bool config_elementaire(filtre_elementaire &_f, filtre_elementaire &_conv)
Definition: DataIdFilter.hxx:226
std::vector< conversion_elementaire > config
Definition: DataIdFilter.hxx:180
filtre_conversion()
Definition: DataIdFilter.hxx:184
~filtre_conversion()
Definition: DataIdFilter.hxx:188
Definition: DataIdFilter.hxx:95
int pas
Definition: DataIdFilter.hxx:100
filtre_elementaire(int valeur)
Definition: DataIdFilter.hxx:106
int fin
Definition: DataIdFilter.hxx:99
filtre_elementaire(filtre_elementaire &_f)
Definition: DataIdFilter.hxx:129
filtre_elementaire(int _debut, int _fin, int _pas=1)
Definition: DataIdFilter.hxx:114
int len
Definition: DataIdFilter.hxx:97
int debut
Definition: DataIdFilter.hxx:98
filtre_elementaire()
Definition: DataIdFilter.hxx:103