Update handling of different inputs
[u/mrichter/AliRoot.git] / HLT / JET / AliHLTJETReaderHeader.cxx
CommitLineData
0734d112 1//-*- Mode: C++ -*-
2// $Id: AliHLTJETReaderHeader.cxx $
3/**************************************************************************
4 * This file is property of and copyright by the ALICE HLT Project *
5 * ALICE Experiment at CERN, All rights reserved. *
6 * *
7 * Primary Authors: Jochen Thaeder <thaeder@kip.uni-heidelberg.de> *
8 * for The ALICE HLT Project. *
9 * *
10 * Permission to use, copy, modify and distribute this software and its *
11 * documentation strictly for non-commercial purposes is hereby granted *
12 * without fee, provided that the above copyright notice appears in all *
13 * copies and that both the copyright notice and this permission notice *
14 * appear in the supporting documentation. The authors make no claims *
15 * about the suitability of this software for any purpose. It is *
16 * provided "as is" without express or implied warranty. *
17 **************************************************************************/
18
19/** @file AliHLTJETReaderHeader.cxx
20 @author Jochen Thaeder
21 @date
22 @brief ReaderHeader for jet finder
23*/
24
25// see header file for class documentation
26// or
27// refer to README to build package
28// or
29// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
30
31#if __GNUC__ >= 3
32using namespace std;
33#endif
34
35#include "AliHLTJETReaderHeader.h"
6ce099ba 36#include "AliHLTJETTrackCuts.h"
0734d112 37
38/** ROOT macro for the implementation of ROOT specific class methods */
39ClassImp(AliHLTJETReaderHeader)
40
41/*
42 * ---------------------------------------------------------------------------------
43 * Constructor / Destructor
44 * ---------------------------------------------------------------------------------
45 */
46
47// #################################################################################
48AliHLTJETReaderHeader::AliHLTJETReaderHeader()
49 :
50 AliJetReaderHeader("AliHLTJETReaderHeader"),
6ce099ba 51 fTrackCuts(NULL),
52 fSeedCuts(NULL),
53 fGridEtaBinning(0.0),
54 fGridPhiBinning(0.0),
55 fGridEtaRange(0.0),
56 fGridPhiRange(0.0),
1f9fec4a 57 fAlgorithm(AliHLTJETBase::kFFSCSquareCell),
58 fConeRadius(0.0),
59 fUseMC(kFALSE) {
0734d112 60 // see header file for class documentation
61 // or
62 // refer to README to build package
63 // or
64 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
65
66}
67
68// #################################################################################
69AliHLTJETReaderHeader::~AliHLTJETReaderHeader() {
70 // see header file for class documentation
71
72}
6ce099ba 73
74/*
75 * ---------------------------------------------------------------------------------
76 * Initialize
77 * ---------------------------------------------------------------------------------
78 */
79
80// #################################################################################
81Int_t AliHLTJETReaderHeader::Initialize() {
82 // see header file for class documentation
83
84 Int_t iResult = 0;
85
86 // -- Set eta and phi range for grid
87 fGridPhiRange = fFiducialPhiMin +
88 fFiducialPhiMax + ( 2.0 * fConeRadius );
89
90 fGridEtaRange = TMath::Abs( fFiducialEtaMin ) + fFiducialEtaMax;
91
92 HLTInfo(" -= ReaderHeader =- ");
93 HLTInfo(" Cone radius %f", fConeRadius );
94 HLTInfo(" Grid eta binning %f", fGridEtaBinning );
95 HLTInfo(" Grid phi binning %f", fGridPhiBinning );
96 HLTInfo(" Grid eta range %f", fGridEtaRange );
97 HLTInfo(" Grid phi range %f", fGridPhiRange );
1f9fec4a 98 HLTInfo(" Algorithm %s", AliHLTJETBase::fgkJetAlgorithmType[fAlgorithm] );
99
100 if (fUseMC) { HLTInfo(" Use Kinematics TRUE"); }
101 else { HLTInfo( " Use Kinematics FALSE"); }
6ce099ba 102
103 if ( ! fTrackCuts ) {
104 HLTError("No track cuts set in reader header");
105 iResult = -EINPROGRESS;
106 }
107 else {
108 fTrackCuts->SetEtaRange( fFiducialEtaMin, fFiducialEtaMax );
109 fTrackCuts->SetPhiRange( fFiducialPhiMin, fFiducialPhiMax );
110 HLTInfo(" -= TrackCuts =- " );
111 }
112
438118d4 113 // Check for seeds only cone based algoritms
114 if ( fAlgorithm >= AliHLTJETBase::kFFSCSquareCell ) {
115 if ( !fSeedCuts ) {
116 HLTError("No seed cuts set in reader header");
117 iResult = -EINPROGRESS;
118 }
119 else {
120 fSeedCuts->SetEtaRange( fFiducialEtaMin+fConeRadius,
121 fFiducialEtaMax-fConeRadius );
122 fSeedCuts->SetPhiRange( fFiducialPhiMin, fFiducialPhiMax );
123 HLTInfo(" -= SeedCuts =- " );
124 }
1f9fec4a 125 }
438118d4 126
6ce099ba 127 return iResult;
128}
129