CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DDLinear.h
Go to the documentation of this file.
1 #ifndef ALGORITHM_DD_LINEAR_H
2 # define ALGORITHM_DD_LINEAR_H
3 
6 
7 class DDLinear : public DDAlgorithm
8 {
9 public:
10  DDLinear( void );
11  virtual ~DDLinear( void );
12 
13  void initialize( const DDNumericArguments & nArgs,
14  const DDVectorArguments & vArgs,
15  const DDMapArguments & mArgs,
16  const DDStringArguments & sArgs,
17  const DDStringVectorArguments & vsArgs );
18 
19  void execute( DDCompactView& cpv );
20 
21 private:
22  int m_n; //Number of copies
23  int m_startCopyNo; //Start Copy number
24  int m_incrCopyNo; //Increment in Copy number
25  double m_theta; //Theta
26  double m_phi; //Phi dir[Theta,Phi] ... unit-std::vector in direction Theta, Phi
27  // double m_offset; //Offset - an offset distance in direction dir(Theta,Phi)
28  // FIXME: Understand if the offset is needed.
29  double m_delta; //Delta - distance between two subsequent positions along dir[Theta,Phi]
30  std::vector<double> m_base; //Base values - a 3d-point where the offset is calculated from
31  //base is optional, if omitted base=(0,0,0)
32  std::pair<std::string, std::string> m_childNmNs; //Child name
33  //Namespace of the child
34 };
35 
36 #endif // ALGORITHM_DD_LINEAR_H
int m_startCopyNo
Definition: DDLinear.h:23
double m_phi
Definition: DDLinear.h:26
int m_incrCopyNo
Definition: DDLinear.h:24
double m_delta
Definition: DDLinear.h:29
type of data representation of DDCompactView
Definition: DDCompactView.h:77
std::pair< std::string, std::string > m_childNmNs
Definition: DDLinear.h:32
double m_theta
Definition: DDLinear.h:25
DDLinear(void)
Definition: DDLinear.cc:8
void initialize(const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs)
Definition: DDLinear.cc:23
int m_n
Definition: DDLinear.h:22
std::vector< double > m_base
Definition: DDLinear.h:30
virtual ~DDLinear(void)
Definition: DDLinear.cc:19
void execute(DDCompactView &cpv)
Definition: DDLinear.cc:58