KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
List of all members
Kratos::Registry Class Referencefinal

Kratos base registry This class is intended to act as global registry Each time the AddItem method is called a pair of name and prototype is called. More...

#include <registry.h>

Collaboration diagram for Kratos::Registry:

Public Member Functions

Type Definitions
 KRATOS_CLASS_POINTER_DEFINITION (Registry)
 Pointer definition of Registry. More...
 
Life Cycle
 Registry ()
 Default constructor. More...
 
 ~Registry ()
 Destructor. More...
 
Input and output
std::string Info () const
 Turn back information as a string. More...
 
void PrintInfo (std::ostream &rOStream) const
 Print information about this object. More...
 
void PrintData (std::ostream &rOStream) const
 Print object's data. More...
 
std::string ToJson (std::string const &Indentation) const
 

Static Public Member Functions

Operations
template<typename TItemType , class... TArgumentsList>
static RegistryItemAddItem (std::string const &rItemFullName, TArgumentsList &&... Arguments)
 
template<typename... Types>
static std::string RegistryTemplateToString (Types &&... args)
 
Access
static auto begin ()
 
static auto cbegin ()
 
static auto end ()
 
static auto const cend ()
 
static RegistryItemGetItem (std::string const &rItemFullName)
 
template<typename TDataType >
static TDataType const & GetValue (std::string const &rItemFullName)
 
template<typename TDataType , typename TCastType >
static std::enable_if< std::is_base_of< TDataType, TCastType >::value, TCastType >::type const GetValueAs (std::string const &rItemFullName)
 
static void RemoveItem (std::string const &ItemName)
 
Inquiry
static std::size_t size ()
 
static bool HasItem (std::string const &rItemFullName)
 
static bool HasValue (std::string const &rItemFullName)
 
static bool HasItems (std::string const &rItemFullName)
 

Detailed Description

Kratos base registry This class is intended to act as global registry Each time the AddItem method is called a pair of name and prototype is called.

Constructor & Destructor Documentation

◆ Registry()

Kratos::Registry::Registry ( )
inline

Default constructor.

◆ ~Registry()

Kratos::Registry::~Registry ( )
inline

Destructor.

Member Function Documentation

◆ AddItem()

template<typename TItemType , class... TArgumentsList>
static RegistryItem& Kratos::Registry::AddItem ( std::string const &  rItemFullName,
TArgumentsList &&...  Arguments 
)
inlinestatic

◆ begin()

static auto Kratos::Registry::begin ( )
inlinestatic

◆ cbegin()

static auto Kratos::Registry::cbegin ( )
inlinestatic

◆ cend()

static auto const Kratos::Registry::cend ( )
inlinestatic

◆ end()

static auto Kratos::Registry::end ( )
inlinestatic

◆ GetItem()

RegistryItem & Kratos::Registry::GetItem ( std::string const &  rItemFullName)
static

◆ GetValue()

template<typename TDataType >
static TDataType const& Kratos::Registry::GetValue ( std::string const &  rItemFullName)
inlinestatic

◆ GetValueAs()

template<typename TDataType , typename TCastType >
static std::enable_if<std::is_base_of<TDataType, TCastType>::value, TCastType>::type const Kratos::Registry::GetValueAs ( std::string const &  rItemFullName)
inlinestatic

◆ HasItem()

bool Kratos::Registry::HasItem ( std::string const &  rItemFullName)
static

◆ HasItems()

bool Kratos::Registry::HasItems ( std::string const &  rItemFullName)
static

◆ HasValue()

bool Kratos::Registry::HasValue ( std::string const &  rItemFullName)
static

◆ Info()

std::string Kratos::Registry::Info ( ) const

Turn back information as a string.

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::Registry::KRATOS_CLASS_POINTER_DEFINITION ( Registry  )

Pointer definition of Registry.

◆ PrintData()

void Kratos::Registry::PrintData ( std::ostream &  rOStream) const

Print object's data.

◆ PrintInfo()

void Kratos::Registry::PrintInfo ( std::ostream &  rOStream) const

Print information about this object.

◆ RegistryTemplateToString()

template<typename... Types>
static std::string Kratos::Registry::RegistryTemplateToString ( Types &&...  args)
inlinestatic

◆ RemoveItem()

void Kratos::Registry::RemoveItem ( std::string const &  ItemName)
static

◆ size()

std::size_t Kratos::Registry::size ( )
static

◆ ToJson()

std::string Kratos::Registry::ToJson ( std::string const &  Indentation) const

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