ATLAS Offline Software
|
Create ThinningCache for a given stream. More...
#include <ThinningCacheTool.h>
Public Member Functions | |
virtual StatusCode | initialize () override |
Gaudi initialize method. More... | |
virtual StatusCode | postInitialize () override |
Called at the end of initialize. More... | |
virtual StatusCode | preExecute () override |
Called at the beginning of execute. More... | |
virtual StatusCode | preStream () override |
Called before actually streaming objects. More... | |
virtual StatusCode | postExecute () override |
Called at the end of execute. More... | |
virtual StatusCode | preFinalize () override |
Called at the beginning of finalize. More... | |
Private Member Functions | |
std::string | wantedKey (const std::string &key) const |
Test if a thinning decision object is for our stream. More... | |
Private Attributes | |
StringProperty | m_streamName { this, "StreamName", "", "Name of the stream being written." } |
Name of the stream for this tool. More... | |
ServiceHandle< ITrigNavigationThinningSvc > | m_trigNavigationThinningSvc { this, "TrigNavigationThinningSvc", "", "Service to use for TrigNavigation thinning (optional)." } |
Optional TrigNavigation thinning service to use. More... | |
SG::ThinningCache | m_cache |
Thinning cache instance for this stream. More... | |
Create ThinningCache for a given stream.
Hooks in this class are called before and after output is written for a given stream. The preExecute
hook will query the event store for any thinning to be done for the stream, build a ThinningCache object for all of these, and install it in the current EventContext. The postExecute
hook will then clear the cache from the EventContext.
Definition at line 36 of file ThinningCacheTool.h.
|
overridevirtual |
|
overridevirtual |
Called at the end of execute.
Remove ThinningCache from the EventContext and clear the cache instance.
Definition at line 140 of file ThinningCacheTool.cxx.
|
overridevirtual |
|
overridevirtual |
Called at the beginning of execute.
A no-op for now.
Definition at line 48 of file ThinningCacheTool.cxx.
|
overridevirtual |
Called at the beginning of finalize.
A no-op here.
Definition at line 156 of file ThinningCacheTool.cxx.
|
overridevirtual |
Called before actually streaming objects.
Find all thinning requests for this stream, build the ThinningCache
, and install it in the current EventContext
.
Definition at line 59 of file ThinningCacheTool.cxx.
|
private |
Test if a thinning decision object is for our stream.
key | The SG key of the ThinningDecision object. |
If this thinning decision is for our stream, then return the SG key of the object being thinned. Otherwise, return an empty string.
Definition at line 169 of file ThinningCacheTool.cxx.
|
private |
Thinning cache instance for this stream.
Definition at line 103 of file ThinningCacheTool.h.
|
private |
Name of the stream for this tool.
Definition at line 93 of file ThinningCacheTool.h.
|
private |
Optional TrigNavigation thinning service to use.
Definition at line 98 of file ThinningCacheTool.h.