CMS 3D CMS Logo

List of all members | Public Member Functions
DDDivision Class Reference

#include <DDDivision.h>

Inheritance diagram for DDDivision:
DDBase< DDName, std::unique_ptr< DDI::Division > >

Public Member Functions

DDAxes axis () const
 
 DDDivision ()
 The default constructor provides an uninitialzed reference object. More...
 
 DDDivision (const DDName &name)
 Creates a refernce object referring to the appropriate XML specification. More...
 
 DDDivision (const DDName &name, const DDLogicalPart &parent, DDAxes axis, int nReplicas, double width, double offset)
 Registers (creates) a reference object representing a Division. More...
 
 DDDivision (const DDName &name, const DDLogicalPart &parent, DDAxes axis, int nReplicas, double offset)
 Registers (creates) a reference object representing a Division. More...
 
 DDDivision (const DDName &name, const DDLogicalPart &parent, DDAxes axis, double width, double offset)
 Registers (creates) a reference object representing a Division. More...
 
int nReplicas () const
 
double offset () const
 
const DDLogicalPartparent () const
 
double width () const
 
- Public Member Functions inherited from DDBase< DDName, std::unique_ptr< DDI::Division > >
void create (const DDName &name, std::unique_ptr< DDI::Division > vals)
 
void create (const DDName &name)
 
 DDBase ()
 
const DDNameddname () const
 
def_type isDefined () const
 
bool isValid () const
 true, if the wrapped pointer is valid More...
 
const DDNamename () const
 
 operator bool () const
 
bool operator< (const DDBase &b) const
 
bool operator== (const DDBase &b) const
 
bool operator> (const DDBase &b) const
 
const DDI::rep_traits< DDName, std::unique_ptr< DDI::Division > >::reference rep () const
 
DDI::rep_traits< DDName, std::unique_ptr< DDI::Division > >::reference rep ()
 
std::string toString () const
 
const DDI::rep_traits< DDName, std::unique_ptr< DDI::Division > >::reference val () const
 
const DDI::rep_traits< DDName, std::unique_ptr< DDI::Division > >::reference val ()
 
virtual ~DDBase ()
 

Additional Inherited Members

- Public Types inherited from DDBase< DDName, std::unique_ptr< DDI::Division > >
using def_type = std::pair< const DDName *, bool >
 
using StoreT = DDI::Singleton< DDI::Store< DDName, std::unique_ptr< DDI::Division > > >
 
- Static Public Member Functions inherited from DDBase< DDName, std::unique_ptr< DDI::Division > >
static auto begin ()
 
static auto end ()
 

Detailed Description

Definition at line 78 of file DDDivision.h.

Constructor & Destructor Documentation

◆ DDDivision() [1/5]

DDDivision::DDDivision ( )

The default constructor provides an uninitialzed reference object.

Definition at line 25 of file DDDivision.cc.

◆ DDDivision() [2/5]

DDDivision::DDDivision ( const DDName name)

Creates a refernce object referring to the appropriate XML specification.

Definition at line 27 of file DDDivision.cc.

References DDBase< DDName, std::unique_ptr< DDI::Division > >::create(), and DDBase< DDName, std::unique_ptr< DDI::Division > >::name().

Definition: DDBase.h:10
void create(const DDName &name, std::unique_ptr< DDI::Division > vals)
Definition: DDBase.h:96

◆ DDDivision() [3/5]

DDDivision::DDDivision ( const DDName name,
const DDLogicalPart parent,
DDAxes  axis,
int  nReplicas,
double  width,
double  offset 
)

Registers (creates) a reference object representing a Division.

... Constructor with number of divisions and width

Definition at line 29 of file DDDivision.cc.

References axis(), DDBase< DDName, std::unique_ptr< DDI::Division > >::create(), DDBase< DDName, std::unique_ptr< DDI::Division > >::name(), nReplicas(), offset(), parent(), and width().

36  create(name, std::make_unique<Division>(parent, axis, nReplicas, width, offset));
37 }
Definition: DDBase.h:10
int nReplicas() const
Definition: DDDivision.cc:51
double offset() const
Definition: DDDivision.cc:55
DDAxes axis() const
Definition: DDDivision.cc:49
const DDLogicalPart & parent() const
Definition: DDDivision.cc:57
double width() const
Definition: DDDivision.cc:53
void create(const DDName &name, std::unique_ptr< DDI::Division > vals)
Definition: DDBase.h:96

◆ DDDivision() [4/5]

DDDivision::DDDivision ( const DDName name,
const DDLogicalPart parent,
DDAxes  axis,
int  nReplicas,
double  offset 
)

Registers (creates) a reference object representing a Division.

... Constructor with number of divisions

Definition at line 39 of file DDDivision.cc.

References axis(), DDBase< DDName, std::unique_ptr< DDI::Division > >::create(), DDBase< DDName, std::unique_ptr< DDI::Division > >::name(), nReplicas(), offset(), and parent().

