|
|
Go to the documentation of this file.
15 #include "CLHEP/Units/GlobalPhysicalConstants.h"
16 #include "CLHEP/Units/GlobalSystemOfUnits.h"
53 LogDebug(
"TOBGeom") <<
"DDTOBAxCableAlgo info: Creating an instance";
79 LogDebug(
"TOBGeom") <<
"DDTOBAxCableAlgo debug: Axial Service Sectors half-length " <<
sectorDz <<
"\tRin "
83 LogDebug(
"TOBGeom") <<
"DDTOBAxCableAlgo debug: List of materials for the sectors/3 parts";
85 LogDebug(
"TOBGeom") <<
"DDTOBAxCableAlgo debug: Sector/3 A";
89 LogDebug(
"TOBGeom") <<
"DDTOBAxCableAlgo debug: Sector/3 B";
93 LogDebug(
"TOBGeom") <<
"DDTOBAxCableAlgo debug: Sector/3 C";
99 LogDebug(
"TOBGeom") <<
"==>> Constructing DDTOBAxCableAlgo...";
106 double dz, rin, rout, startphi, widthphi, deltaphi;
126 << (startphi + deltaphi) / CLHEP::deg <<
" with Rin " << rin <<
" Rout " << rout <<
" ZHalf "
135 <<
" positioned in " << tubsName <<
" with no translation and no rotation";
139 startphi += deltaphi;
146 << (startphi + deltaphi) / CLHEP::deg <<
" with Rin " << rin <<
" Rout " << rout <<
" ZHalf "
155 <<
" positioned in " << tubsName <<
" with no translation and no rotation";
159 startphi += deltaphi;
166 << (startphi + deltaphi) / CLHEP::deg <<
" with Rin " << rin <<
" Rout " << rout <<
" ZHalf "
175 <<
" positioned in " << tubsName <<
" with no translation and no rotation";
178 LogDebug(
"TOBGeom") <<
"<<== End of DDTOBAxCableAlgo construction ...";
DDName is used to identify DDD entities uniquely.
vector< string > sectorMaterial_B
U second(std::pair< T, U > const &p)
void initialize(const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs) override
vector< double > sectorStartPhi
DDMaterial is used to define and access material information.
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
void execute(DDCompactView &cpv) override
Compact representation of the geometrical detector hierarchy.
static DDSolid tubs(const DDName &name, double zhalf, double rIn, double rOut, double startPhi, double deltaPhi)
#define DEFINE_EDM_PLUGIN(factory, type, name)
~DDTOBAxCableAlgo() override
A DDLogicalPart aggregates information concerning material, solid and sensitveness ....
vector< string > sectorMaterial_C
static std::string & ns()
A DDSolid represents the shape of a part.
vector< string > sectorMaterial_A
static AlgebraicMatrix initialize()
vector< string > sectorNumber
std::pair< std::string, std::string > DDSplit(const std::string &n)
split into (name,namespace), separator = ':'
void position(const DDLogicalPart &self, const DDLogicalPart &parent, const std::string ©no, const DDTranslation &trans, const DDRotation &rot, const DDDivision *div=nullptr)
ROOT::Math::Rotation3D DDRotation