Go to the documentation of this file.
11 #ifndef GAUDISVC_PERSISTENCYSVC_OUTPUTSTREAM_H
12 #define GAUDISVC_PERSISTENCYSVC_OUTPUTSTREAM_H
30 class OutputStreamAgent;
52 this,
"OptItemList", {},
"vector of optional item names to be saved to this stream" };
55 "AlgDependentItemList",
57 "mapping between algorithm names, and a list of items for which, if the "
58 "algorithm in question accepted the event, they should be also stored" };
60 "flag indicating whether data pre-loading should be performed" };
62 "flag indicating whether optional items should be preloaded" };
66 "name of the service managing the data store" };
68 "name of the persistency service capable to write data from the store" };
74 "names of Algorithms that this stream accepts" };
80 "names of Algorithms that this stream requires" };
86 "names of Algorithms that this stream is vetoed by" };
88 "flag to indicate that item consistency should be checked" };
170 #endif // GAUDISVC_PERSISTENCYSVC_OUTPUTSTREAM_H
A small to stream Data I/O.
virtual StatusCode collectObjects()
Collect all objects to be written to the output stream.
Gaudi::Property< bool > m_verifyItems
std::vector< Gaudi::Algorithm * > m_requireAlgs
Vector of Algorithms that this stream requires.
DataStoreItem * m_currentItem
Keep track of the current item.
void clearItems(Items &itms)
Clear item list.
Gaudi::Property< std::vector< std::string > > m_vetoNames
bool m_fireIncidents
should I fire incidents for writing opening/closing etc? in the baseclass, always fire the incidents ...
Items m_optItemList
Vector of optional items to be saved to this stream.
std::string m_outputType
Output type: NEW(NEW,CREATE,WRITE,RECREATE), UPDATE)
int m_events
Number of events written to this output stream.
std::map< std::string, ItemNames > AlgDependentItemNames
Gaudi::Property< ItemNames > m_optItemNames
Gaudi::Property< std::string > m_output
Alias for backward compatibility.
StatusCode finalize() override
Terminate OutputStream.
IDataSelector * selectedObjects()
Return the list of selected objects.
Gaudi::Property< bool > m_doPreLoad
SmartIF< IConversionSvc > m_pConversionSvc
Keep reference to the data conversion service.
Gaudi::Property< std::string > m_outputName
std::vector< Gaudi::Algorithm * > m_vetoAlgs
Vector of Algorithms that this stream is vetoed by.
Gaudi::Property< std::vector< std::string > > m_requireNames
StatusCode initialize() override
Initialize OutputStream.
virtual bool collect(IRegistry *dir, int level)
Store agent's classback.
DataStoreItem * findItem(const std::string &path)
Find single item identified by its path (exact match)
virtual StatusCode connectConversionSvc()
SmartIF< IDataProviderSvc > m_pDataProvider
Keep reference to the data provider service.
AlgDependentItems m_algDependentItems
Items to be saved for specific algorithms.
void clearSelection()
Clear list of selected objects.
Base class from which all concrete algorithm classes should be derived.
std::vector< DataStoreItem * > Items
void addItem(Items &itms, const std::string &descriptor)
Add item to output streamer list.
virtual bool hasInput() const
Tell if the instance has been configured with input items or not.
virtual StatusCode writeObjects()
Select the different objects and write them to file.
Gaudi::Property< AlgDependentItemNames > m_algDependentItemList
SmartIF< IDataManagerSvc > m_pDataManager
Keep reference to the data manager service.
SmartIF< IIncidentSvc > m_incidentSvc
Reference to the incident service.
StatusCode start() override
Start OutputStream.
Items m_itemList
Vector of items to be saved to this stream.
Gaudi::Property< std::string > m_storeName
Gaudi::Property< bool > m_doPreLoadOpt
StatusCode execute() override
Working entry point.
Gaudi::Algorithm * decodeAlgorithm(const std::string &theName)
Decode a single algorithm name.
bool isEventAccepted() const
Test whether this event should be output.
std::map< Gaudi::Algorithm *, Items > AlgDependentItems
Algorithm(std::string name, ISvcLocator *svcloc, std::string version=PACKAGE_VERSION)
Constructor.
std::vector< std::string > ItemNames
void decodeAlgorithms(Gaudi::Property< std::vector< std::string >> &theNames, std::vector< Gaudi::Algorithm * > &theAlgs)
Decode specified list of Algorithms.
Gaudi::Property< ItemNames > m_itemNames
Implementation of property with value of concrete type.
StatusCode collectFromSubTree(DataObject *)
IDataSelector m_objects
Collection of objects being selected.
std::vector< Gaudi::Algorithm * > m_acceptAlgs
Vector of Algorithms that this stream accepts.
Gaudi::Property< std::string > m_persName
Gaudi::Property< std::vector< std::string > > m_acceptNames