Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TMVA::Experimental::SOFIE::RModel Class Reference

Definition at line 12 of file RModel.hxx.

Public Member Functions

 RModel ()
 
 RModel (const RModel &other)=delete
 
 RModel (RModel &&other)
 
 RModel (std::string function_name)
 
 RModel (std::string name, std::string parsedtime)
 
 ~RModel ()
 
void AddInitializedTensor (std::string tensor_name, ETensorType type, std::vector< std::size_t > shape, std::shared_ptr< void > data)
 
template<typename T >
void AddInitializedTensor (std::string tensor_name, ETensorType type, std::vector< std::size_t > shape, T *raw_data)
 
void AddInputTensorInfo (std::string input_name, ETensorType type, std::vector< Dim > shape)
 
void AddInputTensorInfo (std::string input_name, ETensorType type, std::vector< size_t > shape)
 
void AddInputTensorName (std::string name)
 
void AddIntermediateTensor (std::string tensor_name, ETensorType type, std::vector< std::size_t > shape)
 
void AddOperator (std::unique_ptr< ROperator > op, int order_execution=-1)
 
void AddOperatorReference (ROperator *op, int order_execution=-1)
 
void AddOutputTensorNameList (std::vector< std::string > outputtensornames)
 
bool CheckIfTensorAlreadyExist (std::string tensor_name)
 
 ClassDef (RModel, 1)
 
void Generate (Options options=Options::kDefault, int batchSize=1, int pos=0)
 
void Generate (std::underlying_type_t< Options > options, int batchSize=1, long pos=0)
 
void GenerateInitializedTensorInfo ()
 
void GenerateIntermediateTensorInfo ()
 
void GenerateOutput ()
 
std::shared_ptr< void > GetInitializedTensorData (std::string tensor_name)
 
const std::vector< std::string > & GetInputTensorNames () const
 
std::vector< std::string > GetOutputTensorNames ()
 
const std::vector< std::string > & GetOutputTensorNames () const
 
const std::vector< size_t > & GetTensorShape (std::string name)
 
const ETensorTypeGetTensorType (std::string name)
 
void HeadInitializedTensors (std::string name, int n_print=50)
 
void Initialize (int batchSize=1)
 
bool IsInitializedTensor (const std::string &name) const
 
RModeloperator= (const RModel &other)=delete
 
RModeloperator= (RModel &&other)
 
void OutputGenerated (std::string filename="", bool append=false)
 
void PrintInitializedTensors ()
 
void PrintIntermediateTensors ()
 
void PrintOutputTensors ()
 
void PrintRequiredInputTensors ()
 
void ReadInitializedTensorsFromFile (long)
 
void SetFilename (std::string filename)
 
void UpdateInitializedTensor (std::string tensor_name, ETensorType type, std::vector< std::size_t > shape, std::shared_ptr< void > data)
 
void UpdateOutputTensorList (std::vector< std::string > curr_output_tensor, std::vector< std::string > modify_output_tensor)
 
bool UseSession () const
 
long WriteInitializedTensorsToFile (std::string filename="")
 
- Public Member Functions inherited from TMVA::Experimental::SOFIE::RModel_Base
 RModel_Base ()
 
 RModel_Base (std::string function_name)
 
 RModel_Base (std::string name, std::string parsedtime)
 
void AddBlasRoutines (std::vector< std::string > routines)
 
void AddNeededCustomHeader (std::string filename)
 
void AddNeededStdLib (std::string libname)
 
void GenerateHeaderInfo (std::string &hgname)
 
std::string GetFilename ()
 
virtual TClassIsA () const
 
void OutputGenerated (std::string filename="", bool append=false)
 
void PrintGenerated ()
 
std::string ReturnGenerated ()
 
void SetFilename (std::string filename)
 
virtual void Streamer (TBuffer &)
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor.
 
 TObject (const TObject &object)
 TObject copy ctor.
 
virtual ~TObject ()
 TObject destructor.
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract.
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad.
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action.
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs.
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility.
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method.
 
virtual void Copy (TObject &object) const
 Copy this to obj.
 
virtual void Delete (Option_t *option="")
 Delete this object.
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object.
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects.
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs.
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
 
virtual void Dump () const
 Dump contents of object on stdout.
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message.
 
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
 Execute method on this object with the given parameter string, e.g.
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 Execute method on this object with parameters stored in the TObjArray.
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py).
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message.
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object.
 
virtual const char * GetIconName () const
 Returns mime type name of object.
 
