7#ifndef ATHENAROOTCOMPS_ROOTNTUPLEOUTPUTSTREAM_H
8#define ATHENAROOTCOMPS_ROOTNTUPLEOUTPUTSTREAM_H
18#include "GaudiKernel/IDataSelector.h"
19#include "GaudiKernel/ClassID.h"
20#include "GaudiKernel/ServiceHandle.h"
21#include "GaudiKernel/ToolHandle.h"
22#include "GaudiKernel/IIncidentListener.h"
47 :
virtual public IIncidentListener,
53 typedef std::vector<SG::DataProxy*>
Items;
106 typedef std::vector<std::pair<std::string, std::string> >
TypeKeyPairs;
120 virtual StatusCode
write();
132 void handle(
const Incident& incident);
std::vector< SG::FolderItem > m_selection
list of selected proxies.
StringProperty m_writingTool
Name of the OutputStreamTool used for writing.
virtual StatusCode initialize()
void clearSelection()
Clear list of selected objects.
IDataSelector * selectedObjects()
Return the list of selected objects.
bool m_dynamicItemList
dynamic output itemlist: if enabled rediscover object list to be written out at each event otherwise:...
std::vector< SG::DataProxy * > Items
virtual StatusCode write()
Stream the data.
bool m_provideDef
set to true to allow defaults being provided for non-existent data objects.
bool m_itemListFromTool
set to write out everything from input DataHeader
ServiceHandle< StoreGateSvc > m_dataStore
handle to the StoreGateSvc store where the data we want to write out resides
void collectAllObjects()
Collect data objects for output streamer list.
void handle(const Incident &incident)
Incident service handle listening for MetaDataStop.
IDataSelector m_objects
Collection of objects beeing selected.
virtual StatusCode finalize()
bool m_persToPers
set to true to allow data objects being copied persistent to persistent (without SG retrieve).
StringArrayProperty m_itemList
Vector of item names.
virtual StatusCode execute()
RootNtupleOutputStream(const std::string &name, ISvcLocator *pSvcLocator)
Standard algorithm Constructor.
bool m_forceRead
set to true to force read of data objects in item list
bool m_writeOnExecute
set to true to trigger streaming of data on execute()
std::string m_persName
Name of the persistency service capable to write data from the store.
StringProperty m_processTag
tag of processing stage:
ToolHandle< IAthenaOutputStreamTool > m_streamer
pointer to AthenaOutputStreamTool
ToolHandleArray< IAthenaOutputTool > m_helperTools
vector of AlgTools that that are executed by this stream
ServiceHandle< IClassIDSvc > IClassIDSvc_t
bool m_writeOnFinalize
set to true to trigger streaming of data on finalize()
std::string m_outputName
Name of the output file.
int m_events
Number of events written to this output stream.
std::vector< unsigned int > m_exemptPersToPers
std::vector< std::pair< std::string, std::string > > TypeKeyPairs
DataProxy provides the registry services for StoreGate.
FilteredAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Standard algorithm Constructor.
The Athena Transient Store API.
Some weak symbol referencing magic... These are declared in AthenaKernel/getMessageSvc....