]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSClusterizerComponent.cxx
- reconstruction classes no using the reco param handlers to get the reconstruction...
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSClusterizerComponent.cxx
1 // $Id$
2
3 /**************************************************************************
4  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  *                                                                        *
6  * Authors: Oystein Djuvsland <oysteind@ift.uib.no>                       *
7  *                                                                        *
8  * Permission to use, copy, modify and distribute this software and its   *
9  * documentation strictly for non-commercial purposes is hereby granted   *
10  * without fee, provided that the above copyright notice appears in all   *
11  * copies and that both the copyright notice and this permission notice   *
12  * appear in the supporting documentation. The authors make no claims     *
13  * about the suitability of this software for any purpose. It is          *
14  * provided "as is" without express or implied warranty.                  *
15  **************************************************************************/
16
17 #include <iostream>
18
19 #include "AliHLTPHOSClusterizerComponent.h"
20 #include "AliHLTCaloRecPointDataStruct.h"
21 #include "AliHLTCaloRecPointHeaderStruct.h"
22 #include "AliHLTPHOSGeometry.h"
23 #include "AliHLTCaloClusterAnalyser.h"
24
25
26
27
28 /** @file   AliHLTPHOSClusterizerComponent.cxx
29     @author Oystein Djuvsland
30     @date   
31     @brief  A clusterizer component for PHOS HLT
32 */
33
34 // see header file for class documentation
35 // or
36 // refer to README to build package
37 // or
38 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
39 #include "AliHLTCaloDefinitions.h"
40 #include "AliHLTPHOSGeometry.h"
41 #include "AliHLTPHOSRecoParamHandler.h"
42
43 AliHLTPHOSClusterizerComponent gAliHLTPHOSClusterizerComponent;
44
45 AliHLTPHOSClusterizerComponent::AliHLTPHOSClusterizerComponent(): 
46   AliHLTCaloClusterizerComponent("PHOS")
47 {
48   //See headerfile for documentation
49
50   fDataOrigin = const_cast<char*>(kAliHLTDataOriginPHOS);
51
52   //AliHLTPHOSGeometry *geom = new AliHLTPHOSGeometry;
53   
54   fAnalyserPtr->SetGeometry(new AliHLTPHOSGeometry);
55   
56   fRecoParamsPtr = new AliHLTPHOSRecoParamHandler();
57   
58 }
59
60 AliHLTPHOSClusterizerComponent::~AliHLTPHOSClusterizerComponent()
61 {
62   //See headerfile for documentation
63 }
64
65 void
66 AliHLTPHOSClusterizerComponent::GetInputDataTypes( vector<AliHLTComponentDataType>& list)
67 {
68   //See headerfile for documentation
69   list.clear();
70   list.push_back(AliHLTCaloDefinitions::fgkDigitDataType|kAliHLTDataOriginPHOS);
71 }
72
73 AliHLTComponentDataType
74 AliHLTPHOSClusterizerComponent::GetOutputDataType()
75 {
76   //See headerfile for documentation
77   return kAliHLTDataTypeCaloCluster|kAliHLTDataOriginPHOS;
78 }
79
80 void
81 AliHLTPHOSClusterizerComponent::GetOutputDataSize(unsigned long& constBase, double& inputMultiplier )
82
83 {
84   //See headerfile for documentation
85   constBase = sizeof(AliHLTCaloRecPointHeaderStruct) + sizeof(AliHLTCaloRecPointDataStruct) + (sizeof(AliHLTCaloDigitDataStruct) << 7); //Reasonable estimate... ;
86   inputMultiplier = 2.0;
87 }
88
89 const Char_t*
90 AliHLTPHOSClusterizerComponent::GetComponentID()
91 {
92   //See headerfile for documentation
93   return "PhosClusterizer";
94 }
95
96 AliHLTComponent*
97 AliHLTPHOSClusterizerComponent::Spawn()
98 {
99   //See headerfile for documentation
100
101   return new AliHLTPHOSClusterizerComponent();
102 }