Analysis  version 7.0 - august 2014
ParamArray Class Reference

#include <ParamArray.hh>

Inheritance diagram for ParamArray:
Param

Public Member Functions

 ParamArray (const string &par_name="unnamed", const u_int s=2)
 
 ParamArray (const string &par_name, const u_int s, const Data &d)
 
 ParamArray (const ParamArray &par)
 
ParamArrayoperator= (const ParamArray &par)
 
virtual ~ParamArray ()
 
Paramoperator= (const Data &d)
 
Paramoperator= (const Int2 val)
 
Paramoperator= (const U_Int2 val)
 
Paramoperator= (const Int4 val)
 
Paramoperator= (const U_Int4 val)
 
Paramoperator= (const Int8 val)
 
Paramoperator= (const U_Int8 val)
 
Paramoperator= (const Real4 val)
 
Paramoperator= (const Real8 val)
 
 operator Data & () const
 
 operator Int2 () const
 
 operator U_Int2 () const
 
 operator Int4 () const
 
 operator U_Int4 () const
 
 operator Int8 () const
 
 operator U_Int8 () const
 
 operator Real4 () const
 
 operator Real8 () const
 
u_int TypeId () const
 
string Type () const
 
string InfoString () const
 
string ValueString () const
 
string ValueFullString () const
 
string DataString () const
 
string GetDataType () const
 
u_int GetDataTypeId () const
 
void Reset ()
 
u_int Dimension () const
 
const DataGet () const
 
Dataoperator[] (u_int index) const
 
u_int GetCursor () const
 
bool First () const
 
bool Last () const
 
bool Next () const
 
bool Previous () const
 
 ClassDef (ParamArray, 0)
 
- Public Member Functions inherited from Param
 Param (const string &par_name="unnamed")
 
 Param (const Param &par)
 
Paramoperator= (const Param &par)
 
virtual ~Param ()
 
virtual const DataGetDefaultData ()
 
virtual void SetDefaultData (const Data &d)
 
 ClassDef (Param, 0)
 

Protected Member Functions

Data ** _AllocArray (const u_int s, const Data &d)
 
Param_SetData (const Data &d)
 
- Protected Member Functions inherited from Param
Data_AllocData (const Data &)
 

Protected Attributes

u_int size
 Taille du tableau (nombre de données)
 
u_int * cursor
 Position actuelle (c'est un pointeur pour pouvoir être modifié même dans une instance constante)
 
Data ** array_ptr
 Pointeur sur la table de données associée au paramètre.
 
- Protected Attributes inherited from Param
u_int status
 Mot d'état du paramètre (non implémenté)
 
Datadef_value_ptr
 Pointeur sur la valeur par défaut du paramètre.
 

Private Member Functions

 GObject (ParamArray)
 

Detailed Description

C'est une classe qui décrit les paramètres de type tableau de données de longueur fixe d'un événement. Les données sont alors toutes du même type.

Lorsqu'une valeur est écrite par un accès autre que l'opérateur [], un curseur est incrémenté. Ainsi, chaque fois qu'une affectation est opérée, c'est la donnée suivante qui est affectée.

En ce qui concerne la lecture, ce curseur n'est pas modifié, mais les méthode First(), Last(), Next() et Previous() permettent de se déplacer dans les valeurs (en plus de l'opérateur []).

Note
Ce qui est alloué, c'est un tableau de pointeurs de type (Data *) et non un tableau de données, parce que les données ont des tailles variables, et qu'une fois considéré comme un tableau de Data, le compilateur considère que chaque élément a la taille d'un objet Data !

Constructor & Destructor Documentation

ParamArray::ParamArray ( const string &  par_name = "unnamed",
const u_int  s = 2 
)

Constructeur: le nom de paramètre doit être spécifié. Par défaut (si non spécifié explicitement), un tableau de données de type U_In2 est crée.

Parameters
par_namenom du paramètre
staille du tableau

References _AllocArray(), array_ptr, cursor, Param::def_value_ptr, and size.

ParamArray::ParamArray ( const string &  par_name,
const u_int  s,
const Data d 
)

Constructeur à partir d'un nom et d'une donnée typée.

Parameters
par_namenom du paramètre
staille du tableau
ddonnée

References _AllocArray(), Param::_AllocData(), array_ptr, cursor, Param::def_value_ptr, and size.

ParamArray::ParamArray ( const ParamArray par)

Constructeur de recopie.

Parameters
parparamètre à copier

References _AllocArray(), Param::_AllocData(), array_ptr, cursor, Param::def_value_ptr, and size.

