|
Code_TYMPAN
4.4.0
Industrial site acoustic simulation
|
#include <TYElement.h>


Public Member Functions | |
Construction et Destruction | |
| TYElement () | |
| TYElement (TYElement *pParent, bool PutInInstanceList=true) | |
| TYElement (const TYElement &other, bool PutInInstanceList=true) | |
| virtual | ~TYElement () |
Interface XML | |
| virtual DOM_Element | toXML (DOM_Element &domElement) |
| virtual int | fromXML (DOM_Element domElement) |
Accesseurs | |
| void | setID (TYUUID id) |
| void | setID (const QString &str_id) |
| const TYUUID & | getID () const |
| QString | getStringID () const |
| bool | hasNullID () const |
| void | regenerateID () |
| void | setName (QString name) |
| void | setName (std::string name) |
| virtual QString | getName () const |
| void | setParent (TYElement *pParent) |
| TYElement * | getParent () const |
Indicateurs de modification. | |
| virtual void | setIsAcousticModified (bool isModified) |
| bool | getIsAcousticModified () |
| virtual void | setIsGeometryModified (bool isModified) |
Operateurs | |
| TYElement & | operator= (const TYElement &other) |
| bool | operator== (const TYElement &other) const |
| bool | operator!= (const TYElement &other) const |
| virtual bool | deepCopy (const TYElement *pOther, bool copyId=true, bool pUseCopyTag=false) |
Public Member Functions inherited from IRefCount | |
| IRefCount () | |
| virtual | ~IRefCount () |
| virtual int | incRef () |
| virtual int | decRef () |
| int | getRefCount () const |
Public Member Functions inherited from OPrototype | |
| virtual | ~OPrototype () |
| virtual OPrototype * | clone () const =0 |
| virtual const char * | getClassName () const |
| bool | isA (const char *className) const |
Methodes Utilitaires | |
| TYUUID | _uuid |
| Identifiant unique de l'element. More... | |
| QString | _name |
| Nom courant de l'element. More... | |
| TYElement * | _pParent |
| Reference sur l'element parent. More... | |
| bool | _bPutInInstanceList |
| unsigned int | _copyCount |
| bool | _inCurrentCalcul |
| Indique si cet element est actif dans le Calcul courant. More... | |
| bool | _isAcousticModified |
| Indicateur de modification acoustique. More... | |
| LPTYElementGraphic | _pGraphicObject |
| L'object graphique metier associe a cet element. More... | |
| void * | _allUses |
| Multi purpose void pointer (use for compatibility actually) More... | |
| static bool | _logInstances = false |
| Indique si on souhaite registrer toutes les instances de type TYElement et derivees. More... | |
| static TYElementContainer * | _instances = NULL |
| Collection de toutes les instances de type TYElement et derivees. More... | |
| static bool | _toSave = false |
| static bool | _bRegenerateID = false |
| Indicateur de regeneration d'ID true si regeneration d'ID a la lecture d'un fichier XML. More... | |
| static uint64 | ty_created_counter = 0 |
| static uint64 | ty_destroyed_counter = 0 |
| static uint64 | ty_regen_id_counter = 0 |
| virtual std::string | toString () const |
| bool | callFromXMLIfEqual (DOM_Element &domElement, int *pRetVal=NULL) |
| std::string | getMetierName () |
| void * | getAllUses () |
| void | setAllUses (void *allUses) |
| void | cleanAllUses () |
| void | addInstance () |
| void | remInstance () |
| static LPTYElementArray | findTypeCollectionAndCallFromXML (DOM_Element parentElem, const char *type) |
| static void | setLogInstances (bool log) |
| static bool | getLogInstances () |
| static TYElement * | getInstance (TYUUID uuid) |
| static void | purgeInstances () |
| static bool | testId (const TYUUID &id, const TYElement *pElem) |
| static TYUUID | newID () |
| static TYUUID | fromString (QString id) |
| static QString | toString (TYUUID &uuid) |
| static uint64 | getConstructorCount () |
| static uint64 | getDestructorCount () |
| static uint64 | getIdGenerationCount () |
| static bool | getIsSavedOk () |
| static void | setIsSavedOk (const bool &toSave) |
| static void | setRegenerateID (const bool &bRegenerate) |
| static bool | getRegenerateID () |
| static TYElementContainer & | getInstances () |
Gestion du Calcul courant | |
| virtual void | updateCurrentCalcul (TYListID &listID, bool recursif=true) |
| virtual void | getChilds (LPTYElementArray &childs, bool recursif=true) |
| virtual void | setInCurrentCalcul (bool state, bool recurschild=true, bool recursparent=true) |
| virtual bool | isInCurrentCalcul () |
| void | addCopy () |
| Increment le compteur de nombre de copies. More... | |
| void | setCopyCount (const unsigned int copyCount) |
| Modifie la vaeur du compteur. More... | |
| void | OnChildInCalculStatusChange () |
Additional Inherited Members | |
Static Public Member Functions inherited from OPrototype | |
| static OPrototype * | findAndClone (const char *className) |
| static int | findPrototype (const char *className) |
| static OPrototype * | safeDownCast (OPrototype *pObject) |
| static void | add_factory (const char *, IOProtoFactory::ptr_type factory) |
Protected Member Functions inherited from OPrototype | |
| OPrototype () | |
Protected Attributes inherited from IRefCount | |
| int | m_refCount |
| The reference counter. More... | |
Classe de base des composants et elements metiers.
Definition at line 448 of file TYElement.h.
| TYElement::TYElement | ( | ) |
| TYElement::TYElement | ( | TYElement * | pParent, |
| bool | PutInInstanceList = true |
||
| ) |
Constructeur par defaut. Initialise un nouvel element metier. L'element parent permet de parcourir l'arborescence dans les elements metiers.
| pParent | : parent à associer |
| PutInInstanceList | : booleen indiquant si le TYElement cree utilisera la fonctionalite TYElement::getInstance(TYUUID uuid) |
Definition at line 116 of file TYElement.cpp.

