73      std::vector<unsigned char> 
fBlob;
 
 
   80   std::unique_ptr<Internal::RSqliteDSDataSet> 
fDataSet;
 
   93      "std::vector<unsigned char>",
 
 
 
unsigned long long ULong64_t
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
 
RDataSource defines an API that RDataFrame can use to read arbitrary data formats.
 
std::vector< void * > Record_t
 
RSqliteDS is an RDF data source implementation for SQL result sets from sqlite3 files.
 
void SetNSlots(unsigned int nSlots) final
Almost a no-op, many slots can in fact reduce the performance due to thread synchronization.
 
RSqliteDS & operator=(RSqliteDS &&)=delete
 
static constexpr char const  * fgTypeNames[]
Corresponds to the types defined in ETypes.
 
std::string GetLabel() final
Return a string representation of the datasource type.
 
RSqliteDS & operator=(const RSqliteDS &)=delete
 
RSqliteDS(RSqliteDS &&)=delete
 
std::vector< std::string > fColumnNames
 
RSqliteDS(const RSqliteDS &)=delete
 
bool HasColumn(std::string_view colName) const final
A linear search through the columns for the given name.
 
void Initialize() final
Resets the SQlite query engine at the beginning of the event loop.
 
std::vector< ETypes > fColumnTypes
 
std::string GetTypeName(std::string_view colName) const final
Returns the C++ type for a given column name, implemented as a linear search through all the columns.
 
ETypes
All the types known to SQlite. Changes require changing fgTypeNames, too.
 
Record_t GetColumnReadersImpl(std::string_view name, const std::type_info &) final
Activates the given column's result value.
 
RSqliteDS(const std::string &fileName, const std::string &query)
Build the dataframe.
 
std::unique_ptr< Internal::RSqliteDSDataSet > fDataSet
 
std::vector< std::pair< ULong64_t, ULong64_t > > GetEntryRanges() final
Returns a range of size 1 as long as more rows are available in the SQL result set.
 
const std::vector< std::string > & GetColumnNames() const final
Returns the SELECT queries names.
 
bool SetEntry(unsigned int slot, ULong64_t entry) final
Stores the result of the current active sqlite query row as a C++ value.
 
~RSqliteDS() final
Frees the sqlite resources and closes the file.
 
void SqliteError(int errcode)
Helper function to throw an exception if there is a fatal sqlite error, e.g. an I/O error.
 
std::vector< Value_t > fValues
The data source is inherently single-threaded and returns only one row at a time. This vector holds t...
 
ROOT's RDataFrame offers a modern, high-level interface for analysis of data stored in TTree ,...
 
RDataFrame FromSqlite(std::string_view fileName, std::string_view query)
Factory method to create a SQlite RDataFrame.
 
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
 
The state of an open dataset in terms of the sqlite3 C library.
 
Used to hold a single "cell" of the SELECT query's result table. Can be changed to std::variant once ...
 
void * fPtr
Points to one of the values; an address to this pointer is returned by GetColumnReadersImpl.
 
std::vector< unsigned char > fBlob
 
bool fIsActive
Not all columns of the query are necessarily used by the RDF. Allows for skipping them.