GET library
GETPhaseCorrection.hh
Go to the documentation of this file.
1 //======================================================================
2 /*! \file GETPhaseCorrection.hh
3  *
4  * Include file for the GETPhaseCorrection class.
5  */
6 //======================================================================
7 
8 #ifndef GET_PHASE_CORRECTION_HH
9 #define GET_PHASE_CORRECTION_HH
10 
11 //----------------------------------------------------------------------
12 
13 #include "GETBaselineCorrection.hh"
14 
15 //======================================================================
16 /*! \class GETPhaseCorrection
17  *
18  * This class defines a signal correction process, that inherits
19  * from the baseline correction and include a phase effect correction
20  * depending on the \b last \b cell \b read of the AGet chip.
21  *
22  * The baseline correction dimension is the readout dimension of the
23  * GET system.
24  * The phase correction is in all cases a 512 data sample, since
25  * in the case of a smaller readout dimension (256 or 128), the 512 cells
26  * of the memory are used anyway.
27  *
28  * The case of the 2-proton mode has to be processed in a different way
29  * (not yet implemented).
30  */
32 {
33  //------------------------------------------------------------
34  /*! \object_doc */
36  //------------------------------------------------------------
37 
38  protected:
39  GETSample phase_sample; ///< Phase sample data
40 
41  public:
42  //----------------------------------------------------------
43  /** @name Constructors, affectation, destructor */
44  //@{
45  GETPhaseCorrection ( GETObject & obj );
46  GETPhaseCorrection ( u_int n = 0, double dt = 0.01 );
47  GETPhaseCorrection ( const GETSample & ped, const GETSample & phase );
48  GETPhaseCorrection ( const GETPhaseCorrection & proc );
49  virtual ~GETPhaseCorrection ( );
50  //@}
51 
52  //----------------------------------------------------------
53  /** @name Process parameters */
54  //@{
55  const GETSample & GetPhaseSample ( ) const; // inline
56  GETSample & GetPhaseSample ( ); // inline
57  virtual void SetPhaseSample ( const GETSample & phase );
58  //@}
59 
60  //----------------------------------------------------------
61  /** @name Signal processing */
62  //@{
63  ////virtual GETSample * ProcessSample ( GETChannel & channel,
64  //// u_short info );
65 
66  virtual GETSample * ProcessSample ( GETSample & sample,
67  GETSample & result,
68  GETChannel & channel );
69  //@}
70 
71  //----------------------------------------------------------
72  /** @name ROOT related functions */
73  //@{
74  public:
75  /*! for use within ROOT.*/
77  //@}
78 };
79 
80 
81 //----------------------------------------------------------------------
82 // Inline functions
84 
85 
86 //======================================================================
87 #endif
GETSample phase_sample
Phase sample data.
Definition: GETPhaseCorrection.hh:39
GObject(GETPhaseCorrection)
Definition: GETChannel.hh:41
Definition: GETPhaseCorrection.hh:31
Definition: GETObject.hh:38
const GETSample & GetPhaseSample() const
Definition: GETPhaseCorrection.icc:10
RRealSampleFFT GETSample
Define the data type for samples.
Definition: GETCommon.hh:27
Definition: GETBaselineCorrection.hh:22
virtual GETSample * ProcessSample(GETSample &sample, GETSample &result, GETChannel &channel)
Definition: GETPhaseCorrection.cpp:134
virtual ~GETPhaseCorrection()
Definition: GETPhaseCorrection.cpp:63
virtual void SetPhaseSample(const GETSample &phase)
Definition: GETPhaseCorrection.cpp:73
ClassDef(GETPhaseCorrection, 0)
GETPhaseCorrection(GETObject &obj)
Definition: GETPhaseCorrection.cpp:23