virtual const char * GetName () const
 Returns name of object.
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py).
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object.
 
virtual UInt_t GetUniqueID () const
 Return the unique object id.
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out.
 
virtual ULong_t Hash () const
 Return hash value for this object.
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message.
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname".
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl.
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas.
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 IsDestructed.
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory).
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout.
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification (the base implementation is no-op).
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete.
 
void operator delete (void *ptr)
 Operator delete.
 
void operator delete (void *ptr, void *vp)
 Only called by placement new when throwing an exception.
 
void operator delete[] (void *ptr)
 Operator delete [].
 
void operator delete[] (void *ptr, void *vp)
 Only called by placement new[] when throwing an exception.
 
void * operator new (size_t sz)
 
void * operator new (size_t sz, void *vp)
 
void * operator new[] (size_t sz)
 
void * operator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator.
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself.
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list.
 
virtual void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself.
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list.
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename.
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out".
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f.
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object.
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message.
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory.
 

Private Attributes

std::unordered_map< std::string, InitializedTensorfInitializedTensors
 
std::unordered_map< std::string, InputTensorInfofInputTensorInfos
 
std::vector< std::string > fInputTensorNames
 
std::unordered_map< std::string, TensorInfofIntermediateTensorInfos
 
std::vector< std::unique_ptr< ROperator > > fOperators
 
std::vector< std::string > fOutputTensorNames
 
std::unordered_map< std::string, TensorInfofReadyInputTensorInfos
 

Additional Inherited Members

- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) }
 
enum  EStatusBits {
  kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) ,
  kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 ))
}
 
- Static Public Member Functions inherited from TMVA::Experimental::SOFIE::RModel_Base
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Longptr_t GetDtorOnly ()
 Return destructor only flag.
 
static Bool_t GetObjectStat ()
 Get status of object stat flag.
 
static void SetDtorOnly (void *obj)
 Set destructor only flag.
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable.
 
- Protected Types inherited from TObject
enum  { kOnlyPrepStep = (1ULL << ( 3 )) }
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected).
 
void MakeZombie ()
 
- Protected Attributes inherited from TMVA::Experimental::SOFIE::RModel_Base
const std::unordered_set< std::string > fAllowedStdLib = {"vector", "algorithm", "cmath"}
 
std::unordered_set< std::string > fCustomOpHeaders
 
std::string fFileName
 
std::string fGC
 
bool fIsGNN = false
 
bool fIsGNNComponent = false
 
std::string fName ="UnnamedModel"
 
std::unordered_set< std::string > fNeededBlasRoutines
 
std::unordered_set< std::string > fNeededStdLib = {"vector"}
 
std::string fParseTime
 
bool fUseSession = true
 
bool fUseWeightFile = true
 
WeightFileType fWeightFile = WeightFileType::Text
 

#include <TMVA/RModel.hxx>

Inheritance diagram for TMVA::Experimental::SOFIE::RModel:
[legend]

Constructor & Destructor Documentation

◆ RModel() [1/5]

TMVA::Experimental::SOFIE::RModel::RModel ( RModel &&  other)

Definition at line 22 of file RModel.cxx.

◆ RModel() [2/5]

TMVA::Experimental::SOFIE::RModel::RModel ( const RModel other)
delete

◆ RModel() [3/5]

TMVA::Experimental::SOFIE::RModel::RModel ( )
inline

Definition at line 36 of file RModel.hxx.

◆ RModel() [4/5]

TMVA::Experimental::SOFIE::RModel::RModel ( std::string  name,
std::string  parsedtime 
)
inline

Definition at line 37 of file RModel.hxx.

◆ RModel() [5/5]

TMVA::Experimental::SOFIE::RModel::RModel ( std::string  function_name)
inline

Definition at line 40 of file RModel.hxx.

◆ ~RModel()

TMVA::Experimental::SOFIE::RModel::~RModel ( )
inline

Definition at line 126 of file RModel.hxx.

Member Function Documentation

◆ AddInitializedTensor() [1/2]

void TMVA::Experimental::SOFIE::RModel::AddInitializedTensor ( std::string  tensor_name,
ETensorType  type,
std::vector< std::size_t >  shape,
std::shared_ptr< void >  data 
)

Definition at line 140 of file RModel.cxx.

◆ AddInitializedTensor() [2/2]

template<typename T >
void TMVA::Experimental::SOFIE::RModel::AddInitializedTensor ( std::string  tensor_name,
ETensorType  type,
std::vector< std::size_t >  shape,
T *  raw_data 
)
inline