40  {
41  create(name, std::make_unique<Division>(parent, axis, nReplicas, offset));
42 }
int nReplicas() const
Definition: DDDivision.cc:51
double offset() const
Definition: DDDivision.cc:55
DDAxes axis() const
Definition: DDDivision.cc:49
const DDLogicalPart & parent() const
Definition: DDDivision.cc:57
void create(const DDName &name, std::unique_ptr< DDI::Division > vals)
Definition: DDBase.h:96

◆ DDDivision() [5/5]

DDDivision::DDDivision ( const DDName name,
const DDLogicalPart parent,
DDAxes  axis,
double  width,
double  offset 
)

Registers (creates) a reference object representing a Division.

... Constructor with width

Definition at line 44 of file DDDivision.cc.

References axis(), DDBase< DDName, std::unique_ptr< DDI::Division > >::create(), DDBase< DDName, std::unique_ptr< DDI::Division > >::name(), offset(), parent(), and width().

45  {
46  create(name, std::make_unique<Division>(parent, axis, width, offset));
47 }
double offset() const
Definition: DDDivision.cc:55
DDAxes axis() const
Definition: DDDivision.cc:49
const DDLogicalPart & parent() const
Definition: DDDivision.cc:57
double width() const
Definition: DDDivision.cc:53
void create(const DDName &name, std::unique_ptr< DDI::Division > vals)
Definition: DDBase.h:96

Member Function Documentation

◆ axis()

DDAxes DDDivision::axis ( ) const

Definition at line 49 of file DDDivision.cc.

References DDBase< DDName, std::unique_ptr< DDI::Division > >::rep().

Referenced by DDDivision(), DDDividedTrdX::makeDDTranslation(), DDDividedTrdY::makeDDTranslation(), DDDividedTrdZ::makeDDTranslation(), and DDLDivision::makeDivider().

49 { return rep().axis(); }
const DDI::rep_traits< DDName, std::unique_ptr< DDI::Division > >::reference rep() const
Definition: DDBase.h:65

◆ nReplicas()

int DDDivision::nReplicas ( ) const

◆ offset()

double DDDivision::offset ( ) const

Definition at line 55 of file DDDivision.cc.

References DDBase< DDName, std::unique_ptr< DDI::Division > >::rep().

Referenced by DDDividedGeometryObject::checkNDivAndWidth(), DDDividedGeometryObject::checkOffset(), DDDividedPolyconeRho::checkParametersValidity(), DDDividedPolyhedraRho::checkParametersValidity(), DDDividedPolyhedraPhi::checkParametersValidity(), DDDividedPolyconeZ::checkParametersValidity(), DDDividedPolyhedraZ::checkParametersValidity(), DDDividedBoxX::DDDividedBoxX(), DDDividedBoxY::DDDividedBoxY(), DDDividedBoxZ::DDDividedBoxZ(), DDDividedConsPhi::DDDividedConsPhi(), DDDividedConsRho::DDDividedConsRho(), DDDividedConsZ::DDDividedConsZ(), DDDividedPolyconePhi::DDDividedPolyconePhi(), DDDividedPolyconeRho::DDDividedPolyconeRho(), DDDividedPolyconeZ::DDDividedPolyconeZ(), DDDividedPolyhedraPhi::DDDividedPolyhedraPhi(), DDDividedPolyhedraRho::DDDividedPolyhedraRho(), DDDividedPolyhedraZ::DDDividedPolyhedraZ(), DDDividedTrdX::DDDividedTrdX(), DDDividedTrdY::DDDividedTrdY(), DDDividedTrdZ::DDDividedTrdZ(), DDDividedTubsPhi::DDDividedTubsPhi(), DDDividedTubsRho::DDDividedTubsRho(), DDDividedTubsZ::DDDividedTubsZ(), DDDivision(), DDDividedConsRho::makeDDLogicalPart(), DDDividedTubsRho::makeDDLogicalPart(), DDDividedPolyconeRho::makeDDLogicalPart(), DDDividedPolyhedraRho::makeDDLogicalPart(), DDDividedTubsPhi::makeDDLogicalPart(), DDDividedConsPhi::makeDDLogicalPart(), DDDividedPolyhedraPhi::makeDDLogicalPart(), DDDividedPolyconePhi::makeDDLogicalPart(), DDDividedConsZ::makeDDLogicalPart(), DDDividedTrdZ::makeDDLogicalPart(), DDDividedBoxX::makeDDTranslation(), DDDividedTrdX::makeDDTranslation(), DDDividedBoxY::makeDDTranslation(), DDDividedTrdY::makeDDTranslation(), DDDividedBoxZ::makeDDTranslation(), DDDividedConsZ::makeDDTranslation(), DDDividedTubsZ::makeDDTranslation(), and DDDividedTrdZ::makeDDTranslation().

55 { return rep().offset(); }
const DDI::rep_traits< DDName, std::unique_ptr< DDI::Division > >::reference rep() const
Definition: DDBase.h:65

◆ parent()

