]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/PHOS/AliHLTPHOSClusterizerComponent.cxx
bug fixes
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSClusterizerComponent.cxx
CommitLineData
1b41ab20 1// $Id$
2
91b95d47 3/**************************************************************************
4 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * *
2374af72 6 * Authors: Oystein Djuvsland <oysteind@ift.uib.no> *
91b95d47 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 **************************************************************************/
aac22523 16
d949e02e 17#include <iostream>
aac22523 18
91b95d47 19#include "AliHLTPHOSClusterizerComponent.h"
ad44d760 20#include "AliHLTCaloRecPointDataStruct.h"
21#include "AliHLTCaloRecPointHeaderStruct.h"
7c80a370 22#include "AliHLTPHOSGeometry.h"
23#include "AliHLTCaloClusterAnalyser.h"
ad44d760 24
91b95d47 25
aac22523 26
27
2374af72 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
7c80a370 39#include "AliHLTCaloDefinitions.h"
40#include "AliHLTPHOSGeometry.h"
c1e4a18c 41#include "AliHLTPHOSRecoParamHandler.h"
60909644 42#include "AliHLTCaloClusterizer.h"
2374af72 43
d949e02e 44AliHLTPHOSClusterizerComponent::AliHLTPHOSClusterizerComponent():
ad44d760 45 AliHLTCaloClusterizerComponent("PHOS")
aac22523 46{
2374af72 47 //See headerfile for documentation
7c80a370 48
49 fDataOrigin = const_cast<char*>(kAliHLTDataOriginPHOS);
50
98baf84d 51 //AliHLTPHOSGeometry *geom = new AliHLTPHOSGeometry;
7c80a370 52
aac22523 53}
54
55AliHLTPHOSClusterizerComponent::~AliHLTPHOSClusterizerComponent()
56{
2374af72 57 //See headerfile for documentation
ad44d760 58}
59
60void
61AliHLTPHOSClusterizerComponent::GetInputDataTypes( vector<AliHLTComponentDataType>& list)
62{
63 //See headerfile for documentation
64 list.clear();
65 list.push_back(AliHLTCaloDefinitions::fgkDigitDataType|kAliHLTDataOriginPHOS);
66}
91b95d47 67
ad44d760 68AliHLTComponentDataType
69AliHLTPHOSClusterizerComponent::GetOutputDataType()
70{
71 //See headerfile for documentation
ee72b4e5 72 return kAliHLTDataTypeCaloCluster|kAliHLTDataOriginPHOS;
ad44d760 73}
74
75void
76AliHLTPHOSClusterizerComponent::GetOutputDataSize(unsigned long& constBase, double& inputMultiplier )
77
78{
79 //See headerfile for documentation
80 constBase = sizeof(AliHLTCaloRecPointHeaderStruct) + sizeof(AliHLTCaloRecPointDataStruct) + (sizeof(AliHLTCaloDigitDataStruct) << 7); //Reasonable estimate... ;
81 inputMultiplier = 2.0;
aac22523 82}
83
9cc0deb1 84const Char_t*
aac22523 85AliHLTPHOSClusterizerComponent::GetComponentID()
86{
2374af72 87 //See headerfile for documentation
d949e02e 88 return "PhosClusterizer";
aac22523 89}
90
aac22523 91AliHLTComponent*
92AliHLTPHOSClusterizerComponent::Spawn()
93{
2374af72 94 //See headerfile for documentation
95
aac22523 96 return new AliHLTPHOSClusterizerComponent();
97}
427c373f 98
99int AliHLTPHOSClusterizerComponent::DoInit(int argc, const char** argv)
100{
101
60909644 102 fClusterizerPtr = new AliHLTCaloClusterizer("PHOS");
103
427c373f 104 fRecoParamsPtr = new AliHLTPHOSRecoParamHandler();
105
106 return AliHLTCaloClusterizerComponent::DoInit(argc, argv);
107}
108
109int AliHLTPHOSClusterizerComponent::DoDeinit()
110{
111 if(fRecoParamsPtr)
112 {
113 delete fRecoParamsPtr;
114 fRecoParamsPtr = 0;
115 }
116 return AliHLTCaloClusterizerComponent::DoDeinit();
117}
118
119
120Int_t AliHLTPHOSClusterizerComponent::InitialiseGeometry()
121{
122
123 fAnalyserPtr->SetGeometry(new AliHLTPHOSGeometry);
124
125 return 0;
126}