1 | // This may look like C code, but it is really -*- C++ -*-
|
---|
2 | // Interface de type NTuple Reza 05/99
|
---|
3 | // LAL-IN2P3/CNRS CEA-DAPNIA
|
---|
4 |
|
---|
5 | #ifndef NTUPLEINTERFACE_H_SEEN
|
---|
6 | #define NTUPLEINTERFACE_H_SEEN
|
---|
7 |
|
---|
8 | #include "machdefs.h"
|
---|
9 | #include <string>
|
---|
10 |
|
---|
11 | namespace SOPHYA {
|
---|
12 |
|
---|
13 | class NTupleInterface {
|
---|
14 | public:
|
---|
15 | NTupleInterface();
|
---|
16 | virtual ~NTupleInterface();
|
---|
17 | // Nombre de lignes du NTuple (Nb d'entrees)
|
---|
18 | virtual sa_size_t NbLines() const ;
|
---|
19 | // Nombre de colonnes (nb de variables)
|
---|
20 | virtual sa_size_t NbColumns() const ;
|
---|
21 | // La ligne numero n, sous forme d'un tableau de double
|
---|
22 | virtual r_8 * GetLineD(sa_size_t n) const ;
|
---|
23 | // Cellule de la ligne n, colonne k
|
---|
24 | virtual r_8 GetCell(sa_size_t n, sa_size_t k) const ;
|
---|
25 | // Cellule de la ligne n, colonne nom
|
---|
26 | virtual r_8 GetCell(sa_size_t n, string const & nom) const ;
|
---|
27 | // Cellule de la ligne n, colonne k, converti en chaine de caracteres
|
---|
28 | virtual string GetCelltoString(sa_size_t n, sa_size_t k) const ;
|
---|
29 | // Cellule de la ligne n, colonne nom, converti en chaine de caracteres
|
---|
30 | virtual string GetCelltoString(sa_size_t n, string const & nom) const ;
|
---|
31 | // Min et Max pour la colonne k
|
---|
32 | virtual void GetMinMax(sa_size_t k, double& min, double& max) const ;
|
---|
33 | // Min et Max pour la colonne nom
|
---|
34 | virtual void GetMinMax(string const & nom, double& min, double& max) const ;
|
---|
35 | // Numero de colonne pour nom
|
---|
36 | virtual sa_size_t ColumnIndex(string const & nom) const ;
|
---|
37 | // Nom de colonne numero k
|
---|
38 | virtual string ColumnName(sa_size_t k) const;
|
---|
39 | // Declaration des variables style C
|
---|
40 | virtual string VarList_C(const char* nomx=NULL) const ;
|
---|
41 | // Entete et liste de variable, pouvant servir a l'impression
|
---|
42 | virtual string LineHeaderToString() const;
|
---|
43 | // Contenu de la ligne n, pouvant servir a l'impression
|
---|
44 | virtual string LineToString(sa_size_t n) const;
|
---|
45 | };
|
---|
46 |
|
---|
47 | } // namespace SOPHYA
|
---|
48 |
|
---|
49 | #endif /* NTUPLEINTERFACE_H_SEEN */
|
---|
50 |
|
---|
51 |
|
---|