CMS 3D CMS Logo

DDAlgorithmHandler.h
Go to the documentation of this file.
1 #ifndef DD_DDALGORITHMHANDLER_H
2 #define DD_DDALGORITHMHANDLER_H
3 
4 #include <string>
5 
9 
10 class DDAlgorithm;
11 class DDCompactView;
12 
14 
16 {
17  public:
19 
22 
23  virtual ~DDAlgorithmHandler();
24 
26 
28  void initialize(const std::string & algoName,
29  const DDLogicalPart & parent,
30  const DDNumericArguments & nArgs,
31  const DDVectorArguments & vArgs,
32  const DDMapArguments & mArgs,
33  const DDStringArguments & sArgs,
34  const DDStringVectorArguments & svArgs);
35 
37  void execute( DDCompactView& );
38 
39 
40  private:
41  std::unique_ptr<DDAlgorithm> algo_;
44 };
45 
46 #endif // DD_DDALGORITHMHANDLER_H
void execute(DDCompactView &)
executes the wrapped algorithm algo_; some pre- and post-processing (exception handling) ...
wrapper around a DDAlgorithm
DDAlgorithmHandler()
creates an DDAlgorithm wrapper
type of data representation of DDCompactView
Definition: DDCompactView.h:90
std::unique_ptr< DDAlgorithm > algo_
the wrapped algorithm object
void initialize(const std::string &algoName, const DDLogicalPart &parent, const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &svArgs)
initializes the wrapped algorithm algo_ and does some pre- and post-processing
std::string algoname_
name of the algorithm object
A DDLogicalPart aggregates information concerning material, solid and sensitveness ...
Definition: DDLogicalPart.h:92
DDLogicalPart parent_
parent logical part