-//\r
-// Class AliRsnAnalysisSE\r
-//\r
-// Virtual Class derivated from AliRsnVAnalysisTaskSE which will be base class\r
-// for all RSN SE tasks\r
-//\r
-// authors: Martin Vala (martin.vala@cern.ch)\r
-// Alberto Pulvirenti (alberto.pulvirenti@ct.infn.it)\r
-//\r
-#ifndef AliRsnAnalysisSE_H\r
-#define AliRsnAnalysisSE_H\r
-\r
-#include "AliPID.h"\r
-#include "AliRsnVAnalysisTaskSE.h"\r
-#include "AliRsnAnalysisManager.h"\r
-#include "AliRsnPIDIndex.h"\r
-\r
-class AliRsnAnalysisSE : public AliRsnVAnalysisTaskSE\r
-{\r
-\r
-public:\r
- AliRsnAnalysisSE(const char *name = "AliRsnAnalysisSE");\r
- AliRsnAnalysisSE(const AliRsnAnalysisSE& copy);\r
-\r
- // Implement this\r
- virtual void RsnUserCreateOutputObjects();\r
- virtual void RsnUserExec(Option_t*);\r
- virtual void RsnTerminate(Option_t*);\r
-\r
- AliRsnAnalysisManager *GetAnalysisManager(TString name = "");\r
- void SetAnalysisManagerName(const char*name) {fRsnAnalysisManager.SetName(name);};\r
-\r
- // Prior probs\r
- void SetPriorProbability(AliPID::EParticleType type, Double_t p);\r
- void DumpPriors();\r
- void GetPriorProbability(Double_t *out);\r
-\r
- // ESD cuts\r
- void SetESDtrackCuts(AliESDtrackCuts *cuts) {fESDCuts = cuts;}\r
-\r
-private:\r
-\r
- AliRsnAnalysisSE& operator=(const AliRsnAnalysisSE& /*copy*/) {return *this;}\r
-\r
- AliRsnAnalysisManager fRsnAnalysisManager; // analysis main engine\r
- AliRsnPIDIndex fPIDIndex; // utility --> PID sorter\r
- AliRsnEvent fEvent; // utility --> event interface\r
-\r
- AliESDtrackCuts *fESDCuts; // ESD track cuts\r
- Double_t fPrior[AliPID::kSPECIES]; // prior probabilities\r
-\r
- ClassDef(AliRsnAnalysisSE, 1)\r
-};\r
-\r
-#endif\r
+//
+// Class AliRsnAnalysisSE
+//
+// Virtual Class derivated from AliRsnVAnalysisTaskSE which will be base class
+// for all RSN SE tasks
+//
+// authors: Martin Vala (martin.vala@cern.ch)
+// Alberto Pulvirenti (alberto.pulvirenti@ct.infn.it)
+//
+#ifndef ALIRSNANALYSISSE_H
+#define ALIRSNANALYSISSE_H
+
+#include "AliPID.h"
+#include "AliRsnVAnalysisTaskSE.h"
+#include "AliRsnAnalysisManager.h"
+#include "AliRsnEvent.h"
+
+class AliRsnPIDDefESD;
+class AliRsnCutSet;
+
+class AliRsnAnalysisSE : public AliRsnVAnalysisTaskSE
+{
+
+ public:
+ AliRsnAnalysisSE(const char *name = "AliRsnAnalysisSE", Bool_t useKine = kFALSE);
+ AliRsnAnalysisSE(const AliRsnAnalysisSE& copy);
+ virtual ~AliRsnAnalysisSE();
+
+ // Implement this
+ virtual void RsnUserCreateOutputObjects();
+ virtual void RsnUserExec(Option_t*);
+ virtual void RsnTerminate(Option_t*);
+
+ AliRsnAnalysisManager *GetAnalysisManager() {return &fRsnAnalysisManager;}
+ void SetAnalysisManagerName(const char *name) {fRsnAnalysisManager.SetName(name);}
+
+ AliRsnCutSet* GetEventCuts() const {return fEventCuts;}
+ void SetEventCuts(AliRsnCutSet *const cuts) {fEventCuts = cuts;}
+
+ Double_t GetZeroEventPercentWarning() const {return fZeroEventPercentWarning;}
+ void SetZeroEventPercentWarning(Double_t val = 50) {fZeroEventPercentWarning = val;}
+ void UseZeroEventWarning(Bool_t b = true) {fUseZeroEventWarning = b;}
+
+ private:
+
+ AliRsnAnalysisSE& operator=(const AliRsnAnalysisSE& /*copy*/) {return *this;}
+
+ AliRsnAnalysisManager fRsnAnalysisManager; // analysis main engine
+ AliRsnCutSet *fEventCuts; // event cuts
+ TList *fOutList; // list of output events
+
+ Double_t fZeroEventPercentWarning; //! Percent Number for Zero Event Warning
+ Bool_t fUseZeroEventWarning; //! flag if Zero Event Warning is used (default is true)
+
+ ClassDef(AliRsnAnalysisSE, 1)
+};
+
+#endif