Definition at line 56 of file RModel.hxx.

◆ AddInputTensorInfo() [1/2]

void TMVA::Experimental::SOFIE::RModel::AddInputTensorInfo ( std::string  input_name,
ETensorType  type,
std::vector< Dim shape 
)

Definition at line 104 of file RModel.cxx.

◆ AddInputTensorInfo() [2/2]

void TMVA::Experimental::SOFIE::RModel::AddInputTensorInfo ( std::string  input_name,
ETensorType  type,
std::vector< size_t >  shape 
)

Definition at line 114 of file RModel.cxx.

◆ AddInputTensorName()

void TMVA::Experimental::SOFIE::RModel::AddInputTensorName ( std::string  name)

Definition at line 123 of file RModel.cxx.

◆ AddIntermediateTensor()

void TMVA::Experimental::SOFIE::RModel::AddIntermediateTensor ( std::string  tensor_name,
ETensorType  type,
std::vector< std::size_t >  shape 
)

Definition at line 156 of file RModel.cxx.

◆ AddOperator()

void TMVA::Experimental::SOFIE::RModel::AddOperator ( std::unique_ptr< ROperator op,
int  order_execution = -1 
)

Definition at line 127 of file RModel.cxx.

◆ AddOperatorReference()

void TMVA::Experimental::SOFIE::RModel::AddOperatorReference ( ROperator op,
int  order_execution = -1 
)
inline

Definition at line 49 of file RModel.hxx.

◆ AddOutputTensorNameList()

void TMVA::Experimental::SOFIE::RModel::AddOutputTensorNameList ( std::vector< std::string >  outputtensornames)

Definition at line 165 of file RModel.cxx.

◆ CheckIfTensorAlreadyExist()

bool TMVA::Experimental::SOFIE::RModel::CheckIfTensorAlreadyExist ( std::string  tensor_name)

Definition at line 97 of file RModel.cxx.

◆ ClassDef()

TMVA::Experimental::SOFIE::RModel::ClassDef ( RModel  ,
 
)

◆ Generate() [1/2]

void TMVA::Experimental::SOFIE::RModel::Generate ( Options  options = Options::kDefault,
int  batchSize = 1,
int  pos = 0 
)
inline

Definition at line 81 of file RModel.hxx.

◆ Generate() [2/2]

void TMVA::Experimental::SOFIE::RModel::Generate ( std::underlying_type_t< Options options,
int  batchSize = 1,
long  pos = 0 
)

Definition at line 381 of file RModel.cxx.

◆ GenerateInitializedTensorInfo()

void TMVA::Experimental::SOFIE::RModel::GenerateInitializedTensorInfo ( )

Definition at line 235 of file RModel.cxx.

◆ GenerateIntermediateTensorInfo()

void TMVA::Experimental::SOFIE::RModel::GenerateIntermediateTensorInfo ( )

Definition at line 262 of file RModel.cxx.

◆ GenerateOutput()

void TMVA::Experimental::SOFIE::RModel::GenerateOutput ( )

Definition at line 280 of file RModel.cxx.

◆ GetInitializedTensorData()

std::shared_ptr< void > TMVA::Experimental::SOFIE::RModel::GetInitializedTensorData ( std::string  tensor_name)

Definition at line 188 of file RModel.cxx.

◆ GetInputTensorNames()

const std::vector< std::string > & TMVA::Experimental::SOFIE::RModel::GetInputTensorNames ( ) const
inline

Definition at line 85 of file RModel.hxx.

◆ GetOutputTensorNames() [1/2]

std::vector< std::string > TMVA::Experimental::SOFIE::RModel::GetOutputTensorNames ( )
inline

Definition at line 98 of file RModel.hxx.

◆ GetOutputTensorNames() [2/2]

const std::vector< std::string > & TMVA::Experimental::SOFIE::RModel::GetOutputTensorNames ( ) const
inline

Definition at line 88 of file RModel.hxx.

◆ GetTensorShape()

const std::vector< size_t > & TMVA::Experimental::SOFIE::RModel::GetTensorShape ( std::string  name)

Definition at line 55 of file RModel.cxx.

◆ GetTensorType()

const ETensorType & TMVA::Experimental::SOFIE::RModel::GetTensorType ( std::string  name)

Definition at line 76 of file RModel.cxx.

◆ HeadInitializedTensors()

void TMVA::Experimental::SOFIE::RModel::HeadInitializedTensors ( std::string  name,
int  n_print = 50 
)

