CMS 3D CMS Logo

DDAlgorithm.h
Go to the documentation of this file.
1 #ifndef DD_ALGO_PLUGIN_DD_ALGORITHM_H
2 #define DD_ALGO_PLUGIN_DD_ALGORITHM_H
3 
7 #include <vector>
8 
10 class DDCompactView;
11 
13 class DDAlgorithm
14 {
15  friend class DDAlgorithmHandler;
16 
17  public:
18  virtual ~DDAlgorithm() {}
19 
21 
26  virtual void initialize( const DDNumericArguments & nArgs,
27  const DDVectorArguments & vArgs,
28  const DDMapArguments & mArgs,
29  const DDStringArguments & sArgs,
30  const DDStringVectorArguments & vsArgs ) = 0;
31 
33 
35  virtual void execute( DDCompactView& ) = 0;
36 
37  protected:
38 
40  const DDLogicalPart & parent() const { return parent_; }
41 
43  void setParent( const DDLogicalPart & parent ) { parent_ = parent; }
44 
45  private:
47  DDLogicalPart parent_;
48 };
49 
50 #endif // DD_ALGO_PLUGIN_DD_ALGORITHM_H
static AlgebraicMatrix initialize()
wrapper around a DDAlgorithm
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:80
a std::map<std::string,YourType> that offers a const operator[key]; if key is not stored in the std::...
Definition: DDReadMapType.h:13
A DDLogicalPart aggregates information concerning material, solid and sensitveness ...
Definition: DDLogicalPart.h:93