File indexing completed on 2024-09-07 04:34:43
0001 #ifndef MuonSegment_H
0002 #define MuonSegment_H
0003 #include "DataFormats/Common/interface/AssociationVector.h"
0004 #include "DataFormats/Common/interface/AssociationMap.h"
0005 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
0006 #include <vector>
0007
0008 #include "DataFormats/DTRecHit/interface/DTRecSegment4DCollection.h"
0009 #include "DataFormats/CSCRecHit/interface/CSCSegmentCollection.h"
0010
0011 namespace susybsm {
0012
0013 class MuonSegment {
0014 public:
0015 MuonSegment() {}
0016
0017
0018
0019
0020
0021
0022 void setDTSegmentRef(const DTRecSegment4DRef segment) { DTSegmentRef_ = segment; }
0023 void setCSCSegmentRef(const CSCSegmentRef segment) { CSCSegmentRef_ = segment; }
0024
0025 void setGP(const GlobalPoint point) { gp = point; }
0026
0027 GlobalPoint getGP() const { return gp; }
0028
0029 DTRecSegment4DRef getDTSegmentRef() const { return DTSegmentRef_; }
0030 CSCSegmentRef getCSCSegmentRef() const { return CSCSegmentRef_; }
0031
0032 private:
0033 GlobalPoint gp;
0034
0035 DTRecSegment4DRef DTSegmentRef_;
0036 CSCSegmentRef CSCSegmentRef_;
0037 };
0038
0039 typedef std::vector<MuonSegment> MuonSegmentCollection;
0040 typedef edm::Ref<MuonSegmentCollection> MuonSegmentRef;
0041 typedef edm::RefProd<MuonSegmentCollection> MuonSegmentRefProd;
0042 typedef edm::RefVector<MuonSegmentCollection> MuonSegmentRefVector;
0043 }
0044
0045 #endif