CMS 3D CMS Logo

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

#include <DDDCmsTrackerContruction.h>

Public Member Functions

const GeometricDetconstruct (const DDCompactView *cpv)
 
 DDDCmsTrackerContruction ()
 

Protected Attributes

std::string attribute
 
CmsTrackerStringToEnum theCmsTrackerStringToEnum
 

Detailed Description

High level class to build a tracker. It will only build subdets, then call subdet builders

Definition at line 16 of file DDDCmsTrackerContruction.h.

Constructor & Destructor Documentation

DDDCmsTrackerContruction::DDDCmsTrackerContruction ( )

Definition at line 11 of file DDDCmsTrackerContruction.cc.

11  {
12 
13 }

Member Function Documentation

const GeometricDet * DDDCmsTrackerContruction::construct ( const DDCompactView cpv)

Definition at line 15 of file DDDCmsTrackerContruction.cc.

References DDFilteredView::addFilter(), CmsTrackerLevelBuilder::build(), CmsTrackerDetIdBuilder::buildId(), edm::hlt::Exception, alcazmumu_cfi::filter, DDFilteredView::firstChild(), ExtractStringFromDDD::getString(), DDSpecificsFilter::not_equals, DDFilteredView::parent(), DDSpecificsFilter::setCriteria(), GeometricDet::Tracker, patCandidatesForDimuonsSequences_cff::tracker, and relativeConstraints::value.

Referenced by TrackerGeometricDetESModule::produce().

15  {
16  attribute = "TkDDDStructure"; // could come from .orcarc
17  std::string value = "any";
19  DDValue ddv(attribute,value,0);
21 
22  DDFilteredView fv(*cpv);
23  fv.addFilter(filter);
25  fv.firstChild();
27 
28  throw cms::Exception("Configuration") <<" The first child of the DDFilteredView is not what is expected \n"
30  }
31  }
32 
34  CmsTrackerBuilder theCmsTrackerBuilder;
35  theCmsTrackerBuilder.build(fv,tracker,attribute);
36 
37 
38  CmsTrackerDetIdBuilder theCmsTrackerDetIdBuilder;
39 
40  tracker = theCmsTrackerDetIdBuilder.buildId(tracker);
41  fv.parent();
42  //
43  // set the Tracker
44  //
45  //TrackerMapDDDtoID::instance().setTracker(tracker);
46  //NOTE: If it is decided that the TrackerMapDDDtoID should be
47  // constructed here, then we should return from this
48  // function so that the EventSetup can manage it
49 
50  return tracker;
51 }
static std::string getString(std::string const &, DDFilteredView *)
virtual void build(DDFilteredView &, GeometricDet *, std::string)
CmsTrackerStringToEnum theCmsTrackerStringToEnum
GeometricDet * buildId(GeometricDet *)
void setCriteria(const DDValue &nameVal, comp_op, log_op l=AND, bool asString=true, bool merged=true)
Definition: DDFilter.cc:285
GeometricDet::GeometricEnumType type(std::string const &) const
The DDGenericFilter is a runtime-parametrized Filter looking on DDSpecifcs.
Definition: DDFilter.h:37

Member Data Documentation

std::string DDDCmsTrackerContruction::attribute
protected

Definition at line 23 of file DDDCmsTrackerContruction.h.

CmsTrackerStringToEnum DDDCmsTrackerContruction::theCmsTrackerStringToEnum
protected

Definition at line 24 of file DDDCmsTrackerContruction.h.