CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
BaseCrystal Class Reference

#include <BaseCrystal.h>

Public Types

typedef ROOT::Math::Plane3D Plane3D
 
typedef math::XYZVector XYZPoint
 
typedef math::XYZVector XYZVector
 

Public Member Functions

 BaseCrystal ()
 Empty constructor. More...
 
 BaseCrystal (const DetId &cell)
 constructor from DetId More...
 
const XYZVectorexitingNormal (const CaloDirection &side) const
 normal exiting vector for the surface More...
 
const XYZVectorgetAxis () const
 get crystal axis More...
 
const XYZPointgetBackCenter () const
 get front center More...
 
const Plane3DgetBackPlane () const
 back plane More...
 
void getBackSide (XYZPoint &a, XYZPoint &b, XYZPoint &c, XYZPoint &d) const
 Coordinates of the back side. More...
 
void getBackSide (std::vector< XYZPoint > &corners) const
 
const XYZPointgetCenter () const
 get 1/8*(Sum of corners) More...
 
const XYZPointgetCorner (unsigned i) const
 get the i-th corner More...
 
const DetIdgetDetId () const
 get the DetId More...
 
void getDrawingCoordinates (std::vector< float > &x, std::vector< float > &y, std::vector< float > &z) const
 for debugging. More...
 
const XYZVectorgetFifthEdge () const
 Direction of the fifth edge. More...
 
const XYZVectorgetFirstEdge () const
 Direction of the first edge. More...
 
const XYZPointgetFrontCenter () const
 get front center More...
 
const Plane3DgetFrontPlane () const
 front plane More...
 
void getFrontSide (XYZPoint &a, XYZPoint &b, XYZPoint &c, XYZPoint &d) const
 coordinates of the front side More...
 
void getFrontSide (std::vector< XYZPoint > &corners) const
 
const XYZVectorgetLateralEdge (unsigned i) const
 lateral directions More...
 
void getLateralEdges (unsigned i, XYZPoint &, XYZPoint &) const
 get the lateral edges More...
 
const Plane3DgetLateralPlane (unsigned i) const
 lateral planes More...
 
void getLateralSide (unsigned i, XYZPoint &a, XYZPoint &b, XYZPoint &c, XYZPoint &d) const
 Coordinates of the i=th lateral side. More...
 
void getLateralSide (unsigned i, std::vector< XYZPoint > &corners) const
 
const Plane3DgetPlane (const CaloDirection &side) const
 generic access More...
 
void getSide (const CaloDirection &side, XYZPoint &a, XYZPoint &b, XYZPoint &c, XYZPoint &d) const
 generic access More...
 
void getSide (const CaloDirection &side, std::vector< XYZPoint > &corners) const
 
const int getSubdetNumber () const
 get the subdector More...
 
void print () const
 
void setCorners (const CaloCellGeometry::CornersVec &vec, const GlobalPoint &pos)
 
 ~BaseCrystal ()
 Copy constructor. More...
 

Static Public Member Functions

static unsigned oppositeDirection (unsigned iside)
 

Private Member Functions

void computeBasicProperties ()
 

Private Attributes

XYZPoint backcenter_
 
DetId cellid_
 
XYZPoint center_
 
XYZPoint corners_ [8]
 
XYZVector crystalaxis_
 
XYZVector exitingNormal_ [6]
 
XYZVector fifthedgedirection_
 
XYZVector firstedgedirection_
 
XYZPoint frontcenter_
 
XYZVector lateraldirection_ [4]
 
Plane3D lateralPlane_ [6]
 
int subdetn_
 

Detailed Description

Definition at line 19 of file BaseCrystal.h.

Member Typedef Documentation

typedef ROOT::Math::Plane3D BaseCrystal::Plane3D

Definition at line 26 of file BaseCrystal.h.

Definition at line 25 of file BaseCrystal.h.

Definition at line 24 of file BaseCrystal.h.

Constructor & Destructor Documentation

BaseCrystal::BaseCrystal ( )
inline

Empty constructor.

Definition at line 31 of file BaseCrystal.h.

31 {;};
BaseCrystal::BaseCrystal ( const DetId cell)

constructor from DetId

Definition at line 9 of file BaseCrystal.cc.

BaseCrystal::~BaseCrystal ( )
inline

Copy constructor.

Definition at line 42 of file BaseCrystal.h.

42 {;}

Member Function Documentation

void BaseCrystal::computeBasicProperties ( )
private

Definition at line 86 of file BaseCrystal.cc.

const XYZVector& BaseCrystal::exitingNormal ( const CaloDirection side) const
inline

normal exiting vector for the surface

Definition at line 95 of file BaseCrystal.h.

