| # Gaudi Framework, version v21r10p1 |

Home |  | Generated: 29 Jul 2010

# 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 GAUDI_API ITHistSvc: virtual public IService {
    00020
    00021 public:
    00023   DeclareInterfaceID(ITHistSvc,2,0);
    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   virtual std::vector<std::string> getGraphs() const = 0;
    00044
    00045   //  virtual StatusCode getTHists(TList&) const = 0;
    00046   virtual StatusCode getTHists(TDirectory *td, TList &,
    00047                                bool recurse=false) const = 0;
    00048   virtual StatusCode getTHists(const std::string& name, TList &,
    00049                                bool recurse=false) const = 0;
    00050
    00051   virtual StatusCode getTHists(TDirectory *td, TList &,
    00052                                bool recurse=false, bool reg=false) = 0;
    00053   virtual StatusCode getTHists(const std::string& name, TList &,
    00054                                bool recurse=false, bool reg=false) = 0;
    00055
    00056   //  virtual StatusCode getTTrees(TList&) const = 0;
    00057   virtual StatusCode getTTrees(TDirectory *td, TList &,
    00058                                bool recurse=false) const = 0;
    00059   virtual StatusCode getTTrees(const std::string& name, TList &,
    00060                                bool recurse=false) const = 0;
    00061   virtual StatusCode getTTrees(TDirectory *td, TList &,
    00062                                bool recurse=false, bool reg=false) = 0;
    00063   virtual StatusCode getTTrees(const std::string& name, TList &,
    00064                                bool recurse=false, bool reg=false) = 0;
    00065
    00066   virtual StatusCode regGraph(const std::string& name) = 0;
    00067   virtual StatusCode regGraph(const std::string& name, TGraph*) = 0;
    00068   virtual StatusCode getGraph(const std::string& name, TGraph*&) const = 0;
    00069
    00070   virtual bool exists(const std::string& name) const = 0;
    00071
    00072 };
    00073
    00074 #endif