CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
SiPixelCoordinates Class Reference

#include <SiPixelCoordinates.h>

Public Member Functions

int blade (const DetId &)
 
float blade_coord (const DetId &, const std::pair< int, int > &)
 
float blade_coord (const DetId &, const PixelDigi *)
 
float blade_coord (const DetId &, const SiPixelCluster *)
 
float blade_coord (const SiPixelRecHit *)
 
float blade_coord (const TrackingRecHit *)
 
float blade_panel_coord (const DetId &, const std::pair< int, int > &)
 
float blade_panel_coord (const DetId &, const PixelDigi *)
 
float blade_panel_coord (const DetId &, const SiPixelCluster *)
 
float blade_panel_coord (const SiPixelRecHit *)
 
float blade_panel_coord (const TrackingRecHit *)
 
int channel (const DetId &, const std::pair< int, int > &)
 
int channel (const DetId &, const PixelDigi *)
 
int channel (const DetId &, const SiPixelCluster *)
 
int channel (const SiPixelRecHit *)
 
int channel (const TrackingRecHit *)
 
int disk (const DetId &)
 
float disk_coord (const DetId &, const std::pair< int, int > &)
 
float disk_coord (const DetId &, const PixelDigi *)
 
float disk_coord (const DetId &, const SiPixelCluster *)
 
float disk_coord (const SiPixelRecHit *)
 
float disk_coord (const TrackingRecHit *)
 
float disk_ring_coord (const DetId &, const std::pair< int, int > &)
 
float disk_ring_coord (const DetId &, const PixelDigi *)
 
float disk_ring_coord (const DetId &, const SiPixelCluster *)
 
float disk_ring_coord (const SiPixelRecHit *)
 
float disk_ring_coord (const TrackingRecHit *)
 
unsigned int fedid (const DetId &)
 
int flipped (const DetId &)
 
int half (const DetId &)
 
void init (edm::EventSetup const &)
 
int ladder (const DetId &)
 
float ladder_coord (const DetId &, const std::pair< int, int > &)
 
float ladder_coord (const DetId &, const PixelDigi *)
 
float ladder_coord (const DetId &, const SiPixelCluster *)
 
float ladder_coord (const SiPixelRecHit *)
 
float ladder_coord (const TrackingRecHit *)
 
int layer (const DetId &)
 
int module (const DetId &)
 
float module_coord (const DetId &, const std::pair< int, int > &)
 
float module_coord (const DetId &, const PixelDigi *)
 
float module_coord (const DetId &, const SiPixelCluster *)
 
float module_coord (const SiPixelRecHit *)
 
float module_coord (const TrackingRecHit *)
 
int outer (const DetId &)
 
int panel (const DetId &)
 
int quadrant (const DetId &)
 
int ring (const DetId &)
 
float ring_coord (const DetId &, const std::pair< int, int > &)
 
float ring_coord (const DetId &, const PixelDigi *)
 
float ring_coord (const DetId &, const SiPixelCluster *)
 
float ring_coord (const SiPixelRecHit *)
 
float ring_coord (const TrackingRecHit *)
 
int roc (const DetId &, const std::pair< int, int > &)
 
int roc (const DetId &, const PixelDigi *)
 
int roc (const DetId &, const SiPixelCluster *)
 
int roc (const SiPixelRecHit *)
 
int roc (const TrackingRecHit *)
 
int sector (const DetId &)
 
int side (const DetId &)
 
int signed_blade (const DetId &)
 
float signed_blade_coord (const DetId &, const std::pair< int, int > &)
 
float signed_blade_coord (const DetId &, const PixelDigi *)
 
float signed_blade_coord (const DetId &, const SiPixelCluster *)
 
float signed_blade_coord (const SiPixelRecHit *)
 
float signed_blade_coord (const TrackingRecHit *)
 
float signed_blade_panel_coord (const DetId &, const std::pair< int, int > &)
 
float signed_blade_panel_coord (const DetId &, const PixelDigi *)
 
float signed_blade_panel_coord (const DetId &, const SiPixelCluster *)
 
float signed_blade_panel_coord (const SiPixelRecHit *)
 
float signed_blade_panel_coord (const TrackingRecHit *)
 
int signed_disk (const DetId &)
 
float signed_disk_coord (const DetId &, const std::pair< int, int > &)
 
float signed_disk_coord (const DetId &, const PixelDigi *)
 
float signed_disk_coord (const DetId &, const SiPixelCluster *)
 
float signed_disk_coord (const SiPixelRecHit *)
 
float signed_disk_coord (const TrackingRecHit *)
 
float signed_disk_ring_coord (const DetId &, const std::pair< int, int > &)
 
float signed_disk_ring_coord (const DetId &, const PixelDigi *)
 
float signed_disk_ring_coord (const DetId &, const SiPixelCluster *)
 
float signed_disk_ring_coord (const SiPixelRecHit *)
 
float signed_disk_ring_coord (const TrackingRecHit *)
 
int signed_ladder (const DetId &)
 
float signed_ladder_coord (const DetId &, const std::pair< int, int > &)
 
float signed_ladder_coord (const DetId &, const PixelDigi *)
 
float signed_ladder_coord (const DetId &, const SiPixelCluster *)
 
float signed_ladder_coord (const SiPixelRecHit *)
 
float signed_ladder_coord (const TrackingRecHit *)
 
int signed_module (const DetId &)
 
float signed_module_coord (const DetId &, const std::pair< int, int > &)
 
float signed_module_coord (const DetId &, const PixelDigi *)
 
float signed_module_coord (const DetId &, const SiPixelCluster *)
 
float signed_module_coord (const SiPixelRecHit *)
 
float signed_module_coord (const TrackingRecHit *)
 
float signed_shifted_blade_panel_coord (const DetId &, const std::pair< int, int > &)
 
float signed_shifted_blade_panel_coord (const DetId &, const PixelDigi *)
 
float signed_shifted_blade_panel_coord (const DetId &, const SiPixelCluster *)
 
float signed_shifted_blade_panel_coord (const SiPixelRecHit *)
 
float signed_shifted_blade_panel_coord (const TrackingRecHit *)
 
 SiPixelCoordinates ()
 
 SiPixelCoordinates (int)
 
virtual ~SiPixelCoordinates ()
 

Private Member Functions

bool isBPix_ (const DetId &)
 
bool isFPix_ (const DetId &)
 
bool isPixel_ (const DetId &)
 
std::pair< int, int > pixel_ (const PixelDigi *)
 
std::pair< int, int > pixel_ (const SiPixelCluster *)
 
std::pair< int, int > pixel_ (const SiPixelRecHit *)
 
float xcoord_on_module_ (const DetId &, const std::pair< int, int > &)
 
float ycoord_on_module_ (const DetId &, const std::pair< int, int > &)
 

Private Attributes

std::map< uint32_t, int > blade_
 
const SiPixelFedCablingMapcablingMap_
 
std::map< uint64_t, unsigned int > channel_
 
std::map< uint32_t, int > disk_
 
std::map< uint32_t, unsigned int > fedid_
 
std::map< uint32_t, int > flipped_
 
std::map< uint32_t, int > half_
 
std::map< uint32_t, int > ladder_
 
std::map< uint32_t, int > layer_
 
std::map< uint32_t, int > module_
 
std::map< uint32_t, int > outer_
 
std::map< uint32_t, int > panel_
 
int phase_
 
std::map< uint32_t, int > quadrant_
 
std::map< uint32_t, int > ring_
 
std::map< uint64_t, unsigned int > roc_
 
std::map< uint32_t, int > sector_
 
std::map< uint32_t, int > side_
 
std::map< uint32_t, int > signed_blade_
 
std::map< uint32_t, int > signed_disk_
 
std::map< uint32_t, int > signed_ladder_
 
std::map< uint32_t, int > signed_module_
 
const TrackerGeometrytGeom_
 
const TrackerTopologytTopo_
 

Detailed Description

Definition at line 35 of file SiPixelCoordinates.h.

Constructor & Destructor Documentation

SiPixelCoordinates::SiPixelCoordinates ( )

Definition at line 24 of file SiPixelCoordinates.cc.

References phase_.

SiPixelCoordinates::SiPixelCoordinates ( int  phase)

Definition at line 26 of file SiPixelCoordinates.cc.

26 : phase_(phase) {}
SiPixelCoordinates::~SiPixelCoordinates ( )
virtual

Definition at line 28 of file SiPixelCoordinates.cc.

28 {}

Member Function Documentation

int SiPixelCoordinates::blade ( const DetId detid)

Definition at line 222 of file SiPixelCoordinates.cc.

References blade_, isFPix_(), TrackerTopology::pxfBlade(), DetId::rawId(), and tTopo_.

Referenced by blade_coord(), and blade_panel_coord().

222  {
223  if (blade_.count(detid.rawId())) return blade_[detid.rawId()];
224  if (!isFPix_(detid)) return blade_[detid.rawId()] = -9999;
225  return blade_[detid.rawId()] = tTopo_->pxfBlade(detid);
226 }
const TrackerTopology * tTopo_
std::map< uint32_t, int > blade_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
unsigned int pxfBlade(const DetId &id) const
bool isFPix_(const DetId &)
float SiPixelCoordinates::blade_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 756 of file SiPixelCoordinates.cc.

References blade(), isFPix_(), module(), panel(), phase_, side(), xcoord_on_module_(), and ycoord_on_module_().

Referenced by blade_coord(), and blade_panel_coord().

