6 #include "CLHEP/Units/GlobalSystemOfUnits.h"
16 LogDebug(
"DDAlgorithm" ) <<
"DDLinear: Creating an instance.";
29 m_n = int(nArgs[
"N"]);
38 LogDebug(
"DDAlgorithm" ) <<
"DDLinear: Parameters for position"
39 <<
"ing:: n " <<
m_n <<
" Direction Theta, Phi, Offset, Delta "
41 <<
m_phi/CLHEP::deg <<
" "
52 LogDebug(
"DDAlgorithm" ) <<
"DDLinear: Parent " << parentName
75 LogDebug(
"DDAlgorithm" ) <<
"DDLinear: Creating a new "
76 <<
"rotation: IdentityRotation for " << ddname;
81 for(
int i = 0;
i <
m_n; ++
i )
84 cpv.
position( ddname, mother, copy, tran, rotation );
86 << copy <<
" positioned in " << mother <<
" at "
Sin< T >::type sin(const T &t)
void position(const DDLogicalPart &self, const DDLogicalPart &parent, std::string copyno, const DDTranslation &trans, const DDRotation &rot, const DDDivision *div=NULL)
DDName is used to identify DDD entities uniquely.
static std::string & ns()
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)
void initialize(const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs)
std::vector< double > m_base
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.
const std::string & name() const
Returns the name.
void execute(DDCompactView &cpv)