References exitingNormal_, and CaloDirectionOperations::Side().

Referenced by Crystal::exitingNormal().

XYZVector exitingNormal_[6]
Definition: BaseCrystal.h:122
static CaloDirection Side(unsigned i)
unsigned int -&gt; Side conversion
const XYZVector& BaseCrystal::getAxis ( ) const
inline

get crystal axis

Definition at line 103 of file BaseCrystal.h.

References crystalaxis_.

Referenced by Crystal::getAxis().

103 { return crystalaxis_;}
XYZVector crystalaxis_
Definition: BaseCrystal.h:119
const XYZPoint& BaseCrystal::getBackCenter ( ) const
inline

get front center

Definition at line 55 of file BaseCrystal.h.

References backcenter_.

Referenced by Crystal::getBackCenter().

55 {return backcenter_;}
XYZPoint backcenter_
Definition: BaseCrystal.h:116
const Plane3D& BaseCrystal::getBackPlane ( ) const
inline

back plane

Definition at line 85 of file BaseCrystal.h.

References lateralPlane_.

Referenced by Crystal::getBackPlane().

85 {return lateralPlane_[5];}
Plane3D lateralPlane_[6]
Definition: BaseCrystal.h:121
void BaseCrystal::getBackSide ( XYZPoint a,
XYZPoint b,
XYZPoint c,
XYZPoint d 
) const

Coordinates of the back side.

Definition at line 157 of file BaseCrystal.cc.

Referenced by Crystal::getBackSide().

void BaseCrystal::getBackSide ( std::vector< XYZPoint > &  corners) const

Definition at line 165 of file BaseCrystal.cc.

const XYZPoint& BaseCrystal::getCenter ( ) const
inline

get 1/8*(Sum of corners)

Definition at line 51 of file BaseCrystal.h.

References center_.

Referenced by Crystal::getCenter().

51 {return center_;};
XYZPoint center_
Definition: BaseCrystal.h:114
const XYZPoint& BaseCrystal::getCorner ( unsigned  i) const
inline

get the i-th corner

Definition at line 49 of file BaseCrystal.h.

References corners_, and i.

Referenced by Crystal::getCorner().

49 { return corners_[i];};
int i
Definition: DBlmapReader.cc:9
XYZPoint corners_[8]
Definition: BaseCrystal.h:111
const DetId& BaseCrystal::getDetId ( void  ) const
inline

get the DetId

Definition at line 61 of file BaseCrystal.h.

References cellid_.

61 {return cellid_;};
DetId cellid_
Definition: BaseCrystal.h:112
void BaseCrystal::getDrawingCoordinates ( std::vector< float > &  x,
std::vector< float > &  y,
std::vector< float > &  z 
) const

for debugging.

Definition at line 196 of file BaseCrystal.cc.

Referenced by Crystal::getDrawingCoordinates().

const XYZVector& BaseCrystal::getFifthEdge ( ) const
inline

Direction of the fifth edge.

Definition at line 59 of file BaseCrystal.h.

References fifthedgedirection_.

Referenced by Crystal::getFifthEdge().

59 {return fifthedgedirection_;}
XYZVector fifthedgedirection_
Definition: BaseCrystal.h:118
const XYZVector& BaseCrystal::getFirstEdge ( ) const
inline

Direction of the first edge.

Definition at line 57 of file BaseCrystal.h.

References firstedgedirection_.

Referenced by Crystal::getFirstEdge().

57 {return firstedgedirection_;}
XYZVector firstedgedirection_
Definition: BaseCrystal.h:117
const XYZPoint& BaseCrystal::getFrontCenter ( ) const
inline

get front center

Definition at line 53 of file BaseCrystal.h.

References frontcenter_.

Referenced by Crystal::getFrontCenter().

53 {return frontcenter_;};
XYZPoint frontcenter_
Definition: BaseCrystal.h:115
const Plane3D& BaseCrystal::getFrontPlane ( ) const
inline

front plane

Definition at line 83 of file BaseCrystal.h.

References lateralPlane_.

Referenced by Crystal::getFrontPlane().

83 {return lateralPlane_[4];}
Plane3D lateralPlane_[6]
Definition: BaseCrystal.h:121
void BaseCrystal::getFrontSide ( XYZPoint a,
XYZPoint b,
XYZPoint c,
XYZPoint d 
) const

coordinates of the front side

Definition at line 138 of file BaseCrystal.cc.

Referenced by Crystal::getFrontSide().

void BaseCrystal::getFrontSide ( std::vector< XYZPoint > &  corners) const

Definition at line 146 of file BaseCrystal.cc.

const XYZVector& BaseCrystal::getLateralEdge ( unsigned  i) const
inline

lateral directions

