| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

DetElemFinder.h

Go to the documentation of this file.
00001 // $Id: DetElemFinder.h,v 1.2 2008/07/21 14:52:40 cattanem Exp $
00002 #ifndef DETELEMFINDER_H 
00003 #define DETELEMFINDER_H 1
00004 
00005 // Include files
00006 #include "GaudiKernel/Service.h"
00007 #include "GaudiKernel/HashMap.h"
00008 #include "DetDesc/IDetElemFinder.h"
00009 
00017 class DetElemFinder: public virtual Service, public virtual IDetElemFinder {
00018 public: 
00019 
00021   DetElemFinder( const std::string& name, ISvcLocator* svcloc ); 
00022 
00023   virtual ~DetElemFinder( ); 
00024 
00029   virtual StatusCode queryInterface(const InterfaceID& riid, void** ppvUnknown);
00030 
00033   virtual const IDetectorElement * detectorElementForPath(const std::string &path) const;
00034 
00036   virtual StatusCode initialize();
00037   
00039   virtual StatusCode finalize();
00040 
00041 protected:
00042 
00043 private:
00044 
00047   StatusCode insert(const IDetectorElement *de, const std::string &parent_path = "");
00048 
00051   StatusCode detector_element_path(const IDetectorElement *de, std::string &path,
00052                                    const std::string &parent_path = "");
00053 
00055   friend class SvcFactory<DetElemFinder>;
00056 
00058   std::string m_detDataSvcName;
00059 
00061   std::string m_rootElement;
00062 
00064   bool m_dumpMap;
00065 
00066   typedef GaudiUtils::HashMap<std::string, const IDetectorElement *> map_type;
00068   map_type m_map;
00069 
00070 };
00071 #endif // DETELEMFINDER_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:02:42 2011 for DetDescSvc by doxygen 1.4.7