modifié : CMakeListsOTB.txt modifié : LICENSE modifié : MakefileNoOTB modifié : Readme.html modifié : Readme.txt modifié : include/Appli/Option.hpp modifié : include/Appli/Selected.hpp modifié : include/Appli/Selected.tpp modifié : include/ArrayTree/ArrayTreeBuilder.hpp modifié : include/ArrayTree/ArrayTreeBuilder.tpp modifié : include/ArrayTree/Border.hpp modifié : include/ArrayTree/Border.tpp modifié : include/ArrayTree/GraphWalker.hpp modifié : include/ArrayTree/GraphWalker.tpp modifié : include/ArrayTree/Leader.hpp modifié : include/ArrayTree/Leader.tpp modifié : include/ArrayTree/Weight.hpp modifié : include/ArrayTree/Weight.tpp modifié : include/ArrayTree/triskeleArrayTreeBase.hpp modifié : include/ArrayTree/triskeleArrayTreeBase.tpp modifié : include/ArrayTree/triskeleSort.hpp modifié : include/ArrayTree/triskeleSort.tpp modifié : include/AttributeProfiles.hpp modifié : include/AttributeProfiles.tpp modifié : include/Attributes/AreaAttributes.hpp modifié : include/Attributes/AreaAttributes.tpp modifié : include/Attributes/AverageAttributes.hpp modifié : include/Attributes/AverageAttributes.tpp modifié : include/Attributes/MoIAttributes.hpp modifié : include/Attributes/MoIAttributes.tpp modifié : include/Attributes/SDAttributes.hpp modifié : include/Attributes/SDAttributes.tpp modifié : include/Attributes/WeightAttributes.hpp modifié : include/Attributes/WeightAttributes.tpp modifié : include/Attributes/XYAttributes.hpp modifié : include/Attributes/XYAttributes.tpp modifié : include/CompAttribute.hpp modifié : include/CompAttribute.tpp modifié : include/IImage.hpp modifié : include/IImage.tpp modifié : include/QuadTree/QuadTreeBuilder.hpp modifié : include/Tree.hpp modifié : include/Tree.tpp modifié : include/TreeBuilder.hpp modifié : include/TreeBuilder.tpp modifié : include/TreeStats.hpp modifié : include/TreeStats.tpp modifié : include/XMLTree/XMLTreeBuilder.hpp modifié : include/triskeleBase.hpp modifié : include/triskeleBase.tpp modifié : include/triskeleDealThreads.hpp modifié : include/triskeleDealThreads.tpp modifié : include/triskeleDebug.hpp modifié : include/triskeleGdalGetType.hpp modifié : otb-module.cmake modifié : src/Appli/Option.cpp modifié : src/Appli/Selected.cpp modifié : src/ArrayTree/triskeleArrayTreeBase.cpp modifié : src/CMakeLists.txt modifié : src/IImage.cpp modifié : src/PerfArrayTreeBuilder.cpp modifié : src/QuadTree/QuadTreeBuilder.cpp modifié : src/TestArrayTreeBuilder.cpp modifié : src/Tree.cpp modifié : src/TreeStats.cpp modifié : src/XMLTree/XMLTreeBuilder.cpp modifié : src/apGenerator.cpp modifié : src/triskeleBase.cpp modifié : src/triskeleDebug.cpp
98 lines
2.8 KiB
C++
98 lines
2.8 KiB
C++
#ifndef _OTB_TRISKELE_SELECTED_HPP
|
|
#define _OTB_TRISKELE_SELECTED_HPP
|
|
|
|
#include <iostream>
|
|
#include <string>
|
|
#include <vector>
|
|
#include <algorithm>
|
|
#include <numeric>
|
|
#include <boost/algorithm/string.hpp>
|
|
|
|
namespace otb {
|
|
namespace triskele {
|
|
using namespace std;
|
|
using namespace boost;
|
|
|
|
// ========================================
|
|
class Selected {
|
|
private:
|
|
/*!
|
|
* \brief set Vector qui correspond à l'ensemble
|
|
*/
|
|
vector<int> set;
|
|
/*!
|
|
* \brief Indicateur si le max doit etre defini (à l'aide de la methode setMaxValue())
|
|
*/
|
|
bool minFlag = false, maxFlag = false;
|
|
int minInter, maxInter;
|
|
|
|
public:
|
|
/*!
|
|
* \brief getSet Getter de l'ensemble
|
|
* \return L'ensemble set
|
|
*/
|
|
inline const vector<int> &getSet () const;
|
|
/*!
|
|
* \brief empty Vérifie si l'ensemble est vide ou non
|
|
* \return true si l'ensemble est vide, false sinon
|
|
*/
|
|
inline bool empty () const;
|
|
/*!
|
|
* \brief size Retourne la taille de l'ensemble
|
|
* \return La taille de l'ensemble
|
|
*/
|
|
inline int size () const;
|
|
/*!
|
|
* \brief first Retourne la première valeur de l'ensemble
|
|
* \return La première valeur de l'ensemble
|
|
*/
|
|
inline int first () const;
|
|
/*!
|
|
* \brief last Retourne la dernière valeur de l'ensemble
|
|
* \return La dernière valeur de l'ensemble
|
|
*/
|
|
inline int last () const;
|
|
|
|
/*!
|
|
* \brief Selected Constructeur par défaut
|
|
*/
|
|
Selected ();
|
|
/*!
|
|
* \brief Selected Constructeur avec un interval
|
|
*/
|
|
Selected (int first, int last);
|
|
/*!
|
|
* \brief Selected Constructeur de copie
|
|
* \param selected Objet à copier
|
|
*/
|
|
Selected (const Selected &selected);
|
|
/*!
|
|
* \brief Selected Constructeur qui convertit la chaîne option en ensemble
|
|
* \param option Chaîne de caractère à convertir
|
|
*/
|
|
Selected (const string &option);
|
|
/*!
|
|
* \brief Fixe les bornes en cas option "-x" ou "x-"
|
|
* \param max la valeur de l'index de la bande max
|
|
*/
|
|
void setLimits (int minOpt, int maxOpt);
|
|
/*!
|
|
* \brief toSet Conversion en ensemble (On retire les doublons et ordonne le vector)
|
|
* \return L'objet Selected
|
|
*/
|
|
Selected &toSet ();
|
|
/*!
|
|
* \brief contains Vérifie si la valeur value est contenue dans l'ensemble
|
|
* \param value valeur à vérifier
|
|
* \return true si la valeur est contenue dans l'ensemble, false sinon
|
|
*/
|
|
bool contains (int value) const;
|
|
};
|
|
inline ostream &operator << (ostream &out, const Selected &selected);
|
|
|
|
#include "Selected.tpp"
|
|
}//namespace triskele
|
|
}//namespace otb
|
|
|
|
#endif //_OTB_TRISKELE_SELECTED_HPP
|