1 #ifndef StParityAnalysis_hh
2 #define StParityAnalysis_hh
7 #include "StHbtMaker/Base/StHbtBaseAnalysis.h"
8 #include "StHbtMaker/Base/StHbtPairCut.h"
9 #include "StHbtMaker/Base/StHbtEventCut.h"
10 #include "StHbtMaker/Base/StHbtParticleCut.h"
11 #include "StHbtMaker/Base/StHbtCorrFctn.hh"
12 #include "StHbtMaker/CorrFctn/ParityDevCorrFctn.h"
13 #include "StHbtMaker/Infrastructure/StParityTypes.hh"
14 #include "StHbtMaker/Infrastructure/StHbtCorrFctnCollection.hh"
15 #include "StHbtMaker/Infrastructure/StHbtPicoEventCollection.hh"
35 StHbtCorrFctnCollection* CorrFctnCollection();
44 unsigned int NumEventsToMix();
45 void SetNumEventsToMix(
const unsigned int&);
46 StHbtPicoEventCollection* MixingBuffer();
47 bool MixingBufferFull();
49 bool AnalyzeIdenticalParticles();
50 virtual StHbtString Report();
55 int GetNeventsProcessed();
57 virtual void Finish();
64 void AddEventProcessed();
67 StHbtCorrFctnCollection* mCorrFctnCollection;
71 StHbtPicoEventCollection* mMixingBuffer;
72 unsigned int mNumEventsToMix;
73 unsigned int mNeventsProcessed;
84 inline StHbtPairCut* StParityAnalysis::PairCut() {
return mPairCut;}
85 inline StHbtEventCut* StParityAnalysis::EventCut() {
return mEventCut;}
86 inline StHbtParticleCut* StParityAnalysis::FirstParticleCut() {
return mFirstParticleCut;}
87 inline StHbtParticleCut* StParityAnalysis::SecondParticleCut() {
return mSecondParticleCut;}
88 inline StHbtCorrFctnCollection* StParityAnalysis::CorrFctnCollection() {
return mCorrFctnCollection;}
89 inline unsigned int StParityAnalysis::NumEventsToMix(){
return mNumEventsToMix;}
91 inline StHbtPicoEventCollection* StParityAnalysis::MixingBuffer() {
return mMixingBuffer;}
94 inline bool StParityAnalysis::AnalyzeIdenticalParticles(){
return (mFirstParticleCut==mSecondParticleCut);}
101 inline void StParityAnalysis::SetNumEventsToMix(
const unsigned int& nmix){ mNumEventsToMix = nmix;}
102 inline bool StParityAnalysis::MixingBufferFull(){
return (mMixingBuffer->size() >= mNumEventsToMix);}
103 inline int StParityAnalysis::GetNeventsProcessed() {
return mNeventsProcessed;}
virtual void ProcessEvent(const StHbtEvent *)
returns reports of all cuts applied and correlation functions being done