CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Attributes | Private Member Functions | Private Attributes
CmsTrackerLevelBuilder< FilteredView > Class Template Referenceabstract

#include <CmsTrackerLevelBuilder.h>

Inheritance diagram for CmsTrackerLevelBuilder< FilteredView >:
CmsTrackerAbstractConstruction< FilteredView > CmsDetConstruction< FilteredView > CmsTrackerBuilder< FilteredView > CmsTrackerDiskBuilder< FilteredView > CmsTrackerLadderBuilder< FilteredView > CmsTrackerLayerBuilder< FilteredView > CmsTrackerOTDiscBuilder< FilteredView > CmsTrackerOTLayerBuilder< FilteredView > CmsTrackerOTRingBuilder< FilteredView > CmsTrackerPanelBuilder< FilteredView > CmsTrackerPetalBuilder< FilteredView > CmsTrackerPhase1DiskBuilder< FilteredView > CmsTrackerPhase2TPDiskBuilder< FilteredView > CmsTrackerPixelPhase1EndcapBuilder< FilteredView > CmsTrackerPixelPhase2DiskBuilder< FilteredView > CmsTrackerPixelPhase2EndcapBuilder< FilteredView > CmsTrackerPixelPhase2RingBuilder< FilteredView > CmsTrackerRingBuilder< FilteredView > CmsTrackerRodBuilder< FilteredView > CmsTrackerStringBuilder< FilteredView > CmsTrackerSubStrctBuilder< FilteredView > CmsTrackerWheelBuilder< FilteredView >

Public Member Functions

void build (FilteredView &, GeometricDet *, const std::string &) override
 
 ~CmsTrackerLevelBuilder () override
 
- Public Member Functions inherited from CmsTrackerAbstractConstruction< FilteredView >
virtual ~CmsTrackerAbstractConstruction ()=default
 

Protected Attributes

CmsTrackerStringToEnum theCmsTrackerStringToEnum
 

Private Member Functions

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

Private Attributes

CmsTrackerStringToEnum _CmsTrackerStringToEnum
 

Detailed Description

template<class FilteredView>
class CmsTrackerLevelBuilder< FilteredView >

Abstract Class to construct a Level in the hierarchy

Definition at line 31 of file CmsTrackerLevelBuilder.h.

Constructor & Destructor Documentation

◆ ~CmsTrackerLevelBuilder()

template<class FilteredView >
CmsTrackerLevelBuilder< FilteredView >::~CmsTrackerLevelBuilder ( )
inlineoverride

Definition at line 34 of file CmsTrackerLevelBuilder.h.

34 {}

Member Function Documentation

◆ build()

template<class FilteredView >
void CmsTrackerLevelBuilder< FilteredView >::build ( FilteredView &  fv,
GeometricDet tracker,
const std::string &  attribute 
)
overridevirtual

Implements CmsTrackerAbstractConstruction< FilteredView >.

Definition at line 141 of file CmsTrackerLevelBuilder.cc.

143  {
144  LogTrace("GeometricDetBuilding") //<< std::string(3 * fv.history().size(), '-') << "+ "
145  << ExtractStringFromDDD<FilteredView>::getString(attribute, &fv) << " " << tracker->type() << " "
146  << tracker->name() << std::endl;
147 
148  bool doLayers = fv.firstChild(); // descend to the first Layer
149 
150  while (doLayers) {
151  buildComponent(fv, tracker, attribute);
152  doLayers = fv.nextSibling(); // go to next layer
153  }
154 
155  fv.parent();
156 
157  sortNS(fv, tracker);
158 }

References ExtractStringFromDDD< FilteredView >::getString(), LogTrace, and PbPb_ZMuSkimMuonDPG_cff::tracker.

Referenced by CmsTrackerDiskBuilder< FilteredView >::buildComponent(), CmsTrackerOTDiscBuilder< FilteredView >::buildComponent(), CmsTrackerWheelBuilder< FilteredView >::buildComponent(), CmsTrackerPhase2TPDiskBuilder< FilteredView >::buildComponent(), CmsTrackerOTLayerBuilder< FilteredView >::buildComponent(), CmsTrackerPixelPhase2DiskBuilder< FilteredView >::buildComponent(), CmsTrackerLayerBuilder< FilteredView >::buildComponent(), CmsTrackerPetalBuilder< FilteredView >::buildComponent(), CmsTrackerPhase1DiskBuilder< FilteredView >::buildComponent(), CmsTrackerSubStrctBuilder< FilteredView >::buildComponent(), CmsTrackerPixelPhase2EndcapBuilder< FilteredView >::buildComponent(), CmsTrackerPixelPhase1EndcapBuilder< FilteredView >::buildComponent(), CmsTrackerBuilder< FilteredView >::buildComponent(), and DDDCmsTrackerContruction::construct().

◆ buildComponent()

template<class FilteredView >
virtual void CmsTrackerLevelBuilder< FilteredView >::buildComponent ( FilteredView &  ,
GeometricDet ,
const std::string &   
)
privatepure virtual

◆ sortNS()

template<class FilteredView >
virtual void CmsTrackerLevelBuilder< FilteredView >::sortNS ( FilteredView &  ,
GeometricDet  
)
inlineprivatevirtual

Member Data Documentation

◆ _CmsTrackerStringToEnum

template<class FilteredView >
CmsTrackerStringToEnum CmsTrackerLevelBuilder< FilteredView >::_CmsTrackerStringToEnum
private

Definition at line 44 of file CmsTrackerLevelBuilder.h.

◆ theCmsTrackerStringToEnum

template<class FilteredView >
CmsTrackerStringToEnum CmsTrackerLevelBuilder< FilteredView >::theCmsTrackerStringToEnum
protected

Definition at line 40 of file CmsTrackerLevelBuilder.h.

ExtractStringFromDDD::getString
static std::string getString(const std::string &, FilteredView *)
CmsTrackerLevelBuilder::sortNS
virtual void sortNS(FilteredView &, GeometricDet *)
Definition: CmsTrackerLevelBuilder.h:43
PbPb_ZMuSkimMuonDPG_cff.tracker
tracker
Definition: PbPb_ZMuSkimMuonDPG_cff.py:60
CmsTrackerLevelBuilder::buildComponent
virtual void buildComponent(FilteredView &, GeometricDet *, const std::string &)=0
LogTrace
#define LogTrace(id)
Definition: MessageLogger.h:671