ATLAS Offline Software
StoreGate/StoreGate/ShallowCopyDecorDeps.h
Go to the documentation of this file.
1 // This file's extension implies that it's C, but it's really -*- C++ -*-.
2 /*
3  * Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration.
4  */
13 #ifndef STOREGATE_SHALLOWCOPYDECORDEPS_H
14 #define STOREGATE_SHALLOWCOPYDECORDEPS_H
15 
16 
19 #include "StoreGate/ReadHandle.h"
21 #include "StoreGate/WriteHandle.h"
24 #include "GaudiKernel/ThreadLocalContext.h"
25 
26 
27 namespace SG {
28 
29 
73 template <class T>
75 {
76 public:
84  template <class OWNER>
85  ShallowCopyDecorDeps (OWNER* owner,
86  const std::string& name,
87  std::initializer_list<std::string> l,
88  const std::string& doc = "");
89 
90 
99  const SG::WriteHandleKey<T>& copyKey,
100  bool used = true);
101 
102 
111  const EventContext& ctx = Gaudi::Hive::currentContext()) const;
112 
113 
114 private:
117 
120 };
121 
122 
123 } // namespace SG
124 
125 
127 
128 
129 #endif // not STOREGATE_SHALLOWCOPYDECORDEPS_H
ReadHandleKeyArray.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
SG::ShallowCopyDecorDeps::ShallowCopyDecorDeps
ShallowCopyDecorDeps(OWNER *owner, const std::string &name, std::initializer_list< std::string > l, const std::string &doc="")
Auto-declaring Property constructor.
used
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
UploadAMITag.l
list l
Definition: UploadAMITag.larcaf.py:158
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
SG::ShallowCopyDecorDeps::initialize
StatusCode initialize(const SG::ReadHandleKey< T > &origKey, const SG::WriteHandleKey< T > &copyKey, bool used=true)
Initialize this property.
WriteHandle.h
Handle class for recording to StoreGate.
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
SG::ShallowCopyDecorDeps::m_readKeys
SG::ReadHandleKeyArray< T > m_readKeys
Keys for the decorations on the original object.
Definition: StoreGate/StoreGate/ShallowCopyDecorDeps.h:116
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
SG::ShallowCopyDecorDeps
Helper to propagate decoration dependencies to a shallow copy.
Definition: StoreGate/StoreGate/ShallowCopyDecorDeps.h:75
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
WriteHandleKeyArray.h
ShallowCopyDecorDeps.icc
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
errorcheck.h
Helpers for checking error return status codes and reporting errors.
SG::ShallowCopyDecorDeps::linkDecors
StatusCode linkDecors(const SG::ReadHandleKey< T > &origKey, const EventContext &ctx=Gaudi::Hive::currentContext()) const
Create alias for the decorations, linked to the shallow copy.
SG::ShallowCopyDecorDeps::m_writeKeys
SG::WriteHandleKeyArray< T > m_writeKeys
Keys for decorations to alias for the shallow copy.
Definition: StoreGate/StoreGate/ShallowCopyDecorDeps.h:119
ReadHandle.h
Handle class for reading from StoreGate.