00001 #include "DataFormats/TrackingRecHit/interface/InvalidTrackingRecHit.h" 00002 #include "FWCore/Utilities/interface/Exception.h" 00003 00004 void InvalidTrackingRecHit::throwError() const { 00005 throw cms::Exception("Invalid TrackingRecHit used"); 00006 } 00007 00008 AlgebraicVector InvalidTrackingRecHit::parameters() const { 00009 throwError(); 00010 return AlgebraicVector(); 00011 } 00012 00013 AlgebraicSymMatrix InvalidTrackingRecHit::parametersError() const { 00014 throwError(); 00015 return AlgebraicSymMatrix(); 00016 } 00017 00018 AlgebraicMatrix InvalidTrackingRecHit::projectionMatrix() const { 00019 throwError(); 00020 return AlgebraicMatrix(); 00021 } 00022 00023 int InvalidTrackingRecHit::dimension() const { throwError(); return 0;} 00024 00025 LocalPoint InvalidTrackingRecHit::localPosition() const { 00026 throwError(); 00027 return LocalPoint(); 00028 } 00029 00030 LocalError InvalidTrackingRecHit::localPositionError() const { 00031 throwError(); 00032 return LocalError(); 00033 } 00034 00035 00036 std::vector<const TrackingRecHit*> InvalidTrackingRecHit::recHits() const { 00037 throwError(); 00038 return std::vector<const TrackingRecHit*>(); 00039 } 00040 00041 std::vector<TrackingRecHit*> InvalidTrackingRecHit::recHits() { 00042 throwError(); 00043 return std::vector<TrackingRecHit*>(); 00044 } 00045 00046 bool InvalidTrackingRecHit::sharesInput( const TrackingRecHit* other, 00047 SharedInputType what) const 00048 { 00049 return false; 00050 } 00051