/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. // Includes
  5. // -------------------------------------------------------------------------
  6. #include "DDXMLElement.h"
  7. // Base dependency
  8. #include "DetectorDescription/Base/interface/DDRotationMatrix.h"
  9. #include <string>
  10. /// DDLRotationByAxis handles RotationByAxis elements
  11. /** @class DDLRotationByAxis
  12. * @author Michael Case
  13. *
  14. * DDLRotationByAxis.h - description
  15. * -------------------
  16. * begin: Wed. Nov. 19, 2003
  17. * email: case@ucdhep.ucdavis.edu
  18. *
  19. *
  20. * This is the RotationByAxis element which rotates around an axis.
  21. *
  22. */
  23. class DDLRotationByAxis : public DDXMLElement
  24. {
  25. public:
  26. /// Constructor
  27. DDLRotationByAxis( DDLElementRegistry* myreg );
  28. /// Destructor
  29. virtual ~DDLRotationByAxis( void );
  30. virtual void preProcessElement( const std::string& name, const std::string& nmspace, DDCompactView& cpv );
  31. virtual void processElement( const std::string& name, const std::string& nmspace, DDCompactView& cpv );
  32. virtual DDRotationMatrix processOne( DDRotationMatrix R, std::string& axis, std::string& angle );
  33. private:
  34. std::string pNameSpace;
  35. std::string pName;
  36. };
  37. #endif