756  {
757  if (!isFPix_(detid)) return -9999;
758  float blade_coord = blade(detid), coord_shift = 0;
759  if (phase_==0) {
760  int rocsY = panel(detid)+module(detid);
761  coord_shift = ycoord_on_module_(detid, pixel) - rocsY/10.;
762  if (side(detid)==1) coord_shift = -coord_shift;
763  } else if (phase_==1) {
764  coord_shift = xcoord_on_module_(detid, pixel) - 0.5;
765  if ((side(detid)+panel(detid))%2==0) coord_shift = -coord_shift;
766  }
767  blade_coord += coord_shift;
768  return blade_coord;
769 }
float ycoord_on_module_(const DetId &, const std::pair< int, int > &)
int side(const DetId &)
int blade(const DetId &)
float blade_coord(const DetId &, const std::pair< int, int > &)
int module(const DetId &)
int panel(const DetId &)
float xcoord_on_module_(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::blade_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 770 of file SiPixelCoordinates.cc.

References blade_coord(), isFPix_(), and pixel_().

770  {
771  if (!isFPix_(detid)) return -9999;
772  return blade_coord(detid, pixel_(digi));
773 }
float blade_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
bool isFPix_(const DetId &)
float SiPixelCoordinates::blade_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 774 of file SiPixelCoordinates.cc.

References blade_coord(), isFPix_(), and pixel_().

774  {
775  if (!isFPix_(detid)) return -9999;
776  return blade_coord(detid, pixel_(cluster));
777 }
float blade_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
bool isFPix_(const DetId &)
float SiPixelCoordinates::blade_coord ( const SiPixelRecHit rechit)

Definition at line 778 of file SiPixelCoordinates.cc.

References blade_coord(), TrackingRecHit::geographicalId(), isFPix_(), and pixel_().

778  {
779  if (!isFPix_(rechit->geographicalId())) return -9999;
780  return blade_coord(rechit->geographicalId(), pixel_(rechit));
781 }
float blade_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
bool isFPix_(const DetId &)
float SiPixelCoordinates::blade_coord ( const TrackingRecHit rechit)

Definition at line 782 of file SiPixelCoordinates.cc.

References blade_coord(), TrackingRecHit::geographicalId(), TrackingRecHit::hit(), and isFPix_().

782  {
783  if (!isFPix_(rechit->geographicalId())) return -9999;
784  return blade_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
785 }
float blade_coord(const DetId &, const std::pair< int, int > &)
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
bool isFPix_(const DetId &)
float SiPixelCoordinates::blade_panel_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 832 of file SiPixelCoordinates.cc.

References blade(), blade_coord(), isFPix_(), and panel().

Referenced by blade_panel_coord().

832  {
833  if (!isFPix_(detid)) return -9999;
834  float blade_panel_coord = blade(detid);
835  float coord_shift = (blade_coord(detid, pixel) - blade_panel_coord + panel(detid) - 1.5)/2;
836  blade_panel_coord += coord_shift;
837  return blade_panel_coord;
838 }
int blade(const DetId &)
float blade_coord(const DetId &, const std::pair< int, int > &)
int panel(const DetId &)
float blade_panel_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::blade_panel_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 839 of file SiPixelCoordinates.cc.

References blade_panel_coord(), isFPix_(), and pixel_().

839  {
840  if (!isFPix_(detid)) return -9999;
841  return blade_panel_coord(detid, pixel_(digi));
842 }
std::pair< int, int > pixel_(const PixelDigi *)
float blade_panel_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::blade_panel_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 843 of file SiPixelCoordinates.cc.

References blade_panel_coord(), isFPix_(), and pixel_().

843  {
844  if (!isFPix_(detid)) return -9999;
845  return blade_panel_coord(detid, pixel_(cluster));
846 }
std::pair< int, int > pixel_(const PixelDigi *)
float blade_panel_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::blade_panel_coord ( const SiPixelRecHit rechit)

Definition at line 847 of file SiPixelCoordinates.cc.

References blade_panel_coord(), TrackingRecHit::geographicalId(), isFPix_(), and pixel_().

847  {
848  if (!isFPix_(rechit->geographicalId())) return -9999;
849  return blade_panel_coord(rechit->geographicalId(), pixel_(rechit));
850 }
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
float blade_panel_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::blade_panel_coord ( const TrackingRecHit rechit)

Definition at line 851 of file SiPixelCoordinates.cc.

References blade_panel_coord(), TrackingRecHit::geographicalId(), TrackingRecHit::hit(), and isFPix_().

851  {
852  if (!isFPix_(rechit->geographicalId())) return -9999;
853  return blade_panel_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
854 }
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
float blade_panel_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
int SiPixelCoordinates::channel ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 334 of file SiPixelCoordinates.cc.

References cablingMap_, channel_, PixelTopology::colsperroc(), gamEcalExtractorBlocks_cff::detector, fedid(), half(), sipixelobjects::PixelROC::idInDetUnit(), TrackerGeometry::idToDetUnit(), isPixel_(), sipixelobjects::ElectronicIndex::link, phase_, PixelSubdetector::PixelBarrel, DetId::rawId(), sipixelobjects::ElectronicIndex::roc, roc(), roc_, PixelTopology::rowsperroc(), side(), PixelGeomDetUnit::specificTopology(), DetId::subdetId(), tGeom_, SiPixelFrameConverter::toCabling(), and SiPixelFrameConverter::toRoc().

Referenced by channel().

334  {
335  if (!isPixel_(detid)) return -9999;
336  // The method below may be slow when looping on a lot of pixels, so let's try to speed it up
337  // by quickly chategorizing pixels to ROC coordinates inside det units
338  int rowsperroc = 80, colsperroc = 52;
339  if (phase_==2) {
340  // Can get roc info from Geometry for Phase 2, this will need to be specified when it's final
341  const PixelGeomDetUnit* detUnit = static_cast<const PixelGeomDetUnit*>(tGeom_->idToDetUnit(detid));
342  const PixelTopology* topo = static_cast<const PixelTopology*>(&detUnit->specificTopology());
343  rowsperroc = topo->rowsperroc();
344  colsperroc = topo->colsperroc();
345  }
346  // It is unlikely a ROC would have more than 256 chips, so let's use this formula
347  // If a ROC number was ever found, then binary search in a map will be much quicker
348  uint64_t pseudo_roc_num = uint64_t(1<<16) * detid.rawId() + (1<<8) * (pixel.first/rowsperroc) + pixel.second/colsperroc;
349  if (channel_.count(pseudo_roc_num)) return channel_[pseudo_roc_num];
350  // If not found previously, get the channel number
351  unsigned int fedId = fedid(detid);
353  sipixelobjects::DetectorIndex detector = { detid.rawId(), pixel.first, pixel.second };
355  converter.toCabling(cabling, detector);
356  // Time consuming part is over, so let's save the roc number too
357  const sipixelobjects::PixelROC *theRoc = converter.toRoc(cabling.link, cabling.roc);
358  int roc = theRoc->idInDetUnit();
359  if (detid.subdetId() == PixelSubdetector::PixelBarrel && side(detid)==1 && half(detid)) roc += 8;
360  roc_[pseudo_roc_num] = roc;
361  //printf ("Online FED, LNK, LNKID, ROC: %2d %2d %2d %2d - Offline RAWID, ROW, COL: %9d [%3d,%3d] [%3d,%3d]\n",
362  // fedId, cabling.link, cabling.roc, roc, detid.rawId(),
363  // (pixel.first /rowsperroc)*rowsperroc, (pixel.first /rowsperroc+1)*rowsperroc-1,
364  // (pixel.second/colsperroc)*colsperroc, (pixel.second/colsperroc+1)*colsperroc-1);
365  return channel_[pseudo_roc_num] = cabling.link;
366 }
const TrackerGeomDet * idToDetUnit(DetId) const
Return the pointer to the GeomDetUnit corresponding to a given DetId.
virtual int rowsperroc() const =0
bool isPixel_(const DetId &)
int side(const DetId &)
unsigned int fedid(const DetId &)
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
int half(const DetId &)
virtual int colsperroc() const =0
unsigned int idInDetUnit() const
id of this ROC in DetUnit etermined by token path
Definition: PixelROC.h:40
const SiPixelFedCablingMap * cablingMap_
int roc(const DetId &, const std::pair< int, int > &)
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
unsigned long long uint64_t
Definition: Time.h:15
const TrackerGeometry * tGeom_
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
std::map< uint64_t, unsigned int > channel_
std::map< uint64_t, unsigned int > roc_
int SiPixelCoordinates::channel ( const DetId detid,
const PixelDigi digi 
)

Definition at line 367 of file SiPixelCoordinates.cc.

References channel(), isPixel_(), and pixel_().

367  {
368  if (!isPixel_(detid)) return -9999;
369  return channel(detid, pixel_(digi));
370 }
bool isPixel_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
int channel(const DetId &, const std::pair< int, int > &)
int SiPixelCoordinates::channel ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 371 of file SiPixelCoordinates.cc.

References channel(), isPixel_(), and pixel_().

371  {
372  if (!isPixel_(detid)) return -9999;
373  return channel(detid, pixel_(cluster));
374 }
bool isPixel_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
int channel(const DetId &, const std::pair< int, int > &)
int SiPixelCoordinates::channel ( const SiPixelRecHit rechit)

Definition at line 375 of file SiPixelCoordinates.cc.

References channel(), TrackingRecHit::geographicalId(), isPixel_(), and pixel_().

375  {
376  if (!isPixel_(rechit->geographicalId())) return -9999;
377  return channel(rechit->geographicalId(), pixel_(rechit));
378 }
bool isPixel_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
int channel(const DetId &, const std::pair< int, int > &)
DetId geographicalId() const
int SiPixelCoordinates::channel ( const TrackingRecHit rechit)

Definition at line 379 of file SiPixelCoordinates.cc.

References channel(), TrackingRecHit::geographicalId(), TrackingRecHit::hit(), and isPixel_().

379  {
380  if (!isPixel_(rechit->geographicalId())) return -9999;
381  return channel(static_cast<const SiPixelRecHit*>(rechit->hit()));
382 }
bool isPixel_(const DetId &)
int channel(const DetId &, const std::pair< int, int > &)
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
int SiPixelCoordinates::disk ( const DetId detid)

Definition at line 180 of file SiPixelCoordinates.cc.

References disk_, isFPix_(), TrackerTopology::pxfDisk(), DetId::rawId(), and tTopo_.

Referenced by disk_coord(), disk_ring_coord(), and signed_disk().

180  {
181  if (disk_.count(detid.rawId())) return disk_[detid.rawId()];
182  if (!isFPix_(detid)) return disk_[detid.rawId()] = -9999;
183  return disk_[detid.rawId()] = tTopo_->pxfDisk(detid);
184 }
unsigned int pxfDisk(const DetId &id) const
const TrackerTopology * tTopo_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
std::map< uint32_t, int > disk_
bool isFPix_(const DetId &)
float SiPixelCoordinates::disk_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 633 of file SiPixelCoordinates.cc.

References disk(), isFPix_(), ring(), and ring_coord().

Referenced by disk_coord().

633  {
634  if (!isFPix_(detid)) return -9999;
635  float disk_coord = disk(detid), coord_shift = ring_coord(detid,pixel)-ring(detid);
636  disk_coord += coord_shift;
637  return disk_coord;
638 }
float ring_coord(const DetId &, const std::pair< int, int > &)
float disk_coord(const DetId &, const std::pair< int, int > &)
int ring(const DetId &)
int disk(const DetId &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::disk_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 639 of file SiPixelCoordinates.cc.

References disk_coord(), isFPix_(), and pixel_().

639  {
640  if (!isFPix_(detid)) return -9999;
641  return disk_coord(detid, pixel_(digi));
642 }
float disk_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
bool isFPix_(const DetId &)
float SiPixelCoordinates::disk_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 643 of file SiPixelCoordinates.cc.

References disk_coord(), isFPix_(), and pixel_().

643  {
644  if (!isFPix_(detid)) return -9999;
645  return disk_coord(detid, pixel_(cluster));
646 }
float disk_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
bool isFPix_(const DetId &)
float SiPixelCoordinates::disk_coord ( const SiPixelRecHit rechit)

Definition at line 647 of file SiPixelCoordinates.cc.

References disk_coord(), TrackingRecHit::geographicalId(), isFPix_(), and pixel_().

647  {
648  if (!isFPix_(rechit->geographicalId())) return -9999;
649  return disk_coord(rechit->geographicalId(), pixel_(rechit));
650 }
float disk_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
bool isFPix_(const DetId &)
float SiPixelCoordinates::disk_coord ( const TrackingRecHit rechit)

Definition at line 651 of file SiPixelCoordinates.cc.

References disk_coord(), TrackingRecHit::geographicalId(), TrackingRecHit::hit(), and isFPix_().

651  {
652  if (!isFPix_(rechit->geographicalId())) return -9999;
653  return disk_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
654 }
float disk_coord(const DetId &, const std::pair< int, int > &)
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
bool isFPix_(const DetId &)
float SiPixelCoordinates::disk_ring_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 687 of file SiPixelCoordinates.cc.

References disk(), isFPix_(), and ring_coord().

Referenced by disk_ring_coord().

687  {
688  if (!isFPix_(detid)) return -9999;
689  float disk_ring_coord = disk(detid), coord_shift = 0;
690  //if (phase_==0) coord_shift = (ring_coord(detid,pixel) - 1.625) / 1.5;
691  //else if (phase_==1) coord_shift = (ring_coord(detid,pixel) - 1.5 ) / 2.0;
692  coord_shift = (ring_coord(detid,pixel) - 1.5 ) / 2.0;
693  disk_ring_coord += coord_shift;
694  return disk_ring_coord;
695 }
float disk_ring_coord(const DetId &, const std::pair< int, int > &)
float ring_coord(const DetId &, const std::pair< int, int > &)
int disk(const DetId &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::disk_ring_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 696 of file SiPixelCoordinates.cc.

References disk_ring_coord(), isFPix_(), and pixel_().

696  {
697  if (!isFPix_(detid)) return -9999;
698  return disk_ring_coord(detid, pixel_(digi));
699 }
float disk_ring_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
bool isFPix_(const DetId &)
float SiPixelCoordinates::disk_ring_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 700 of file SiPixelCoordinates.cc.

References disk_ring_coord(), isFPix_(), and pixel_().

700  {
701  if (!isFPix_(detid)) return -9999;
702  return disk_ring_coord(detid, pixel_(cluster));
703 }
float disk_ring_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
bool isFPix_(const DetId &)
float SiPixelCoordinates::disk_ring_coord ( const SiPixelRecHit rechit)

Definition at line 704 of file SiPixelCoordinates.cc.

References disk_ring_coord(), TrackingRecHit::geographicalId(), isFPix_(), and pixel_().

704  {
705  if (!isFPix_(rechit->geographicalId())) return -9999;
706  return disk_ring_coord(rechit->geographicalId(), pixel_(rechit));
707 }
float disk_ring_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
bool isFPix_(const DetId &)
float SiPixelCoordinates::disk_ring_coord ( const TrackingRecHit rechit)

Definition at line 708 of file SiPixelCoordinates.cc.

References disk_ring_coord(), TrackingRecHit::geographicalId(), TrackingRecHit::hit(), and isFPix_().

708  {
709  if (!isFPix_(rechit->geographicalId())) return -9999;
710  return disk_ring_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
711 }
float disk_ring_coord(const DetId &, const std::pair< int, int > &)
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
bool isFPix_(const DetId &)
unsigned int SiPixelCoordinates::fedid ( const DetId detid)

Definition at line 239 of file SiPixelCoordinates.cc.

References cablingMap_, fedid_, SiPixelFedCablingMap::fedIds(), SiPixelFrameConverter::hasDetUnit(), isPixel_(), and DetId::rawId().

Referenced by channel(), and roc().

239  {
240  if (fedid_.count(detid.rawId())) return fedid_[detid.rawId()];
241  if (!isPixel_(detid)) return fedid_[detid.rawId()] = 9999;
242  unsigned int fedid = 9999;
243  for(auto& fedId : cablingMap_->fedIds()) {
244  if(SiPixelFrameConverter(cablingMap_, fedId).hasDetUnit(detid.rawId())) {
245  fedid=fedId;
246  break;
247  }
248  }
249  return fedid_[detid.rawId()] = fedid;
250 }
bool isPixel_(const DetId &)
std::map< uint32_t, unsigned int > fedid_
unsigned int fedid(const DetId &)
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
const SiPixelFedCablingMap * cablingMap_
bool hasDetUnit(uint32_t radId) const
std::vector< unsigned int > fedIds() const
int SiPixelCoordinates::flipped ( const DetId detid)

Definition at line 171 of file SiPixelCoordinates.cc.

References flipped_, isBPix_(), outer(), phase_, and DetId::rawId().

Referenced by ladder_coord(), and signed_ladder_coord().

171  {
172  if (flipped_.count(detid.rawId())) return flipped_[detid.rawId()];
173  if (!isBPix_(detid)) return flipped_[detid.rawId()] = -9999;
174  int flipped = -9999;
175  if (phase_ < 2) flipped = outer(detid)==0;
176  return flipped_[detid.rawId()] = flipped;
177 }
int flipped(const DetId &)
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
bool isBPix_(const DetId &)
std::map< uint32_t, int > flipped_
int outer(const DetId &)
int SiPixelCoordinates::half ( const DetId detid)

Definition at line 142 of file SiPixelCoordinates.cc.

References half_, isBPix_(), PixelBarrelName::isHalfModule(), phase_, DetId::rawId(), and tTopo_.

Referenced by channel(), ladder_coord(), roc(), and signed_ladder_coord().

142  {
143  if (half_.count(detid.rawId())) return half_[detid.rawId()];
144  if (!isBPix_(detid)) return half_[detid.rawId()] = -9999;
145  return half_[detid.rawId()] = PixelBarrelName(detid, tTopo_, phase_).isHalfModule();
146 }
const TrackerTopology * tTopo_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
bool isBPix_(const DetId &)
bool isHalfModule() const
full or half module
std::map< uint32_t, int > half_
void SiPixelCoordinates::init ( edm::EventSetup const &  iSetup)

Definition at line 33 of file SiPixelCoordinates.cc.

References cablingMap_, edm::EventSetup::get(), GeomDetEnumerators::P1PXB, GeomDetEnumerators::P1PXEC, phase_, GeomDetEnumerators::PixelBarrel, GeomDetEnumerators::PixelEndcap, edm::ESHandle< T >::product(), tGeom_, and tTopo_.

33  {
34  // Get CablingMap (used for ROC number)
35  edm::ESHandle<SiPixelFedCablingMap> cablingMapHandle;
36  iSetup.get<SiPixelFedCablingMapRcd>().get(cablingMapHandle);
37  cablingMap_ = cablingMapHandle.product();
38 
39  // Get TrackerTopology
40  edm::ESHandle<TrackerTopology> trackerTopologyHandle;
41  iSetup.get<TrackerTopologyRcd>().get(trackerTopologyHandle);
42  tTopo_ = trackerTopologyHandle.product();
43 
44  // Get TrackerGeometry
45  edm::ESHandle<TrackerGeometry> trackerGeometryHandle;
46  iSetup.get<TrackerDigiGeometryRecord>().get(trackerGeometryHandle);
47  tGeom_ = trackerGeometryHandle.product();
48 
49  // If not specified, determine from the geometry
50  if (phase_==-1) {
51  if (tGeom_ -> isThere(GeomDetEnumerators::PixelBarrel) &&
53  phase_ = 0;
54  else if (tGeom_ -> isThere(GeomDetEnumerators::P1PXB) &&
56  phase_ = 1;
57  else if (tGeom_ -> isThere(GeomDetEnumerators::P1PXB) &&
59  phase_ = 2;
60  }
61 }
const TrackerTopology * tTopo_
const SiPixelFedCablingMap * cablingMap_
const TrackerGeometry * tGeom_
T const * product() const
Definition: ESHandle.h:86
bool SiPixelCoordinates::isBPix_ ( const DetId detid)
private

Definition at line 261 of file SiPixelCoordinates.cc.

References DetId::det(), PixelSubdetector::PixelBarrel, DetId::subdetId(), and DetId::Tracker.

Referenced by flipped(), half(), ladder(), ladder_coord(), layer(), module_coord(), outer(), sector(), signed_ladder(), signed_ladder_coord(), signed_module(), and signed_module_coord().

261  {
262  if (detid.det() != DetId::Tracker) return false;
263  if (detid.subdetId() == PixelSubdetector::PixelBarrel) return true;
264  return false;
265 }
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
Detector det() const
get the detector field from this detid
Definition: DetId.h:35
bool SiPixelCoordinates::isFPix_ ( const DetId detid)
private

Definition at line 266 of file SiPixelCoordinates.cc.

References DetId::det(), PixelSubdetector::PixelEndcap, DetId::subdetId(), and DetId::Tracker.

Referenced by blade(), blade_coord(), blade_panel_coord(), disk(), disk_coord(), disk_ring_coord(), panel(), ring(), ring_coord(), signed_blade(), signed_blade_coord(), signed_blade_panel_coord(), signed_disk(), signed_disk_coord(), signed_disk_ring_coord(), signed_shifted_blade_panel_coord(), and ycoord_on_module_().

266  {
267  if (detid.det() != DetId::Tracker) return false;
268  if (detid.subdetId() == PixelSubdetector::PixelEndcap) return true;
269  return false;
270 }
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
Detector det() const
get the detector field from this detid
Definition: DetId.h:35
bool SiPixelCoordinates::isPixel_ ( const DetId detid)
private

Definition at line 255 of file SiPixelCoordinates.cc.

References DetId::det(), PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, DetId::subdetId(), and DetId::Tracker.

Referenced by channel(), fedid(), module(), quadrant(), roc(), and side().

255  {
256  if (detid.det() != DetId::Tracker) return false;
257  if (detid.subdetId() == PixelSubdetector::PixelBarrel) return true;
258  if (detid.subdetId() == PixelSubdetector::PixelEndcap) return true;
259  return false;
260 }
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
Detector det() const
get the detector field from this detid
Definition: DetId.h:35
int SiPixelCoordinates::ladder ( const DetId detid)

Definition at line 115 of file SiPixelCoordinates.cc.

References isBPix_(), ladder_, TrackerTopology::pxbLadder(), DetId::rawId(), and tTopo_.

Referenced by ladder_coord().

115  {
116  if (ladder_.count(detid.rawId())) return ladder_[detid.rawId()];
117  if (!isBPix_(detid)) return ladder_[detid.rawId()] = -9999;
118  return ladder_[detid.rawId()] = tTopo_->pxbLadder(detid);
119 }
const TrackerTopology * tTopo_
unsigned int pxbLadder(const DetId &id) const
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
bool isBPix_(const DetId &)
std::map< uint32_t, int > ladder_
float SiPixelCoordinates::ladder_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 526 of file SiPixelCoordinates.cc.

References flipped(), half(), isBPix_(), ladder(), Validation_hcalonly_cfi::sign, and xcoord_on_module_().

Referenced by ladder_coord().

526  {
527  if (!isBPix_(detid)) return -9999;
528  // offline ladder number is monotonously increasing with global phi
529  // flipped/inner ladders: lx parallel to global r-phi - positive sign
530  // non-flipped/outer ladders: lx anti-parallel to global r-phi - negative sign
531  int sign = flipped(detid) ? 1 : -1;
532  return ladder(detid) + sign * (xcoord_on_module_(detid, pixel) + half(detid)*0.5 - 0.5);
533 }
int flipped(const DetId &)
bool isBPix_(const DetId &)
int half(const DetId &)
float xcoord_on_module_(const DetId &, const std::pair< int, int > &)
int ladder(const DetId &)
float SiPixelCoordinates::ladder_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 534 of file SiPixelCoordinates.cc.

References isBPix_(), ladder_coord(), and pixel_().

534  {
535  if (!isBPix_(detid)) return -9999;
536  return ladder_coord(detid, pixel_(digi));
537 }
float ladder_coord(const DetId &, const std::pair< int, int > &)
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
float SiPixelCoordinates::ladder_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 538 of file SiPixelCoordinates.cc.

References isBPix_(), ladder_coord(), and pixel_().

538  {
539  if (!isBPix_(detid)) return -9999;
540  return ladder_coord(detid, pixel_(cluster));
541 }
float ladder_coord(const DetId &, const std::pair< int, int > &)
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
float SiPixelCoordinates::ladder_coord ( const SiPixelRecHit rechit)

Definition at line 542 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), isBPix_(), ladder_coord(), and pixel_().

542  {
543  if (!isBPix_(rechit->geographicalId())) return -9999;
544  return ladder_coord(rechit->geographicalId(), pixel_(rechit));
545 }
float ladder_coord(const DetId &, const std::pair< int, int > &)
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
float SiPixelCoordinates::ladder_coord ( const TrackingRecHit rechit)

Definition at line 546 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), TrackingRecHit::hit(), isBPix_(), and ladder_coord().

546  {
547  if (!isBPix_(rechit->geographicalId())) return -9999;
548  return ladder_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
549 }
float ladder_coord(const DetId &, const std::pair< int, int > &)
bool isBPix_(const DetId &)
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
int SiPixelCoordinates::layer ( const DetId detid)

Definition at line 101 of file SiPixelCoordinates.cc.

References isBPix_(), layer_, TrackerTopology::pxbLayer(), DetId::rawId(), and tTopo_.

Referenced by geometryXMLparser.DTAlignable::index(), geometryXMLparser.CSCAlignable::index(), and outer().

101  {
102  if (layer_.count(detid.rawId())) return layer_[detid.rawId()];
103  if (!isBPix_(detid)) return layer_[detid.rawId()] = -9999;
104  return layer_[detid.rawId()] = tTopo_->pxbLayer(detid);
105 }
const TrackerTopology * tTopo_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
bool isBPix_(const DetId &)
std::map< uint32_t, int > layer_
unsigned int pxbLayer(const DetId &id) const
int SiPixelCoordinates::module ( const DetId detid)

Definition at line 91 of file SiPixelCoordinates.cc.

References isPixel_(), module_, PixelSubdetector::PixelBarrel, TrackerTopology::pxbModule(), TrackerTopology::pxfModule(), DetId::rawId(), DetId::subdetId(), and tTopo_.

Referenced by blade_coord(), module_coord(), ring(), ring_coord(), roc(), and signed_blade_coord().

91  {
92  if (module_.count(detid.rawId())) return module_[detid.rawId()];
93  if (!isPixel_(detid)) return module_[detid.rawId()] = -9999;
95  return module_[detid.rawId()] = tTopo_->pxbModule(detid.rawId());
96  else
97  return module_[detid.rawId()] = tTopo_->pxfModule(detid.rawId());
98 }
bool isPixel_(const DetId &)
const TrackerTopology * tTopo_
unsigned int pxbModule(const DetId &id) const
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
unsigned int pxfModule(const DetId &id) const
std::map< uint32_t, int > module_
float SiPixelCoordinates::module_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 478 of file SiPixelCoordinates.cc.

References isBPix_(), module(), and ycoord_on_module_().

Referenced by module_coord().

478  {
479  if (!isBPix_(detid)) return -9999;
480  // offline module number is monotonously increasing with global z
481  // sign is negative because local y is antiparallel to global z
482  return module(detid) - (ycoord_on_module_(detid, pixel) - 0.5);
483 }
float ycoord_on_module_(const DetId &, const std::pair< int, int > &)
int module(const DetId &)
bool isBPix_(const DetId &)
float SiPixelCoordinates::module_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 484 of file SiPixelCoordinates.cc.

References isBPix_(), module_coord(), and pixel_().

484  {
485  if (!isBPix_(detid)) return -9999;
486  return module_coord(detid, pixel_(digi));
487 }
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
float module_coord(const DetId &, const std::pair< int, int > &)
float SiPixelCoordinates::module_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 488 of file SiPixelCoordinates.cc.

References isBPix_(), module_coord(), and pixel_().

488  {
489  if (!isBPix_(detid)) return -9999;
490  return module_coord(detid, pixel_(cluster));
491 }
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
float module_coord(const DetId &, const std::pair< int, int > &)
float SiPixelCoordinates::module_coord ( const SiPixelRecHit rechit)

Definition at line 492 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), isBPix_(), module_coord(), and pixel_().

492  {
493  if (!isBPix_(rechit->geographicalId())) return -9999;
494  return module_coord(rechit->geographicalId(), pixel_(rechit));
495 }
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
float module_coord(const DetId &, const std::pair< int, int > &)
float SiPixelCoordinates::module_coord ( const TrackingRecHit rechit)

Definition at line 496 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), TrackingRecHit::hit(), isBPix_(), and module_coord().

496  {
497  if (!isBPix_(rechit->geographicalId())) return -9999;
498  return module_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
499 }
bool isBPix_(const DetId &)
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
float module_coord(const DetId &, const std::pair< int, int > &)
int SiPixelCoordinates::outer ( const DetId detid)

Definition at line 153 of file SiPixelCoordinates.cc.

References isBPix_(), layer(), outer_, phase_, TrackerTopology::pxbLadder(), TrackerTopology::pxbLayer(), DetId::rawId(), and tTopo_.

Referenced by flipped().

153  {
154  if (outer_.count(detid.rawId())) return outer_[detid.rawId()];
155  if (!isBPix_(detid)) return outer_[detid.rawId()] = -9999;
156  int outer = -9999;
157  int layer = tTopo_->pxbLayer(detid.rawId());
158  bool odd_ladder = tTopo_->pxbLadder(detid.rawId())%2;
159  if (phase_ == 0) {
160  if (layer==2) outer = !odd_ladder;
161  else outer = odd_ladder;
162  } else if (phase_ == 1) {
163  if (layer==4) outer = odd_ladder;
164  else outer = !odd_ladder;
165  }
166  return outer_[detid.rawId()] = outer;
167 }
const TrackerTopology * tTopo_
unsigned int pxbLadder(const DetId &id) const
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
bool isBPix_(const DetId &)
int layer(const DetId &)
unsigned int pxbLayer(const DetId &id) const
int outer(const DetId &)
std::map< uint32_t, int > outer_
int SiPixelCoordinates::panel ( const DetId detid)

Definition at line 197 of file SiPixelCoordinates.cc.

References isFPix_(), panel_, TrackerTopology::pxfPanel(), DetId::rawId(), and tTopo_.

Referenced by blade_coord(), blade_panel_coord(), ring(), ring_coord(), roc(), signed_blade_coord(), signed_blade_panel_coord(), and signed_shifted_blade_panel_coord().

197  {
198  if (panel_.count(detid.rawId())) return panel_[detid.rawId()];
199  if (!isFPix_(detid)) return panel_[detid.rawId()] = -9999;
200  return panel_[detid.rawId()] = tTopo_->pxfPanel(detid);
201 }
std::map< uint32_t, int > panel_
const TrackerTopology * tTopo_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
unsigned int pxfPanel(const DetId &id) const
bool isFPix_(const DetId &)
std::pair< int, int > SiPixelCoordinates::pixel_ ( const PixelDigi digi)
private
std::pair< int, int > SiPixelCoordinates::pixel_ ( const SiPixelCluster cluster)
private

Definition at line 275 of file SiPixelCoordinates.cc.

References cuy::col, SiPixelCluster::x(), and SiPixelCluster::y().

275  {
276  // Cluster positions are already shifted by 0.5
277  // We remove this and add back later (for all pixels)
278  // The aim is to get the offline row/col number of the pixel
279  int row = cluster->x()-0.5, col = cluster->y()-0.5;
280  return std::make_pair(row, col);
281 }
col
Definition: cuy.py:1008
float y() const
float x() const
std::pair< int, int > SiPixelCoordinates::pixel_ ( const SiPixelRecHit rechit)
private

Definition at line 282 of file SiPixelCoordinates.cc.

References cuy::col, TrackerSingleRecHit::detUnit(), createfilelist::int, BaseTrackerRecHit::localPosition(), hpstanc_transforms::max, min(), PixelTopology::ncolumns(), PixelTopology::nrows(), digi_MixPreMix_cfi::pixel, PixelTopology::pixel(), and PixelGeomDetUnit::specificTopology().

282  {
283  // Convert RecHit local position to local pixel using Topology
284  const PixelGeomDetUnit* detUnit = static_cast<const PixelGeomDetUnit*>(rechit->detUnit());
285  const PixelTopology* topo = static_cast<const PixelTopology*>(&detUnit->specificTopology());
286  std::pair<float, float> pixel = topo->pixel(rechit->localPosition());
287  // We could leave it like this, but it's better to constrain pixel to be on the module
288  // Also truncate floating point to int (similar to digis)
289  int row = std::max(0, std::min(topo->nrows()-1, (int)pixel.first));
290  int col = std::max(0, std::min(topo->ncolumns()-1, (int)pixel.second));
291  return std::make_pair(row, col);
292 }
virtual std::pair< float, float > pixel(const LocalPoint &p) const =0
virtual int nrows() const =0
virtual LocalPoint localPosition() const final
T min(T a, T b)
Definition: MathUtil.h:58
const GeomDetUnit * detUnit() const
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
virtual int ncolumns() const =0
col
Definition: cuy.py:1008
int SiPixelCoordinates::quadrant ( const DetId detid)

Definition at line 69 of file SiPixelCoordinates.cc.

References PixelEndcapName::halfCylinder(), isPixel_(), phase_, PixelSubdetector::PixelBarrel, quadrant_, DetId::rawId(), PixelBarrelName::shell(), DetId::subdetId(), and tTopo_.

Referenced by side(), signed_blade(), signed_disk(), signed_ladder(), and signed_module().

69  {
70  if (quadrant_.count(detid.rawId())) return quadrant_[detid.rawId()];
71  if (!isPixel_(detid)) return quadrant_[detid.rawId()] = -9999;
73  return quadrant_[detid.rawId()] = PixelBarrelName(detid, tTopo_, phase_).shell();
74  else
75  return quadrant_[detid.rawId()] = PixelEndcapName(detid, tTopo_, phase_).halfCylinder();
76 }
bool isPixel_(const DetId &)
const TrackerTopology * tTopo_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
std::map< uint32_t, int > quadrant_
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
Shell shell() const
HalfCylinder halfCylinder() const
int SiPixelCoordinates::ring ( const DetId detid)

Definition at line 209 of file SiPixelCoordinates.cc.

References isFPix_(), module(), panel(), phase_, DetId::rawId(), ring_, PixelEndcapName::ringName(), and tTopo_.

Referenced by disk_coord(), geometryXMLparser.CSCAlignable::index(), ring_coord(), signed_disk_coord(), and signed_shifted_blade_panel_coord().

209  {
210  if (ring_.count(detid.rawId())) return ring_[detid.rawId()];
211  if (!isFPix_(detid)) return ring_[detid.rawId()] = -9999;
212  int ring = -9999;
213  if (phase_==0) {
214  ring = 1 + (panel(detid)+module(detid)>3);
215  } else if (phase_==1) {
216  ring = PixelEndcapName(detid, tTopo_, phase_).ringName();
217  }
218  return ring_[detid.rawId()] = ring;
219 }
const TrackerTopology * tTopo_
int ring(const DetId &)
int module(const DetId &)
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
int panel(const DetId &)
std::map< uint32_t, int > ring_
int ringName() const
ring Id
bool isFPix_(const DetId &)
float SiPixelCoordinates::ring_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 585 of file SiPixelCoordinates.cc.

References isFPix_(), mod(), module(), panel(), phase_, ring(), xcoord_on_module_(), and ycoord_on_module_().

Referenced by disk_coord(), disk_ring_coord(), ring_coord(), signed_disk_coord(), and signed_disk_ring_coord().

585  {
586  if (!isFPix_(detid)) return -9999;
587  float ring_coord = ring(detid), coord_shift = 0;
588  if (phase_==0) {
589  // local x on panel 1 is anti-parallel to global radius - sign is negative
590  // and parallel for panel 2 - sign is positive
591  int pan = panel(detid), mod = module(detid);
592  if (pan==1) {
593  if (mod==1) coord_shift = (-xcoord_on_module_(detid, pixel) )/4;
594  else if (mod==2) coord_shift = (-xcoord_on_module_(detid, pixel) + 2.0)/4;
595  else if (mod==3) coord_shift = (-xcoord_on_module_(detid, pixel) )/4;
596  else if (mod==4) coord_shift = (-xcoord_on_module_(detid, pixel) + 1.5)/4;
597  } else {
598  if (mod==1) coord_shift = ( xcoord_on_module_(detid, pixel) )/4;
599  else if (mod==2) coord_shift = ( xcoord_on_module_(detid, pixel) - 2.0)/4;
600  else if (mod==3) coord_shift = ( xcoord_on_module_(detid, pixel) )/4;
601  }
602  } else if (phase_==1) {
603  // local y is parallel to global radius, so sign is positive
604  coord_shift = ycoord_on_module_(detid, pixel) - 0.5;
605  }
606  ring_coord += coord_shift;
607  return ring_coord;
608 }
float ycoord_on_module_(const DetId &, const std::pair< int, int > &)
float ring_coord(const DetId &, const std::pair< int, int > &)
int ring(const DetId &)
int module(const DetId &)
int panel(const DetId &)
float xcoord_on_module_(const DetId &, const std::pair< int, int > &)
T mod(const T &a, const T &b)
Definition: ecalDccMap.h:4
bool isFPix_(const DetId &)
float SiPixelCoordinates::ring_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 609 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and ring_coord().

609  {
610  if (!isFPix_(detid)) return -9999;
611  return ring_coord(detid, pixel_(digi));
612 }
float ring_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
bool isFPix_(const DetId &)
float SiPixelCoordinates::ring_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 613 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and ring_coord().

613  {
614  if (!isFPix_(detid)) return -9999;
615  return ring_coord(detid, pixel_(cluster));
616 }
float ring_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
bool isFPix_(const DetId &)
float SiPixelCoordinates::ring_coord ( const SiPixelRecHit rechit)

Definition at line 617 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), isFPix_(), pixel_(), and ring_coord().

617  {
618  if (!isFPix_(rechit->geographicalId())) return -9999;
619  return ring_coord(rechit->geographicalId(), pixel_(rechit));
620 }
float ring_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
bool isFPix_(const DetId &)
float SiPixelCoordinates::ring_coord ( const TrackingRecHit rechit)

Definition at line 621 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), TrackingRecHit::hit(), isFPix_(), and ring_coord().

