2 #ifndef FASTSIMULATION_TRACKING_FASTTRACKINGHELPER_H
3 #define FASTSIMULATION_TRACKING_FASTTRACKINGHELPER_H
8 namespace fastTrackingUtilities {
12 for (
auto &recHit : recHits) {
14 throw cms::Exception(
"fastTrackingHelpers::setRecHitCombinationIndex: one of hits in OwnVector is non-fastsim");
25 throw cms::Exception(
"fastTrackingHelpers::getRecHitCombinationIndex")
26 <<
" given object has 0 hits" << std::endl;
31 throw cms::Exception(
"fastTrackingHelpers::setRecHitCombinationIndex")
32 <<
" one of hits in OwnVector is non-fastsim" << std::endl;
40 for (
unsigned int i = 0;
i < hit->
nIds();
i++) {
41 if (!(hitMasks)[hit->
id(
i)]) {
53 return 0.5 * (xx + yy -
delta);
void setRecHitCombinationIndex(edm::OwnVector< T > &recHits, int32_t icomb)
virtual size_t nIds() const
virtual std::vector< const TrackingRecHit * > recHits() const =0
Access to component RecHits (if any)
bool isFast(TrackingRecHit const &hit)
bool hitIsMasked(const FastTrackerRecHit *hit, const std::vector< bool > &hitMasks)
int32_t getRecHitCombinationIndex(const T &object)
Basic2DVector< T > xy() const
virtual LocalError localPositionError() const =0
double hitLocalError(const TrackingRecHit *hit)
virtual int32_t id(size_t i=0) const