CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DDAngular.h
Go to the documentation of this file.
1 #ifndef ALGORITHM_DD_ANGULAR_H
2 # define ALGORITHM_DD_ANGULAR_H
3 
7 
8 class DDAngular : public DDAlgorithm
9 {
10 public:
11  DDAngular( void );
12  virtual ~DDAngular( void );
13 
14  void initialize( const DDNumericArguments & nArgs,
15  const DDVectorArguments & vArgs,
16  const DDMapArguments & mArgs,
17  const DDStringArguments & sArgs,
18  const DDStringVectorArguments & vsArgs );
19 
20  void execute( DDCompactView& cpv );
21 
22 private:
23 
24  DD3Vector fUnitVector( double theta, double phi );
25  int m_n; //Number of copies
26  int m_startCopyNo; //Start Copy number
27  int m_incrCopyNo; //Increment in Copy number
28  double m_startAngle; //Start angle
29  double m_rangeAngle; //Range in angle
30  double m_radius; //Radius
31  double m_delta; //Increment in phi
32  std::vector<double> m_center; //Phi values
33  std::vector<double> m_rotateSolid; //Rotation of the solid values
34 
35  std::string m_idNameSpace; //Namespace of this and ALL sub-parts
36  std::pair<std::string, std::string> m_childNmNs; //Child name
37  //Namespace of the child
38 
39  DDRotationMatrix m_solidRot; //Rotation of the solid
40 };
41 
42 #endif // ALGORITHM_DD_ANGULAR_H
double m_radius
Definition: DDAngular.h:30
Geom::Theta< T > theta() const
DD3Vector fUnitVector(double theta, double phi)
Definition: DDAngular.cc:141
type of data representation of DDCompactView
Definition: DDCompactView.h:76
DDRotationMatrix m_solidRot
Definition: DDAngular.h:39
double m_delta
Definition: DDAngular.h:31
virtual ~DDAngular(void)
Definition: DDAngular.cc:21
int m_n
Definition: DDAngular.h:25
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DD3Vector
A DD Translation is currently implemented with Root Vector3D.
Definition: DDTranslation.h:6
int m_incrCopyNo
Definition: DDAngular.h:27
std::vector< double > m_rotateSolid
Definition: DDAngular.h:33
std::vector< double > m_center
Definition: DDAngular.h:32
std::string m_idNameSpace
Definition: DDAngular.h:35
DDAngular(void)
Definition: DDAngular.cc:9
double m_rangeAngle
Definition: DDAngular.h:29
void initialize(const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs)
Definition: DDAngular.cc:25
std::pair< std::string, std::string > m_childNmNs
Definition: DDAngular.h:36
void execute(DDCompactView &cpv)
Definition: DDAngular.cc:99
ROOT::Math::Rotation3D DDRotationMatrix
A DDRotationMatrix is currently implemented with a ROOT Rotation3D.
int m_startCopyNo
Definition: DDAngular.h:26
double m_startAngle
Definition: DDAngular.h:28