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  friend class DDAlgorithmHandler;
15 
16 public:
17  virtual ~DDAlgorithm() {}
18 
20 
25  virtual void initialize(const DDNumericArguments& nArgs,
26  const DDVectorArguments& vArgs,
27  const DDMapArguments& mArgs,
28  const DDStringArguments& sArgs,
29  const DDStringVectorArguments& vsArgs) = 0;
30 
32 
34  virtual void execute(DDCompactView&) = 0;
35 
36 protected:
38  const DDLogicalPart& parent() const { return parent_; }
39 
41  void setParent(const DDLogicalPart& parent) { parent_ = parent; }
42 
43 private:
45  DDLogicalPart parent_;
46 };
47 
48 #endif // DD_ALGO_PLUGIN_DD_ALGORITHM_H
DDAlgorithmHandler::execute
void execute(DDCompactView &)
executes the wrapped algorithm algo_; some pre- and post-processing (exception handling)
Definition: DDAlgorithmHandler.cc:20
DDCompactView.h
DDCompactView
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:81
DDAlgorithmHandler
wrapper around a DDAlgorithm
Definition: DDAlgorithmHandler.h:15
DDLogicalPart
A DDLogicalPart aggregates information concerning material, solid and sensitveness ....
Definition: DDLogicalPart.h:93
DDTypes.h
DDLogicalPart.h
ReadMapType< double >
initialize
static AlgebraicMatrix initialize()
Definition: BeamSpotTransientTrackingRecHit.cc:24
class-composition.parent
parent
Definition: class-composition.py:88