Provides a mapping from one or several join field values to an entry index.
Definition at line 50 of file RNTupleJoinTable.hxx.
Classes | |
struct | RCombinedJoinFieldValue |
Container for the combined hashes of join field values. More... | |
struct | RCombinedJoinFieldValueHash |
Hash combining the individual join field value hashes from RCombinedJoinFieldValue. More... | |
Public Member Functions | |
REntryMapping (RPageSource &pageSource, const std::vector< std::string > &joinFieldNames) | |
Create a new entry mapping. | |
const std::vector< ROOT::NTupleSize_t > * | GetEntryIndexes (std::vector< void * > valuePtrs) const |
Get the entry indexes for this entry mapping. | |
Private Attributes | |
std::vector< std::string > | fJoinFieldNames |
Names of the join fields used for the mapping to their respective entry indexes. | |
std::vector< std::size_t > | fJoinFieldValueSizes |
The size (in bytes) for each join field, corresponding to fJoinFieldNames . | |
std::unordered_map< RCombinedJoinFieldValue, std::vector< ROOT::NTupleSize_t >, RCombinedJoinFieldValueHash > | fMapping |
The mapping itself. | |
ROOT::Experimental::Internal::RNTupleJoinTable::REntryMapping::REntryMapping | ( | RPageSource & | pageSource, |
const std::vector< std::string > & | joinFieldNames ) |
Create a new entry mapping.
[in] | pageSource | The page source of the RNTuple with the entries to map. |
[in] | joinFieldNames | Names of the join fields to use in the mapping. |
Definition at line 35 of file RNTupleJoinTable.cxx.
const std::vector< ROOT::NTupleSize_t > * ROOT::Experimental::Internal::RNTupleJoinTable::REntryMapping::GetEntryIndexes | ( | std::vector< void * > | valuePtrs | ) | const |
Get the entry indexes for this entry mapping.
Definition at line 90 of file RNTupleJoinTable.cxx.
|
private |
Names of the join fields used for the mapping to their respective entry indexes.
Definition at line 86 of file RNTupleJoinTable.hxx.
|
private |
The size (in bytes) for each join field, corresponding to fJoinFieldNames
.
This information is stored to be able to properly cast incoming void pointers to the join field values in GetEntryIndexes
.
Definition at line 90 of file RNTupleJoinTable.hxx.
|
private |
The mapping itself.
Maps field values (or combinations thereof in case the join key is composed of multiple fields) to their respective entry numbers.
Definition at line 83 of file RNTupleJoinTable.hxx.