Gaudi Framework, version v20r2

Generated: 18 Jul 2008

ITHistSvc.h

Go to the documentation of this file.
00001 #ifndef GAUDIKERNEL_ITHISTSVC_H
00002 #define GAUDIKERNEL_ITHISTSVC_H
00003 
00004 #ifndef GAUDIKERNEL_ISERVICE_H
00005  #include "GaudiKernel/IService.h"
00006 #endif
00007 #include <string>
00008 #include <vector>
00009 
00010 class TObject;
00011 class TH1;
00012 class TH2;
00013 class TH3;
00014 class TTree;
00015 class TList;
00016 class TDirectory;
00017 class TGraph;
00018 
00019 class ITHistSvc: virtual public IService {
00020 
00021 public:
00022 
00023   static const InterfaceID& interfaceID();
00024 
00025   virtual StatusCode regHist(const std::string& name) = 0;
00026   virtual StatusCode regHist(const std::string& name, TH1*) = 0;
00027   virtual StatusCode regHist(const std::string& name, TH2*) = 0;
00028   virtual StatusCode regHist(const std::string& name, TH3*) = 0;
00029 
00030   virtual StatusCode getHist(const std::string& name, TH1*&) const = 0;
00031   virtual StatusCode getHist(const std::string& name, TH2*&) const = 0;
00032   virtual StatusCode getHist(const std::string& name, TH3*&) const = 0;
00033 
00034   virtual StatusCode regTree(const std::string& name) = 0;
00035   virtual StatusCode regTree(const std::string& name, TTree*) = 0;
00036   virtual StatusCode getTree(const std::string& name, TTree*&) const = 0;
00037 
00038   virtual StatusCode deReg(const std::string& name) = 0;
00039   virtual StatusCode deReg(TObject* obj) = 0;
00040 
00041   virtual std::vector<std::string> getHists() const = 0;
00042   virtual std::vector<std::string> getTrees() const = 0;
00043 
00044   //  virtual StatusCode getTHists(TList&) const = 0;
00045   virtual StatusCode getTHists(TDirectory *td, TList &) const = 0;
00046   virtual StatusCode getTHists(const std::string& name, TList &) const = 0;
00047 
00048   //  virtual StatusCode getTTrees(TList&) const = 0;
00049   virtual StatusCode getTTrees(TDirectory *td, TList &) const = 0;
00050   virtual StatusCode getTTrees(const std::string& name, TList &) const = 0;
00051 
00052   virtual StatusCode regGraph(const std::string& name) = 0;
00053   virtual StatusCode regGraph(const std::string& name, TGraph*) = 0;
00054   virtual StatusCode getGraph(const std::string& name, TGraph*&) const = 0;
00055 
00056 };
00057 
00058 inline
00059 const InterfaceID&
00060 ITHistSvc::interfaceID() {
00061 
00062   static const InterfaceID m_IID("THistSvc", 1, 0);
00063 
00064   return m_IID;
00065 }
00066 
00067 #endif

Generated at Fri Jul 18 11:59:20 2008 for Gaudi Framework, version v20r2 by Doxygen version 1.5.1 written by Dimitri van Heesch, © 1997-2004