621  {
622  if (!isFPix_(rechit->geographicalId())) return -9999;
623  return ring_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
624 }
float ring_coord(const DetId &, const std::pair< int, int > &)
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
bool isFPix_(const DetId &)
int SiPixelCoordinates::roc ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 398 of file SiPixelCoordinates.cc.

References cablingMap_, channel_, PixelTopology::colsperroc(), gamEcalExtractorBlocks_cff::detector, fedid(), half(), sipixelobjects::PixelROC::idInDetUnit(), TrackerGeometry::idToDetUnit(), isPixel_(), sipixelobjects::ElectronicIndex::link, mod(), module(), panel(), phase_, PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, DetId::rawId(), sipixelobjects::ElectronicIndex::roc, roc_, PixelTopology::rowsperroc(), side(), PixelGeomDetUnit::specificTopology(), DetId::subdetId(), tGeom_, SiPixelFrameConverter::toCabling(), and SiPixelFrameConverter::toRoc().

Referenced by channel(), and roc().

398  {
399  if (!isPixel_(detid)) return -9999;
400  // The method below may be slow when looping on a lot of pixels, so let's try to speed it up
401  // by quickly chategorizing pixels to ROC coordinates inside det units
402  int rowsperroc = 80, colsperroc = 52;
403  if (phase_==2) {
404  // Can get roc info from Geometry for Phase 2, this will need to be specified when it's final
405  const PixelGeomDetUnit* detUnit = static_cast<const PixelGeomDetUnit*>(tGeom_->idToDetUnit(detid));
406  const PixelTopology* topo = static_cast<const PixelTopology*>(&detUnit->specificTopology());
407  rowsperroc = topo->rowsperroc();
408  colsperroc = topo->colsperroc();
409  }
410  // It is unlikely a ROC would have more than 256 chips, so let's use this formula
411  // If a ROC number was ever found, then binary search in a map will be much quicker
412  uint64_t pseudo_roc_num = uint64_t(1<<16) * detid.rawId() + (1<<8) * (pixel.first/rowsperroc) + pixel.second/colsperroc;
413  if (roc_.count(pseudo_roc_num)) return roc_[pseudo_roc_num];
414  // If not found previously, get the ROC number
415  int roc = -9999;
416  // Use the Fed Cabling Map if specified by the bool
417  // or if using channel number too, or if it's the Phase 2 detector
418  if (phase_==2||channel_.size()) {
419  unsigned int fedId = fedid(detid);
421  sipixelobjects::DetectorIndex detector = { detid.rawId(), pixel.first, pixel.second };
423  converter.toCabling(cabling, detector);
424  // Time consuming part is over, so let's save the channel number too
425  channel_[pseudo_roc_num] = cabling.link;
426  const sipixelobjects::PixelROC *theRoc = converter.toRoc(cabling.link, cabling.roc);
427  roc = theRoc->idInDetUnit();
428  if (detid.subdetId() == PixelSubdetector::PixelBarrel && side(detid)==1 && half(detid)) roc += 8;
429  //printf ("Online FED, LNK, LNKID, ROC: %2d %2d %2d %2d - Offline RAWID, ROW, COL: %9d [%3d,%3d] [%3d,%3d]\n",
430  // fedId, cabling.link, cabling.roc, roc, detid.rawId(),
431  // (pixel.first /rowsperroc)*rowsperroc, (pixel.first /rowsperroc+1)*rowsperroc-1,
432  // (pixel.second/colsperroc)*colsperroc, (pixel.second/colsperroc+1)*colsperroc-1);
433  } else if (phase_<2) {
434  // This method is faster if only ROC number is needed
435  int pan = panel(detid), mod = module(detid), rocsY = 8;
436  if (phase_==0&&detid.subdetId() == PixelSubdetector::PixelEndcap) rocsY = pan+mod;
437  int rocX = pixel.first/rowsperroc, rocY = pixel.second/colsperroc;
438  // Consider second row for all 1xN Phase 0 modules
439  if (phase_==0) {
440  int v1x8 = half(detid)==1, v1x2 = (pan==1&&mod==1), v1x5 = (pan==1&&mod==4);
441  if (v1x8||v1x2||v1x5) ++rocX;
442  }
443  // Mirror both coordinates for barrel -Z side
444  // and for endcap (but only Panel 2 for Phase 0)
445  if ( (detid.subdetId() == PixelSubdetector::PixelBarrel && side(detid)==1) ||
446  (detid.subdetId() == PixelSubdetector::PixelEndcap && ((phase_==0 && pan==2)||phase_==1) ) ) {
447  rocX = 1-rocX;
448  rocY = rocsY-1 - rocY;
449  }
450  // U-shape readout order
451  roc = rocX ? rocY : 2*rocsY-1 - rocY;
452  }
453  return roc_[pseudo_roc_num] = roc;
454 }
const TrackerGeomDet * idToDetUnit(DetId) const
Return the pointer to the GeomDetUnit corresponding to a given DetId.
virtual int rowsperroc() const =0
bool isPixel_(const DetId &)
int side(const DetId &)
unsigned int fedid(const DetId &)
int module(const DetId &)
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
int half(const DetId &)
virtual int colsperroc() const =0
unsigned int idInDetUnit() const
id of this ROC in DetUnit etermined by token path
Definition: PixelROC.h:40
const SiPixelFedCablingMap * cablingMap_
int roc(const DetId &, const std::pair< int, int > &)
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
unsigned long long uint64_t
Definition: Time.h:15
const TrackerGeometry * tGeom_
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
int panel(const DetId &)
std::map< uint64_t, unsigned int > channel_
std::map< uint64_t, unsigned int > roc_
T mod(const T &a, const T &b)
Definition: ecalDccMap.h:4
int SiPixelCoordinates::roc ( const DetId detid,
const PixelDigi digi 
)