| TYElement::TYElement | ( | const TYElement & | other, |
| bool | PutInInstanceList = true |
||
| ) |
Constructeur par copie.
| other | : element à copier |
| PutInInstanceList | : booleen indiquant si le TYElement cree utilisera la fonctionalite TYElement::getInstance(TYUUID uuid) |
Definition at line 128 of file TYElement.cpp.

|
virtual |
Destructeur.
Definition at line 139 of file TYElement.cpp.

|
inline |
Increment le compteur de nombre de copies.
Definition at line 547 of file TYElement.h.
|
private |
Ajoute l'instance this au tableau d'enregistrement des instances
Definition at line 226 of file TYElement.cpp.


| bool TYElement::callFromXMLIfEqual | ( | DOM_Element & | domElement, |
| int * | pRetVal = NULL |
||
| ) |
Teste si l'element porte le meme nom que celui de la classe (sans le prefixe TY). Si tel est le cas, la methode 'fromXML' est appellee et true est retourne.
| domElement | Le noeud XML a tester. |
| pRetVal | Adresse d'un 'int' pour la valeur de retour de 'fromXML'. |
true si l'element porte le meme nom que la classe. Definition at line 542 of file TYElement.cpp.


|
inline |
|
virtual |
Effectue une copie en allouant de la memoire (deep copy) et non pas en copiant seulement les pointeurs (shallow copy). Cette methode s'utilise comme l'operateur egal. L'ID peut ne pas etre copie, le parent n'est jamais copie.
| pOther | L'element a copier. |
| copyId | Copie l'identifiant unique ou pas. |
| pUseCopyTag | utilisation du tag de copie |
true si la copie est possible; false sinon. Reimplemented in TYRectangularMaillage, TYPointControl, TYPointCalcul, TYPanel, TYPalette, TYMaillage, TYLinearMaillage, TYCalcul, TYBoundaryNoiseMap, TYTerrain, TYPlanEau, TYCourbeNiveau, TYAltimetrie, TYVegetation, TYSol, TYMateriauConstruction, TYTopographie, TYSiteNode, TYRoute, TYReseauTransport, TYParoi, TYMurElement, TYMur, TYMachine, TYInfrastructure, TYEtage, TYEcran, TYDalle, TYSegment, TYRepere, TYRectangle, TYPolygon, TYPoint, TYGeometryNode, TYFaceSet, TYBox, TYAcousticVolumeNode, TYAcousticVolume, TYAcousticSurfaceNode, TYAcousticSurface, TYAcousticSemiCylinder, TYAcousticSemiCircle, TYAcousticRectangleNode, TYAcousticRectangle, TYAcousticPolygon, TYAcousticLine, TYAcousticFaceSet, TYAcousticCylinder, TYAcousticCircle, TYAcousticBox, TYUserSrcRegime, TYUserSourcePonctuelle, TYTrafic, TYSpectre, TYSourceSurfacic, TYSourcePonctuelle, TYSourceLineic, TYSourceCheminee, TYSourceBafflee, TYSource, TYRegime, TYDirectivity, and TYAttenuateur.
Definition at line 305 of file TYElement.cpp.


