/search.css" rel="stylesheet" type="text/css"/> /search.js">
00001 00021 #ifndef POSITIONERTOOL_H 00022 #define POSITIONERTOOL_H 00023 00024 #include "DetHelpers/IPositionerTool.h" 00025 #include "GaudiAlg/GaudiTool.h" 00026 #include "GaudiKernel/IDataProviderSvc.h" 00027 00028 class PositionerTool : public GaudiTool, 00029 virtual public IPositionerTool 00030 { 00031 public: 00032 // Tool interface 00033 PositionerTool(const std::string& type, 00034 const std::string& name, 00035 const IInterface* parent); 00036 ~PositionerTool(); 00037 virtual StatusCode initialize(); 00038 virtual StatusCode reinitialize(); 00039 virtual StatusCode finalize(); 00040 virtual StatusCode queryInterface(const InterfaceID& riid, 00041 void** ppvInterface); 00043 00045 StatusCode placeVolume(); 00046 00047 private: 00048 IDataProviderSvc* m_detSvc; // Handle to Detector Data Service 00049 00050 std::string m_physVolName; 00051 std::string m_logVolName; 00052 std::string m_motherLVolName; 00053 std::vector<double> m_position; 00054 std::vector<double> m_rotation; 00055 std::string m_detElemPath; 00056 std::string m_support; 00057 }; 00058 00059 #endif // POSITIONERTOOL_H