16 #ifndef L1_TRACK_TRIGGER_STUB_ALGO_official_H 17 #define L1_TRACK_TRIGGER_STUB_ALGO_official_H 37 template<
typename T >
48 std::vector< std::vector< double > >
ringCut;
55 std::vector< double > setBarrelCut,
56 std::vector< std::vector< double > > setRingCut,
57 std::vector< std::vector< double > > setTiltedCut,
58 std::vector< double > setBarrelNTilt,
59 bool aPerformZMatchingPS,
bool aPerformZMatching2S )
62 barrelCut = setBarrelCut;
64 tiltedCut = setTiltedCut;
65 barrelNTilt = setBarrelNTilt;
66 mPerformZMatchingPS = aPerformZMatchingPS;
67 mPerformZMatching2S = aPerformZMatching2S;
103 template<
typename T >
125 mPerformZMatchingPS = p.
getParameter<
bool >(
"zMatchingPS");
126 mPerformZMatching2S = p.
getParameter<
bool >(
"zMatching2S");
127 setBarrelCut = p.
getParameter< std::vector< double > >(
"BarrelCut");
128 setBarrelNTilt = p.
getParameter< std::vector< double > >(
"NTiltedRings");
130 std::vector< edm::ParameterSet > vPSet = p.
getParameter< std::vector< edm::ParameterSet > >(
"EndcapCutSet");
131 std::vector< edm::ParameterSet > vPSet2 = p.
getParameter< std::vector< edm::ParameterSet > >(
"TiltedBarrelCutSet");
133 std::vector< edm::ParameterSet >::const_iterator iPSet;
134 for ( iPSet = vPSet.begin(); iPSet != vPSet.end(); iPSet++ )
136 setRingCut.push_back( iPSet->getParameter< std::vector< double > >(
"EndcapCut") );
139 for ( iPSet = vPSet2.begin(); iPSet != vPSet2.end(); iPSet++ )
141 setTiltedCut.push_back( iPSet->getParameter< std::vector< double > >(
"TiltedCut") );
145 setWhatProduced(
this );
162 setBarrelCut, setRingCut, setTiltedCut, setBarrelNTilt,
165 _theAlgo = std::shared_ptr< TTStubAlgorithm< T > >( TTStubAlgo );
Class for "official" algorithm to be used in TTStubBuilder.
T getParameter(std::string const &) const
Base class for any algorithm to be used in TTStubBuilder.
Class to declare the algorithm to the framework.
~TTStubAlgorithm_official() override
Destructor.
~ES_TTStubAlgorithm_official() override
Destructor.
std::vector< double > setBarrelNTilt
std::shared_ptr< TTStubAlgorithm< T > > _theAlgo
Data members.
bool mPerformZMatchingPS
Z-matching.
const DepRecordT & getRecord() const
ES_TTStubAlgorithm_official(const edm::ParameterSet &p)
Constructor.
std::vector< std::vector< double > > setRingCut
void PatternHitCorrelation(bool &aConfirmation, int &aDisplacement, int &anOffset, const TTStub< T > &aTTStub) const override
Matching operations.
TTStubAlgorithm_official(const TrackerGeometry *const theTrackerGeom, const TrackerTopology *const theTrackerTopo, std::vector< double > setBarrelCut, std::vector< std::vector< double > > setRingCut, std::vector< std::vector< double > > setTiltedCut, std::vector< double > setBarrelNTilt, bool aPerformZMatchingPS, bool aPerformZMatching2S)
Constructor.
std::vector< double > barrelNTilt
Class to store the TTStubAlgorithm used in TTStubBuilder.
Class to store the L1 Track Trigger stubs.
std::shared_ptr< TTStubAlgorithm< T > > produce(const TTStubAlgorithmRecord &record)
Implement the producer.
bool mPerformZMatchingPS
Data members.
std::vector< std::vector< double > > ringCut
std::vector< std::vector< double > > setTiltedCut
std::vector< std::vector< double > > tiltedCut
std::vector< double > barrelCut
T const * product() const
std::vector< double > setBarrelCut
Windows.