Definition at line 92 of file BaseCrystal.h.

References i, and lateraldirection_.

Referenced by Crystal::getLateralEdge().

92 {return lateraldirection_[i];};
int i
Definition: DBlmapReader.cc:9
XYZVector lateraldirection_[4]
Definition: BaseCrystal.h:120
void BaseCrystal::getLateralEdges ( unsigned  i,
XYZPoint a,
XYZPoint b 
) const

get the lateral edges

Definition at line 129 of file BaseCrystal.cc.

Referenced by Crystal::getLateralEdges().

const Plane3D& BaseCrystal::getLateralPlane ( unsigned  i) const
inline

lateral planes

Definition at line 87 of file BaseCrystal.h.

References i, and lateralPlane_.

Referenced by Crystal::getLateralPlane().

87 {return lateralPlane_[i];};
int i
Definition: DBlmapReader.cc:9
Plane3D lateralPlane_[6]
Definition: BaseCrystal.h:121
void BaseCrystal::getLateralSide ( unsigned  i,
XYZPoint a,
XYZPoint b,
XYZPoint c,
XYZPoint d 
) const

Coordinates of the i=th lateral side.

Definition at line 176 of file BaseCrystal.cc.

Referenced by Crystal::getLateralSide().

void BaseCrystal::getLateralSide ( unsigned  i,
std::vector< XYZPoint > &  corners 
) const

Definition at line 185 of file BaseCrystal.cc.

const Plane3D& BaseCrystal::getPlane ( const CaloDirection side) const
inline

generic access

Definition at line 89 of file BaseCrystal.h.

References lateralPlane_, and CaloDirectionOperations::Side().

Referenced by Crystal::getPlane().

Plane3D lateralPlane_[6]
Definition: BaseCrystal.h:121
static CaloDirection Side(unsigned i)
unsigned int -&gt; Side conversion
void BaseCrystal::getSide ( const CaloDirection side,
XYZPoint a,
XYZPoint b,
XYZPoint c,
XYZPoint d 
) const

generic access

Definition at line 257 of file BaseCrystal.cc.

Referenced by Crystal::getSide().

void BaseCrystal::getSide ( const CaloDirection side,
std::vector< XYZPoint > &  corners 
) const

Definition at line 285 of file BaseCrystal.cc.

const int BaseCrystal::getSubdetNumber ( ) const
inline

get the subdector

Definition at line 63 of file BaseCrystal.h.

References subdetn_.

Referenced by Crystal::getSubdetNumber().

63 {return subdetn_;}
static unsigned BaseCrystal::oppositeDirection ( unsigned  iside)
static
void BaseCrystal::print ( void  ) const

Definition at line 272 of file BaseCrystal.cc.

Referenced by Crystal::print().

void BaseCrystal::setCorners ( const CaloCellGeometry::CornersVec vec,
const GlobalPoint pos 
)

Definition at line 14 of file BaseCrystal.cc.

Member Data Documentation

XYZPoint BaseCrystal::backcenter_
private

Definition at line 116 of file BaseCrystal.h.

Referenced by getBackCenter().

DetId BaseCrystal::cellid_
private

Definition at line 112 of file BaseCrystal.h.

Referenced by getDetId().

XYZPoint BaseCrystal::center_
private

Definition at line 114 of file BaseCrystal.h.

Referenced by getCenter().

XYZPoint BaseCrystal::corners_[8]
private

Definition at line 111 of file BaseCrystal.h.

Referenced by getCorner().

XYZVector BaseCrystal::crystalaxis_
private

Definition at line 119 of file BaseCrystal.h.

Referenced by getAxis().

XYZVector BaseCrystal::exitingNormal_[6]
private

Definition at line 122 of file BaseCrystal.h.

Referenced by exitingNormal().

XYZVector BaseCrystal::fifthedgedirection_
private

Definition at line 118 of file BaseCrystal.h.

Referenced by getFifthEdge().

XYZVector BaseCrystal::firstedgedirection_
private

Definition at line 117 of file BaseCrystal.h.

Referenced by getFirstEdge().

XYZPoint BaseCrystal::frontcenter_
private

Definition at line 115 of file BaseCrystal.h.

Referenced by getFrontCenter().

XYZVector BaseCrystal::lateraldirection_[4]
private

Definition at line 120 of file BaseCrystal.h.

Referenced by getLateralEdge().

Plane3D BaseCrystal::lateralPlane_[6]
private

Definition at line 121 of file BaseCrystal.h.

Referenced by getBackPlane(), getFrontPlane(), getLateralPlane(), and getPlane().

int BaseCrystal::subdetn_
private

Definition at line 113 of file BaseCrystal.h.

Referenced by getSubdetNumber().