|
static |
Recherche un type particuler d'element ou un type derive dans un noeud XML et instancie un element du type trouve. Si des elements sont trouves, leur methode 'fromXML' est appelee.
| parentElem | L'element XML parent. |
| type | Le nom du type a chercher (ou un type derive). |
Definition at line 570 of file TYElement.cpp.


|
static |
conversion d'une string en identifiant 128 bits.
Definition at line 621 of file TYElement.cpp.


|
virtual |
Extrait les informations a partir du noeud DOM passe afin de recuperer les parametres de la classe.
| domElement | Le noeud DOM a partir duquel les parametres doivent etre recuperes. |
Reimplemented in TYResultat, TYRectangularMaillage, TYRay, TYProjet, TYPointControl, TYPointCalcul, TYPalette, TYMaillage, TYLinearMaillage, TYCalcul, TYBoundaryNoiseMap, TYTerrain, TYPlanEau, TYCoursEau, TYCourbeNiveau, TYAltimetrie, TYVegetation, TYSol, TYMateriauConstruction, TYTopographie, TYSiteNode, TYRoute, TYReseauTransport, TYParoi, TYMurElement, TYMur, TYMachine, TYInfrastructure, TYEtage, TYEcran, TYDalle, TYBatiment, TYSegment, TYRepere, TYRectangle, TYPolygon, TYPoint, TYGeometryNode, TYFaceSet, TYBox, TYChemineeSurface, TYBoucheSurface, TYAcousticVolumeNode, TYAcousticVolume, TYAcousticSurfaceNode, TYAcousticSurface, TYAcousticSemiCylinder, TYAcousticSemiCircle, TYAcousticRectangleNode, TYAcousticRectangle, TYAcousticPolygon, TYAcousticLine, TYAcousticFaceSet, TYAcousticCylinder, TYAcousticCircle, TYAcousticBox, TYUserSrcRegime, TYUserSourcePonctuelle, TYTrafic, TYSpectre, TYSourceSurfacic, TYSourcePonctuelle, TYSourceLineic, TYSourceCheminee, TYSourceBafflee, TYSource, TYRegime, TYComputedDirectivity, TYUserDefinedDirectivity, TYDirectivity, and TYAttenuateur.
Definition at line 379 of file TYElement.cpp.


|
inline |
|
inlinevirtual |
Collecte les enfants de cet element de facon recursive ou non.
Reimplemented in TYTopographie, TYSiteNode, TYInfrastructure, TYEtage, TYEcran, TYGeometryNode, TYAcousticVolumeNode, TYAcousticSurfaceNode, TYAcousticSemiCylinder, TYAcousticFaceSet, TYAcousticCylinder, and TYAcousticBox.
Definition at line 530 of file TYElement.h.

|
static |
Renvoie le nombre d'appels aux constructeurs d'objets metiers. (utilise pour faire des tests de performance)
Definition at line 632 of file TYElement.cpp.
|
static |
Renvoie le nombre d'appels aux destructeurs d'objets metiers. (utilise pour faire des tests de performance)
Definition at line 636 of file TYElement.cpp.
| const TYUUID & TYElement::getID | ( | ) | const |
Set/Get de l'identifiant de l'element.
Definition at line 176 of file TYElement.cpp.


|
static |
Renvoie le nombre de (re)generation of UUID (utilise pour faire des tests de performance)
Definition at line 641 of file TYElement.cpp.
Recherche une instance particuliere de type TYElement ou derive a partir de son ID.
| uuid | L'ID de l'element a rechercher. |
Definition at line 158 of file TYElement.cpp.


|
staticprivate |
|
inline |
Set/Get de l'indicateur de modification acoustique.
Definition at line 725 of file TYElement.h.

|
inlinestatic |
Get/Set de l'etat de l'indicateur de sauvegarde
Definition at line 906 of file TYElement.h.

|
inlinestatic |
Retourne l'etat de l'indicateur d'enregistrement des instances de type TYElement ou derive.
Definition at line 841 of file TYElement.h.
| std::string TYElement::getMetierName | ( | ) |
Retourne le nom de la donnee metier associee a cette classe. Ce nom est utilise pour le nom des tables en BDD ainsi que pour le nom des noeuds XML.
Definition at line 565 of file TYElement.cpp.


|
inlinevirtual |
Set/Get du nom de l'element.
Definition at line 691 of file TYElement.h.