Definition at line 701 of file RModel.cxx.

◆ Initialize()

void TMVA::Experimental::SOFIE::RModel::Initialize ( int  batchSize = 1)

Definition at line 197 of file RModel.cxx.

◆ IsInitializedTensor()

bool TMVA::Experimental::SOFIE::RModel::IsInitializedTensor ( const std::string &  name) const

Definition at line 151 of file RModel.cxx.

◆ operator=() [1/2]

RModel & TMVA::Experimental::SOFIE::RModel::operator= ( const RModel other)
delete

◆ operator=() [2/2]

RModel & TMVA::Experimental::SOFIE::RModel::operator= ( RModel &&  other)

Definition at line 38 of file RModel.cxx.

◆ OutputGenerated()

void TMVA::Experimental::SOFIE::RModel::OutputGenerated ( std::string  filename = "",
bool  append = false 
)

Definition at line 737 of file RModel.cxx.

◆ PrintInitializedTensors()

void TMVA::Experimental::SOFIE::RModel::PrintInitializedTensors ( )

Definition at line 665 of file RModel.cxx.

◆ PrintIntermediateTensors()

void TMVA::Experimental::SOFIE::RModel::PrintIntermediateTensors ( )

Definition at line 679 of file RModel.cxx.

◆ PrintOutputTensors()

void TMVA::Experimental::SOFIE::RModel::PrintOutputTensors ( )

Definition at line 693 of file RModel.cxx.

◆ PrintRequiredInputTensors()

void TMVA::Experimental::SOFIE::RModel::PrintRequiredInputTensors ( )

Definition at line 635 of file RModel.cxx.

◆ ReadInitializedTensorsFromFile()

void TMVA::Experimental::SOFIE::RModel::ReadInitializedTensorsFromFile ( long  pos)

Definition at line 463 of file RModel.cxx.

◆ SetFilename()

void TMVA::Experimental::SOFIE::RModel::SetFilename ( std::string  filename)
inline

Definition at line 101 of file RModel.hxx.

◆ UpdateInitializedTensor()

void TMVA::Experimental::SOFIE::RModel::UpdateInitializedTensor ( std::string  tensor_name,
ETensorType  type,
std::vector< std::size_t >  shape,
std::shared_ptr< void >  data 
)

Definition at line 179 of file RModel.cxx.

◆ UpdateOutputTensorList()

void TMVA::Experimental::SOFIE::RModel::UpdateOutputTensorList ( std::vector< std::string >  curr_output_tensor,
std::vector< std::string >  modify_output_tensor 
)

Definition at line 172 of file RModel.cxx.

◆ UseSession()

bool TMVA::Experimental::SOFIE::RModel::UseSession ( ) const
inline

Definition at line 122 of file RModel.hxx.

◆ WriteInitializedTensorsToFile()

long TMVA::Experimental::SOFIE::RModel::WriteInitializedTensorsToFile ( std::string  filename = "")

Definition at line 538 of file RModel.cxx.

Member Data Documentation

◆ fInitializedTensors

std::unordered_map<std::string, InitializedTensor> TMVA::Experimental::SOFIE::RModel::fInitializedTensors
private

Definition at line 18 of file RModel.hxx.

◆ fInputTensorInfos

std::unordered_map<std::string, InputTensorInfo> TMVA::Experimental::SOFIE::RModel::fInputTensorInfos
private

Definition at line 16 of file RModel.hxx.

◆ fInputTensorNames

std::vector<std::string> TMVA::Experimental::SOFIE::RModel::fInputTensorNames
private

Definition at line 21 of file RModel.hxx.

◆ fIntermediateTensorInfos

std::unordered_map<std::string, TensorInfo> TMVA::Experimental::SOFIE::RModel::fIntermediateTensorInfos
private

Definition at line 19 of file RModel.hxx.

◆ fOperators

std::vector<std::unique_ptr<ROperator> > TMVA::Experimental::SOFIE::RModel::fOperators
private

Definition at line 23 of file RModel.hxx.

◆ fOutputTensorNames

std::vector<std::string> TMVA::Experimental::SOFIE::RModel::fOutputTensorNames
private

Definition at line 20 of file RModel.hxx.

◆ fReadyInputTensorInfos

std::unordered_map<std::string, TensorInfo> TMVA::Experimental::SOFIE::RModel::fReadyInputTensorInfos
private

Definition at line 17 of file RModel.hxx.

Libraries for TMVA::Experimental::SOFIE::RModel:

The documentation for this class was generated from the following files: