Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2008:05_27

Commit 2008-05-27

  • Gestion de la mémoire des matériaux & materialLaws

Modifs

  • Material & MaterialLaw dérivent dorénavant de NumberedObject
    • Material & MaterialLaw étaient encore & toujours des objets indexés (et non dénommés) dans leurs Sets respectifs. D'où quelques désagréments :
      • La création d'un materiau 1001 générait 1002 entrées (vararray +1) dans le MaterialSet,…
      • Utilisation de l'operateur '[]' alors que partout on utilise des '()' (facile à expliquer aux utilisateurs…)
      • Gestion interne lourde
    • ⇒ Unification les Material & MaterialLaw dérivent dorénavant de NumberedObject
    • MaterialSet & MaterialLawsSet dérivent de NumberedObjectSetTemplate<Material> ou NumberedObjectSetTemplate<MaterialLaw>
    • Modification de la méthode l'accès aux matériaux dans les ElementsShcuts
    • Ajout d'un WARNING_MESSAGE lorsque l'on redéfinit un matériau (matlaw) de numéro existant déjà & gestion propre de la destruction / reconstruction
  • LoadAdaptationManager
    • Conséquence de la modification de l'accès au matériaux
    • Nettoyage de la classe de toute la pseudo-modularité (possibilité théoriquement mise en avant d'appliquer le loadAdaptationManager sur plusieurs materiaux / interaction,… alors que les datas ne permettaient pas un tel usage
    • Celui qui a du temps à perdre peut se pencher sur le fond (il y a encore de quoi faire !!!)
  • ExtrusionMesher
    • Suppression d'un bug de gestion memoire (lastLayer→incRef())
  • mtGlobal
    • Ajout d'une macro DEFGETSETMACRO_C_REFCOUNTED définissant une fonction set pour des objets dérivant de RefCounted
    • Ne peut être utilisé que sur des pointeurs
    • La fonction set n'est évidemment pas const !!! (vu que l'on fait var→incRef();)
    • Ajout indispensables de déstructeurs (→decRef()) dans les classes où cette macro est utilisée
    • Application de la macro dans les matériaux pour le stoquage des matLaw (et suppression des numeros jamais utilisés).

Tests

  • 100% modifiés !!! : materialSet[no] ⇒ materialSet(no) …
  • Suppression des “_” dans le nom des tests non “complex” : apps\monosMaterials\veReeseHHHH_1.py ⇒ apps\monosMaterials\veReeseHHHH1.py

Projet

  • up to date

ToDo list

  • corriger la doc
  • so many other things …

Fichiers ajoutés/supprimés

A 
R oofelie/oeFEMBase/MaterialSet.inl

Luc PAPELEUX 2008/05/27

commit/2008/05_27.txt · Last modified: 2016/03/30 15:23 (external edit)