ATLAS Offline Software
DebugView.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef ATHVIEWS_DEBUGVIEW_H
8 #define ATHVIEWS_DEBUGVIEW_H 1
9 
10 #include "AthViews/SimpleView.h"
12 #include "tbb/concurrent_unordered_set.h"
13 
14 namespace SG {
15  class DataProxy;
16  class View;
17 }
18 class DataObject;
19 
29 {
30  public:
32 
33  DebugView() = delete;
34  DebugView( std::string const& Name, bool AllowFallThrough = true, std::string const& storeName = "StoreGateSvc" );
35  virtual ~DebugView();
36 
37 
41  virtual void linkParent( const IProxyDict* parent );
42 
43 
47  virtual SG::DataProxy* proxy(const CLID& id, const std::string& key) const;
48 
49  virtual SG::DataProxy* findProxy( const CLID& id, const std::string& key, const bool allowFallThrough ) const;
50 
51  virtual SG::DataProxy* proxy(const void* const pTransient) const;
52 
53 
58  const std::string& key,
59  bool allowMods,
60  bool returnExisting);
61 
62 
63  protected:
64 
65  // List of data loaded via fallthrough
66  mutable tbb::concurrent_unordered_set< std::string > m_fallList ATLAS_THREAD_SAFE;
67 };
68 
69 #endif // ATHVIEW_DEBUGVIEW_H
SimpleView.h
DebugView::ATLAS_THREAD_SAFE
tbb::concurrent_unordered_set< std::string > m_fallList ATLAS_THREAD_SAFE
Definition: DebugView.h:66
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
DebugView::proxy
virtual SG::DataProxy * proxy(const CLID &id, const std::string &key) const
Definition: DebugView.cxx:45
IProxyDict
A proxy dictionary.
Definition: AthenaKernel/AthenaKernel/IProxyDict.h:51
DebugView::DeclareInterfaceID
DeclareInterfaceID(DebugView, 2, 0)
SimpleView
Very simple pass-through implementation of IProxyDict.
Definition: SimpleView.h:35
DebugView::DebugView
DebugView()=delete
DataProxy
DataProxy provides the registry services for StoreGate.
Definition: DataProxy.h:31
test_pyathena.parent
parent
Definition: test_pyathena.py:15
AthMessaging
Class to provide easy MsgStream access and capabilities.
Definition: AthMessaging.h:55
DebugView
Very simple pass-through implementation of IProxyDict.
Definition: DebugView.h:29
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
DebugView::~DebugView
virtual ~DebugView()
Definition: DebugView.cxx:15
Name
JetDumper::Name Name
Definition: JetDumper.cxx:19
DebugView::linkParent
virtual void linkParent(const IProxyDict *parent)
Definition: DebugView.cxx:24
AthMessaging.h
SG::DataObjectSharedPtr
Smart pointer to manage DataObject reference counts.
Definition: DataObjectSharedPtr.h:46
python.PyAthena.obj
obj
Definition: PyAthena.py:135
SG::DataProxy
Definition: DataProxy.h:44
DebugView::findProxy
virtual SG::DataProxy * findProxy(const CLID &id, const std::string &key, const bool allowFallThrough) const
Definition: DebugView.cxx:50
DebugView::recordObject
virtual SG::DataProxy * recordObject(SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting)
Definition: DebugView.cxx:133
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37