141 virtual bool exists(
const std::string& name )
const = 0;
143 virtual bool existsHist(
const std::string& name )
const = 0;
145 virtual bool existsTree(
const std::string& name )
const = 0;
156 virtual std::vector<std::string>
getHists()
const = 0;
157 virtual std::vector<std::string>
getTrees()
const = 0;
164 virtual StatusCode getTHists(
const std::string& name, TList&,
bool recurse =
false,
bool reg =
false ) = 0;
169 virtual StatusCode getTTrees(
const std::string& name, TList&,
bool recurse =
false,
bool reg =
false ) = 0;
General service interface definition.
virtual StatusCode getShared(const std::string &name, LockedHandle< TH1 > &) const =0
Retrieve shared object with given name as TH1 through LockedHandle.
virtual StatusCode regGraph(const std::string &name, TGraph *)=0
virtual StatusCode deReg(const std::string &name)=0
Deregister object with given name and give up ownership (without deletion!)
virtual StatusCode getShared(const std::string &name, LockedHandle< TEfficiency > &) const =0
Retrieve shared object with given name as TEfficiency through LockedHandle.
virtual StatusCode regShared(const std::string &name, std::unique_ptr< TH2 >, LockedHandle< TH2 > &)=0
Register shared object of type TH2 and return LockedHandle for that object.
virtual std::vector< std::string > getEfficiencies() const =0
virtual StatusCode regTree(const std::string &name)=0
Register a new TTree with a given name.
virtual StatusCode getShared(const std::string &name, LockedHandle< TH3 > &) const =0
Retrieve shared object with given name as TH3 through LockedHandle.
virtual StatusCode regShared(const std::string &name, std::unique_ptr< TH1 >, LockedHandle< TH1 > &)=0
Register shared object of type TH1 and return LockedHandle for that object.
virtual StatusCode merge(const std::string &id)=0
Merge all clones for object with a given id.
virtual StatusCode getTTrees(const std::string &name, TList &, bool recurse=false) const =0
virtual StatusCode regHist(const std::string &name, TH1 *)=0
virtual bool existsEfficiency(const std::string &name) const =0
Check if TEfficiency with given name is managed by THistSvcMT.
virtual StatusCode regEfficiency(const std::string &name, std::unique_ptr< TEfficiency >)=0
Register an existing TEfficiency with a given name and moved unique_ptr.
virtual StatusCode getTHists(TDirectory *td, TList &, bool recurse=false, bool reg=false)=0
virtual StatusCode regTree(const std::string &name, TTree *)=0
virtual std::vector< std::string > getGraphs() const =0
virtual bool existsGraph(const std::string &name) const =0
Check if graph with given name is managed by THistSvcMT.
virtual StatusCode getTree(const std::string &name, TTree *&) const =0
Return TTree with given name.
virtual StatusCode getShared(const std::string &name, LockedHandle< TH2 > &) const =0
Retrieve shared object with given name as TH2 through LockedHandle.
virtual StatusCode regGraph(const std::string &name, std::unique_ptr< TGraph >)=0
Register an existing TGraph with a given name and moved unique_ptr.
virtual StatusCode getGraph(const std::string &name, TGraph *&) const =0
Return TGraph with given name.
virtual StatusCode getTEfficiencies(TDirectory *td, TList &, bool recurse=false, bool reg=false)=0
virtual StatusCode regGraph(const std::string &name)=0
Register a new TGraph with a given name.
virtual StatusCode getTTrees(const std::string &name, TList &, bool recurse=false, bool reg=false)=0
virtual StatusCode regShared(const std::string &name, std::unique_ptr< TH3 >, LockedHandle< TH3 > &)=0
Register shared object of type TH3 and return LockedHandle for that object.
virtual StatusCode regEfficiency(const std::string &name)=0
Register a new TEfficiency with a given name.
virtual StatusCode regTree(const std::string &name, std::unique_ptr< TTree >)=0
Register an existing TTree with a given name and moved unique_ptr.
virtual StatusCode getTHists(const std::string &name, TList &, bool recurse=false, bool reg=false)=0
virtual StatusCode regEfficiency(const std::string &name, TEfficiency *)=0
virtual bool exists(const std::string &name) const =0
Check if histogram with given name is managed by THistSvcMT exists calls existsHist and only works fo...
virtual StatusCode deReg(TObject *obj)=0
Deregister obejct identified by TObject* and give up ownership (without deletion!)
virtual StatusCode getHist(const std::string &name, TH2 *&, size_t index=0) const =0
Return histogram with given name as TH2*, THistSvcMT still owns object.
virtual StatusCode getTEfficiencies(const std::string &name, TList &, bool recurse=false) const =0
virtual bool existsHist(const std::string &name) const =0
Check if histogram with given name is managed by THistSvcMT.
virtual std::vector< std::string > getTrees() const =0
virtual std::vector< std::string > getHists() const =0
virtual StatusCode merge(TObject *)=0
Merge all clones for given TObject*.
virtual StatusCode getShared(const std::string &name, LockedHandle< TGraph > &) const =0
Retrieve shared object with given name as TGraph through LockedHandle.
virtual StatusCode regHist(const std::string &name)=0
Register a new ROOT histogram TH*X with a name.
virtual StatusCode getTHists(TDirectory *td, TList &, bool recurse=false) const =0
virtual ~ITHistSvc()=default
virtual destructor
virtual StatusCode getTTrees(TDirectory *td, TList &, bool recurse=false, bool reg=false)=0
DeclareInterfaceID(ITHistSvc, 3, 0)
InterfaceID.
virtual StatusCode getEfficiency(const std::string &name, TEfficiency *&) const =0
Return TGraph with given name.
virtual StatusCode regShared(const std::string &name, std::unique_ptr< TGraph >, LockedHandle< TGraph > &)=0
Register shared object of type TGraph and return LockedHandle for that object.
virtual StatusCode regHist(const std::string &name, std::unique_ptr< TH1 > hist)=0
Register an existing ROOT histogram TH*X with name and moved unique_ptr.
virtual StatusCode regShared(const std::string &name, std::unique_ptr< TEfficiency >, LockedHandle< TEfficiency > &)=0
Register shared object of type TEfficiency and return LockedHandle for that object.
virtual StatusCode getTEfficiencies(TDirectory *td, TList &, bool recurse=false) const =0
virtual StatusCode getHist(const std::string &name, TH3 *&, size_t index=0) const =0
Return histogram with given name as TH3*, THistSvcMT still owns object.
virtual StatusCode getTEfficiencies(const std::string &name, TList &, bool recurse=false, bool reg=false)=0
virtual StatusCode getTHists(const std::string &name, TList &, bool recurse=false) const =0
virtual StatusCode getHist(const std::string &name, TH1 *&, size_t index=0) const =0
Return histogram with given name as TH1*, THistSvcMT still owns object.
virtual bool existsTree(const std::string &name) const =0
Check if tree with given name is managed by THistSvcMT.
virtual StatusCode getTTrees(TDirectory *td, TList &, bool recurse=false) const =0
Provides automatic lock/unlock access to a class upon deref of ptr.
This class is used for returning status codes from appropriate routines.