|
inline |
Set/Get de la reference sur le parent de cet element.
Definition at line 706 of file TYElement.h.

|
inlinestatic |
|
inline |
Get de l'identifiant de l'element sous forme de string.
Definition at line 660 of file TYElement.h.


|
inline |
|
inlinevirtual |
Set/Get de l'indicateur d'appartenance au Calcul courant.
Definition at line 539 of file TYElement.h.

|
static |
Retourne un nouvel identifiant unique.
Definition at line 613 of file TYElement.cpp.

|
private |
Called by children to inform parents that they change their "in calcul" state.
Definition at line 438 of file TYElement.cpp.

| bool TYElement::operator!= | ( | const TYElement & | other | ) | const |
Operateur de comparaison.
Definition at line 300 of file TYElement.cpp.

Operateur de copie.
Definition at line 263 of file TYElement.cpp.


| bool TYElement::operator== | ( | const TYElement & | other | ) | const |
Operateur de comparaison.
Definition at line 280 of file TYElement.cpp.


|
static |
Vide le tableau de l'enregistrement des instances.
Definition at line 171 of file TYElement.cpp.


| void TYElement::regenerateID | ( | ) |
Genere un nouvel Id pour l'element (utilise lors de l'import d'un element dans un projet)
Definition at line 243 of file TYElement.cpp.


|
private |
Supprime une instance au tableau d'enregistrement des instances
Definition at line 235 of file TYElement.cpp.


|
inline |
|
inline |
Modifie la vaeur du compteur.
Definition at line 555 of file TYElement.h.

| void TYElement::setID | ( | const QString & | str_id | ) |
| void TYElement::setID | ( | TYUUID | id | ) |
Set/Get de l'identifiant de l'element.
Definition at line 186 of file TYElement.cpp.


|
virtual |
Set/Get de l'indicateur d'appartenance au Calcul courant.
Definition at line 408 of file TYElement.cpp.


|
virtual |
Set/Get de l'indicateur de modification acoustique.
Reimplemented in TYAcousticVolume, TYAcousticSurfaceNode, and TYAcousticSurface.
Definition at line 248 of file TYElement.cpp.

|
virtual |
Set/Get de l'indicateur de modification de la geometrie.
Reimplemented in TYPlanEau, TYCourbeNiveau, TYTopographie, and TYSiteNode.
Definition at line 253 of file TYElement.cpp.


|
inlinestatic |
Get/Set de l'etat de l'indicateur de sauvegarde
Definition at line 914 of file TYElement.h.

|
inlinestatic |
Active ou desactive l'enregistrement de toutes les instances creees de type TYElement ou derive.
| log | Active ou desactive. |
Definition at line 831 of file TYElement.h.

|
inline |
Set/Get du nom de l'element.
Definition at line 678 of file TYElement.h.

|
inline |
Definition at line 683 of file TYElement.h.
|
inline |
Set/Get de la reference sur le parent de cet element.
Definition at line 699 of file TYElement.h.

|
inlinestatic |
Get/Set de l'etat de regerneration d'ID
Definition at line 922 of file TYElement.h.

Verification de l'existence d'un doublon dans la liste des instances
Definition at line 216 of file TYElement.cpp.


|
inlinevirtual |
Retourne une chaine de caractere donnant des informations sur cet objet (utile pour le debugage).
Reimplemented in TYResultat, TYRectangularMaillage, TYProjet, TYPointControl, TYPointCalcul, TYPanel, TYPalette, TYMaillage, TYLinearMaillage, TYCalcul, TYBoundaryNoiseMap, TYTerrain, TYPlanEau, TYCoursEau, TYCourbeNiveau, TYAltimetrie, TYVegetation, TYSol, TYMateriauConstruction, TYTopographie, TYSiteNode, TYRoute, TYReseauTransport, TYParoi, TYMurElement, TYMur, TYMachine, TYInfrastructure, TYEtage, TYEcran, TYDalle, TYBatiment, TYSegment, TYRepere, TYRectangle, TYPolygon, TYPoint, TYFaceSet, TYBox, TYChemineeSurface, TYBoucheSurface, TYAcousticVolumeNode, TYAcousticVolume, TYAcousticSurfaceNode, TYAcousticSurface, TYAcousticSemiCylinder, TYAcousticSemiCircle, TYAcousticRectangleNode, TYAcousticRectangle, TYAcousticPolygon, TYAcousticLine, TYAcousticFaceSet, TYAcousticCylinder, TYAcousticCircle, TYAcousticBox, TYUserSrcRegime, TYUserSourcePonctuelle, TYTrafic, TYSpectre, TYSourceSurfacic, TYSourcePonctuelle, TYSourceLineic, TYSourceCheminee, TYSourceBafflee, TYSource, TYRegime, TYDirectivity, and TYAttenuateur.
Definition at line 785 of file TYElement.h.