Definition at line 455 of file SiPixelCoordinates.cc.

References isPixel_(), pixel_(), and roc().

455  {
456  if (!isPixel_(detid)) return -9999;
457  return roc(detid, pixel_(digi));
458 }
bool isPixel_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
int roc(const DetId &, const std::pair< int, int > &)
int SiPixelCoordinates::roc ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 459 of file SiPixelCoordinates.cc.

References isPixel_(), pixel_(), and roc().

459  {
460  if (!isPixel_(detid)) return -9999;
461  return roc(detid, pixel_(cluster));
462 }
bool isPixel_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
int roc(const DetId &, const std::pair< int, int > &)
int SiPixelCoordinates::roc ( const SiPixelRecHit rechit)

Definition at line 463 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), isPixel_(), pixel_(), and roc().

463  {
464  if (!isPixel_(rechit->geographicalId())) return -9999;
465  return roc(rechit->geographicalId(), pixel_(rechit));
466 }
bool isPixel_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
int roc(const DetId &, const std::pair< int, int > &)
DetId geographicalId() const
int SiPixelCoordinates::roc ( const TrackingRecHit rechit)

Definition at line 467 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), TrackingRecHit::hit(), isPixel_(), and roc().

467  {
468  if (!isPixel_(rechit->geographicalId())) return -9999;
469  return roc(static_cast<const SiPixelRecHit*>(rechit->hit()));
470 }
bool isPixel_(const DetId &)
int roc(const DetId &, const std::pair< int, int > &)
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
int SiPixelCoordinates::sector ( const DetId detid)