ParamArray::~ParamArray ( )
virtual

Destructeur

References array_ptr, cursor, and size.

Member Function Documentation

ParamArray::GObject ( ParamArray  )
private

Macro from GCpp library that defines the following functions:

  • ClassName(): return the real class name of the object
  • StaticClassName(): return the used class name of the object (that may be a base class of the real object).
  • IsInstanceOf<T>(): return true if the current object is an instance of the template class name argument
  • Clone(): return an allocated copy of the object.
ParamArray & ParamArray::operator= ( const ParamArray par)

Opérateur d'affectation.

Parameters
parparamètre à affecter

References _AllocArray(), array_ptr, cursor, and size.

Param& ParamArray::operator= ( const Data d)
inlinevirtual

Opérateur d'affectation d'une donnée.

Parameters
ddonnée à affecter

Implements Param.

References _SetData().

Param& ParamArray::operator= ( const Int2  val)
inlinevirtual

Opérateur d'affectation d'un entier 16 bits signé.

Parameters
valvaleur à affecter

Implements Param.

References _SetData().

Param& ParamArray::operator= ( const U_Int2  val)
inlinevirtual

Opérateur d'affectation d'un entier 16 bits non signé.

Parameters
valvaleur à affecter

Implements Param.

References _SetData().

Param& ParamArray::operator= ( const Int4  val)
inlinevirtual

Opérateur d'affectation d'un entier 32 bits signé.

Parameters
valvaleur à affecter

Implements Param.

References _SetData().

Param& ParamArray::operator= ( const U_Int4  val)
inlinevirtual

Opérateur d'affectation d'un entier 32 bits non signé.

Parameters
valvaleur à affecter

Implements Param.

References _SetData().

Param& ParamArray::operator= ( const Int8  val)
inlinevirtual

Opérateur d'affectation d'un entier 64 bits signé.

Parameters
valvaleur à affecter

Implements Param.

References _SetData().

Param& ParamArray::operator= ( const U_Int8  val)
inlinevirtual

Opérateur d'affectation d'un entier 64 bits non signé.

Parameters
valvaleur à affecter

Implements Param.

References _SetData().

Param& ParamArray::operator= ( const Real4  val)
inlinevirtual

Opérateur d'affectation d'un réel 32 bits.

Parameters
valvaleur à affecter

Implements Param.

References _SetData().

Param& ParamArray::operator= ( const Real8  val)
inlinevirtual

Opérateur d'affectation d'un réel 64 bits.

Parameters
valvaleur à affecter

Implements Param.

References _SetData().

ParamArray::operator Data & ( ) const
inlinevirtual

Opérateur de cast une donnée générique.

Implements Param.

References array_ptr, and cursor.

ParamArray::operator Int2 ( ) const
inlinevirtual

Opérateur de cast une donnée de type entier 32 bits signé.

Implements Param.

References array_ptr, and cursor.

ParamArray::operator U_Int2 ( ) const
inlinevirtual

Opérateur de cast une donnée de type entier 32 bits non signé.

Implements Param.

References array_ptr, and cursor.

ParamArray::operator Int4 ( ) const
inlinevirtual

Opérateur de cast une donnée de type entier 32 bits signé.

Implements Param.

References array_ptr, and cursor.

ParamArray::operator U_Int4 ( ) const
inlinevirtual

Opérateur de cast une donnée de type entier 32 bits non signé.

Implements Param.

References array_ptr, and cursor.

ParamArray::operator Int8 ( ) const
inlinevirtual

Opérateur de cast une donnée de type entier 64 bits signé.

Implements Param.

References array_ptr, and cursor.

ParamArray::operator U_Int8 ( ) const
inlinevirtual

Opérateur de cast une donnée de type entier 64 bits non signé.

Implements Param.

References array_ptr, and cursor.

ParamArray::operator Real4 ( ) const
inlinevirtual

Opérateur de cast une donnée de type réel 32 bits.

Implements Param.

References array_ptr, and cursor.

ParamArray::operator Real8 ( ) const
inlinevirtual

Opérateur de cast une donnée de type réel 64 bits.

Implements Param.

References array_ptr, and cursor.

u_int ParamArray::TypeId ( ) const
inlinevirtual

Retourne l'identificateur de type de paramètre.

Reimplemented from Param.

Referenced by GetDataTypeId().

string ParamArray::Type ( ) const
inlinevirtual

Retourne le type de paramètre.

Implements Param.

Referenced by GetDataType(), and InfoString().

