1#include "GaudiKernel/MsgStream.h"
2#include "GaudiKernel/SmartDataPtr.h"
4#include "EventModel/EventHeader.h"
5#include "EvtRecEvent/EvtRecEvent.h"
6#include "EvtRecEvent/EvtRecTrack.h"
7#include "EvtRecEvent/EvtRecPi0.h"
8#include "VertexFit/KinematicFit.h"
9#include "Pi0RecAlg/Pi0RecAlg.h"
10#include "Pi0RecAlg/MakeGroupList.h"
15 Algorithm(name, pSvcLocator)
20 declareProperty(
"Angle", _pi0_cut.
MinAngle = 20);
21 declareProperty(
"TimeLimit", _pi0_cut.
TimeLimit = 20);
23 declareProperty(
"Pi0MinMass", _pi0_cut.
MinMass = 0.10);
24 declareProperty(
"Pi0MaxMass", _pi0_cut.
MaxMass = 0.18);
25 declareProperty(
"ChisqCut", _pi0_cut.
Chisq = 50.0);
31 MsgStream log(
msgSvc(), name());
32 log << MSG::INFO <<
"in initialize()" <<endreq;
34 return StatusCode::SUCCESS;
41 MsgStream log(
msgSvc(), name());
42 log << MSG::INFO <<
"in execute()" <<endreq;
45 SmartDataPtr<Event::EventHeader> eventHeader(eventSvc(),
"/Event/EventHeader");
49 bool save2TDS =
false;
74 if ( sc.isFailure() ) {
75 log << MSG::ERROR <<
"could not register EvtRecPi0Col in TDS" <<endreq;
76 return StatusCode::FAILURE;
79 return StatusCode::SUCCESS;
86 MsgStream log(
msgSvc(), name());
87 log << MSG::INFO <<
"in finalize()" << endreq;
89 return StatusCode::SUCCESS;
94 double eraw = gTrk->
energy();
95 double phi = gTrk->
phi();
96 double the = gTrk->
theta();
98 return HepLorentzVector( eraw *
sin(the) *
cos(phi),
99 eraw *
sin(the) *
sin(phi),
ObjectVector< EvtRecPi0 > EvtRecPi0Col
double sin(const BesAngle a)
double cos(const BesAngle a)
Pi0RecAlg(const std::string &name, ISvcLocator *pSvcLocator)
_EXTERN_ std::string EvtRecPi0Col
_EXTERN_ std::string EvtRecEvent
_EXTERN_ std::string EvtRecTrackCol
Pi0List & make_pi0_list(const GammaList &gamma_list)
GammaList & make_gamma_list(UserPi0Cut &cut)
void Pi0ListToTDS(const Pi0List &pi0list, EvtRecPi0Col *recPi0Col)
GammaList & GetDefaultGammaList()
Pi0List & GetCandidatePi0List()
Pi0List & apply_criteria(const Criteria &cri)
double MinEnergyOfEndcapPhoton
double MinEnergyOfBarrelPhoton
static void SetForTrack(EvtRecEvent *_recEvt, EvtRecTrackCol *_recTrkCol)