]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/PHOS/AliHLTPHOSRawAnalyzerComponentv3.h
AliHLTPHOS module
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSRawAnalyzerComponentv3.h
CommitLineData
ac745f08 1//-*- Mode: C++ -*-
2// $Id$
87434909 3/**************************************************************************
4 * This file is property of and copyright by the ALICE HLT Project *
5 * All rights reserved. *
6 * *
7 * Primary Authors: Per Thomas Hille, Oystein Djuvsland *
8 * *
9 * Permission to use, copy, modify and distribute this software and its *
10 * documentation strictly for non-commercial purposes is hereby granted *
11 * without fee, provided that the above copyright notice appears in all *
12 * copies and that both the copyright notice and this permission notice *
13 * appear in the supporting documentation. The authors make no claims *
14 * about the suitability of this software for any purpose. It is *
15 * provided "as is" without express or implied warranty. *
16 **************************************************************************/
17
18
19#ifndef ALIHLTPHOSRAWANALYZERCOMPONENTV3_H
20#define ALIHLTPHOSRAWANALYZERCOMPONENTV3_H
21
22
23/**
24 * Raw data analyzer component base class for PHOS HLT
25 *
26 * @file AliHLTPHOSRawAnalyzerComponentv3.h
27 * @author Oystein Djuvsland
28 * @date
cb12f62a 29 * @brief A clusterizer component for PHOS HLT
87434909 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
64107d60 38#include "AliHLTCaloRawAnalyzerComponentv3.h"
4ce2930a 39
87434909 40class AliHLTPHOSRawAnalyzer;
87434909 41
42/**
43 * @class AliHLTPHOSRawAnalyzerComponentv3
cb12f62a 44 * This the new and fast version of the component taking care of the decoding and energy and timing
45 * extraction of the raw data from PHOS.
46 *
47 * <h2>General properties:</h2>
48 *
49 * Component ID: \b PhosRawAnalyzerv3 <br>
50 * Library: \b libAliHLTPHOS.so <br>
51 * Input Data Types: @ref <br>
52 * Output Data Types: @ref AliHLTPHOSDefinitions::fgkChannelDataType<br>
53 *
54 * <h2>Mandatory arguments:</h2>
55 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
56 * \li No mandatory arguments for component <br>
57 *
58 * <h2>Optional arguments:</h2>
59 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
60 * \li -offset <i> value </i> <br>
61 * gives the offset added to the data during zero suppression (default value: 0)
62 * \li -bunchsizecut <i> value </i> <br>
63 * minimum number of samples a bunch must contain to be considered (default value: 0)
64 * \li -minpeakposition <i> value </i> <br>
65 * cut on minimum postion of the peak in the bunch (defaul value: 0)
66 * \li -maxpeakposition <i> value </i> <br>
67 * cut on maximum postion of the peak in the bunch (defaul value: 100)
68 *
69 * <h2>Configuration:</h2>
70 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
71 * \li No configuration arguments
72 *
73 * <h2>Default CDB entries:</h2>
74 * \li No CDB entry yet, will come.
75 *
76 * <h2>Performance:</h2>
77 * Pretty good (~ 3 kHz), depends on amount of data...
78 *
79 * <h2>Memory consumption:</h2>
80 * Depends on the amount of data, but pretty godd
81 *
82 * <h2>Output size:</h2>
83 * Depends on the amount of data...
84 *
85 * More detailed description. (Soon)
86 *
87434909 87 * @ingroup alihlt_phos
88 */
89
90
92d9f317 91//#include "AliCaloConstants.h"
92
93//using namespace Algo;
94
95
44175a17 96class AliHLTPHOSRawAnalyzerComponentv3 : public AliHLTCaloRawAnalyzerComponentv3
87434909 97{
98 public:
92d9f317 99 AliHLTPHOSRawAnalyzerComponentv3( fitAlgorithm algo ); /** Standard constructor */
87434909 100 virtual ~AliHLTPHOSRawAnalyzerComponentv3();
1e46316a 101 virtual void GetInputDataTypes( vector <AliHLTComponentDataType>& list);/** interface function, see @ref AliHLTComponent for description */
102 virtual AliHLTComponentDataType GetOutputDataType();/** interface function, see @ref AliHLTComponent for description */
f9baa094 103 virtual const char* GetComponentID() = 0;
1e46316a 104 virtual AliHLTComponent* Spawn() = 0; /** interface function, see @ref AliHLTComponent for description */
105
87434909 106 protected:
dc1902d2 107
108 /** interface function, see @ref AliHLTComponent for description */
109 virtual int DoInit(int argc, const char** argv);
110
111
1e46316a 112 virtual void InitMapping(const int specification);
44175a17 113
44175a17 114 private:
92d9f317 115 AliHLTPHOSRawAnalyzerComponentv3();
87434909 116 AliHLTPHOSRawAnalyzerComponentv3(const AliHLTPHOSRawAnalyzerComponentv3 & );
87434909 117 AliHLTPHOSRawAnalyzerComponentv3 & operator = (const AliHLTPHOSRawAnalyzerComponentv3 &);
1e46316a 118
87434909 119};
120
121#endif
122