Definition at line 108 of file SiPixelCoordinates.cc.

References isBPix_(), phase_, DetId::rawId(), sector_, PixelBarrelName::sectorName(), and tTopo_.

Referenced by geometryXMLparser.DTAlignable::index().

108  {
109  if (sector_.count(detid.rawId())) return sector_[detid.rawId()];
110  if (!isBPix_(detid)) return sector_[detid.rawId()] = -9999;
111  return sector_[detid.rawId()] = PixelBarrelName(detid, tTopo_, phase_).sectorName();
112 }
const TrackerTopology * tTopo_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
bool isBPix_(const DetId &)
std::map< uint32_t, int > sector_
int sectorName() const
sector id
int SiPixelCoordinates::side ( const DetId detid)

Definition at line 81 of file SiPixelCoordinates.cc.

References isPixel_(), PixelSubdetector::PixelBarrel, TrackerTopology::pxfSide(), quadrant(), DetId::rawId(), side_, DetId::subdetId(), and tTopo_.

Referenced by blade_coord(), channel(), roc(), and signed_blade_coord().

81  {
82  if (side_.count(detid.rawId())) return side_[detid.rawId()];
83  if (!isPixel_(detid)) return side_[detid.rawId()] = -9999;
85  return side_[detid.rawId()] = 1 + (quadrant(detid)>2);
86  else
87  return side_[detid.rawId()] = tTopo_->pxfSide(detid);
88 }
bool isPixel_(const DetId &)
const TrackerTopology * tTopo_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
std::map< uint32_t, int > side_
int quadrant(const DetId &)
unsigned int pxfSide(const DetId &id) const
int SiPixelCoordinates::signed_blade ( const DetId detid)

