CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Member Functions | Protected Attributes | Private Member Functions | Private Attributes
CmsTrackerLevelBuilder Class Referenceabstract

#include <CmsTrackerLevelBuilder.h>

Inheritance diagram for CmsTrackerLevelBuilder:
CmsTrackerAbstractConstruction CmsDetConstruction CmsTrackerBuilder CmsTrackerDiskBuilder CmsTrackerLadderBuilder CmsTrackerLayerBuilder CmsTrackerOTDiscBuilder CmsTrackerOTRingBuilder CmsTrackerPanelBuilder CmsTrackerPetalBuilder CmsTrackerPhase1DiskBuilder CmsTrackerPixelPhase1EndcapBuilder CmsTrackerPixelPhase2EndcapBuilder CmsTrackerRingBuilder CmsTrackerRodBuilder CmsTrackerStringBuilder CmsTrackerSubStrctBuilder CmsTrackerWheelBuilder

Classes

struct  ExtractPhi
 
struct  ExtractPhiGluedModule
 
struct  ExtractPhiGluedModuleMirror
 
struct  ExtractPhiMirror
 
struct  ExtractPhiModule
 
struct  ExtractPhiModuleMirror
 
struct  LessModZ
 
struct  LessR
 
struct  LessR_module
 
struct  LessZ
 
struct  PhiSortNP
 
struct  subDetByType
 

Public Member Functions

virtual void build (DDFilteredView &, GeometricDet *, std::string)
 
virtual ~CmsTrackerLevelBuilder ()
 

Protected Attributes

CmsTrackerStringToEnum theCmsTrackerStringToEnum
 

Private Member Functions

virtual void buildComponent (DDFilteredView &, GeometricDet *, std::string)=0
 
virtual void sortNS (DDFilteredView &, GeometricDet *)
 

Private Attributes

CmsTrackerStringToEnum _CmsTrackerStringToEnum
 

Detailed Description

Definition at line 15 of file CmsTrackerLevelBuilder.h.

Constructor & Destructor Documentation

virtual CmsTrackerLevelBuilder::~CmsTrackerLevelBuilder ( )
inlinevirtual

Definition at line 18 of file CmsTrackerLevelBuilder.h.

18 {}

Member Function Documentation

void CmsTrackerLevelBuilder::build ( DDFilteredView fv,
GeometricDet tracker,
std::string  attribute 
)
virtual

Implements CmsTrackerAbstractConstruction.

Definition at line 8 of file CmsTrackerLevelBuilder.cc.

References buildComponent(), DDFilteredView::firstChild(), ExtractStringFromDDD::getString(), DDFilteredView::history(), LogTrace, GeometricDet::name(), DDFilteredView::nextSibling(), DDFilteredView::parent(), sortNS(), AlCaHLTBitMon_QueryRunRegistry::string, and GeometricDet::type().

Referenced by CmsTrackerLayerBuilder::buildComponent(), CmsTrackerPetalBuilder::buildComponent(), CmsTrackerWheelBuilder::buildComponent(), CmsTrackerOTDiscBuilder::buildComponent(), CmsTrackerDiskBuilder::buildComponent(), CmsTrackerPhase1DiskBuilder::buildComponent(), CmsTrackerSubStrctBuilder::buildComponent(), CmsTrackerPixelPhase2EndcapBuilder::buildComponent(), CmsTrackerPixelPhase1EndcapBuilder::buildComponent(), CmsTrackerBuilder::buildComponent(), and DDDCmsTrackerContruction::construct().

11  {
12 
13  LogTrace("GeometricDetBuilding") << std::string(3*fv.history().size(),'-')
14  << "+ "
15  << ExtractStringFromDDD::getString(attribute,&fv) << " "
16  << tracker->type() << " "
17  << tracker->name()
18  << std::endl;
19 
20  bool doLayers = fv.firstChild(); // descend to the first Layer
21 
22  while (doLayers) {
23  buildComponent(fv,tracker,attribute);
24  doLayers = fv.nextSibling(); // go to next layer
25  }
26 
27  fv.parent();
28 
29  sortNS(fv,tracker);
30 }
static std::string getString(std::string const &, DDFilteredView *)
bool parent()
set the current node to the parent node ...
bool nextSibling()
set the current node to the next sibling ...
virtual void sortNS(DDFilteredView &, GeometricDet *)
const std::vector< DDGeoHistory > & history() const
DDName const & name() const
Definition: GeometricDet.h:144
#define LogTrace(id)
bool firstChild()
set the current node to the first child ...
GeometricEnumType type() const
Definition: GeometricDet.h:140
virtual void buildComponent(DDFilteredView &, GeometricDet *, std::string)=0
virtual void CmsTrackerLevelBuilder::buildComponent ( DDFilteredView ,
GeometricDet ,
std::string   
)
privatepure virtual
virtual void CmsTrackerLevelBuilder::sortNS ( DDFilteredView ,
GeometricDet  
)
inlineprivatevirtual

Member Data Documentation

CmsTrackerStringToEnum CmsTrackerLevelBuilder::_CmsTrackerStringToEnum
private

Definition at line 204 of file CmsTrackerLevelBuilder.h.

CmsTrackerStringToEnum CmsTrackerLevelBuilder::theCmsTrackerStringToEnum
protected