AliPhysics
63d3444 (63d3444)
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
AliAnalysisTaskEmcalTriggerTreeWriter.cxx
Go to the documentation of this file.
1
/**************************************************************************
2
* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
3
* *
4
* Author: The ALICE Off-line Project. *
5
* Contributors are mentioned in the code where appropriate. *
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
* A small task dumping all EMCal trigger related information into a TTree
17
* Author: Markus Fasel
18
*/
19
#include <iostream>
20
#include <string>
21
#include <TMath.h>
22
#include <TTree.h>
23
24
#include "AliInputEventHandler.h"
25
#include "AliVTrack.h"
26
#include "AliVCluster.h"
27
28
#include "
AliAnalysisTaskEmcalTriggerTreeWriter.h
"
29
30
AliAnalysisTaskEmcalTriggerTreeWriter::AliAnalysisTaskEmcalTriggerTreeWriter
():
31
AliAnalysisTaskSE
(),
32
fOutputTree(NULL),
33
fOutputInfo()
34
{
35
/*
36
* Dummy constructor
37
*/
38
}
39
40
AliAnalysisTaskEmcalTriggerTreeWriter::AliAnalysisTaskEmcalTriggerTreeWriter
(
const
char
*name):
41
AliAnalysisTaskSE
(name),
42
fOutputTree(NULL),
43
fOutputInfo()
44
{
45
/*
46
* Constructor
47
*/
48
DefineOutput(1,TTree::Class());
49
}
50
51
AliAnalysisTaskEmcalTriggerTreeWriter::~AliAnalysisTaskEmcalTriggerTreeWriter
() {
52
/*
53
* Destructor
54
*/
55
if
(
fOutputTree
)
delete
fOutputTree
;
56
}
57
58
void
AliAnalysisTaskEmcalTriggerTreeWriter::UserCreateOutputObjects
() {
59
/*
60
* Create output tree, with two branches, one for the tracks matched and one for the clusters
61
*/
62
63
// Build the tree
64
OpenFile
(1);
65
fOutputTree
=
new
TTree
(
"EMCalTree"
,
"A tree with emcal information"
);
66
fOutputTree
->Branch(
"run"
, &
fOutputInfo
.
fRun
,
"pdg/I"
);
67
fOutputTree
->Branch(
"col"
, &
fOutputInfo
.
fCol
,
"col/I"
);
68
fOutputTree
->Branch(
"row"
, &
fOutputInfo
.
fRow
,
"isUnique/i"
);
69
fOutputTree
->Branch(
"NL0Times"
, &
fOutputInfo
.
fNL0Times
,
"NL0Times/I"
);
70
fOutputTree
->Branch(
"Level0Times"
,
fOutputInfo
.
fLevel0Times
,
"Level0Times[10]/I"
);
71
fOutputTree
->Branch(
"ADC"
, &
fOutputInfo
.
fADC
,
"ADC/I"
);
72
fOutputTree
->Branch(
"Amplitude"
, &
fOutputInfo
.
fAmplitude
,
"Amplitude/F"
);
73
fOutputTree
->Branch(
"Time"
, &
fOutputInfo
.
fTime
,
"Time/F"
);
74
fOutputTree
->Branch(
"TriggerBits"
, &
fOutputInfo
.
fTriggerBits
,
"TriggerBits/I"
);
75
fOutputTree
->Branch(
"L1Threshold"
, &
fOutputInfo
.
fL1Threshold
,
"L1Threshold/I"
);
76
fOutputTree
->Branch(
"L1V0"
, &
fOutputInfo
.
fL1V0
,
"L1V0/I"
);
77
PostData(1,
fOutputTree
);
78
}
79
80
void
AliAnalysisTaskEmcalTriggerTreeWriter::UserExec
(
Option_t
*) {
81
/*
82
* Build the tree
83
*/
84
85
AliVCaloTrigger *emctrigger = fInputEvent->GetCaloTrigger(strcmp(fInputHandler->GetDataType(),
"ESD"
) == 0 ?
"EMCALTrigger"
:
"EMCALTrigger"
);
86
emctrigger->Reset();
87
while
(emctrigger->Next()){
88
fOutputInfo
.
Reset
();
89
fOutputInfo
.
fRun
= fInputEvent->GetRunNumber();
90
emctrigger->GetPosition(
fOutputInfo
.
fCol
,
fOutputInfo
.
fRow
);
91
emctrigger->GetNL0Times(
fOutputInfo
.
fNL0Times
);
92
if
(
fOutputInfo
.
fNL0Times
> 0 &&
fOutputInfo
.
fNL0Times
< 10)
93
emctrigger->GetL0Times(
fOutputInfo
.
fLevel0Times
);
94
emctrigger->GetL1TimeSum(
fOutputInfo
.
fADC
);
95
emctrigger->GetAmplitude(
fOutputInfo
.
fAmplitude
);
96
emctrigger->GetL1V0(
fOutputInfo
.
fL1V0
);
97
emctrigger->GetTriggerBits(
fOutputInfo
.
fTriggerBits
);
98
emctrigger->GetTime(
fOutputInfo
.
fTime
);
99
emctrigger->GetL1Threshold(
fOutputInfo
.
fL1Threshold
);
100
fOutputTree
->Fill();
101
}
102
103
PostData(1,
fOutputTree
);
104
}
105
TTree
Definition:
External.C:140
AliAnalysisTaskEmcalTriggerTreeWriter::fOutputTree
TTree * fOutputTree
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:53
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::fCol
Int_t fCol
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:27
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::fTriggerBits
Int_t fTriggerBits
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:34
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::fL1V0
Int_t fL1V0
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:36
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::fLevel0Times
Int_t fLevel0Times[10]
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:30
AliAnalysisTaskEmcalTriggerTreeWriter.h
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::Reset
void Reset()
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:46
AliAnalysisTaskEmcalTriggerTreeWriter::~AliAnalysisTaskEmcalTriggerTreeWriter
virtual ~AliAnalysisTaskEmcalTriggerTreeWriter()
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.cxx:51
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::fRow
Int_t fRow
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:28
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::fRun
Int_t fRun
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:26
AliAnalysisTaskEmcalTriggerTreeWriter::UserCreateOutputObjects
virtual void UserCreateOutputObjects()
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.cxx:58
AliAnalysisTaskEmcalTriggerTreeWriter::fOutputInfo
TriggerInfo fOutputInfo
Output tree with tracks.
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:54
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::fADC
Int_t fADC
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:31
AliAnalysisTaskEmcalTriggerTreeWriter::UserExec
virtual void UserExec(Option_t *)
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.cxx:80
AliAnalysisTaskSE
Definition:
External.C:309
AliAnalysisTaskEmcalTriggerTreeWriter::AliAnalysisTaskEmcalTriggerTreeWriter
AliAnalysisTaskEmcalTriggerTreeWriter()
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.cxx:30
Option_t
const char Option_t
Definition:
External.C:48
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::fNL0Times
Int_t fNL0Times
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:29
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::fTime
Float_t fTime
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:33
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::fAmplitude
Float_t fAmplitude
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:32
AliAnalysisTaskEmcalTriggerTreeWriter::TriggerInfo::fL1Threshold
Int_t fL1Threshold
Definition:
AliAnalysisTaskEmcalTriggerTreeWriter.h:35
OpenFile
TList * OpenFile(const char *fname)
Definition:
DrawAnaELoss.C:65
PWGJE
EMCALJetTasks
UserTasks
AliAnalysisTaskEmcalTriggerTreeWriter.cxx
Generated on Wed Nov 2 2016 16:51:19 for AliPhysics by
1.8.6