c4c6afb600eea1bb58b15424bba09fe939bcac92
[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
23
24
25
26 /** @file   AliHLTPHOSClusterizerComponent.cxx
27     @author Oystein Djuvsland
28     @date   
29     @brief  A clusterizer component for PHOS HLT
30 */
31
32 // see header file 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 #include <AliHLTCaloDefinitions.h>
38
39 AliHLTPHOSClusterizerComponent gAliHLTPHOSClusterizerComponent;
40
41 AliHLTPHOSClusterizerComponent::AliHLTPHOSClusterizerComponent(): 
42   AliHLTCaloClusterizerComponent("PHOS")
43 {
44   //See headerfile for documentation
45 }
46
47 AliHLTPHOSClusterizerComponent::~AliHLTPHOSClusterizerComponent()
48 {
49   //See headerfile for documentation
50 }
51
52 void
53 AliHLTPHOSClusterizerComponent::GetInputDataTypes( vector<AliHLTComponentDataType>& list)
54 {
55   //See headerfile for documentation
56   list.clear();
57   list.push_back(AliHLTCaloDefinitions::fgkDigitDataType|kAliHLTDataOriginPHOS);
58 }
59
60 AliHLTComponentDataType
61 AliHLTPHOSClusterizerComponent::GetOutputDataType()
62 {
63   //See headerfile for documentation
64   return AliHLTCaloDefinitions::fgkRecPointDataType|kAliHLTDataOriginPHOS;
65 }
66
67 void
68 AliHLTPHOSClusterizerComponent::GetOutputDataSize(unsigned long& constBase, double& inputMultiplier )
69
70 {
71   //See headerfile for documentation
72   constBase = sizeof(AliHLTCaloRecPointHeaderStruct) + sizeof(AliHLTCaloRecPointDataStruct) + (sizeof(AliHLTCaloDigitDataStruct) << 7); //Reasonable estimate... ;
73   inputMultiplier = 2.0;
74 }
75
76
77 const Char_t*
78 AliHLTPHOSClusterizerComponent::GetComponentID()
79 {
80   //See headerfile for documentation
81   return "PhosClusterizer";
82 }
83
84 AliHLTComponent*
85 AliHLTPHOSClusterizerComponent::Spawn()
86 {
87   //See headerfile for documentation
88
89   return new AliHLTPHOSClusterizerComponent();
90 }
91
92