]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/FEMTOSCOPY/AliFemto/AliFemtoCutMonitorHandler.h
updates in macros for Femto QA in train
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / AliFemto / AliFemtoCutMonitorHandler.h
CommitLineData
76ce4b5b 1///////////////////////////////////////////////////////////////////////////
2// //
3// AliFemtoCutMonitorHandler: a handler for cut monitors //
4// //
5///////////////////////////////////////////////////////////////////////////
6#ifndef AliFemtoCutMonitorHandler_hh
7#define AliFemtoCutMonitorHandler_hh
8
9
10#include "AliFemtoTypes.h"
11#include "AliFemtoEvent.h"
12#include "AliFemtoTrack.h"
13#include "AliFemtoV0.h"
14#include "AliFemtoKink.h"
15#include "AliFemtoPair.h" //Gael 12/04/02
16#include "AliFemtoParticleCollection.h" // Gael 19/06/02
17#include "AliFemtoCutMonitorCollection.h"
18#include "AliFemtoCutMonitor.h"
19
20class AliFemtoCutMonitorHandler{
21
22 public:
23
24 AliFemtoCutMonitorHandler();
25 AliFemtoCutMonitorHandler(const AliFemtoCutMonitorHandler& aHan);
26 virtual ~AliFemtoCutMonitorHandler();
27 AliFemtoCutMonitorHandler& operator=(const AliFemtoCutMonitorHandler& aHan);
28
29 AliFemtoCutMonitorCollection* PassMonitorColl();
30 AliFemtoCutMonitorCollection* FailMonitorColl();
31 AliFemtoCutMonitor* PassMonitor(int n);
32 AliFemtoCutMonitor* FailMonitor(int n);
33 void AddCutMonitor(AliFemtoCutMonitor* cutMoni1, AliFemtoCutMonitor* cutMoni2);
34 void AddCutMonitor(AliFemtoCutMonitor* cutMoni);
35 void AddCutMonitorPass(AliFemtoCutMonitor* cutMoni);
36 void AddCutMonitorFail(AliFemtoCutMonitor* cutMoni);
37 void FillCutMonitor(const AliFemtoEvent* event, bool pass);
38 void FillCutMonitor(const AliFemtoTrack* track, bool pass);
39 void FillCutMonitor(const AliFemtoV0* v0, bool pass);
40 void FillCutMonitor(const AliFemtoKink* kink, bool pass);
41 void FillCutMonitor(const AliFemtoPair* pair, bool pass);//Gael 11/04/02
42 void FillCutMonitor(const AliFemtoParticleCollection* partColl);// Gael 19/06/02
43 void FillCutMonitor(const AliFemtoEvent* event, const AliFemtoParticleCollection* partColl);// Gael 19/06/02
973a91f8 44 void FillCutMonitor(const AliFemtoParticleCollection* partColl1, const AliFemtoParticleCollection* partColl2);
76ce4b5b 45 void Finish();
46
47 virtual TList *GetOutputList();
48
49 virtual void EventBegin(const AliFemtoEvent* aEvent);
50 virtual void EventEnd(const AliFemtoEvent* aEvent);
51
52 private:
53 bool fCollectionsEmpty; // Are the collections empty?
54 AliFemtoCutMonitorCollection* fPassColl; // Collection of cut monitors for passed entities
55 AliFemtoCutMonitorCollection* fFailColl; // Collection of cut monitors for failed entities
56#ifdef __ROOT__
57 ClassDef(AliFemtoCutMonitorHandler, 0)
58#endif
59
60};
61
62inline AliFemtoCutMonitorCollection* AliFemtoCutMonitorHandler::PassMonitorColl() { return fPassColl;}
63inline AliFemtoCutMonitorCollection* AliFemtoCutMonitorHandler::FailMonitorColl() { return fFailColl;}
64
65#endif