- Directive d'inclusion : #include VariableDescriptor.h
Un descripteur d'entité est déclaré variable, c'est-à-dire installé comme une instance de la présente classe, lorsque sa valeur est censée évoluer au cours de la simulation. Sont activés les services tels que ceux rendus par la classe DescValueMonitor, ceux attachés à l'utilisation interactive du simulateur (notamment l'affichage de la dynamique des changements de valeur) et enfin la possibilité de sauvegarder sur fichier externe la chronique des changements de valeurs..
Lors de la création d'un descripteur variable, les mêmes valeurs par défaut (celles qui seront renvoyées par GetDefaultValue) que pour les descripteurs constants sont attribuées aux descripteurs variables (voir le tableau ci-dessous). Dans les constructeurs propres à son application, l'utilisateur peut définir et affecter une nouvelle valeur par défaut avec les méthodes SetDefaultValue et SetToDefaultValue. Aucune valeur (celle renvoyée par Get..Value) n'est attribuée automatiquement au descripteur.
Noter que dans la présente version de DIESE, les types 'tableau numérique' (pIntTab*, pFloatTab* pDoubleTab*) ne sont pas supportés :
classe valeur par défaut valeur type IntVariableDescriptor 0 0 valeur entière (int) FloatVariableDescriptor 0.0 0.0 valeur flottante (float) DoubleVariableDescriptor 0.0 0.0 valeur flottante double précision (double) StringVariableDescriptor "" "" une chaîne de caractères (char*) EntityVariableDescriptor NULL NULL BasicEntity* EntitySpecVariableDescriptor NULL NULL EntitySpec* StringTabVariableDescriptor un tableau de taille nulle un tableau de taille nulle TableauString* EntityTabVariableDescriptor un tableau de taille nulle un tableau de taille nulle pEntityTab* DescValueSpecTabVariableDescriptor un tableau de taille nulle NULL pDescValueSpecTab* IntDomainVariableDescriptor un tableau de taille nulle un tableau de taille nulle pIntIntervalTab* FloatDomainVariableDescriptor un tableau de taille nulle un tableau de taille nulle pFloatIntervalTab* DoubleDomainVariableDescriptor un tableau de taille nulle un tableau de taille nulle pDoubleIntervalTab*