11 #if defined(DO_INTERNAL_CHECKS) 27 static bool once=
true;
39 std::cout <<
"not a tracker hit! " <<
typeid(*thit).name() << std::endl;
42 std::cout <<
"undef hit! " <<
typeid(*thit).name() << std::endl;
44 if (dynamic_cast<SiPixelRecHit const *>(hit)) {
51 if (dynamic_cast<SiStripRecHit1D const *>(hit)) {
54 std::cout <<
"Strip1D:" << subd <<
" " << (
id&3) <<
" "<< bhit->
isSingle() <<
". ";
58 if (dynamic_cast<SiStripRecHit2D const *>(hit)) {
61 std::cout <<
"Strip2D:" << subd <<
" " << (
id&3) <<
" "<< bhit->
isSingle() <<
". ";
65 if (dynamic_cast<SiStripMatchedRecHit2D const *>(thit)) {
68 std::cout <<
"Strip Matched:" << subd <<
" " << (
id&3) <<
" " << bhit->
isMatched() <<
". " << std::endl;
72 if (dynamic_cast<ProjectedSiStripRecHit2D const *>(thit)) {
75 std::cout <<
"Strip Matched:" << subd <<
" " << (
id&3) <<
" " << bhit->
isProjected() <<
". " << std::endl;
84 std::cout <<
"not sharing with itself! " << what <<
" " 85 <<
typeid(*thit).name() << std::endl;
90 bool doingCheck =
false;
106 #if defined(DO_INTERNAL_CHECKS) 107 verify(
this); verify(other);
108 if (!doingCheck && (other!=
this)) checkSelf(
this,other);
120 if (what ==
all)
return false;
125 std::vector<const TrackingRecHit*> otherHits = other->
recHits();
126 int ncomponents=otherHits.size();
127 if(ncomponents==0)
return false;
128 if(ncomponents==1)
return sharesInput(otherHits.front(),what);
130 if(what ==
all )
return false;
132 for(
int i=0;
i<ncomponents;
i++){
140 std::vector<const TrackingRecHit*> nullvector;
144 std::vector<TrackingRecHit*> nullvector;
SharedInputType
definition of equality via shared input
unsigned int rawIndex() const
bool isSingleType(TrackingRecHit const &hit)
constexpr uint32_t rawId() const
get the raw id
virtual bool sharesInput(const TrackingRecHit *other, SharedInputType what) const
static const int kSubdetOffset
bool sharesInput(const TrackingRecHit *other, SharedInputType what) const final
bool sameDetModule(TrackingRecHit const &hit) const
ClusterPixelRef cluster_pixel() const
virtual std::vector< const TrackingRecHit * > recHits() const =0
Access to component RecHits (if any)
ClusterStripRef cluster_strip() const
OmniClusterRef const & omniCluster() const
bool isMatched(TrackingRecHit const &hit)
std::vector< const TrackingRecHit * > recHits() const override
Access to component RecHits (if any)
bool isNull() const
Checks for null.
bool isUndef(TrackingRecHit const &hit)
bool sharesInput(const TrackingRecHit *other, SharedInputType what) const override
DetId geographicalId() const