CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
MTDGeomDetUnit Class Referencefinal

#include <MTDGeomDetUnit.h>

Inheritance diagram for MTDGeomDetUnit:
MTDGeomDet GeomDet

Public Member Functions

bool isLeaf () const override
 is a Unit More...
 
 MTDGeomDetUnit (BoundPlane *sp, MTDGeomDetType const *type, DetId id)
 
virtual const PixelTopologyspecificTopology () const
 Returns a reference to the pixel proxy topology. More...
 
virtual const MTDGeomDetTypespecificType () const
 
const SurfaceDeformationsurfaceDeformation () const override
 Return pointer to surface deformation. More...
 
const Topologytopology () const override
 Returns a reference to the pixel proxy topology. More...
 
const GeomDetTypetype () const override
 
- Public Member Functions inherited from MTDGeomDet
LocalError const & localAlignmentError () const
 Return local alligment error. More...
 
- Public Member Functions inherited from GeomDet
AlignmentPositionError const * alignmentPositionError () const
 Return pointer to alignment errors. More...
 
virtual const GeomDetcomponent (DetId) const
 Returns a component GeomDet given its DetId, if existing. More...
 
virtual std::vector< const GeomDet * > components () const
 Returns direct components, if any. More...
 
int gdetIndex () const
 
DetId geographicalId () const
 The label of this GeomDet. More...
 
 GeomDet (Plane *plane)
 
 GeomDet (const ReferenceCountingPointer< Plane > &plane)
 
int index () const
 
const Surface::PositionTypeposition () const
 The position (origin of the R.F.) More...
 
const Surface::RotationTyperotation () const
 The rotation defining the local R.F. More...
 
void setGdetIndex (int i)
 
void setIndex (int i)
 
const PlanespecificSurface () const
 Same as surface(), kept for backward compatibility. More...
 
virtual SubDetector subDetector () const
 Which subdetector. More...
 
const Planesurface () const
 The nominal surface of the GeomDet. More...
 
GlobalPoint toGlobal (const Local2DPoint &lp) const
 Conversion to the global R.F. from the R.F. of the GeomDet. More...
 
GlobalPoint toGlobal (const Local3DPoint &lp) const
 Conversion to the global R.F. from the R.F. of the GeomDet. More...
 
GlobalVector toGlobal (const LocalVector &lv) const
 Conversion to the global R.F. from the R.F. of the GeomDet. More...
 
LocalPoint toLocal (const GlobalPoint &gp) const
 Conversion to the R.F. of the GeomDet. More...
 
LocalVector toLocal (const GlobalVector &gv) const
 Conversion to the R.F. of the GeomDet. More...
 
virtual ~GeomDet ()
 

Private Member Functions

void setSurfaceDeformation (const SurfaceDeformation *deformation) override
 set the SurfaceDeformation for this StripGeomDetUnit to proxy topology. More...
 

Private Attributes

std::unique_ptr< ProxyMTDTopologytheTopology
 

Additional Inherited Members

- Public Types inherited from GeomDet
using SubDetector = GeomDetEnumerators::SubDetector
 
- Protected Member Functions inherited from MTDGeomDet
 MTDGeomDet (Plane *plane)
 
 MTDGeomDet (const ReferenceCountingPointer< Plane > &plane)
 
- Protected Member Functions inherited from GeomDet
void setDetId (DetId id)
 
- Protected Attributes inherited from GeomDet
AlignmentPositionErrortheAlignmentPositionError = 0
 

Detailed Description

The base PixelGeomDetUnit. Specialized in SiPixelGeomDetUnit.

Definition at line 15 of file MTDGeomDetUnit.h.

Constructor & Destructor Documentation

MTDGeomDetUnit::MTDGeomDetUnit ( BoundPlane sp,
MTDGeomDetType const *  type,
DetId  id 
)

Definition at line 6 of file MTDGeomDetUnit.cc.

References GeomDet::setDetId().

6  :
8 {
9  setDetId(id);
10 }
type
Definition: HCALResponse.h:21
void setDetId(DetId id)
Definition: GeomDet.h:120
MTDGeomDet(Plane *plane)
Definition: MTDGeomDet.h:9
std::unique_ptr< ProxyMTDTopology > theTopology

Member Function Documentation

bool MTDGeomDetUnit::isLeaf ( ) const
inlineoverridevirtual

is a Unit

Reimplemented from GeomDet.

Definition at line 49 of file MTDGeomDetUnit.h.

References setSurfaceDeformation().

49 { return true;}
void MTDGeomDetUnit::setSurfaceDeformation ( const SurfaceDeformation deformation)
overrideprivatevirtual

set the SurfaceDeformation for this StripGeomDetUnit to proxy topology.

Reimplemented from GeomDet.

Definition at line 20 of file MTDGeomDetUnit.cc.

References theTopology.

Referenced by isLeaf().

21 {
22  theTopology->setSurfaceDeformation(deformation);
23 }
std::unique_ptr< ProxyMTDTopology > theTopology
const PixelTopology & MTDGeomDetUnit::specificTopology ( ) const
virtual

Returns a reference to the pixel proxy topology.

Definition at line 18 of file MTDGeomDetUnit.cc.

References theTopology.

18 { return *theTopology; }
std::unique_ptr< ProxyMTDTopology > theTopology
const MTDGeomDetType & MTDGeomDetUnit::specificType ( ) const
virtual

NOTE (A.M.): The actual pointer to PixelGeomDetType is now a member of the proxy topology. As PixelGeomDetType has the actual topology as a pointer, it is possible to access this topology in two different ways. Once via the proxy topology (through topology() and specificTopology()) which includes corrections for the surface deformations, and once via the GeomDetType (through type().topology() and the like).

Definition at line 14 of file MTDGeomDetUnit.cc.

References theTopology.

14 { return theTopology->specificType(); }
std::unique_ptr< ProxyMTDTopology > theTopology
const SurfaceDeformation* MTDGeomDetUnit::surfaceDeformation ( ) const
inlineoverridevirtual

Return pointer to surface deformation.

Reimplemented from GeomDet.

Definition at line 45 of file MTDGeomDetUnit.h.

References theTopology.

45  {
46  return theTopology->surfaceDeformation();
47  }
std::unique_ptr< ProxyMTDTopology > theTopology
const Topology & MTDGeomDetUnit::topology ( ) const
overridevirtual

Returns a reference to the pixel proxy topology.

Reimplemented from GeomDet.

Definition at line 16 of file MTDGeomDetUnit.cc.

References theTopology.

16 { return *theTopology; }
std::unique_ptr< ProxyMTDTopology > theTopology
const GeomDetType & MTDGeomDetUnit::type ( ) const
overridevirtual

NOTE (A.M.): The actual pointer to PixelGeomDetType is now a member of the proxy topology. As PixelGeomDetType has the actual topology as a pointer, it is possible to access this topology in two different ways. Once via the proxy topology (through topology() and specificTopology()) which includes corrections for the surface deformations, and once via the GeomDetType (through type().topology() and the like).

Reimplemented from GeomDet.

Definition at line 12 of file MTDGeomDetUnit.cc.

References theTopology.

12 { return theTopology->type(); }
std::unique_ptr< ProxyMTDTopology > theTopology

Member Data Documentation

std::unique_ptr<ProxyMTDTopology> MTDGeomDetUnit::theTopology
private