16#ifndef ROOT7_RNTupleOptions
17#define ROOT7_RNTupleOptions
25namespace Experimental {
75 virtual std::unique_ptr<RNTupleWriteOptions>
Clone()
const;
118 std::unique_ptr<RNTupleWriteOptions>
Clone()
const override
119 {
return std::make_unique<RNTupleWriteOptionsDaos>(*
this); }
Common user-tunable settings for reading ntuples.
unsigned int GetClusterBunchSize() const
unsigned int fClusterBunchSize
EClusterCache GetClusterCache() const
void SetClusterCache(EClusterCache val)
EClusterCache fClusterCache
void SetClusterBunchSize(unsigned int val)
DAOS-specific user-tunable settings for storing ntuples.
uint32_t GetMaxCageSize() const
const std::string & GetObjectClass() const
void SetObjectClass(const std::string &val)
Set the object class used to generate OIDs that relate to user data.
std::unique_ptr< RNTupleWriteOptions > Clone() const override
void SetMaxCageSize(uint32_t cageSz)
Set the upper bound for page concatenation into cages, in bytes.
~RNTupleWriteOptionsDaos() override=default
uint32_t fMaxCageSize
The maximum cage size is set to the equivalent of 16 uncompressed pages - 1MiB by default.
Common user-tunable settings for storing ntuples.
int GetCompression() const
std::size_t GetApproxUnzippedPageSize() const
void SetCompression(int val)
bool fHasSmallClusters
If set, 64bit index columns are replaced by 32bit index columns.
std::size_t GetApproxZippedClusterSize() const
void SetHasSmallClusters(bool val)
void SetContainerFormat(ENTupleContainerFormat val)
static constexpr std::uint64_t kMaxSmallClusterSize
A maximum size of 512MB still allows for a vector of bool to be stored in a small cluster.
bool GetUseBufferedWrite() const
void SetApproxZippedClusterSize(std::size_t val)
virtual std::unique_ptr< RNTupleWriteOptions > Clone() const
bool GetHasSmallClusters() const
std::size_t GetMaxUnzippedClusterSize() const
std::size_t fApproxZippedClusterSize
Approximation of the target compressed cluster size.
std::size_t fMaxUnzippedClusterSize
Memory limit for committing a cluster: with very high compression ratio, we need a limit on how large...
ENTupleContainerFormat fContainerFormat
std::size_t fApproxUnzippedPageSize
Should be just large enough so that the compression ratio does not benefit much more from larger page...
void SetApproxUnzippedPageSize(std::size_t val)
ENTupleContainerFormat GetContainerFormat() const
void SetCompression(RCompressionSetting::EAlgorithm::EValues algorithm, int compressionLevel)
void SetUseBufferedWrite(bool val)
virtual ~RNTupleWriteOptions()=default
void SetMaxUnzippedClusterSize(std::size_t val)
This file contains a specialised ROOT message handler to test for diagnostic in unit tests.
int CompressionSettings(RCompressionSetting::EAlgorithm::EValues algorithm, int compressionLevel)
EValues
Note: this is only temporarily a struct and will become a enum class hence the name.
@ kUseAnalysis
Use the default analysis setting; fast reading but poor compression ratio.