00001 #ifndef DDL_RotationByAxis_H 00002 #define DDL_RotationByAxis_H 00003 00004 // ------------------------------------------------------------------------- 00005 // Includes 00006 // ------------------------------------------------------------------------- 00007 #include "DDXMLElement.h" 00008 00009 // Base dependency 00010 #include "DetectorDescription/Base/interface/DDRotationMatrix.h" 00011 00012 #include <string> 00013 00015 00027 class DDLRotationByAxis : public DDXMLElement 00028 { 00029 public: 00030 00032 DDLRotationByAxis( DDLElementRegistry* myreg ); 00033 00035 virtual ~DDLRotationByAxis( void ); 00036 00037 virtual void preProcessElement( const std::string& name, const std::string& nmspace, DDCompactView& cpv ); 00038 00039 virtual void processElement( const std::string& name, const std::string& nmspace, DDCompactView& cpv ); 00040 00041 virtual DDRotationMatrix processOne( DDRotationMatrix R, std::string& axis, std::string& angle ); 00042 00043 private: 00044 std::string pNameSpace; 00045 std::string pName; 00046 }; 00047 00048 #endif