|
| ClassDefNV (CTF, 1) |
|
void | setHeader (const CTFHeader &h) |
|
const CTFHeader & | getHeader () const |
|
CTFHeader & | getHeader () |
|
std::shared_ptr< CTFHeader > | cloneHeader () const |
|
const auto & | getRegistry () const |
|
const auto & | getMetadata () const |
|
auto & | getMetadata (int i) const |
|
auto & | getBlock (int i) const |
|
dictionaryType< source_T > | getDictionary (int i, ANSHeader ansVersion=ANSVersionUnspecified) const |
|
void | setANSHeader (const ANSHeader &h) |
|
const ANSHeader & | getANSHeader () const |
|
ANSHeader & | getANSHeader () |
|
bool | empty () const |
| check if empty and valid
|
|
bool | flat () const |
| check if flat and valid
|
|
void | clear () |
| clear itself
|
|
size_t | compactify () |
| Compactify by eliminating empty space.
|
|
size_t | size () const |
| total allocated size in bytes
|
|
size_t | getFreeSize () const |
| size remaining for additional data
|
|
void | copyToFlat (V &vec) |
| copy itself to flat buffer created on the fly from the vector
|
|
void | copyToFlat (void *base) |
| copy itself to flat buffer created on the fly at the provided pointer. The destination block should be at least of size estimateSize()
|
|
size_t | appendToTree (TTree &tree, const std::string &name) const |
| attach to tree
|
|
void | readFromTree (TTree &tree, const std::string &name, int ev=0) |
| read from tree to non-flat object
|
|
o2::ctf::CTFIOSize | encode (const VE &src, int slot, uint8_t symbolTablePrecision, Metadata::OptStore opt, buffer_T *buffer=nullptr, const std::any &encoderExt={}, float memfc=1.f) |
| encode vector src to bloc at provided slot
|
|
o2::ctf::CTFIOSize | encode (const input_IT srcBegin, const input_IT srcEnd, int slot, uint8_t symbolTablePrecision, Metadata::OptStore opt, buffer_T *buffer=nullptr, const std::any &encoderExt={}, float memfc=1.f) |
| encode vector src to bloc at provided slot
|
|
o2::ctf::CTFIOSize | decode (container_T &dest, int slot, const std::any &decoderExt={}) const |
| decode block at provided slot to destination vector (will be resized as needed)
|
|
o2::ctf::CTFIOSize | decode (D_IT dest, int slot, const std::any &decoderExt={}) const |
| decode block at provided slot to destination pointer, the needed space assumed to be available
|
|
CTFIOSize | decode (D_IT dest, int slot, const std::any &decoderExt) const |
|
void | print (const std::string &prefix="", int verbosity=1) const |
| print itself
|
|
void | dump (const std::string &prefix="", int ncol=20) const |
|
CTFIOSize | encodeRANSV1External (const input_IT srcBegin, const input_IT srcEnd, int slot, const std::any &encoderExt, buffer_T *buffer, double_t sizeEstimateSafetyFactor) |
|
CTFIOSize | encodeRANSV1Inplace (const input_IT srcBegin, const input_IT srcEnd, int slot, Metadata::OptStore opt, buffer_T *buffer, double_t sizeEstimateSafetyFactor) |
|
|
static constexpr int | getNBlocks () |
|
static size_t | getMinAlignedSize () |
|
static auto | get (void *head) |
| cast arbitrary buffer head to container class. Head is supposed to respect the alignment
|
|
static auto | get (const void *head) |
|
static auto | getImage (const void *newHead) |
| get const image of the container wrapper, with pointers in the image relocated to new head
|
|
static auto | create (void *head, size_t sz) |
| create container from arbitrary buffer of predefined size (in bytes!!!). Head is supposed to respect the alignment
|
|
static auto | create (VD &v) |
| create container from vector. Head is supposed to respect the alignment
|
|
static size_t | estimateBlockSize (int n) |
| estimate free size needed to add new block
|
|
static auto | expand (buffer_T &buffer, size_t newsizeBytes) |
| expand the storage to new size in bytes
|
|
static void | readFromTree (VD &vec, TTree &tree, const std::string &name, int ev=0) |
| read from tree to destination buffer vector
|
|
static std::vector< char > | createDictionaryBlocks (const std::vector< rans::DenseHistogram< int32_t > > &vfreq, const std::vector< Metadata > &prbits) |
| create a special EncodedBlocks containing only dictionaries made from provided vector of frequency tables
|
|
void | init (size_t sz) |
| setup internal structure and registry for given buffer size (in bytes!!!)
|
|
size_t | estimateSize () const |
|
size_t | estimateSizeFromMetadata () const |
| do the same using metadata info
|
|
void | fillFlatCopy (EncodedBlocks &dest) const |
| Create its own flat copy in the destination empty flat object.
|
|
auto | expandStorage (size_t slot, size_t nElemets, T *buffer=nullptr) -> decltype(auto) |
|
ANSHeader | checkANSVersion (ANSHeader ansVersion) const |
|
o2::ctf::CTFIOSize | entropyCodeRANSCompat (const input_IT srcBegin, const input_IT srcEnd, int slot, uint8_t symbolTablePrecision, buffer_T *buffer=nullptr, const std::any &encoderExt={}, float memfc=1.f) |
|
o2::ctf::CTFIOSize | entropyCodeRANSV1 (const input_IT srcBegin, const input_IT srcEnd, int slot, Metadata::OptStore opt, buffer_T *buffer=nullptr, const std::any &encoderExt={}, float memfc=1.f) |
|
o2::ctf::CTFIOSize | encodeRANSV1External (const input_IT srcBegin, const input_IT srcEnd, int slot, const std::any &encoderExt, buffer_T *buffer=nullptr, double_t sizeEstimateSafetyFactor=1) |
|
o2::ctf::CTFIOSize | encodeRANSV1Inplace (const input_IT srcBegin, const input_IT srcEnd, int slot, Metadata::OptStore opt, buffer_T *buffer=nullptr, double_t sizeEstimateSafetyFactor=1) |
|
o2::ctf::CTFIOSize | pack (const input_IT srcBegin, const input_IT srcEnd, int slot, rans::Metrics< typename std::iterator_traits< input_IT >::value_type > metrics, buffer_T *buffer=nullptr) |
|
o2::ctf::CTFIOSize | pack (const input_IT srcBegin, const input_IT srcEnd, int slot, buffer_T *buffer=nullptr) |
|
o2::ctf::CTFIOSize | store (const input_IT srcBegin, const input_IT srcEnd, int slot, Metadata::OptStore opt, buffer_T *buffer=nullptr) |
|
CTFIOSize | decodeCompatImpl (dst_IT dest, int slot, const std::any &decoderExt) const |
|
CTFIOSize | decodeRansV1Impl (dst_IT dest, int slot, const std::any &decoderExt) const |
|
CTFIOSize | decodeUnpackImpl (dst_IT dest, int slot) const |
|
CTFIOSize | decodeCopyImpl (dst_IT dest, int slot) const |
|
| ClassDefNV (EncodedBlocks, 3) |
|
static void | relocate (const char *oldHead, char *newHead, char *wrapper, size_t newsize=0) |
|
static size_t | fillTreeBranch (TTree &tree, const std::string &brname, D &dt, int compLevel, int splitLevel=99) |
| add and fill single branch
|
|
static bool | readTreeBranch (TTree &tree, const std::string &brname, D &dt, int ev=0) |
| read single branch
|
|
Registry | mRegistry |
|
ANSHeader | mANSHeader |
|
CTFHeader | mHeader |
|
std::array< Metadata, N > | mMetadata |
|
std::array< Block< uint32_t >, N > | mBlocks |
|
static constexpr Metadata::OptStore | FallbackStorageType |
| this is in fact stored, but to overcome TBuffer limits we have to define the branches per block!!!
|
|
wrapper for the Entropy-encoded triggers and cells of the TF
Definition at line 44 of file CTF.h.