00001 #ifndef ANP_FILLSTRIP_H
00002 #define ANP_FILLSTRIP_H
00003
00004
00005
00006
00007
00008
00009
00010 #include <algorithm>
00011 #include <map>
00012 #include <vector>
00013
00014
00015 #include "Conventions/Detector.h"
00016
00017
00018 #include "PhysicsNtuple/AlgStore.h"
00019 #include "PhysicsNtuple/Strip.h"
00020
00021 class NtpStRecord;
00022 class PlexStripEndId;
00023
00024 namespace Anp
00025 {
00026 class FillStrip: public AlgStore
00027 {
00028 public:
00029
00030 FillStrip();
00031 virtual ~FillStrip();
00032
00033 bool Run(Record &record, TObject *ptr);
00034
00035 void Config(const Registry ®);
00036
00037 private:
00038
00039 typedef std::vector<Anp::Strip> SVec;
00040
00041 private:
00042
00043 void GetEvtStrip(SVec &svec, const NtpStRecord &ntprec) const;
00044 void GetShwStrip(SVec &svec, const NtpStRecord &ntprec) const;
00045 void GetSlcStrip(SVec &svec, const NtpStRecord &ntprec) const;
00046 void GetTrkStrip(SVec &svec, const NtpStRecord &ntprec) const;
00047
00048 const PlexStripEndId GetSEID(const Strip &strip, const Detector::Detector_t det) const;
00049 };
00050 }
00051
00052 #endif