93 #ifndef StHbtSplitEvalAnalysis_hh
94 #define StHbtSplitEvalAnalysis_hh
99 #include "StHbtMaker/Base/StHbtBaseAnalysis.h"
100 #include "StHbtMaker/Base/StHbtPairCut.h"
101 #include "StHbtMaker/Base/StHbtEventCut.h"
102 #include "StHbtMaker/Base/StHbtParticleCut.h"
103 #include "StHbtMaker/Base/StHbtCorrFctn.hh"
104 #include "StHbtMaker/Infrastructure/StHbtCorrFctnCollection.hh"
105 #include "StHbtMaker/Infrastructure/StHbtPicoEventCollection.hh"
124 StHbtCorrFctnCollection* CorrFctnCollection();
133 unsigned int NumEventsToMix();
134 void SetNumEventsToMix(
const unsigned int&);
135 StHbtPicoEventCollection* MixingBuffer();
136 bool MixingBufferFull();
138 bool AnalyzeIdenticalParticles();
139 virtual StHbtString Report();
145 virtual void Finish();
158 void SetQinvCut(
float qc);
163 StHbtCorrFctnCollection* mCorrFctnCollection;
167 StHbtPicoEventCollection* mMixingBuffer;
168 unsigned int mNumEventsToMix;
178 inline void StHbtSplitEvalAnalysis::SetQinvCut(
float qc){mQinvCut=qc;}
181 inline StHbtPairCut* StHbtSplitEvalAnalysis::PairCut() {
return mPairCut;}
182 inline StHbtEventCut* StHbtSplitEvalAnalysis::EventCut() {
return mEventCut;}
183 inline StHbtParticleCut* StHbtSplitEvalAnalysis::FirstParticleCut() {
return mFirstParticleCut;}
184 inline StHbtParticleCut* StHbtSplitEvalAnalysis::SecondParticleCut() {
return mSecondParticleCut;}
185 inline StHbtCorrFctnCollection* StHbtSplitEvalAnalysis::CorrFctnCollection() {
return mCorrFctnCollection;}
186 inline unsigned int StHbtSplitEvalAnalysis::NumEventsToMix(){
return mNumEventsToMix;}
188 inline StHbtPicoEventCollection* StHbtSplitEvalAnalysis::MixingBuffer() {
return mMixingBuffer;}
191 inline bool StHbtSplitEvalAnalysis::AnalyzeIdenticalParticles(){
return (mFirstParticleCut==mSecondParticleCut);}
193 inline void StHbtSplitEvalAnalysis::AddCorrFctn(
StHbtCorrFctn* cf) {mCorrFctnCollection->push_back(cf); cf->SetAnalysis((
StHbtBaseAnalysis*)
this);}
198 inline void StHbtSplitEvalAnalysis::SetNumEventsToMix(
const unsigned int& nmix){ mNumEventsToMix = nmix;}
199 inline bool StHbtSplitEvalAnalysis::MixingBufferFull(){
return (mMixingBuffer->size() >= mNumEventsToMix);}
virtual void ProcessEvent(const StHbtEvent *)
returns reports of all cuts applied and correlation functions being done