5 #include "AliAODEvent.h" 6 #include "AliESDEvent.h" 7 #include "AliVAODHeader.h" 9 #include "AliAnalysisManager.h" 11 #include "TClonesArray.h" 14 #include "TObjArray.h" 52 TString histName =
"fHistPtSelection";
53 TString histTitle =
"pT selection;Result;p_{T}^{lead}";
55 histPtSelection->GetXaxis()->SetBinLabel(1,
"Accepted");
56 histPtSelection->GetXaxis()->SetBinLabel(2,
"Rejected");
65 AliFatal(
"must set track container to use this task");
81 Int_t nTracksInRange = 0;
85 if(pt>ptMax) ptMax = pt;
88 for(
Int_t j=0;j<npt;j++) {
96 TString histName =
"fHistPtSelection";
97 if(nTracksInRange==0) {
117 std::vector <double> ptSelectionMin;
118 std::vector <double> ptSelectionMax;
121 if (resMin && resMax) {
122 if (ptSelectionMin.size() != ptSelectionMax.size()) {
123 AliErrorStream() <<
"Passed pt selection min with size" << ptSelectionMin.size() <<
" entries and pt selection max with size " << ptSelectionMax.size() <<
" - need same size arrays\n";
126 for(std::size_t i = 0; i < ptSelectionMin.size(); i++) {
127 AliDebugStream(1) <<
"Setting pt selection [" << ptSelectionMin.at(i) <<
", " << ptSelectionMax.at(i) <<
"]\n";
128 fPtSelection.push_back(std::make_pair(ptSelectionMin.at(i), ptSelectionMax.at(i)));
132 else if( (resMin && !resMax) || (!resMin && resMax)) {
133 AliErrorStream() <<
"Only set one pt selection array - should set both\n";
152 ::Error(
"AddTaskEmcalEmbeddingHelperData",
"No analysis manager to connect to.");
158 AliVEventHandler* handler = mgr->GetInputEventHandler();
161 ::Error(
"AddTaskEmcalEmbeddingHelperData",
"This task requires an input event handler");
165 TString name =
"AliAnalysisTaskEmcalEmbeddingHelperData";
168 if (mgrTask)
return mgrTask;
175 contEmb->SetTrackCutsPeriod(
"LHC17p");
182 mgr->AddTask(embeddingHelper);
185 AliAnalysisDataContainer* cInput = mgr->GetCommonInputContainer();
187 TString outputContainerName(name);
188 outputContainerName +=
"_histos";
190 AliAnalysisDataContainer * cOutput = mgr->CreateContainer(outputContainerName.Data(),
192 AliAnalysisManager::kOutputContainer,
193 Form(
"%s", AliAnalysisManager::GetCommonFileName()));
195 mgr->ConnectInput(embeddingHelper, 0, cInput);
196 mgr->ConnectOutput(embeddingHelper, 1, cOutput);
198 return embeddingHelper;
const AliTrackIterableContainer accepted() const
Container with name, TClonesArray and cuts for particles.
void FillTH2(const char *hname, double x, double y, double weight=1., Option_t *opt="")
Fill a 2D histogram within the container.
Declaration of class AliAnalysisTaskEmcalEmbeddingHelper.
void NextEvent(const AliVEvent *event)
AliTrackContainer * fTrackContainer
track container for pT selection
virtual ~AliAnalysisTaskEmcalEmbeddingHelperData()
void UserCreateOutputObjects()
Declaration of class AliAnalysisTaskEmcalEmbeddingHelperData.
void RetrieveTaskPropertiesFromYAMLConfig()
virtual void RetrieveTaskPropertiesFromYAMLConfig()
TH2 * CreateTH2(const char *name, const char *title, int nbinsx, double xmin, double xmax, int nbinsy, double ymin, double ymax, Option_t *opt="")
Create a new TH2 within the container.
Implementation of task to embed external events.
virtual Bool_t CheckIsEmbeddedEventSelected()
Bool_t CheckIsEmbeddedEventSelected()
void SetEmbeddedTrackContainer(AliTrackContainer *cont)
static AliAnalysisTaskEmcalEmbeddingHelperData * AddTaskEmcalEmbeddingHelperData()
PWG::Tools::AliYAMLConfiguration fYAMLConfig
Hanldes configuration from YAML.
AliAnalysisTaskEmcalEmbeddingHelperData()
THistManager fHistManager
Manages access to all histograms.
void SetArray(const AliVEvent *event)
AliEmcalList * fOutput
! List which owns the output histograms to be saved
void UserCreateOutputObjects()
std::vector< std::pair< Double_t, Double_t > > fPtSelection
min and max pT stored as a vector of pairs
AliVEvent * InputEvent() const
SHOULD NOT BE USED! Use GetExternalEvent()! SHOULD NOT BE USED! Use GetExternalEvent()! Returns the e...