string ParamArray::InfoString ( ) const
inlinevirtual

Retourne chaîne de caractères avec le paramètre et son type.

Implements Param.

References array_ptr, size, and Type().

string ParamArray::ValueString ( ) const
inlinevirtual

Retourne chaîne de caractères avec le paramètre et son type et la valeur courante. Le curseur est passé à la donnée suivante du tableau.

Implements Param.

References cursor, Get(), and size.

string ParamArray::ValueFullString ( ) const
inlinevirtual

Retourne chaîne de caractères avec le paramètre et son type et la valeur courante avec son mot d'état. Le curseur est passé à la donnée suivante du tableau.

Implements Param.

References cursor, Get(), and size.

string ParamArray::DataString ( ) const
virtual

Retourne chaîne de caractères avec le paramètre et son type et l'ensemble des données.

Implements Param.

References Get(), size, and Data::Type().

string ParamArray::GetDataType ( ) const
inlinevirtual

Retourne chaîne de caractères avec de donnée.

Implements Param.

References array_ptr, and Type().

u_int ParamArray::GetDataTypeId ( ) const
inlinevirtual

Retourne l'identifiant du type de donnée.

Implements Param.

References array_ptr, and TypeId().

void ParamArray::Reset ( )
virtual

Remise à zéro du paramètre.

Implements Param.

References array_ptr, cursor, size, and Param::status.

u_int ParamArray::Dimension ( ) const
inlinevirtual

Retourne le nombre de données, c'est à dire la dimension du tableau de données.

Implements Param.

References size.

const Data& ParamArray::Get ( ) const
inlinevirtual

Retourne la donnée correspondant au curseur.

Implements Param.

References array_ptr, and cursor.

Referenced by DataString(), ValueFullString(), and ValueString().

Data & ParamArray::operator[] ( u_int  index) const
virtual

Opérateur []: renvoie la valeur de rand donnée. Cette méthode n'a de sens que pour un paramètre à valeurs multiples. Pour un paramètre simple, tout argument différent de zéro entraine une erreur.

Parameters
indexposition de la valeur dans le paramètre

Implements Param.

References array_ptr, bad_data, and size.

u_int ParamArray::GetCursor ( ) const
inline

Retourne la position actuelle du curseur dans le tableau.

References cursor.

bool ParamArray::First ( ) const
inlinevirtual

Positionne le paramètre sur sa première donnée. Dans le cas d'un paramètre de type ParamArray, cette méthode retourne toujours vrai.

Implements Param.

bool ParamArray::Last ( ) const
inlinevirtual

Positionne le paramètre sur sa dernière donnée. Dans le cas d'un paramètre de type ParamArray, cette méthode retourne toujours vrai.

Implements Param.

References size.

bool ParamArray::Next ( ) const
inlinevirtual

Positionne le paramètre sur la dernière suivante. Dans le cas d'un paramètre de type ParamArray, cette méthode retourne vrai le paramètre n'est pas déjà positionné sur la dernière valeur.

Implements Param.

References cursor, and size.

bool ParamArray::Previous ( ) const
inlinevirtual

Positionne le paramètre sur la dernière précédente. Dans le cas d'un paramètre de type ParamArray, cette méthode retourne vrai le paramètre n'est pas déjà positionné sur la première valeur.

Implements Param.

References cursor.

Data ** ParamArray::_AllocArray ( const u_int  s,
const Data d 
)
protected

Allocation d'un nouveau tableau de données. Cette méthode est protégée et est utilisée pour la création d'instances, les affectations et les cast.

Parameters
staille du tableau
dinstance de la donnée à créer

References DATA_TYPE_INT2, DATA_TYPE_INT4, DATA_TYPE_INT8, DATA_TYPE_REAL4, DATA_TYPE_REAL8, DATA_TYPE_U_INT2, DATA_TYPE_U_INT4, DATA_TYPE_U_INT8, Data::Type(), and Data::TypeId().

Referenced by operator=(), and ParamArray().

Param& ParamArray::_SetData ( const Data d)
inlineprotected

Affecte une valeur à la donnée courante (indiquée par le curseur). Un message d'alerte est généré si la taille du tableau est dépassée. Cette méthode est appelée dans le cas des surcharges de l'opérateur d'affectation pour les différents types de données.

Parameters
ddonnée à affecter

References array_ptr, cursor, and size.

Referenced by operator=().

ParamArray::ClassDef ( ParamArray  ,
 
)

Définition à usage de ROOT...


The documentation for this class was generated from the following files: