11#ifndef ROOT_RDFBOOKEDCUSTOMCOLUMNS
12#define ROOT_RDFBOOKEDCUSTOMCOLUMNS
24class RCustomColumnBase;
Encapsulates the columns defined by the user.
RBookedCustomColumns & operator=(const RBookedCustomColumns &)=default
Copy-assignment operator for RBookedCustomColumns.
std::vector< std::string > ColumnNames_t
RBookedCustomColumns(RBookedCustomColumns &&)=default
Move-ctor for RBookedCustomColumns.
RCustomColumnBasePtrMapPtr_t fCustomColumns
void AddColumn(const std::shared_ptr< RDFDetail::RCustomColumnBase > &column, std::string_view name)
Internally it recreates the map with the new column, and swaps with the old one.
std::shared_ptr< const ColumnNames_t > ColumnNamesPtr_t
RBookedCustomColumns(RCustomColumnBasePtrMapPtr_t customColumns, ColumnNamesPtr_t customColumnNames)
Creates the object starting from the provided maps.
ColumnNames_t GetNames() const
Returns the list of the names of the defined columns.
std::map< std::string, std::shared_ptr< RDFDetail::RCustomColumnBase > > RCustomColumnBasePtrMap_t
ColumnNamesPtr_t fCustomColumnsNames
bool HasName(std::string_view name) const
Check if the provided name is tracked in the names list.
const RCustomColumnBasePtrMap_t & GetColumns() const
Returns the list of the pointers to the defined columns.
void AddName(std::string_view name)
Internally it recreates the map with the new column name, and swaps with the old one.
RBookedCustomColumns()
Creates a new wrapper with empty maps.
RBookedCustomColumns(const RBookedCustomColumns &)=default
Copy-ctor for RBookedCustomColumns.
std::shared_ptr< const RCustomColumnBasePtrMap_t > RCustomColumnBasePtrMapPtr_t
basic_string_view< char > string_view
Namespace for new ROOT classes and functions.