]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSESDCaloClusterMakerComponent.cxx
Removing man in the middle classes. They will be implemnted
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSESDCaloClusterMakerComponent.cxx
1
2 /**************************************************************************
3  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  *                                                                        *
5  * Authors: Oystein Djuvsland <oysteind@ift.uib.no>                       *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16
17 #include <iostream>
18
19 #include "AliHLTPHOSESDCaloClusterMakerComponent.h"
20 #include "AliHLTPHOSESDCaloClusterMaker.h"
21 #include "AliHLTPHOSCaloClusterContainerStruct.h"
22 #include "AliESDEvent.h"
23 #include "AliHLTPHOSDefinitions.h"
24 #include "AliHLTDataTypes.h"
25 #include "AliESDCaloCluster.h"
26
27 /** @file   AliHLTPHOSESDCaloClusterMakerComponent.cxx
28     @author Oystein Djuvsland
29     @date   
30     @brief  An ESD maker component for PHOS HLT
31 */
32
33 // see header file for class documentation
34 // or
35 // refer to README to build package
36 // or
37 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
38
39 #if __GNUC__>= 3
40 using namespace std;
41 #endif
42
43
44 AliHLTPHOSESDCaloClusterMakerComponent::AliHLTPHOSESDCaloClusterMakerComponent(): 
45   AliHLTPHOSProcessor(), 
46   fESDCaloClusterMakerPtr(0),
47   fESDCaloClustersPtr(0)
48 {
49   //See headerfile for documentation
50 }
51
52 AliHLTPHOSESDCaloClusterMakerComponent::~AliHLTPHOSESDCaloClusterMakerComponent()
53 {
54   //See headerfile for documentation
55
56   if (fESDCaloClusterMakerPtr)
57     {
58       delete fESDCaloClusterMakerPtr;
59       fESDCaloClusterMakerPtr = 0;
60     }
61 }
62
63
64 int
65 AliHLTPHOSESDCaloClusterMakerComponent::Deinit()
66 {
67   //See headerfile for documentation
68
69   if (fESDCaloClusterMakerPtr)
70     {
71       delete fESDCaloClusterMakerPtr;
72       fESDCaloClusterMakerPtr = 0;
73     }
74   return 0;
75 }
76
77 const Char_t*
78 AliHLTPHOSESDCaloClusterMakerComponent::GetComponentID()
79 {
80   //See headerfile for documentation
81
82   return "PhosEsdCaloClusterMaker";
83 }
84
85 void
86 AliHLTPHOSESDCaloClusterMakerComponent::GetInputDataTypes( vector<AliHLTComponentDataType>& list)
87 {
88   //See headerfile for documentation
89   list.clear();
90   list.push_back(AliHLTPHOSDefinitions::fgkCaloClusterDataType);
91 //   const AliHLTComponentDataType* pType=fgkInputDataTypes;
92 //   while (pType->fID!=0)
93 //     {
94 //       list.push_back(*pType);
95 //       pType++;
96 //     }
97 }
98
99 AliHLTComponentDataType
100 AliHLTPHOSESDCaloClusterMakerComponent::GetOutputDataType()
101 {
102   //See headerfile for documentation
103
104   return AliHLTPHOSDefinitions::fgkCaloClusterDataType;
105 }
106
107 void
108 AliHLTPHOSESDCaloClusterMakerComponent::GetOutputDataSize(unsigned long& constBase, double& inputMultiplier )
109
110 {
111   //See headerfile for documentation
112
113   constBase = 30;
114   inputMultiplier = 2;
115 }
116  
117 Int_t 
118 AliHLTPHOSESDCaloClusterMakerComponent::DoEvent( const AliHLTComponentEventData& /*evtData*/, AliHLTComponentTriggerData& /*trigData*/ ) 
119 {
120   
121   // see header file for class documentation
122  
123 //   fESDCaloClustersPtr->Delete();
124 //   AliHLTPHOSCaloClusterContainerStruct* caloClusterContainerPtr = 0;
125   
126 //   const AliHLTComponentBlockData* iter = 0;
127
128 //   UInt_t specification = 0;
129
130 //   for ( iter = GetFirstInputBlock(AliHLTPHOSDefinitions::fgkCaloClusterDataType); iter != 0; iter = GetNextInputBlock()) 
131 //     {
132 //       specification = specification|iter->fSpecification;
133 //       caloClusterContainerPtr = reinterpret_cast<AliHLTPHOSCaloClusterContainerStruct*>(iter->fPtr);
134 //       fESDCaloClusterMakerPtr->FillESDCaloClusters(fESDCaloClustersPtr, caloClusterContainerPtr);
135 //       //      fESDCaloClusterMakerPtr->SetCaloClusterContainer(caloClusterContainerPtr);
136 //     }
137   
138 //   PushBack(fESDCaloClustersPtr, AliHLTPHOSDefinitions::fgkESDCaloClusterDataType|kAliHLTDataOriginPHOS, specification);
139
140   return 0;
141 }
142
143
144 int
145 AliHLTPHOSESDCaloClusterMakerComponent::DoInit(int argc, const char** argv )
146 {
147   //See headerfile for documentation
148
149 //   fESDCaloClusterMakerPtr = new AliHLTPHOSESDCaloClusterMaker();
150
151 //   fESDCaloClustersPtr = new TClonesArray("AliESDCaloCluster", 0);
152
153 //   ScanArgumentsModule(argc, argv);
154 //   for (int i = 0; i < argc; i++)
155 //     {
156       
157 //     }
158
159   return 0;
160 }
161
162 AliHLTComponent*
163 AliHLTPHOSESDCaloClusterMakerComponent::Spawn()
164 {
165   //See headerfile for documentation
166
167   return new AliHLTPHOSESDCaloClusterMakerComponent();
168 }