Definition at line 230 of file SiPixelCoordinates.cc.

References PixelEndcapName::bladeName(), isFPix_(), phase_, quadrant(), DetId::rawId(), signed_blade_, and tTopo_.

Referenced by signed_blade_coord(), signed_blade_panel_coord(), and signed_shifted_blade_panel_coord().

230  {
231  if (signed_blade_.count(detid.rawId())) return signed_blade_[detid.rawId()];
232  if (!isFPix_(detid)) return signed_blade_[detid.rawId()] = -9999;
234  if (quadrant(detid)%2) signed_blade *= -1;
235  return signed_blade_[detid.rawId()] = signed_blade;
236 }
int signed_blade(const DetId &)
const TrackerTopology * tTopo_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
int bladeName() const
blade id
std::map< uint32_t, int > signed_blade_
int quadrant(const DetId &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_blade_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 795 of file SiPixelCoordinates.cc.

References isFPix_(), module(), panel(), phase_, side(), signed_blade(), xcoord_on_module_(), and ycoord_on_module_().

Referenced by signed_blade_coord(), signed_blade_panel_coord(), and signed_shifted_blade_panel_coord().

795  {
796  if (!isFPix_(detid)) return -9999;
797  float signed_blade_coord = signed_blade(detid), coord_shift = 0;
798  if (phase_==0) {
799  int rocsY = panel(detid)+module(detid);
800  coord_shift = ycoord_on_module_(detid, pixel) - rocsY/10.;
801  if (side(detid)==2) coord_shift = -coord_shift;
802  } else if (phase_==1) {
803  coord_shift = xcoord_on_module_(detid, pixel) - 0.5;
804  if ((side(detid)+panel(detid))%2==1) coord_shift = -coord_shift;
805  }
806  signed_blade_coord += coord_shift;
807  return signed_blade_coord;
808 }
float ycoord_on_module_(const DetId &, const std::pair< int, int > &)
int signed_blade(const DetId &)
int side(const DetId &)
int module(const DetId &)
int panel(const DetId &)
float xcoord_on_module_(const DetId &, const std::pair< int, int > &)
float signed_blade_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_blade_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 809 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and signed_blade_coord().

809  {
810  if (!isFPix_(detid)) return -9999;
811  return signed_blade_coord(detid, pixel_(digi));
812 }
std::pair< int, int > pixel_(const PixelDigi *)
float signed_blade_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_blade_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 813 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and signed_blade_coord().

813  {
814  if (!isFPix_(detid)) return -9999;
815  return signed_blade_coord(detid, pixel_(cluster));
816 }
std::pair< int, int > pixel_(const PixelDigi *)
float signed_blade_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_blade_coord ( const SiPixelRecHit rechit)

Definition at line 817 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), isFPix_(), pixel_(), and signed_blade_coord().

817  {
818  if (!isFPix_(rechit->geographicalId())) return -9999;
819  return signed_blade_coord(rechit->geographicalId(), pixel_(rechit));
820 }
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
float signed_blade_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_blade_coord ( const TrackingRecHit rechit)

Definition at line 821 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), TrackingRecHit::hit(), isFPix_(), and signed_blade_coord().

821  {
822  if (!isFPix_(rechit->geographicalId())) return -9999;
823  return signed_blade_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
824 }
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
float signed_blade_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_blade_panel_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 863 of file SiPixelCoordinates.cc.

References isFPix_(), panel(), signed_blade(), and signed_blade_coord().

Referenced by signed_blade_panel_coord().

863  {
864  if (!isFPix_(detid)) return -9999;
865  float signed_blade_panel_coord = signed_blade(detid);
866  float coord_shift = (signed_blade_coord(detid, pixel) - signed_blade_panel_coord - panel(detid) + 1.5)/2;
867  signed_blade_panel_coord += coord_shift;
869 }
float signed_blade_panel_coord(const DetId &, const std::pair< int, int > &)
int signed_blade(const DetId &)
int panel(const DetId &)
float signed_blade_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_blade_panel_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 870 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and signed_blade_panel_coord().

870  {
871  if (!isFPix_(detid)) return -9999;
872  return signed_blade_panel_coord(detid, pixel_(digi));
873 }
float signed_blade_panel_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_blade_panel_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 874 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and signed_blade_panel_coord().

874  {
875  if (!isFPix_(detid)) return -9999;
876  return signed_blade_panel_coord(detid, pixel_(cluster));
877 }
float signed_blade_panel_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_blade_panel_coord ( const SiPixelRecHit rechit)

Definition at line 878 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), isFPix_(), pixel_(), and signed_blade_panel_coord().

878  {
879  if (!isFPix_(rechit->geographicalId())) return -9999;
880  return signed_blade_panel_coord(rechit->geographicalId(), pixel_(rechit));
881 }
float signed_blade_panel_coord(const DetId &, const std::pair< int, int > &)
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_blade_panel_coord ( const TrackingRecHit rechit)

Definition at line 882 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), TrackingRecHit::hit(), isFPix_(), and signed_blade_panel_coord().

882  {
883  if (!isFPix_(rechit->geographicalId())) return -9999;
884  return signed_blade_panel_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
885 }
float signed_blade_panel_coord(const DetId &, const std::pair< int, int > &)
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
bool isFPix_(const DetId &)
int SiPixelCoordinates::signed_disk ( const DetId detid)

Definition at line 188 of file SiPixelCoordinates.cc.

References disk(), isFPix_(), quadrant(), DetId::rawId(), and signed_disk_.

Referenced by signed_disk_coord(), and signed_disk_ring_coord().

