//________________________________________________________________________
AliAnalysisTaskFemto::AliAnalysisTaskFemto(const char *name, const char *aConfigMacro, const char *aConfigParams):
- AliAnalysisTaskSE(name), //AliAnalysisTask(name,""),
- fESD(0),
- fESDpid(0),
- fAOD(0),
- fAODpidUtil(0),
- fStack(0),
- fOutputList(0),
- fReader(0x0),
- fManager(0x0),
- fAnalysisType(0),
- fConfigMacro(0),
- fConfigParams(0)
+AliAnalysisTaskSE(name), //AliAnalysisTask(name,""),
+ fESD(0),
+ fESDpid(0),
+ fAOD(0),
+ fAODpidUtil(0),
+ fAODheader(0),
+ fStack(0),
+ fOutputList(0),
+ fReader(0x0),
+ fManager(0x0),
+ fAnalysisType(0),
+ fConfigMacro(aConfigMacro),
+ fConfigParams(aConfigParams)
{
// Constructor.
// Input slot #0 works with an Ntuple
DefineInput(0, TChain::Class());
// Output slot #0 writes into a TH1 container
DefineOutput(0, TList::Class());
- fConfigMacro = (char *) malloc(sizeof(char) * strlen(aConfigMacro));
- strcpy(fConfigMacro, aConfigMacro);
- fConfigParams = (char *) malloc(sizeof(char) * strlen(aConfigParams));
- strcpy(fConfigParams, aConfigParams);
+
}
//________________________________________________________________________
AliAnalysisTaskFemto::AliAnalysisTaskFemto(const char *name, const char *aConfigMacro="ConfigFemtoAnalysis.C"):
fESDpid(0),
fAOD(0),
fAODpidUtil(0),
+ fAODheader(0),
fStack(0),
fOutputList(0),
fReader(0x0),
fManager(0x0),
fAnalysisType(0),
- fConfigMacro(0),
- fConfigParams(0)
+ fConfigMacro(aConfigMacro),
+ fConfigParams("")
{
// Constructor.
// Input slot #0 works with an Ntuple
DefineInput(0, TChain::Class());
// Output slot #0 writes into a TH1 container
DefineOutput(0, TList::Class());
- fConfigMacro = (char *) malloc(sizeof(char) * strlen(aConfigMacro));
- strcpy(fConfigMacro, aConfigMacro);
- fConfigParams = (char *) malloc(sizeof(char) * 2);
- strcpy(fConfigParams, "");
+
}
AliAnalysisTaskFemto::AliAnalysisTaskFemto(const AliAnalysisTaskFemto& aFemtoTask):
fESDpid(0),
fAOD(0),
fAODpidUtil(0),
+ fAODheader(0),
fStack(0),
fOutputList(0),
fReader(0x0),
fESDpid = aFemtoTask.fESDpid;
fAOD = aFemtoTask.fAOD;
fAODpidUtil = aFemtoTask.fAODpidUtil;
+ fAODheader = aFemtoTask.fAODheader;
fStack = aFemtoTask.fStack;
fOutputList = aFemtoTask.fOutputList;
fReader = aFemtoTask.fReader;
fManager = aFemtoTask.fManager;
fAnalysisType = aFemtoTask.fAnalysisType;
- fConfigMacro = (char *) malloc(sizeof(char) * strlen(aFemtoTask.fConfigMacro));
- strcpy(fConfigMacro, aFemtoTask.fConfigMacro);
- fConfigParams = (char *) malloc(sizeof(char) * strlen(aFemtoTask.fConfigParams));
- strcpy(fConfigParams, aFemtoTask.fConfigParams);
+
+ fConfigMacro = aFemtoTask.fConfigMacro;
+ fConfigParams = aFemtoTask.fConfigParams;
+
}
fESDpid = aFemtoTask.fESDpid;
fAOD = aFemtoTask.fAOD;
fAODpidUtil = aFemtoTask.fAODpidUtil;
+ fAODheader = aFemtoTask.fAODheader;
fStack = aFemtoTask.fStack;
fOutputList = aFemtoTask.fOutputList;
fReader = aFemtoTask.fReader;
fManager = aFemtoTask.fManager;
fAnalysisType = aFemtoTask.fAnalysisType;
- if (fConfigMacro) free(fConfigMacro);
- fConfigMacro = (char *) malloc(sizeof(char) * strlen(aFemtoTask.fConfigMacro));
- strcpy(fConfigMacro, aFemtoTask.fConfigMacro);
- if (fConfigParams) free(fConfigParams);
- fConfigParams = (char *) malloc(sizeof(char) * strlen(aFemtoTask.fConfigParams));
- strcpy(fConfigParams, aFemtoTask.fConfigParams);
+
+ fConfigMacro = aFemtoTask.fConfigMacro;
+ fConfigParams = aFemtoTask.fConfigParams;
return *this;
}
AliAnalysisTaskFemto::~AliAnalysisTaskFemto()
{
- if (fConfigMacro) free(fConfigMacro);
- if (fConfigParams) free(fConfigParams);
}
fESDpid = 0;
fAOD = 0;
fAODpidUtil = 0;
+ fAODheader=0;
fAnalysisType = 0;
TTree* tree = dynamic_cast<TTree*> (GetInputData(0));
fAOD = aodH->GetEvent();
- fAODpidUtil = aodH->GetAODpidUtil();
+ fAODpidUtil = aodH->GetAODpidUtil(); //correct way
+ //fAODpidUtil = new AliAODpidUtil(); //not correct way
// printf("aodH->GetAODpidUtil(): %x",aodH->GetAODpidUtil());
+ cout<<"AliAnalysisTaskFemto::AodpidUtil:"<<fAODpidUtil<<endl;
femtoReaderAOD->SetAODpidUtil(fAODpidUtil);
+
+ fAODheader = fAOD->GetHeader();
+ femtoReaderAOD->SetAODheader(fAODheader);
+
}
}
if (!fConfigParams)
SetFemtoManager((AliFemtoManager *) gInterpreter->ProcessLine("ConfigFemtoAnalysis()"));
else
- SetFemtoManager((AliFemtoManager *) gInterpreter->ProcessLine(Form("ConfigFemtoAnalysis(%s)", fConfigParams)));
+ SetFemtoManager((AliFemtoManager *) gInterpreter->ProcessLine(Form("ConfigFemtoAnalysis(%s)", fConfigParams.Data())));
TList *tOL;
fOutputList = fManager->Analysis(0)->GetOutputList();
// fAOD = aodH->GetEvent();
// }
- AliInfo(Form("Tracks in AOD: %d \n",fAOD->GetNumberOfTracks()));
+
+
+ Bool_t isSelected = (((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected() & fOfflineTriggerMask);
+ if(!isSelected) {//cout << "AliAnalysisTaskFemto: is not selected" << endl;
+ return;}
+
+
+
+
+ AliInfo(Form("Tracks in AOD: %d \n",fAOD->GetNumberOfTracks()));
if (fAOD->GetNumberOfTracks() > 0) {
if (!fReader) {