29class OutputStreamAgent;
39 typedef std::vector<DataStoreItem*>
Items;
51 this,
"OptItemList", {},
"vector of optional item names to be saved to this stream" };
54 "AlgDependentItemList",
56 "mapping between algorithm names, and a list of items for which, if the "
57 "algorithm in question accepted the event, they should be also stored" };
59 "flag indicating whether data pre-loading should be performed" };
61 "flag indicating whether optional items should be preloaded" };
65 "name of the service managing the data store" };
67 "name of the persistency service capable to write data from the store" };
73 "names of Algorithms that this stream accepts" };
79 "names of Algorithms that this stream requires" };
85 "names of Algorithms that this stream is vetoed by" };
87 "flag to indicate that item consistency should be checked" };
162 void addItem(
Items& itms,
const std::string& descriptor );
std::vector< DataObject * > IDataSelector
This is only a placeholder to allow me compiling until the responsible guy does his work!
A DataObject is the base class of any identifiable object on any data store.
Description of the DataStoreItem class.
Base class from which all concrete algorithm classes should be derived.
Algorithm(std::string name, ISvcLocator *svcloc, std::string version=PACKAGE_VERSION)
Constructor.
Implementation of property with value of concrete type.
The interface implemented by the IncidentSvc service.
The IRegistry represents the entry door to the environment any data object residing in a transient da...
A small to stream Data I/O.
Gaudi::Property< std::vector< std::string > > m_requireNames
Items m_optItemList
Vector of optional items to be saved to this stream.
StatusCode execute() override
Working entry point.
Gaudi::Property< bool > m_doPreLoadOpt
Items m_itemList
Vector of items to be saved to this stream.
void clearSelection()
Clear list of selected objects.
std::vector< std::string > ItemNames
DataStoreItem * findItem(const std::string &path)
Find single item identified by its path (exact match)
StatusCode collectFromSubTree(DataObject *)
SmartIF< IConversionSvc > m_pConversionSvc
Keep reference to the data conversion service.
std::vector< DataStoreItem * > Items
int m_events
Number of events written to this output stream.
std::vector< Gaudi::Algorithm * > m_vetoAlgs
Vector of Algorithms that this stream is vetoed by.
std::vector< Gaudi::Algorithm * > m_acceptAlgs
Vector of Algorithms that this stream accepts.
SmartIF< IDataProviderSvc > m_pDataProvider
Keep reference to the data provider service.
StatusCode finalize() override
Terminate OutputStream.
Gaudi::Property< ItemNames > m_optItemNames
Gaudi::Property< std::string > m_outputName
virtual StatusCode collectObjects()
Collect all objects to be written to the output stream.
std::vector< Gaudi::Algorithm * > m_requireAlgs
Vector of Algorithms that this stream requires.
virtual StatusCode connectConversionSvc()
std::map< std::string, ItemNames > AlgDependentItemNames
AlgDependentItems m_algDependentItems
Items to be saved for specific algorithms.
DataStoreItem * m_currentItem
Keep track of the current item.
Gaudi::Property< ItemNames > m_itemNames
Gaudi::Property< std::vector< std::string > > m_acceptNames
IDataSelector m_objects
Collection of objects being selected.
SmartIF< IDataManagerSvc > m_pDataManager
Keep reference to the data manager service.
IDataSelector * selectedObjects()
Return the list of selected objects.
bool m_fireIncidents
should I fire incidents for writing opening/closing etc?
virtual StatusCode writeObjects()
Select the different objects and write them to file.
bool isEventAccepted() const
Test whether this event should be output.
StatusCode initialize() override
Initialize OutputStream.
void decodeAlgorithms(Gaudi::Property< std::vector< std::string > > &theNames, std::vector< Gaudi::Algorithm * > &theAlgs)
Decode specified list of Algorithms.
void clearItems(Items &itms)
Clear item list.
SmartIF< IIncidentSvc > m_incidentSvc
Reference to the incident service.
Gaudi::Property< bool > m_doPreLoad
Gaudi::Property< std::string > m_persName
Gaudi::Property< bool > m_verifyItems
virtual bool collect(IRegistry *dir, int level)
Store agent's classback.
Gaudi::Property< std::string > m_output
Gaudi::Algorithm * decodeAlgorithm(const std::string &theName)
Decode a single algorithm name.
Gaudi::Property< AlgDependentItemNames > m_algDependentItemList
virtual bool hasInput() const
Tell if the instance has been configured with input items or not.
std::map< Gaudi::Algorithm *, Items > AlgDependentItems
void addItem(Items &itms, const std::string &descriptor)
Add item to output streamer list.
Gaudi::Property< std::string > m_storeName
Gaudi::Property< std::vector< std::string > > m_vetoNames
std::string m_outputType
Output type: NEW(NEW,CREATE,WRITE,RECREATE), UPDATE)
StatusCode start() override
Start OutputStream.
Small smart pointer class with automatic reference counting for IInterface.
This class is used for returning status codes from appropriate routines.