![]() |
|
|||
File indexing completed on 2025-02-22 10:53:06
0001 // Author: Enrico Guiraud CERN 09/2020 0002 0003 /************************************************************************* 0004 * Copyright (C) 1995-2020, Rene Brun and Fons Rademakers. * 0005 * All rights reserved. * 0006 * * 0007 * For the licensing terms see $ROOTSYS/LICENSE. * 0008 * For the list of contributors see $ROOTSYS/README/CREDITS. * 0009 *************************************************************************/ 0010 0011 #ifndef ROOT_INTERNAL_RDF_RCOLUMNREADERBASE 0012 #define ROOT_INTERNAL_RDF_RCOLUMNREADERBASE 0013 0014 #include <Rtypes.h> 0015 0016 namespace ROOT { 0017 namespace Detail { 0018 namespace RDF { 0019 0020 /** 0021 \class ROOT::Internal::RDF::RColumnReaderBase 0022 \ingroup dataframe 0023 \brief Pure virtual base class for all column reader types 0024 0025 This pure virtual class provides a common base class for the different column reader types, e.g. RTreeColumnReader and 0026 RDSColumnReader. 0027 **/ 0028 class R__CLING_PTRCHECK(off) RColumnReaderBase { 0029 public: 0030 virtual ~RColumnReaderBase() = default; 0031 0032 /// Return the column value for the given entry. 0033 /// \tparam T The column type 0034 /// \param entry The entry number 0035 template <typename T> 0036 T &Get(Long64_t entry) 0037 { 0038 return *static_cast<T *>(GetImpl(entry)); 0039 } 0040 0041 private: 0042 virtual void *GetImpl(Long64_t entry) = 0; 0043 }; 0044 0045 } // namespace RDF 0046 } // namespace Detail 0047 } // namespace ROOT 0048 0049 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |