evio
5.3
|
Implements evioChannel functionality for I/O to and from files. More...
#include <evioFileChannel.hxx>
Public Member Functions | |
evioFileChannel (const string &fileName, const string &mode="r", int size=1000000) | |
Constructor opens channel for reading or writing. More... | |
evioFileChannel (const string &fileName, evioDictionary *dict, const string &mode="r", int size=1000000) | |
Constructor opens channel for reading or writing, dictionary specified. More... | |
evioFileChannel (const string &fileName, evioDictionary *dict, const uint32_t *firstEvent, const string &mode="w", int size=1000000) | |
Constructor opens channel for reading or writing to file with dictionary specified, If writing, the first event (an event which gets written once in each split file) may also be specified. More... | |
virtual | ~evioFileChannel () |
Destructor closes file, deletes internal buffer, deletes dictionary one created from file. More... | |
void | open () |
Opens channel for reading or writing. More... | |
bool | read () |
Reads from file into internal buffer. More... | |
bool | read (uint32_t *myEventBuf, int length) |
Reads from file into user-supplied buffer. More... | |
bool | readAlloc (uint32_t **buffer, uint32_t *bufLen) |
Reads from file and allocates buffer as needed. More... | |
bool | readNoCopy () |
Reads from file using no copy mechanism. More... | |
bool | readRandom (uint32_t bufferNumber) |
Reads buffer from file given buffer number. More... | |
void | write () |
Writes to file from internal buffer. More... | |
void | write (const uint32_t *myEventBuf) |
Writes to file from user-supplied buffer. More... | |
void | write (const evioChannel &channel) |
Writes to file from internal buffer of another evioChannel object. More... | |
void | write (const evioChannel *channel) |
Writes from internal buffer of another evioChannel object. More... | |
void | write (const evioChannelBufferizable &o) |
Writes from contents of evioChannelBufferizable object. More... | |
void | write (const evioChannelBufferizable *o) |
Writes from contents of evioChannelBufferizable object. More... | |
void | close () |
Closes channel. More... | |
int | ioctl (const string &request, void *argp) |
For getting and setting evIoctl parameters. More... | |
const uint32_t * | getBuffer () const |
Returns pointer to internal channel buffer. More... | |
int | getBufSize () const |
Returns internal channel buffer size. More... | |
const uint32_t * | getNoCopyBuffer () const |
Returns pointer to no copy buffer. More... | |
const uint32_t * | getRandomBuffer () const |
Returns pointer to random buffer. More... | |
void | getRandomAccessTable (uint32_t ***const table, uint32_t *len) const |
Returns random access table. More... | |
string | getFileName () const |
Returns channel file name. More... | |
string | getMode () const |
Returns channel I/O mode. More... | |
string | getFileXMLDictionary () const |
Returns XML dictionary read in from file. More... | |
![]() | |
evioChannel () | |
evioChannel (evioDictionary *dict) | |
virtual | ~evioChannel () |
virtual const evioDictionary * | getDictionary () const |
Additional Inherited Members | |
![]() | |
evioDictionary * | dictionary |
Implements evioChannel functionality for I/O to and from files.
Basically a wrapper around the original evio C library.
evioFileChannel::evioFileChannel | ( | const string & | f, |
const string & | m = "r" , |
||
int | size = 1000000 |
||
) |
Constructor opens channel for reading or writing.
f | File name |
m | I/O mode, "r", "ra", "w", "a", or "s" |
size | Internal buffer size |
evioFileChannel::evioFileChannel | ( | const string & | f, |
evioDictionary * | dict, | ||
const string & | m = "r" , |
||
int | size = 1000000 |
||
) |
Constructor opens channel for reading or writing, dictionary specified.
f | File name |
dict | Dictionary |
m | I/O mode, "r", "ra", "w", "a", or "s" |
size | Internal buffer size |
evioFileChannel::evioFileChannel | ( | const string & | f, |
evioDictionary * | dict, | ||
const uint32_t * | firstEvent, | ||
const string & | m = "w" , |
||
int | size = 1000000 |
||
) |
Constructor opens channel for reading or writing to file with dictionary specified, If writing, the first event (an event which gets written once in each split file) may also be specified.
f | File name |
dict | Dictionary |
firstEvent | buffer containing first event |
m | I/O mode, "r", "ra", "w", "a", or "s" |
size | Internal buffer size |
|
virtual |
Destructor closes file, deletes internal buffer, deletes dictionary one created from file.
References close(), and evio::evioChannel::dictionary.
|
virtual |
|
virtual |
Returns pointer to internal channel buffer.
Implements evio::evioChannel.
|
virtual |
Returns internal channel buffer size.
Implements evio::evioChannel.
string evioFileChannel::getFileName | ( | ) | const |
Returns channel file name.
string evioFileChannel::getFileXMLDictionary | ( | ) | const |
Returns XML dictionary read in from file.
string evioFileChannel::getMode | ( | ) | const |
Returns channel I/O mode.
|
virtual |
|
virtual |
Returns random access table.
table | Pointer to table |
len | Length of table |
Reimplemented from evio::evioChannel.
|
virtual |
Returns pointer to random buffer.
Reimplemented from evio::evioChannel.
|
virtual |
For getting and setting evIoctl parameters.
request | String containing evIoctl parameters |
argp | Additional evIoctl parameter |
Implements evio::evioChannel.
|
virtual |
Opens channel for reading or writing.
For read, user-supplied dictionary overrides one found in file.
Implements evio::evioChannel.
References evio::evioChannel::dictionary, and evio::evioDictionary::getDictionaryXML().
|
virtual |
Reads from file into internal buffer.
Implements evio::evioChannel.
|
virtual |
Reads from file into user-supplied buffer.
myBuf | User-supplied buffer. @parem length Length of buffer in 4-byte words. |
Implements evio::evioChannel.
|
virtual |
Reads from file and allocates buffer as needed.
buffer | Pointer to pointer to allocated buffer. |
len | Length of allocated buffer in 4-byte words. |
Note: user MUST free the allocated buffer!
Implements evio::evioChannel.
|
virtual |
Reads from file using no copy mechanism.
Implements evio::evioChannel.
|
virtual |
Reads buffer from file given buffer number.
bufferNumber | Buffer to return |
Reimplemented from evio::evioChannel.
|
virtual |
|
virtual |
Writes to file from internal buffer of another evioChannel object.
channel | Channel object |
Implements evio::evioChannel.
References evio::evioChannel::getBuffer().
|
virtual |
Writes from internal buffer of another evioChannel object.
channel | Pointer to channel object |
Implements evio::evioChannel.
References write().
|
virtual |
Writes from contents of evioChannelBufferizable object.
o | evioChannelBufferizable object that can serialze to buffer |
Implements evio::evioChannel.
References evio::evioChannelBufferizable::toEVIOBuffer(), and write().
|
virtual |
Writes from contents of evioChannelBufferizable object.
o | Pointer to evioChannelBufferizable object that can serialize to buffer |
Implements evio::evioChannel.
References write().
|
virtual |
Writes to file from user-supplied buffer.
myBuf | Buffer containing event |
Implements evio::evioChannel.