const DDLogicalPart & DDDivision::parent ( ) const

Definition at line 57 of file DDDivision.cc.

References DDBase< DDName, std::unique_ptr< DDI::Division > >::rep().

Referenced by DDDividedGeometryObject::checkNDivAndWidth(), DDDividedPolyhedraRho::checkParametersValidity(), DDDividedPolyconeRho::checkParametersValidity(), DDDividedTrdX::checkParametersValidity(), DDDividedTrdY::checkParametersValidity(), DDDividedPolyhedraPhi::checkParametersValidity(), DDDividedTrdZ::checkParametersValidity(), DDDividedPolyconeZ::checkParametersValidity(), DDDividedPolyhedraZ::checkParametersValidity(), DDDividedGeometryObject::checkParametersValidity(), DDDividedBoxX::DDDividedBoxX(), DDDividedBoxY::DDDividedBoxY(), DDDividedBoxZ::DDDividedBoxZ(), DDDividedConsPhi::DDDividedConsPhi(), DDDividedConsRho::DDDividedConsRho(), DDDividedConsZ::DDDividedConsZ(), DDDividedPolyconePhi::DDDividedPolyconePhi(), DDDividedPolyconeRho::DDDividedPolyconeRho(), DDDividedPolyconeZ::DDDividedPolyconeZ(), DDDividedPolyhedraPhi::DDDividedPolyhedraPhi(), DDDividedPolyhedraRho::DDDividedPolyhedraRho(), DDDividedPolyhedraZ::DDDividedPolyhedraZ(), DDDividedTrdX::DDDividedTrdX(), DDDividedTrdY::DDDividedTrdY(), DDDividedTrdZ::DDDividedTrdZ(), DDDividedTubsPhi::DDDividedTubsPhi(), DDDividedTubsRho::DDDividedTubsRho(), DDDividedTubsZ::DDDividedTubsZ(), DDDivision(), DDDividedGeometryObject::execute(), DDDividedTubsRho::getMaxParameter(), DDDividedBoxX::getMaxParameter(), DDDividedConsRho::getMaxParameter(), DDDividedPolyhedraRho::getMaxParameter(), DDDividedTrdX::getMaxParameter(), DDDividedPolyconeRho::getMaxParameter(), DDDividedConsPhi::getMaxParameter(), DDDividedBoxY::getMaxParameter(), DDDividedTubsPhi::getMaxParameter(), DDDividedPolyconePhi::getMaxParameter(), DDDividedPolyhedraPhi::getMaxParameter(), DDDividedTrdY::getMaxParameter(), DDDividedTubsZ::getMaxParameter(), DDDividedBoxZ::getMaxParameter(), DDDividedConsZ::getMaxParameter(), DDDividedTrdZ::getMaxParameter(), DDDividedPolyconeZ::getMaxParameter(), DDDividedPolyhedraZ::getMaxParameter(), DDDividedConsRho::makeDDLogicalPart(), DDDividedBoxX::makeDDLogicalPart(), DDDividedTubsRho::makeDDLogicalPart(), DDDividedTrdX::makeDDLogicalPart(), DDDividedPolyhedraRho::makeDDLogicalPart(), DDDividedPolyconeRho::makeDDLogicalPart(), DDDividedGeometryObject::makeDDLogicalPart(), DDDividedBoxY::makeDDLogicalPart(), DDDividedTubsPhi::makeDDLogicalPart(), DDDividedConsPhi::makeDDLogicalPart(), DDDividedTrdY::makeDDLogicalPart(), DDDividedPolyhedraPhi::makeDDLogicalPart(), DDDividedPolyconePhi::makeDDLogicalPart(), DDDividedConsZ::makeDDLogicalPart(), DDDividedTubsZ::makeDDLogicalPart(), DDDividedBoxZ::makeDDLogicalPart(), DDDividedPolyhedraZ::makeDDLogicalPart(), DDDividedPolyconeZ::makeDDLogicalPart(), DDDividedTrdZ::makeDDLogicalPart(), DDDividedConsPhi::makeDDRotation(), DDDividedTubsPhi::makeDDRotation(), DDDividedPolyconePhi::makeDDRotation(), DDDividedPolyhedraPhi::makeDDRotation(), DDDividedBoxX::makeDDTranslation(), DDDividedTrdX::makeDDTranslation(), DDDividedBoxY::makeDDTranslation(), DDDividedTrdY::makeDDTranslation(), DDDividedBoxZ::makeDDTranslation(), DDDividedTubsZ::makeDDTranslation(), DDDividedConsZ::makeDDTranslation(), DDDividedTrdZ::makeDDTranslation(), DDDividedPolyhedraZ::makeDDTranslation(), DDDividedPolyconeZ::makeDDTranslation(), and DDLDivision::makeDivider().

57 { return rep().parent(); }
const DDI::rep_traits< DDName, std::unique_ptr< DDI::Division > >::reference rep() const
Definition: DDBase.h:65

◆ width()

double DDDivision::width ( ) const