21#include <Interprete_bloc.h>
28int Objet_U::static_obj_counter_=0;
37static int object_id_to_track = -1;
44static void object_trap(
int obj_id)
46 Cerr <<
"Objet_U::Objet_U() : object_id_=" << obj_id << finl;
56 object_id_(static_obj_counter_++)
58 int obj_id = object_id_;
59 if (obj_id == object_id_to_track)
64 _num_obj_ = memoire.
add(
this);
73 object_id_(static_obj_counter_++)
75 int obj_id = object_id_;
76 if (obj_id == object_id_to_track)
81 _num_obj_ = memoire.
add(
this);
117 Cerr <<
"The method " << __func__ <<
" must be overloaded in " <<
que_suis_je() <<
" !!!!" << finl;
160 static Nom nom_du_cas_;
169 return ref_cast_non_const(
Objet_U,obj);
173 return ref_cast_non_const(
Objet_U,obj);
183 return _num_obj_=new_ones[_num_obj_];
214 return interprete_bidon();
220 return interprete_bidon();
260 memoire.
suppr(_num_obj_);
321 static Nom inconnu=
"neant";
341 Cerr <<
"The method " << __func__ <<
" must be overloaded in " <<
que_suis_je() <<
" !!!!" << finl;
355 Cerr <<
"The method " << __func__ <<
" must be overloaded in " <<
que_suis_je() <<
" !!!!" << finl;
Classe de base des objets "interprete".
Keyword to read an object, typically from a data file.
static Memoire & Instance()
Retourne un pointeur sur l'instance de la memoire Cree un nouvel objet memoire si aucune instance n'a...
int suppr(int)
Suppression de la memoire de l'Objet_U de numero num L'Objet_U n'est pas supprime,...
int add(Objet_U *)
Ajoute un Objet_U dans la Memoire de TRUST.
Une chaine de caractere (Nom) en majuscules.
class Nom Une chaine de caractere pour nommer les objets de TRUST
friend int operator!=(const Objet_U &, const Objet_U &)
Comparaison de deux Objet_U x et y Renvoie 1 - x.
const Objet_U & operator=(const Objet_U &)
Operateur= : ne fait rien (on conserve le numero et l'identifiant).
virtual int lire_motcle_non_standard(const Motcle &motlu, Entree &is)
Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree.
virtual int associer_(Objet_U &)
Associe l'Objet_U a un autre Objet_U Methode virtuelle a surcharger.
static const Type_info * info()
Donne des informations sur le type de l'Objet_U.
int numero() const
Renvoie l'indice de l'objet dans Memoire::data.
const Interprete & interprete() const
static bool disable_TU
Flag to disable or not the writing of the .TU files.
virtual void nommer(const Nom &)
Donne un nom a l'Objet_U Methode virtuelle a surcharger.
const Nom & que_suis_je() const
renvoie la chaine identifiant la classe.
virtual Entree & readOn(Entree &)
Lecture d'un Objet_U sur un flot d'entree Methode a surcharger.
friend int operator==(const Objet_U &, const Objet_U &)
retourne x.
static double precision_geom
static bool stat_per_proc_perf_log
Flag to enable the writing of the statistics detailed per processor in _csv.TU file.
static const Objet_U & self_cast(const Objet_U &)
methode ajoutee pour caster en python
static const Nom & nom_du_cas()
Renvoie une reference constante vers le nom du cas.
virtual int change_num(const int *const)
Change le numero interne de l'Objet_U.
virtual int est_egal_a(const Objet_U &) const
Renvoie 1 si l'objet x et *this sont une seule et meme instance (meme adresse en memoire).
const char * le_type() const
Donne le nom du type de l'Objet_U.
Objet_U()
Constructeur par defaut : attribue un numero d'identifiant unique a l'objet (object_id_),...
virtual const Nom & le_nom() const
Donne le nom de l'Objet_U Methode a surcharger : renvoie "neant" dans cette implementation.
static int format_precision_geom
virtual int reprendre(Entree &)
Reprise d'un Objet_U sur un flot d'entree Methode a surcharger.
static int DEACTIVATE_SIGINT_CATCH
static Type_info info_obj
static Nom & get_set_nom_du_cas()
Renvoie une reference non constante vers le nom du cas (pour pouvoir le modifier).
int get_object_id() const
Renvoie l'identifiant unique de l'objet object_id_.
~Objet_U() override
Destructeur, supprime l'objet de la liste d'objets enregistres dans "memoire".
virtual const Type_info * get_info() const
Donne des informations sur le type de l'Objet_U.
virtual Sortie & printOn(Sortie &) const
Ecriture de l'objet sur un flot de sortie Methode a surcharger.
virtual int sauvegarder(Sortie &) const
Sauvegarde d'un Objet_U sur un flot de sortie Methode a surcharger.
Classe de base de TRUST (notamment Objet_U).
static void exit(int exit_code=-1)
Routine de sortie de TRUST dans une region Kokkos.
modelise une information de type pour les Objet_U