source: Sophya/trunk/SophyaPI/PIext/nomhistadapter.h@ 326

Last change on this file since 326 was 326, checked in by ercodmgr, 26 years ago

1/ NTupleInterface mis ds Outils++ et complete -
2/ Les PINtuple et PINtup3D utilisent maintenant NTupleInterface
3/ Debut modification interface NObjMgr - Reza 23/6/99

File size: 3.7 KB
Line 
1// This may look like C code, but it is really -*- C++ -*-
2// Adaptateur d objets (pour NamedObjMgr) pour Histos/NTuple
3// Reza 05/99
4// LAL-IN2P3/CNRS CEA-DAPNIA
5
6#ifndef NOMHISTADAPTER_H_SEEN
7#define NOMHISTADAPTER_H_SEEN
8
9#include "nomgadapter.h"
10#include "histos.h"
11#include "histos2.h"
12#include "hisprof.h"
13#include "ntuple.h"
14
15//-------------------------------------------------------------------------
16// Class Adaptateur d'objet (Pour NamedObjMgr) d'objet Histo / HProf
17//-------------------------------------------------------------------------
18
19class NOMAdapter_Histo : public NObjMgrAdapter {
20public:
21 NOMAdapter_Histo(Histo* h = NULL);
22 virtual ~NOMAdapter_Histo();
23
24 virtual NObjMgrAdapter* Clone(AnyDataObj* o);
25
26 // virtual void ReadFits(string const & flnm);
27 // virtual void SaveFits(string const & flnm);
28 virtual void SavePPF(POutPersist& s, string const & nom);
29
30 virtual void Print(ostream& os);
31 virtual PIDrawer* GetDrawer(string& dopt);
32 virtual NTupleInterface* GetNTupleInterface();
33
34protected:
35 Histo* mHis;
36};
37
38// Class Interface NTuple pour Histo / HProf
39class NTupInt_Histo : public NTupleInterface {
40public:
41 NTupInt_Histo(Histo* h);
42 virtual ~NTupInt_Histo();
43 virtual uint_4 NbLines() const ;
44 virtual uint_4 NbColumns() const ;
45 virtual r_8 * GetLineD(int n) const ;
46 virtual string VarList_C(const char* nomx=NULL) const ;
47protected:
48 Histo* mHis;
49 mutable r_8 mRet[4];
50};
51
52//-------------------------------------------------------------------------
53// Class Adaptateur d'objet (Pour NamedObjMgr) d'objet Histo2D
54//-------------------------------------------------------------------------
55
56class NOMAdapter_Histo2D : public NObjMgrAdapter {
57public:
58 NOMAdapter_Histo2D(Histo2D* h = NULL);
59 virtual ~NOMAdapter_Histo2D();
60
61 virtual NObjMgrAdapter* Clone(AnyDataObj* o);
62
63 // virtual void ReadFits(string const & flnm);
64 // virtual void SaveFits(string const & flnm);
65 virtual void SavePPF(POutPersist& s, string const & nom);
66
67 virtual void Print(ostream& os);
68 virtual PIDrawer* GetDrawer(string& dopt);
69 virtual P2DArrayAdapter* Get2DArray(string& dopt);
70 virtual NTupleInterface* GetNTupleInterface();
71
72protected:
73 Histo2D* mHis;
74};
75
76// Class Interface NTuple pour Histo2D
77class NTupInt_Histo2D : public NTupleInterface {
78public:
79 NTupInt_Histo2D(Histo2D* h);
80 virtual ~NTupInt_Histo2D();
81 virtual uint_4 NbLines() const ;
82 virtual uint_4 NbColumns() const ;
83 virtual r_8 * GetLineD(int n) const ;
84 virtual string VarList_C(const char* nomx=NULL) const ;
85protected:
86 Histo2D* mHis;
87 mutable r_8 mRet[6];
88};
89
90
91//-------------------------------------------------------------------------
92// Class Adaptateur d'objet (Pour NamedObjMgr) d'objet NTuple
93//-------------------------------------------------------------------------
94
95class NOMAdapter_NTuple : public NObjMgrAdapter {
96public:
97 NOMAdapter_NTuple(NTuple* h = NULL);
98 virtual ~NOMAdapter_NTuple();
99
100 virtual NObjMgrAdapter* Clone(AnyDataObj* o);
101
102 // virtual void ReadFits(string const & flnm);
103 // virtual void SaveFits(string const & flnm);
104 virtual void SavePPF(POutPersist& s, string const & nom);
105
106 virtual void Print(ostream& os);
107 virtual NTupleInterface* GetNTupleInterface();
108
109protected:
110 NTuple* mNt;
111};
112
113// Class Interface NTuple pour NTuple
114class NTupInt_NTuple : public NTupleInterface {
115public:
116 NTupInt_NTuple(NTuple* nt);
117 virtual ~NTupInt_NTuple();
118 virtual uint_4 NbLines() const ;
119 virtual uint_4 NbColumns() const ;
120 virtual r_8 * GetLineD(int n) const ;
121 virtual string VarList_C(const char* nomx=NULL) const ;
122protected:
123 NTuple* mNt;
124};
125
126
127#endif
Note: See TracBrowser for help on using the repository browser.