Skip to content
Snippets Groups Projects
Commit 7eeff5a7 authored by Danilo Piparo's avatar Danilo Piparo
Browse files

[TDF] Support caching of columns which are C arrays

an array of type T* is stored in the returned column as
vector<T>: the ownership has to be transferred to the
"extracted column".

To implement this feature, these changes were applied:
- The Take action has been restructured in order to detect the
presence of the array_view<T> type as column type. The changes
are mainly confined to transformation of types at compile times.
- The TakeHelper template and its specialisations have been modified.
Now we not only take into account the case of returned collection
equal to to vector for optimisation, but also the case where the
column in the dataset is a C style array. The specialisations of the
TakeHelper template are now 4.
In addition, a bug was fixed: the Exec function was accepting the
value of the column for a certain entry as a value, therewith potentially
triggering expensive copies.
- Some static utilities have been added in the ROOT::Internal::TDF
namespace to factor out verbose operations linked to the points mentioned
above.
parent 60988c2e
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment