PageRenderTime 24ms CodeModel.GetById 15ms app.highlight 5ms RepoModel.GetById 2ms app.codeStats 0ms

/DetectorDescription/Parser/src/DDLRotationByAxis.h

https://github.com/aivanov-cern/cmssw
C Header | 48 lines | 18 code | 11 blank | 19 comment | 0 complexity | d0c26971d394c3ddb0fb9c6f9b76d801 MD5 | raw file
 1#ifndef DDL_RotationByAxis_H
 2#define DDL_RotationByAxis_H
 3
 4// -------------------------------------------------------------------------
 5// Includes
 6// -------------------------------------------------------------------------
 7#include "DDXMLElement.h"
 8
 9// Base dependency
10#include "DetectorDescription/Base/interface/DDRotationMatrix.h"
11
12#include <string>
13
14///  DDLRotationByAxis handles RotationByAxis elements
15/** @class DDLRotationByAxis
16 * @author Michael Case
17 *
18 *  DDLRotationByAxis.h  -  description
19 *  -------------------
20 *  begin: Wed. Nov. 19, 2003
21 *  email: case@ucdhep.ucdavis.edu
22 *
23 *
24 *  This is the RotationByAxis element which rotates around an axis.
25 *
26 */
27class DDLRotationByAxis : public DDXMLElement
28{
29public:
30
31  /// Constructor 
32  DDLRotationByAxis( DDLElementRegistry* myreg );
33
34  /// Destructor
35  virtual ~DDLRotationByAxis( void );
36
37  virtual void preProcessElement( const std::string& name, const std::string& nmspace, DDCompactView& cpv );
38
39  virtual void processElement( const std::string& name, const std::string& nmspace, DDCompactView& cpv );
40
41  virtual DDRotationMatrix processOne( DDRotationMatrix R, std::string& axis, std::string& angle ); 
42
43private:
44  std::string pNameSpace;
45  std::string pName;
46};
47
48#endif