81 std::unique_ptr<Gaudi::NTuple::DiskBuffer::Writer>
writer;
unsigned int CLID
Class ID definition.
A DataObject is the base class of any identifiable object on any data store.
NTuple interface class definition.
Opaque address interface definition.
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
StatusCode load(TTree *tree, INTuple *&refpObject) override
Create the transient representation of an object.
StatusCode book(const std::string &desc, INTuple *pObject, TTree *&tree) override
Book the N tuple.
StatusCode readData(TTree *rtree, INTuple *pObject, long ievt) override
Read N tuple data.
StatusCode finalize() override
std::size_t m_diskBufferBlockSize
Buffered * buffered(INTuple *nt)
StatusCode createTree(const std::string &desc, INTuple *nt, const Layout &layout, TTree *&rtree)
std::map< INTuple *, Buffered > m_buffered
StatusCode writeBuffered(Buffered &b, INTuple *nt)
std::mutex m_mutex
guards m_buffered, m_replayed and m_bufferDir
StatusCode initialize() override
StatusCode replay(IOpaqueAddress *pAddr, INTuple *nt, Buffered &b)
RCWNTupleCnv(ISvcLocator *svc)
Standard constructor.
std::filesystem::path m_bufferDir
bool m_diskBuffer
NTupleSvc.DiskBuffer* of the service owning this stream, read once in initialize().
static const CLID & classID()
Inquire class type.
std::string m_diskBufferDirectory
std::set< INTuple * > m_replayed
tuples whose tree has been built; cannot be written again
StatusCode writeData(TTree *rtree, INTuple *pObject) override
Write N tuple data.
StatusCode bufferDirectory(std::filesystem::path &dir)
bool replayed(INTuple *nt)
StatusCode bookBuffered(const std::string &desc, INTuple *nt, Layout layout)
Layout analyse(const INTuple &nt)
bool m_bookDirect
force the columnar path in book()
StatusCode updateRep(IOpaqueAddress *pAddr, DataObject *pObj) override
Write the TTree; for a disk-buffered tuple, first build it from the buffer file.
RNTupleCnv(ISvcLocator *svc, const CLID &clid)
Standard constructor.
This class is used for returning status codes from appropriate routines.
std::unique_ptr< Gaudi::NTuple::DiskBuffer::Writer > writer
std::string leaflist
ROOT leaf list, e.g. "x[n][3]/F".
long unitBytes
bytes per unit of the index
std::string name
variable name (leaf name)
std::string block
block name
long indexPos
position in items() of the counting item, -1 if fixed size
long maxUnits
bufLen / unitBytes
How the items of a tuple map onto the staging buffer and the TTree branches.
std::vector< Item > items