GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
Loading...
Searching...
No Matches
TDataFrameLibrary Class Reference

Detailed Description

Definition at line 13 of file TDataFrameLibrary.h.

Public Member Functions

 ~TDataFrameLibrary ()
 
TGRSIHelperCreateHelper (TList *list)
 
void DestroyHelper (TGRSIHelper *parser)
 
void Load ()
 

Static Public Member Functions

static TDataFrameLibraryAddCurrent ()
 
static TDataFrameLibraryGet (bool verbose=false)
 
static TDataFrameLibraryGetAll ()
 
static void PrintDirectory ()
 
static void Set (TDataFrameLibrary *val)
 

Private Member Functions

 TDataFrameLibrary ()=default
 
 TDataFrameLibrary (const TDataFrameLibrary &)=default
 
 TDataFrameLibrary (TDataFrameLibrary &&)=default
 
TDataFrameLibraryoperator= (const TDataFrameLibrary &)=default
 
TDataFrameLibraryoperator= (TDataFrameLibrary &&)=default
 

Static Private Member Functions

static void Compile (std::string &path, const size_t &dot, const size_t &slash)
 

Private Attributes

TGRSIHelper *(* fCreateHelper )(TList *)
 
void(* fDestroyHelper )(TGRSIHelper *)
 
void * fHandle {nullptr}
 

Static Private Attributes

static TDirectory * fDir
 
static TDataFrameLibraryfSingleton
 

Friends

class TSingleton< TDataFrameLibrary >
 
+ Inheritance diagram for TDataFrameLibrary:
+ Collaboration diagram for TDataFrameLibrary:

Constructor & Destructor Documentation

◆ ~TDataFrameLibrary()

TDataFrameLibrary::~TDataFrameLibrary ( )

Definition at line 20 of file TDataFrameLibrary.cxx.

References fHandle.

◆ TDataFrameLibrary() [1/3]

TDataFrameLibrary::TDataFrameLibrary ( )
privatedefault

◆ TDataFrameLibrary() [2/3]

TDataFrameLibrary::TDataFrameLibrary ( const TDataFrameLibrary & )
privatedefault

◆ TDataFrameLibrary() [3/3]

TDataFrameLibrary::TDataFrameLibrary ( TDataFrameLibrary && )
privatedefault

Member Function Documentation

◆ AddCurrent()

static TDataFrameLibrary * TSingleton< TDataFrameLibrary >::AddCurrent ( )
inlinestaticinherited

Definition at line 141 of file TSingleton.h.

◆ Compile()

void TDataFrameLibrary::Compile ( std::string & path,
const size_t & dot,
const size_t & slash )
staticprivate

Try and compile the provided .cxx file into a shared object library using the provided path, position of the last dot, and the position of the last slash.

The name of the parser library used is determined from it's path and used to add grsiconfig --<parser library name>-cflags to the compile command. Other flags used are "-c -fPIC -g", root-config --cflags --glibs, and the directory the path points to as include directory.

Parameters
[in]pathpath of the .cxx file
[in]dotposition of the last dot (guaranteed to be after the last slash!)
[in]slashposition of the last slash (can be std::string::npos)

Definition at line 80 of file TDataFrameLibrary.cxx.

References DBLUE, DCYAN, DummyFunctionToLocateTGRSIFrameLibrary(), TGRSIOptions::Get(), TGRSIOptions::ParserLibrary(), and RESET_COLOR.

Referenced by Load().

◆ CreateHelper()

TGRSIHelper * TDataFrameLibrary::CreateHelper ( TList * list)
inline

function to open library specific data parser

Definition at line 21 of file TDataFrameLibrary.h.

References fCreateHelper, and Load().

◆ DestroyHelper()

void TDataFrameLibrary::DestroyHelper ( TGRSIHelper * parser)
inline

function to destroy library specific data parser

Definition at line 27 of file TDataFrameLibrary.h.

References fDestroyHelper, and Load().

◆ Get()

static TDataFrameLibrary * TSingleton< TDataFrameLibrary >::Get ( bool verbose = false)
inlinestaticinherited

Definition at line 33 of file TSingleton.h.

◆ GetAll()

static TDataFrameLibrary * TSingleton< TDataFrameLibrary >::GetAll ( )
inlinestaticinherited

Definition at line 66 of file TSingleton.h.

◆ Load()

void TDataFrameLibrary::Load ( )

if necessary loads shared object library and sets/initializes all other functions

Definition at line 27 of file TDataFrameLibrary.cxx.

References Compile(), TGRSIOptions::DataFrameLibrary(), dlsym, DRED, fCreateHelper, fDestroyHelper, fHandle, FileExists(), TGRSIOptions::Get(), and RESET_COLOR.

Referenced by CreateHelper(), and DestroyHelper().

◆ operator=() [1/2]

TDataFrameLibrary & TDataFrameLibrary::operator= ( const TDataFrameLibrary & )
privatedefault

◆ operator=() [2/2]

TDataFrameLibrary & TDataFrameLibrary::operator= ( TDataFrameLibrary && )
privatedefault

◆ PrintDirectory()

static void TSingleton< TDataFrameLibrary >::PrintDirectory ( )
inlinestaticinherited

Definition at line 171 of file TSingleton.h.

◆ Set()

static void TSingleton< TDataFrameLibrary >::Set ( TDataFrameLibrary * val)
inlinestaticinherited

Definition at line 133 of file TSingleton.h.

Friends And Related Symbol Documentation

◆ TSingleton< TDataFrameLibrary >

friend class TSingleton< TDataFrameLibrary >
friend

Definition at line 1 of file TDataFrameLibrary.h.

Member Data Documentation

◆ fCreateHelper

TGRSIHelper *(* TDataFrameLibrary::fCreateHelper) (TList *)
private

Definition at line 45 of file TDataFrameLibrary.h.

Referenced by CreateHelper(), and Load().

◆ fDestroyHelper

void(* TDataFrameLibrary::fDestroyHelper) (TGRSIHelper *)
private

Definition at line 46 of file TDataFrameLibrary.h.

Referenced by DestroyHelper(), and Load().

◆ fDir

TDirectory * TSingleton< TDataFrameLibrary >::fDir
staticprivateinherited

Definition at line 187 of file TSingleton.h.

◆ fHandle

void* TDataFrameLibrary::fHandle {nullptr}
private

handle for shared object library

Definition at line 43 of file TDataFrameLibrary.h.

Referenced by ~TDataFrameLibrary(), and Load().

◆ fSingleton

TDataFrameLibrary * TSingleton< TDataFrameLibrary >::fSingleton
staticprivateinherited

Definition at line 186 of file TSingleton.h.