Ensemble de SupportObject muni d'opérations de recherche rapide par les intitulés et d'un ordre partiel. More...
#include "support.h"
Public Member Functions | |
SetSupportPartialOrder () | |
Constructeur. More... | |
void | set (Set< SetContent *> *objects, bool optimizeautolabel, bool optimizeautoindentifier, PartialOrder *order, bool optimizeautoorder) |
Fixe le contenu de l'ensemble. More... | |
void | deleteMembers () |
Supprime les membres. More... | |
void | reserve (nSet size) |
Réservation d'espace dans l'ensemble d'objets et dans l'ordre partiel. More... | |
void | clear () |
Vide les membres. More... | |
void | optimizeOrder (bool onlyifauto=true) |
Optimisation des structures de données permettant des accès performants à l'ordre partiel. More... | |
iSet | add (SetContent *sc, bool redimorder) |
Ajout d'un objet avec un éventuel redimensionnement de l'ordre partiel associé. More... | |
Public Member Functions inherited from cogitant::Support::SetSupport< SetContent > | |
SetSupport () | |
Constructeur. More... | |
void | set (Set< SetContent *> *objects, bool optimizeautolabel, bool optimizeautoindentifier) |
Fixe le contenu de l'ensemble. More... | |
void | deleteMembers () |
Supprime les membres. More... | |
void | reserve (nSet size) |
Réservation d'espace dans l'ensemble d'objets. More... | |
void | clear () |
Vide les membres. More... | |
void | optimizeSearch (bool onlyifauto=true) |
Optimisation des structures de données permettant une recherche efficace par l'intitulé ou l'identificateur fichier. More... | |
void | optimizeSearchClear () |
Suppression des structures de données optimisées de recherche. More... | |
bool | operator() (const iSet x, const iSet y) const |
Comparaison de deux objets de l'ensemble selon le critère de recherche en cours. More... | |
iSet | findObject (std::string const &s, bool label) const |
Recherche d'un objet par son intitulé (SupportObject::label()) ou son identificateur fichier (SupportObject::identifier()). More... | |
iSet | add (SetContent *sc) |
Ajout d'un objet. More... | |
nSet | heavyObjects () const |
Retourne le nombre d'objets ayant des propriétés (et occupant donc plus d'espace mémoire que les objets simples). More... | |
Public Attributes | |
PartialOrder * | m_order |
Ordre partiel sur les objets de l'ensemble. | |
bool | m_optimizeautoorder |
Optimisation automatique de l'ordre. | |
Public Attributes inherited from cogitant::Support::SetSupport< SetContent > | |
Set< SetContent * > * | m_objects |
Les objets contenus dans l'ensemble. | |
bool | m_optimizeautolabel |
Optimisation automatique sur les intitulés. | |
bool | m_optimizeautoidentifier |
Optimisation automatique sur les identificateurs (SupportObject::identifier()). | |
std::vector< iSet > * | m_optimizelabelsort [2] |
Objets triés dans l'ordre alphabétique de leur intitulé (pour recherche dichotomique) ainsi que les objets triés dans l'ordre alphabétique de leur identificateur fichier. | |
Ensemble de SupportObject muni d'opérations de recherche rapide par les intitulés et d'un ordre partiel.
cogitant::Support::SetSupportPartialOrder< SetContent >::SetSupportPartialOrder | ( | ) |
Constructeur.
iSet cogitant::Support::SetSupportPartialOrder< SetContent >::add | ( | SetContent * | sc, |
bool | redimorder | ||
) |
Ajout d'un objet avec un éventuel redimensionnement de l'ordre partiel associé.
void cogitant::Support::SetSupportPartialOrder< SetContent >::clear | ( | ) |
Vide les membres.
void cogitant::Support::SetSupportPartialOrder< SetContent >::deleteMembers | ( | ) |
Supprime les membres.
void cogitant::Support::SetSupportPartialOrder< SetContent >::optimizeOrder | ( | bool | onlyifauto = true | ) |
Optimisation des structures de données permettant des accès performants à l'ordre partiel.
onlyifauto | Si false optimise l'ordre toujours. Si true n'optimise l'ordre que dans le cas où celui-ci est en optimisation automatique. |
void cogitant::Support::SetSupportPartialOrder< SetContent >::reserve | ( | nSet | size | ) |
Réservation d'espace dans l'ensemble d'objets et dans l'ordre partiel.
L'appel à cette méthode est optionnel mais entraîne de meilleures performances selon l'implantation de l'ensemble et de l'ordre partiel.
void cogitant::Support::SetSupportPartialOrder< SetContent >::set | ( | Set< SetContent *> * | objects, |
bool | optimizeautolabel, | ||
bool | optimizeautoindentifier, | ||
PartialOrder * | order, | ||
bool | optimizeautoorder | ||
) |
Fixe le contenu de l'ensemble.