5 #include "CLHEP/Units/GlobalSystemOfUnits.h" 6 #include "CLHEP/Units/SystemOfUnits.h" 16 #include "Math/GenVector/Cartesian3D.h" 17 #include "Math/GenVector/DisplacementVector3D.h" 27 LogDebug(
"DDAlgorithm" ) <<
"DDLinear: Creating an instance.";
49 LogDebug(
"DDAlgorithm" ) <<
"DDLinear: Parameters for position" 50 <<
"ing:: n " <<
m_n <<
" Direction Theta, Phi, Offset, Delta " 52 <<
m_phi/CLHEP::deg <<
" " 63 LogDebug(
"DDAlgorithm" ) <<
"DDLinear: Parent " << parentName
86 LogDebug(
"DDAlgorithm" ) <<
"DDLinear: Creating a new " 87 <<
"rotation: IdentityRotation for " << ddname;
92 for(
int i = 0;
i <
m_n; ++
i )
95 cpv.
position( ddname, mother, copy, tran, rotation );
97 << copy <<
" positioned in " << mother <<
" at "
Sin< T >::type sin(const T &t)
DDName is used to identify DDD entities uniquely.
static std::string & ns()
void execute(DDCompactView &cpv) override
type of data representation of DDCompactView
std::pair< std::string, std::string > m_childNmNs
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
Represents a uniquely identifyable rotation matrix.
Cos< T >::type cos(const T &t)
std::vector< double > m_base
void position(const DDLogicalPart &self, const DDLogicalPart &parent, const std::string ©no, const DDTranslation &trans, const DDRotation &rot, const DDDivision *div=0)
void initialize(const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs) override
std::pair< std::string, std::string > DDSplit(const std::string &n)
split into (name,namespace), separator = ':'
ROOT::Math::Rotation3D DDRotationMatrix
A DDRotationMatrix is currently implemented with a ROOT Rotation3D.