GET library
GETProcessSerie.hh
Go to the documentation of this file.
1 //======================================================================
2 /*! \file GETProcessSerie.hh
3  *
4  * Include file for the GETProcessSerie class.
5  */
6 //======================================================================
7 
8 #ifndef GET_PROCESS_SERIE_HH
9 #define GET_PROCESS_SERIE_HH
10 
11 //----------------------------------------------------------------------
12 
13 #include "GETCommon.hh"
14 #include "GETProcess.hh"
15 #include "GETProcessLink.hh"
16 
17 #include "GListT.hh"
18 
19 //======================================================================
20 /*! \class GETProcessSerie
21  *
22  * GETProcessSerie defines a list of processes to be applyied
23  * sequentially.
24  * Actually the class is a list of GETProcessLink objects, not of
25  * GETProcess, so that each process added can be added either
26  * locally or externally.
27  *
28  */
29 class GETProcessSerie : public GETProcess, protected GListT<GETProcessLink>
30 {
31  //------------------------------------------------------------
32  /*! \object_doc */
34  //------------------------------------------------------------
35 
36  public:
37  using GListT<GETProcessLink>::Begin;
38  using GListT<GETProcessLink>::Null;
39  using GListT<GETProcessLink>::End;
40  using GListT<GETProcessLink>::At;
41  using GListT<GETProcessLink>::GetSize;
42 
43  protected:
44 
45  public:
46  //----------------------------------------------------------
47  /** @name Constructors, affectation, destructor */
48  //@{
49  GETProcessSerie ( GETObject & obj );
50  GETProcessSerie ( u_int n = 0, double dt = 0.01 );
51  GETProcessSerie ( const GETProcessSerie & proc );
52  virtual ~GETProcessSerie ( );
53  //@}
54 
55  //----------------------------------------------------------
56  /** @name Managing the list of processes */
57  //@{
58  virtual GETProcess * AddProcess ( GETProcess * ptr );
59  virtual GETProcess * AddProcess ( GETProcess & obj );
60 
61  //@}
62 
63  //----------------------------------------------------------
64  /** @name Signal processing */
65  //@{
66  virtual GETSample * ProcessSample ( GETChannel & channel,
67  u_short info );
68 
69  virtual GETSample * ProcessSample ( GETSample & sample,
70  GETSample & result,
71  GETChannel & channel );
72  //@}
73 
74  //----------------------------------------------------------
75  /** @name ROOT related functions */
76  //@{
77  public:
78 
79  /*! for use within ROOT.*/
81  //@}
82 };
83 
84 
85 //----------------------------------------------------------------------
86 // Inline functions
87 #include "icc/GETProcessSerie.icc"
88 
89 
90 //======================================================================
91 #endif
virtual GETProcess * AddProcess(GETProcess *ptr)
Definition: GETProcessSerie.cpp:72
virtual ~GETProcessSerie()
Definition: GETProcessSerie.cpp:55
Definition: GETChannel.hh:41
Definition: GETProcessSerie.hh:29
ClassDef(GETProcessSerie, 0)
Definition: GETObject.hh:38
GETProcessSerie(GETObject &obj)
Definition: GETProcessSerie.cpp:19
RRealSampleFFT GETSample
Define the data type for samples.
Definition: GETCommon.hh:31
GObject(GETProcessSerie)
Definition: GETProcess.hh:32
virtual GETSample * ProcessSample(GETChannel &channel, u_short info)
Definition: GETProcessSerie.cpp:134