]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSRcuDAComponent.h
Removing unused constants
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSRcuDAComponent.h
1 //-*- Mode: C++ -*-
2 // $Id$
3
4 /**************************************************************************
5  * This file is property of and copyright by the ALICE HLT Project        * 
6  * All rights reserved.                                                   *
7  *                                                                        *
8  * Primary Authors: Oystein Djuvsland                                     *
9  *                                                                        *
10  * Permission to use, copy, modify and distribute this software and its   *
11  * documentation strictly for non-commercial purposes is hereby granted   *
12  * without fee, provided that the above copyright notice appears in all   *
13  * copies and that both the copyright notice and this permission notice   *
14  * appear in the supporting documentation. The authors make no claims     *
15  * about the suitability of this software for any purpose. It is          * 
16  * provided "as is" without express or implied warranty.                  *
17  **************************************************************************/
18
19
20 #ifndef ALIHLTPHOSRCUDACOMPONENT_H
21 #define ALIHLTPHOSRCUDACOMPONENT_H
22
23 /**
24  * Module calibration processor component for PHOS HLT
25  *
26  * @file   AliHLTPHOSRcuDAComponent.h
27  * @author Oystein Djuvsland
28  * @date   
29  * @brief  Module calibration processor component for PHOS HLT
30 */
31
32 // see below for class documentation
33 // or
34 // refer to README to build package
35 // or
36 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
37
38 #include "AliHLTCalibrationProcessor.h"
39 #include "AliHLTPHOSConstant.h"
40 //#include "AliHLTPHOSRcuProperties.h"
41
42 using namespace PhosHLTConst;
43
44 class AliPHOSRcuDA1;
45 class AliHLTPHOSSharedMemoryInterfacev2;
46 class TObjArray;
47
48 //class AliHLTPHOSRcuDAComponent: public AliHLTCalibrationProcessor,  public AliHLTPHOSRcuProcessor
49 //class AliHLTPHOSRcuDAComponent:  public AliHLTPHOSRcuProperties, public AliHLTCalibrationProcessor
50
51
52 class AliHLTPHOSRcuDAComponent:  public AliHLTCalibrationProcessor
53 {
54 public:
55   /** constructor */
56   AliHLTPHOSRcuDAComponent();
57   /** destructor */
58   virtual ~AliHLTPHOSRcuDAComponent();
59  /*  virtual int Deinit(); */
60 /*   virtual int DoInit(int, const char**); */
61
62   // Public functions to implement AliHLTComponent's interface.
63   // These functions are required for the registration process
64
65   const char* GetComponentID();
66   void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
67   AliHLTComponentDataType GetOutputDataType();
68   virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
69   AliHLTComponent* Spawn();
70
71 protected:
72   // Protected functions to implement AliHLTComponent's interface.
73   // These functions provide initialization as well as the actual processing
74   // capabilities of the component. 
75       
76   /** Initialize the calibration component. */
77   Int_t InitCalibration();
78
79   /** Scan commandline arguments of the calibration component. */
80   Int_t ScanArgument( Int_t argc, const char** argv );
81
82   /** DeInitialize the calibration component. */
83   Int_t DeinitCalibration();
84
85   /** Process the data in the calibration component. */
86   using  AliHLTCalibrationProcessor::ProcessCalibration;
87   Int_t ProcessCalibration( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData );
88
89   /** Ship the data to the FXS at end of run or eventmodulo. */
90   using AliHLTCalibrationProcessor::ShipDataToFXS; 
91   Int_t ShipDataToFXS( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData );
92
93   /** Reset the energy and timing arrays */
94   void ResetArrays(Float_t e[NXCOLUMNSMOD][NZROWSMOD][NGAINS], Float_t t[NXCOLUMNSMOD][NZROWSMOD][NGAINS]);
95
96   //  int fCnt; ///TODO, remove this
97
98 private:
99     /** not a valid copy constructor, defined according to effective C++ style */
100   AliHLTPHOSRcuDAComponent(const AliHLTPHOSRcuDAComponent&);
101   /** not a valid assignment op, but defined according to effective C++ style */
102   AliHLTPHOSRcuDAComponent& operator=(const AliHLTPHOSRcuDAComponent&);
103   int fPhosEventCount;  ///TODO, remove this
104
105   /** Pointer to the DA */
106   AliPHOSRcuDA1* fPHOSDAPtr;   //! transient
107
108   /** Interface to read altro channel data from shared memory */
109   AliHLTPHOSSharedMemoryInterfacev2 *fShmPtr;   //! transient
110
111 };
112
113 #endif
114