FairRoot
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FairLinkManager.h
Go to the documentation of this file.
1 #ifndef FAIR_LINK_MANAGER_H
2 #define FAIR_LINK_MANAGER_H
3 
4 #include <Rtypes.h> // for Bool_t, Int_t, UInt_t, etc
5 #include <TMCtls.h> // for multi-threading
6 #include <TObject.h> // for TObject
7 #include <set> // for set of branch types to ignore
8 
9 class FairLogger;
10 
11 class FairLinkManager : public TObject
12 {
13  public:
17  virtual ~FairLinkManager();
18 
20  static FairLinkManager* Instance();
21  virtual void AddIgnoreType(Int_t type);
22  virtual Bool_t IsIgnoreType(Int_t type) const;
24 
25  virtual void AddIncludeType(Int_t type);
26 
28  std::set<Int_t> GetIgnoreTypes() const { return fIgnoreTypes; }
29 
30  private:
33  FairLinkManager& operator=(const FairLinkManager&);
37  std::set<Int_t> fIgnoreTypes;
38  Bool_t fIgnoreSetting;
39 
41  static TMCThreadLocal FairLinkManager* fgInstance;
42 
43  FairLogger* fLogger;
44 
45  ClassDef(FairLinkManager, 1);
46 };
47 
48 #endif // FAIR_ROOT_MANAGER_H
virtual void AddIncludeType(Int_t type)
static FairLinkManager * Instance()
virtual Bool_t IsIgnoreType(Int_t type) const
virtual void AddIgnoreType(Int_t type)
std::set< Int_t > GetIgnoreTypes() const
virtual ~FairLinkManager()