|
static |
conversion d'un identifiant 128 bits en string.
Definition at line 627 of file TYElement.cpp.
|
virtual |
Construit une arborescence DOM a partir du noeud passe afin de sauvegarder les parametres au format XML.
| domElement | Le noeud DOM parent a partir duquel l'arborescence doit etre creee. |
Reimplemented in TYResultat, TYRectangularMaillage, TYRay, TYProjet, TYPointControl, TYPointCalcul, TYPalette, TYMaillage, TYLinearMaillage, TYCalcul, TYBoundaryNoiseMap, TYTerrain, TYPlanEau, TYCoursEau, TYCourbeNiveau, TYAltimetrie, TYVegetation, TYSol, TYMateriauConstruction, TYTopographie, TYSiteNode, TYRoute, TYReseauTransport, TYParoi, TYMurElement, TYMur, TYMachine, TYInfrastructure, TYEtage, TYEcran, TYDalle, TYBatiment, TYSegment, TYRepere, TYRectangle, TYPolygon, TYPoint, TYGeometryNode, TYFaceSet, TYBox, TYAcousticVolumeNode, TYAcousticVolume, TYAcousticSurfaceNode, TYAcousticSurface, TYAcousticSemiCylinder, TYAcousticSemiCircle, TYAcousticRectangleNode, TYAcousticRectangle, TYAcousticPolygon, TYAcousticLine, TYAcousticFaceSet, TYAcousticCylinder, TYAcousticCircle, TYAcousticBox, TYUserSrcRegime, TYUserSourcePonctuelle, TYTrafic, TYSpectre, TYSourceSurfacic, TYSourcePonctuelle, TYSourceLineic, TYSourceCheminee, TYSourceBafflee, TYSource, TYRegime, TYComputedDirectivity, TYUserDefinedDirectivity, TYDirectivity, and TYAttenuateur.
Definition at line 366 of file TYElement.cpp.


|
virtual |
Verifie si cet element est present dans la liste d'ID passee. S'il est present cela signifie qu'il est actif dans le Calcul courant, c'est cet etat qui est retourne.
| listID | La liste d'ID du Calcul courant. |
| recursif | Indique si la mise a jour du Calcul courant doit etre recursive. |
Reimplemented in TYTopographie, TYSiteNode, and TYInfrastructure.
Definition at line 458 of file TYElement.cpp.


|
protected |
Multi purpose void pointer (use for compatibility actually)
Definition at line 986 of file TYElement.h.
|
protected |
Definition at line 971 of file TYElement.h.
|
staticprivate |
Indicateur de regeneration d'ID true si regeneration d'ID a la lecture d'un fichier XML.
Definition at line 999 of file TYElement.h.
|
protected |
Definition at line 974 of file TYElement.h.
|
protected |
Indique si cet element est actif dans le Calcul courant.
Definition at line 977 of file TYElement.h.
|
staticprivate |
Collection de toutes les instances de type TYElement et derivees.
Definition at line 993 of file TYElement.h.
|
protected |
Indicateur de modification acoustique.
Definition at line 980 of file TYElement.h.
|
staticprivate |
Indique si on souhaite registrer toutes les instances de type TYElement et derivees.
Le log des instances ne doit absolument pas etre active au lancement de l'application, le log des instances statiques provoque un crash.
Definition at line 990 of file TYElement.h.
|
protected |
Nom courant de l'element.
Definition at line 965 of file TYElement.h.
|
protected |
L'object graphique metier associe a cet element.
Definition at line 983 of file TYElement.h.
|
protected |
Reference sur l'element parent.
Definition at line 968 of file TYElement.h.
|
staticprivate |
Indicateur de modification. Passe a true si un TYElement a ete modifie, Indique la necessite de sauvegarder
Definition at line 997 of file TYElement.h.
|
mutableprivate |
Identifiant unique de l'element.
Definition at line 961 of file TYElement.h.
|
staticprivate |
Definition at line 1001 of file TYElement.h.
|
staticprivate |
Definition at line 1002 of file TYElement.h.
|
staticprivate |
Definition at line 1003 of file TYElement.h.