13#ifndef ROOT_RNTupleUtils
14#define ROOT_RNTupleUtils
47 return std::unique_ptr<T[]>(
new T[
size]);
57 std::vector<std::unique_ptr<std::string>>
fStrings;
60 static bool Less(
const std::unique_ptr<std::string> &
a,
const std::string_view &
b) {
return *
a <
b; }
72 const std::string *
Intern(std::string_view str);
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Used for string interning of repeated type names, field names, etc.
const std::string * Intern(std::string_view str)
Searches for str in the pool.
RStringPool(RStringPool &&other)=default
static bool Less(const std::unique_ptr< std::string > &a, const std::string_view &b)
RStringPool & operator=(RStringPool &&other)=default
RStringPool(const RStringPool &other)=delete
RStringPool & operator=(const RStringPool &other)=delete
std::vector< std::unique_ptr< std::string > > fStrings
A log configuration for a channel, e.g.
RResult< void > EnsureValidNameForRNTuple(std::string_view name, std::string_view where)
Check whether a given string is a valid name according to the RNTuple specification.
ROOT::RLogChannel & NTupleLog()
Log channel for RNTuple diagnostics.
std::unique_ptr< T[]> MakeUninitArray(std::size_t size)
Make an array of default-initialized elements.
auto MakeAliasedSharedPtr(T *rawPtr)