188  {
189  if (signed_disk_.count(detid.rawId())) return signed_disk_[detid.rawId()];
190  if (!isFPix_(detid)) return signed_disk_[detid.rawId()] = -9999;
191  int signed_disk = disk(detid);
192  if (quadrant(detid)<3) signed_disk *= -1;
193  return signed_disk_[detid.rawId()] = signed_disk;
194 }
int signed_disk(const DetId &)
std::map< uint32_t, int > signed_disk_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
int disk(const DetId &)
int quadrant(const DetId &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_disk_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 660 of file SiPixelCoordinates.cc.

References isFPix_(), ring(), ring_coord(), and signed_disk().

Referenced by signed_disk_coord().

660  {
661  if (!isFPix_(detid)) return -9999;
662  float signed_disk_coord = signed_disk(detid), coord_shift = ring_coord(detid,pixel)-ring(detid);
663  // Mirror -z side, so plots are symmetric
664  if (signed_disk_coord<0) coord_shift = -coord_shift;
665  signed_disk_coord += coord_shift;
666  return signed_disk_coord;
667 }
float ring_coord(const DetId &, const std::pair< int, int > &)
int signed_disk(const DetId &)
int ring(const DetId &)
float signed_disk_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_disk_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 668 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and signed_disk_coord().

668  {
669  if (!isFPix_(detid)) return -9999;
670  return signed_disk_coord(detid, pixel_(digi));
671 }
std::pair< int, int > pixel_(const PixelDigi *)
float signed_disk_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_disk_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 672 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and signed_disk_coord().

672  {
673  if (!isFPix_(detid)) return -9999;
674  return signed_disk_coord(detid, pixel_(cluster));
675 }
std::pair< int, int > pixel_(const PixelDigi *)
float signed_disk_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_disk_coord ( const SiPixelRecHit rechit)

Definition at line 676 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), isFPix_(), pixel_(), and signed_disk_coord().

676  {
677  if (!isFPix_(rechit->geographicalId())) return -9999;
678  return signed_disk_coord(rechit->geographicalId(), pixel_(rechit));
679 }
std::pair< int, int > pixel_(const PixelDigi *)
float signed_disk_coord(const DetId &, const std::pair< int, int > &)
DetId geographicalId() const
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_disk_coord ( const TrackingRecHit rechit)

Definition at line 680 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), TrackingRecHit::hit(), isFPix_(), and signed_disk_coord().

680  {
681  if (!isFPix_(rechit->geographicalId())) return -9999;
682  return signed_disk_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
683 }
virtual TrackingRecHit const * hit() const
float signed_disk_coord(const DetId &, const std::pair< int, int > &)
DetId geographicalId() const
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_disk_ring_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 716 of file SiPixelCoordinates.cc.

References isFPix_(), ring_coord(), and signed_disk().

Referenced by signed_disk_ring_coord().

716  {
717  if (!isFPix_(detid)) return -9999;
718  float signed_disk_ring_coord = signed_disk(detid), coord_shift = 0;
719  //if (phase_==0) coord_shift = (ring_coord(detid,pixel) - 1.625) / 1.5;
720  //else if (phase_==1) coord_shift = (ring_coord(detid,pixel) - 1.5 ) / 2.0;
721  coord_shift = (ring_coord(detid,pixel) - 1.5 ) / 2.0;
722  // Mirror -z side, so plots are symmetric
723  if (signed_disk_ring_coord<0) coord_shift = -coord_shift;
724  signed_disk_ring_coord += coord_shift;
725  return signed_disk_ring_coord;
726 }
float ring_coord(const DetId &, const std::pair< int, int > &)
int signed_disk(const DetId &)
float signed_disk_ring_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_disk_ring_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 727 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and signed_disk_ring_coord().

727  {
728  if (!isFPix_(detid)) return -9999;
729  return signed_disk_ring_coord(detid, pixel_(digi));
730 }
std::pair< int, int > pixel_(const PixelDigi *)
float signed_disk_ring_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_disk_ring_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 731 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and signed_disk_ring_coord().

731  {
732  if (!isFPix_(detid)) return -9999;
733  return signed_disk_ring_coord(detid, pixel_(cluster));
734 }
std::pair< int, int > pixel_(const PixelDigi *)
float signed_disk_ring_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_disk_ring_coord ( const SiPixelRecHit rechit)

Definition at line 735 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), isFPix_(), pixel_(), and signed_disk_ring_coord().

735  {
736  if (!isFPix_(rechit->geographicalId())) return -9999;
737  return signed_disk_ring_coord(rechit->geographicalId(), pixel_(rechit));
738 }
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
float signed_disk_ring_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_disk_ring_coord ( const TrackingRecHit rechit)

Definition at line 739 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), TrackingRecHit::hit(), isFPix_(), and signed_disk_ring_coord().

739  {
740  if (!isFPix_(rechit->geographicalId())) return -9999;
741  return signed_disk_ring_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
742 }
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
float signed_disk_ring_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
int SiPixelCoordinates::signed_ladder ( const DetId detid)

Definition at line 123 of file SiPixelCoordinates.cc.

References isBPix_(), PixelBarrelName::ladderName(), phase_, quadrant(), DetId::rawId(), signed_ladder_, and tTopo_.

Referenced by signed_ladder_coord().

123  {
124  if (signed_ladder_.count(detid.rawId())) return signed_ladder_[detid.rawId()];
125  if (!isBPix_(detid)) return signed_ladder_[detid.rawId()] = -9999;
127  if (quadrant(detid)%2) signed_ladder *= -1;
128  return signed_ladder_[detid.rawId()] = signed_ladder;
129 }
const TrackerTopology * tTopo_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
bool isBPix_(const DetId &)
std::map< uint32_t, int > signed_ladder_
int ladderName() const
ladder id (index in phi)
int quadrant(const DetId &)
int signed_ladder(const DetId &)
float SiPixelCoordinates::signed_ladder_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 552 of file SiPixelCoordinates.cc.

References flipped(), half(), isBPix_(), Validation_hcalonly_cfi::sign, signed_ladder(), and xcoord_on_module_().

Referenced by signed_ladder_coord().

552  {
553  if (!isBPix_(detid)) return -9999;
554  // online ladder number is monotonously decreasing with global phi
555  // flipped/inner ladders: lx parallel to global r-phi - negative sign
556  // non-flipped/outer ladders: lx anti-parallel to global r-phi - positive sign
557  int sign = flipped(detid) ? -1 : 1;
558  return signed_ladder(detid) + sign * (xcoord_on_module_(detid, pixel) + half(detid)*0.5 - 0.5);
559 }
int flipped(const DetId &)
bool isBPix_(const DetId &)
int half(const DetId &)
float xcoord_on_module_(const DetId &, const std::pair< int, int > &)
int signed_ladder(const DetId &)
float SiPixelCoordinates::signed_ladder_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 560 of file SiPixelCoordinates.cc.

References isBPix_(), pixel_(), and signed_ladder_coord().

560  {
561  if (!isBPix_(detid)) return -9999;
562  return signed_ladder_coord(detid, pixel_(digi));
563 }
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
float signed_ladder_coord(const DetId &, const std::pair< int, int > &)
float SiPixelCoordinates::signed_ladder_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 564 of file SiPixelCoordinates.cc.

References isBPix_(), pixel_(), and signed_ladder_coord().

564  {
565  if (!isBPix_(detid)) return -9999;
566  return signed_ladder_coord(detid, pixel_(cluster));
567 }
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
float signed_ladder_coord(const DetId &, const std::pair< int, int > &)
float SiPixelCoordinates::signed_ladder_coord ( const SiPixelRecHit rechit)

Definition at line 568 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), isBPix_(), pixel_(), and signed_ladder_coord().

568  {
569  if (!isBPix_(rechit->geographicalId())) return -9999;
570  return signed_ladder_coord(rechit->geographicalId(), pixel_(rechit));
571 }
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
float signed_ladder_coord(const DetId &, const std::pair< int, int > &)
float SiPixelCoordinates::signed_ladder_coord ( const TrackingRecHit rechit)

Definition at line 572 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), TrackingRecHit::hit(), isBPix_(), and signed_ladder_coord().

572  {
573  if (!isBPix_(rechit->geographicalId())) return -9999;
574  return signed_ladder_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
575 }
bool isBPix_(const DetId &)
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
float signed_ladder_coord(const DetId &, const std::pair< int, int > &)
int SiPixelCoordinates::signed_module ( const DetId detid)

Definition at line 133 of file SiPixelCoordinates.cc.

References isBPix_(), PixelBarrelName::moduleName(), phase_, quadrant(), DetId::rawId(), signed_module_, and tTopo_.

Referenced by signed_module_coord().

133  {
134  if (signed_module_.count(detid.rawId())) return signed_module_[detid.rawId()];
135  if (!isBPix_(detid)) return signed_module_[detid.rawId()] = -9999;
137  if (quadrant(detid)<3) signed_module *= -1;
138  return signed_module_[detid.rawId()] = signed_module;
139 }
int moduleName() const
module id (index in z)
const TrackerTopology * tTopo_
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
bool isBPix_(const DetId &)
std::map< uint32_t, int > signed_module_
int signed_module(const DetId &)
int quadrant(const DetId &)
float SiPixelCoordinates::signed_module_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 502 of file SiPixelCoordinates.cc.

References isBPix_(), signed_module(), and ycoord_on_module_().

Referenced by signed_module_coord().

502  {
503  if (!isBPix_(detid)) return -9999;
504  // offline module number is monotonously increasing with global z
505  // sign is negative because local y is antiparallel to global z
506  return signed_module(detid) - (ycoord_on_module_(detid, pixel) - 0.5);
507 }
float ycoord_on_module_(const DetId &, const std::pair< int, int > &)
bool isBPix_(const DetId &)
int signed_module(const DetId &)
float SiPixelCoordinates::signed_module_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 508 of file SiPixelCoordinates.cc.

References isBPix_(), pixel_(), and signed_module_coord().

508  {
509  if (!isBPix_(detid)) return -9999;
510  return signed_module_coord(detid, pixel_(digi));
511 }
float signed_module_coord(const DetId &, const std::pair< int, int > &)
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
float SiPixelCoordinates::signed_module_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 512 of file SiPixelCoordinates.cc.

References isBPix_(), pixel_(), and signed_module_coord().

512  {
513  if (!isBPix_(detid)) return -9999;
514  return signed_module_coord(detid, pixel_(cluster));
515 }
float signed_module_coord(const DetId &, const std::pair< int, int > &)
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
float SiPixelCoordinates::signed_module_coord ( const SiPixelRecHit rechit)

