1 | // This may look like C code, but it is really -*- C++ -*-
|
---|
2 | // Adaptateurs et Drawers divers pour Outils PEIDA++
|
---|
3 | // R. Ansari 06-08/98
|
---|
4 | // LAL (Orsay) / IN2P3-CNRS DAPNIA/SPP (Saclay) / CEA
|
---|
5 |
|
---|
6 | #ifndef PIPODRW_H_SEEN
|
---|
7 | #define PIPODRW_H_SEEN
|
---|
8 |
|
---|
9 | #include "machdefs.h"
|
---|
10 | #include "pidrawer.h"
|
---|
11 | #include "parradapter.h"
|
---|
12 | #include "histos2.h"
|
---|
13 | #include "hist2err.h"
|
---|
14 |
|
---|
15 | #ifdef SANS_EVOLPLANCK
|
---|
16 | class GeneralFunction;
|
---|
17 | #else
|
---|
18 | namespace SOPHYA {class GeneralFunction;}
|
---|
19 | #endif
|
---|
20 |
|
---|
21 | class PIGFFDrawer : public PIDrawer {
|
---|
22 | public:
|
---|
23 | PIGFFDrawer(GeneralFunction*);
|
---|
24 | virtual ~PIGFFDrawer();
|
---|
25 |
|
---|
26 | virtual void Draw(PIGraphicUC* g, double xmin, double ymin, double xmax, double ymax);
|
---|
27 | virtual void SetParms(double const*);
|
---|
28 | protected:
|
---|
29 | GeneralFunction* mFunc;
|
---|
30 | int mNParms;
|
---|
31 | double* mParms;
|
---|
32 | };
|
---|
33 |
|
---|
34 |
|
---|
35 |
|
---|
36 | // Adaptateur d'Histo-2D a P2DArrayAdapter
|
---|
37 | class POH2DAdapter : public P2DArrayAdapter {
|
---|
38 | public :
|
---|
39 | POH2DAdapter(Histo2D* h2d, bool ad=false);
|
---|
40 | virtual ~POH2DAdapter();
|
---|
41 |
|
---|
42 | virtual double Value(int ix, int iy);
|
---|
43 |
|
---|
44 | protected:
|
---|
45 | bool aDel;
|
---|
46 | Histo2D* mH2d;
|
---|
47 | };
|
---|
48 |
|
---|
49 | // Adaptateur d'Histo2DErr a P2DArrayAdapter
|
---|
50 | class POHe2DAdapter : public P2DArrayAdapter {
|
---|
51 | public :
|
---|
52 | POHe2DAdapter(Histo2DErr* he2d, bool ad=false);
|
---|
53 | virtual ~POHe2DAdapter();
|
---|
54 |
|
---|
55 | virtual double Value(int ix, int iy);
|
---|
56 |
|
---|
57 | protected:
|
---|
58 | bool aDel;
|
---|
59 | Histo2DErr* mHe2d;
|
---|
60 | };
|
---|
61 |
|
---|
62 | #ifdef SANS_EVOLPLANCK
|
---|
63 | #include "cvector.h"
|
---|
64 | #include "matrix.h"
|
---|
65 |
|
---|
66 | // Adaptateur de vecteurs Peida++ a P1DArrayAdapter
|
---|
67 | class POVectorAdapter : public P1DArrayAdapter {
|
---|
68 | public :
|
---|
69 | POVectorAdapter(Vector* v, bool ad=false);
|
---|
70 | virtual ~POVectorAdapter();
|
---|
71 | virtual double Value(int i);
|
---|
72 |
|
---|
73 | protected:
|
---|
74 | bool aDel;
|
---|
75 | Vector* mVec;
|
---|
76 | };
|
---|
77 |
|
---|
78 | // Adaptateur de matrice Peida++ a P2DArrayAdapter
|
---|
79 | // Attention MatrixAdapter(X=Colonne, Y= Row) = Matrix(row, col)
|
---|
80 | class POMatrixAdapter : public P2DArrayAdapter {
|
---|
81 | public :
|
---|
82 | POMatrixAdapter(Matrix* mtx, bool ad=false);
|
---|
83 | virtual ~POMatrixAdapter();
|
---|
84 |
|
---|
85 | virtual double Value(int ix, int iy);
|
---|
86 |
|
---|
87 | protected:
|
---|
88 | bool aDel;
|
---|
89 | Matrix* mMtx;
|
---|
90 | };
|
---|
91 |
|
---|
92 | #endif // SANS_EVOLPLANCK
|
---|
93 |
|
---|
94 | #endif
|
---|