Skip to content

Commit e0b0d16

Browse files
eguiraudbluehood
authored andcommitted
[TDF] Template TInterface over the derived TDataSource type
This will allow, in the future, to optimize loading of entries from TDataSources: `GetColumnReaders` does not have to pass through virtual calls to `TDataSource` anymore, which means that concrete TDS's can provide custom, possibly lazy column readers which TInterface will use directly.
1 parent d598e48 commit e0b0d16

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

tree/treeplayer/inc/ROOT/TDFInterface.hxx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,15 +97,15 @@ namespace TTraits = ROOT::TypeTraits;
9797
* \brief The public interface to the TDataFrame federation of classes
9898
* \tparam T One of the "node" base types (e.g. TLoopManager, TFilterBase). The user never specifies this type manually.
9999
*/
100-
template <typename Proxied>
100+
template <typename Proxied, typename DataSource = void>
101101
class TInterface {
102102
using ColumnNames_t = TDFDetail::ColumnNames_t;
103103
using TFilterBase = TDFDetail::TFilterBase;
104104
using TRangeBase = TDFDetail::TRangeBase;
105105
using TCustomColumnBase = TDFDetail::TCustomColumnBase;
106106
using TLoopManager = TDFDetail::TLoopManager;
107107
friend std::string cling::printValue(::ROOT::Experimental::TDataFrame *tdf); // For a nice printing at the prompt
108-
template <typename T>
108+
template <typename T, typename W>
109109
friend class TInterface;
110110

111111
const std::shared_ptr<Proxied> fProxiedPtr; ///< Smart pointer to the graph node encapsulated by this TInterface.

0 commit comments

Comments
 (0)