Definition at line 516 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), isBPix_(), pixel_(), and signed_module_coord().

516  {
517  if (!isBPix_(rechit->geographicalId())) return -9999;
518  return signed_module_coord(rechit->geographicalId(), pixel_(rechit));
519 }
float signed_module_coord(const DetId &, const std::pair< int, int > &)
bool isBPix_(const DetId &)
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
float SiPixelCoordinates::signed_module_coord ( const TrackingRecHit rechit)

Definition at line 520 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), TrackingRecHit::hit(), isBPix_(), and signed_module_coord().

520  {
521  if (!isBPix_(rechit->geographicalId())) return -9999;
522  return signed_module_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
523 }
float signed_module_coord(const DetId &, const std::pair< int, int > &)
bool isBPix_(const DetId &)
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
float SiPixelCoordinates::signed_shifted_blade_panel_coord ( const DetId detid,
const std::pair< int, int > &  pixel 
)

Definition at line 893 of file SiPixelCoordinates.cc.

References isFPix_(), panel(), phase_, ring(), signed_blade(), and signed_blade_coord().

Referenced by signed_shifted_blade_panel_coord().

893  {
894  if (!isFPix_(detid)) return -9999;
896  float coord_shift = (signed_blade_coord(detid, pixel) - signed_shifted_blade_panel_coord - panel(detid) + 1.5)/2;
897  if (phase_==1&&ring(detid)==1) signed_shifted_blade_panel_coord *= 1.5;
898  signed_shifted_blade_panel_coord += coord_shift;
900 }
int signed_blade(const DetId &)
int ring(const DetId &)
int panel(const DetId &)
float signed_shifted_blade_panel_coord(const DetId &, const std::pair< int, int > &)
float signed_blade_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_shifted_blade_panel_coord ( const DetId detid,
const PixelDigi digi 
)

Definition at line 901 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and signed_shifted_blade_panel_coord().

901  {
902  if (!isFPix_(detid)) return -9999;
903  return signed_shifted_blade_panel_coord(detid, pixel_(digi));
904 }
std::pair< int, int > pixel_(const PixelDigi *)
float signed_shifted_blade_panel_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_shifted_blade_panel_coord ( const DetId detid,
const SiPixelCluster cluster 
)

Definition at line 905 of file SiPixelCoordinates.cc.

References isFPix_(), pixel_(), and signed_shifted_blade_panel_coord().

905  {
906  if (!isFPix_(detid)) return -9999;
907  return signed_shifted_blade_panel_coord(detid, pixel_(cluster));
908 }
std::pair< int, int > pixel_(const PixelDigi *)
float signed_shifted_blade_panel_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_shifted_blade_panel_coord ( const SiPixelRecHit rechit)

Definition at line 909 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), isFPix_(), pixel_(), and signed_shifted_blade_panel_coord().

909  {
910  if (!isFPix_(rechit->geographicalId())) return -9999;
911  return signed_shifted_blade_panel_coord(rechit->geographicalId(), pixel_(rechit));
912 }
std::pair< int, int > pixel_(const PixelDigi *)
DetId geographicalId() const
float signed_shifted_blade_panel_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::signed_shifted_blade_panel_coord ( const TrackingRecHit rechit)

Definition at line 913 of file SiPixelCoordinates.cc.

References TrackingRecHit::geographicalId(), TrackingRecHit::hit(), isFPix_(), and signed_shifted_blade_panel_coord().

913  {
914  if (!isFPix_(rechit->geographicalId())) return -9999;
915  return signed_shifted_blade_panel_coord(static_cast<const SiPixelRecHit*>(rechit->hit()));
916 }
virtual TrackingRecHit const * hit() const
DetId geographicalId() const
float signed_shifted_blade_panel_coord(const DetId &, const std::pair< int, int > &)
bool isFPix_(const DetId &)
float SiPixelCoordinates::xcoord_on_module_ ( const DetId detid,
const std::pair< int, int > &  pixel 
)
private

Definition at line 294 of file SiPixelCoordinates.cc.

References TrackerGeometry::idToDetUnit(), PixelTopology::nrows(), phase_, PixelGeomDetUnit::specificTopology(), and tGeom_.

Referenced by blade_coord(), ladder_coord(), ring_coord(), signed_blade_coord(), and signed_ladder_coord().

294  {
295  int nrows = 160;
296  // Leave it hard-coded for phase 0/1, read from geometry for phase 2
297  // no special treatment needed here for phase 0 1x8, 1x5 and 1x2 modules either
298  // because we do not want to scale coordinates (only shift if needed)
299  if (phase_==2) {
300  const PixelGeomDetUnit* detUnit = static_cast<const PixelGeomDetUnit*>(tGeom_->idToDetUnit(detid));
301  const PixelTopology* topo = static_cast<const PixelTopology*>(&detUnit->specificTopology());
302  nrows = topo->nrows();
303  }
304  // Shift to the middle of the pixel, for precision binning
305  return (pixel.first+0.5)/nrows;
306 }
const TrackerGeomDet * idToDetUnit(DetId) const
Return the pointer to the GeomDetUnit corresponding to a given DetId.
virtual int nrows() const =0
const TrackerGeometry * tGeom_
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
float SiPixelCoordinates::ycoord_on_module_ ( const DetId detid,
const std::pair< int, int > &  pixel 
)
private

Definition at line 308 of file SiPixelCoordinates.cc.

References TrackerGeometry::idToDetUnit(), isFPix_(), trackingPlots::ncols, PixelTopology::ncolumns(), phase_, PixelGeomDetUnit::specificTopology(), and tGeom_.

Referenced by blade_coord(), module_coord(), ring_coord(), signed_blade_coord(), and signed_module_coord().

308  {
309  int ncols = 416;
310  // Leave it hard-coded for phase 0/1, read from geometry for phase 2
311  if (phase_==2) {
312  const PixelGeomDetUnit* detUnit = static_cast<const PixelGeomDetUnit*>(tGeom_->idToDetUnit(detid));
313  const PixelTopology* topo = static_cast<const PixelTopology*>(&detUnit->specificTopology());
314  ncols = topo->ncolumns();
315  }
316  else if (phase_==0 && isFPix_(detid)) {
317  // Always use largest length for Phase 0 FPix modules (1x5 and 2x5)
318  // because we do not want to scale coordinates so ROC size remains fixed
319  // and only shifts are needed
320  ncols = 260;
321  }
322  // Shift to the middle of the pixel, for precision binning
323  return (pixel.second+0.5)/ncols;
324 }
const TrackerGeomDet * idToDetUnit(DetId) const
Return the pointer to the GeomDetUnit corresponding to a given DetId.
const TrackerGeometry * tGeom_
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
virtual int ncolumns() const =0
bool isFPix_(const DetId &)

Member Data Documentation

std::map<uint32_t, int> SiPixelCoordinates::blade_
private

Definition at line 189 of file SiPixelCoordinates.h.

Referenced by blade().

const SiPixelFedCablingMap* SiPixelCoordinates::cablingMap_
private

Definition at line 170 of file SiPixelCoordinates.h.

Referenced by channel(), fedid(), init(), and roc().

std::map<uint64_t, unsigned int> SiPixelCoordinates::channel_
private

Definition at line 193 of file SiPixelCoordinates.h.

Referenced by channel(), and roc().

std::map<uint32_t, int> SiPixelCoordinates::disk_
private

Definition at line 185 of file SiPixelCoordinates.h.

Referenced by disk().

std::map<uint32_t, unsigned int> SiPixelCoordinates::fedid_
private

Definition at line 192 of file SiPixelCoordinates.h.

Referenced by fedid().

std::map<uint32_t, int> SiPixelCoordinates::flipped_
private

Definition at line 184 of file SiPixelCoordinates.h.

Referenced by flipped().

std::map<uint32_t, int> SiPixelCoordinates::half_
private

Definition at line 182 of file SiPixelCoordinates.h.

Referenced by half().

std::map<uint32_t, int> SiPixelCoordinates::ladder_
private

Definition at line 179 of file SiPixelCoordinates.h.

Referenced by ladder().

std::map<uint32_t, int> SiPixelCoordinates::layer_
private

Definition at line 177 of file SiPixelCoordinates.h.

Referenced by layer().

std::map<uint32_t, int> SiPixelCoordinates::module_
private

Definition at line 176 of file SiPixelCoordinates.h.

Referenced by module().

std::map<uint32_t, int> SiPixelCoordinates::outer_
private

Definition at line 183 of file SiPixelCoordinates.h.

Referenced by outer().

std::map<uint32_t, int> SiPixelCoordinates::panel_
private

Definition at line 187 of file SiPixelCoordinates.h.

Referenced by panel().

int SiPixelCoordinates::phase_
private
std::map<uint32_t, int> SiPixelCoordinates::quadrant_
private

Definition at line 174 of file SiPixelCoordinates.h.

Referenced by quadrant().

std::map<uint32_t, int> SiPixelCoordinates::ring_
private

Definition at line 188 of file SiPixelCoordinates.h.

Referenced by ring().

std::map<uint64_t, unsigned int> SiPixelCoordinates::roc_
private

Definition at line 194 of file SiPixelCoordinates.h.

Referenced by channel(), and roc().

std::map<uint32_t, int> SiPixelCoordinates::sector_
private

Definition at line 178 of file SiPixelCoordinates.h.

Referenced by sector().

std::map<uint32_t, int> SiPixelCoordinates::side_
private

Definition at line 175 of file SiPixelCoordinates.h.

Referenced by side().

std::map<uint32_t, int> SiPixelCoordinates::signed_blade_
private

Definition at line 190 of file SiPixelCoordinates.h.

Referenced by signed_blade().

std::map<uint32_t, int> SiPixelCoordinates::signed_disk_
private

Definition at line 186 of file SiPixelCoordinates.h.

Referenced by signed_disk().

std::map<uint32_t, int> SiPixelCoordinates::signed_ladder_
private

Definition at line 180 of file SiPixelCoordinates.h.

Referenced by signed_ladder().

std::map<uint32_t, int> SiPixelCoordinates::signed_module_
private

Definition at line 181 of file SiPixelCoordinates.h.

Referenced by signed_module().

const TrackerGeometry* SiPixelCoordinates::tGeom_
private

Definition at line 169 of file SiPixelCoordinates.h.

Referenced by channel(), init(), roc(), xcoord_on_module_(), and ycoord_on_module_().

const TrackerTopology* SiPixelCoordinates::tTopo_
private