MySQL 8.3.0
Source Code Documentation
mysql_harness::DIM Class Reference

#include <dim.h>

Public Member Functions

 DIM (const DIM &)=delete
 
DIMoperator= (const DIM &)=delete
 
void reset_LoggingRegistry ()
 
void set_LoggingRegistry (const std::function< mysql_harness::logging::Registry *(void)> &factory, const std::function< void(mysql_harness::logging::Registry *)> &deleter)
 
void set_RandomGenerator (const std::function< mysql_harness::RandomGeneratorInterface *(void)> &factory, const std::function< void(mysql_harness::RandomGeneratorInterface *)> &deleter)
 
void reset_Config ()
 
void set_Config (const std::function< mysql_harness::LoaderConfig *(void)> &factory, const std::function< void(mysql_harness::LoaderConfig *)> &deleter)
 
void reset_DynamicState ()
 
void set_DynamicState (const std::function< mysql_harness::DynamicState *(void)> &factory, const std::function< void(mysql_harness::DynamicState *)> &deleter)
 
mysql_harness::logging::Registryget_LoggingRegistry ()
 
mysql_harness::RandomGeneratorInterfaceget_RandomGenerator () const
 
mysql_harness::LoaderConfigget_Config ()
 
bool is_DynamicState ()
 
mysql_harness::DynamicStateget_DynamicState ()
 

Static Public Member Functions

static DIMinstance ()
 

Protected Member Functions

 DIM ()
 
 ~DIM ()
 
template<typename T >
T & get_external_generic (UniquePtr< T > &object, const std::function< T *()> &factory, const std::function< void(T *)> &deleter)
 
template<typename T >
void reset_generic (UniquePtr< T > &object)
 

Static Protected Member Functions

template<typename T >
static T & get_generic (const std::function< T *(void)> &factory, const std::function< void(T *)> &deleter)
 
template<typename T >
static UniquePtr< T > new_generic (const std::function< T *(void)> &factory, const std::function< void(T *)> &deleter)
 
template<typename T , typename A1 >
static UniquePtr< T > new_generic1 (const std::function< T *(A1)> &factory, const std::function< void(T *)> &deleter, const A1 &a1)
 
template<typename T , typename A1 , typename A2 >
static UniquePtr< T > new_generic2 (const std::function< T *(A1, A2)> &factory, const std::function< void(T *)> &deleter, const A1 &a1, const A2 &a2)
 

Protected Attributes

std::recursive_mutex mtx_
 

Private Attributes

std::function< mysql_harness::logging::Registry *(void)> factory_LoggingRegistry_
 
std::function< void(mysql_harness::logging::Registry *)> deleter_LoggingRegistry_
 
UniquePtr< mysql_harness::logging::Registryinstance_LoggingRegistry_
 
std::function< mysql_harness::RandomGeneratorInterface *(void)> factory_RandomGenerator_
 
std::function< void(mysql_harness::RandomGeneratorInterface *)> deleter_RandomGenerator_
 
std::function< mysql_harness::LoaderConfig *(void)> factory_Config_
 
std::function< void(mysql_harness::LoaderConfig *)> deleter_Config_
 
UniquePtr< mysql_harness::LoaderConfiginstance_Config_
 
std::function< mysql_harness::DynamicState *(void)> factory_DynamicState_
 
std::function< void(mysql_harness::DynamicState *)> deleter_DynamicState_
 
UniquePtr< mysql_harness::DynamicStateinstance_DynamicState_
 

Constructor & Destructor Documentation

◆ DIM() [1/2]

mysql_harness::DIM::DIM ( )
protecteddefault

◆ ~DIM()

mysql_harness::DIM::~DIM ( )
protecteddefault

◆ DIM() [2/2]

mysql_harness::DIM::DIM ( const DIM )
delete

Member Function Documentation

◆ get_Config()

mysql_harness::LoaderConfig & mysql_harness::DIM::get_Config ( )
inline

◆ get_DynamicState()

mysql_harness::DynamicState & mysql_harness::DIM::get_DynamicState ( )
inline

◆ get_external_generic()

template<typename T >
T & mysql_harness::DIM::get_external_generic ( UniquePtr< T > &  object,
const std::function< T *()> &  factory,
const std::function< void(T *)> &  deleter 
)
inlineprotected

◆ get_generic()

template<typename T >
static T & mysql_harness::DIM::get_generic ( const std::function< T *(void)> &  factory,
const std::function< void(T *)> &  deleter 
)
inlinestaticprotected

◆ get_LoggingRegistry()

mysql_harness::logging::Registry & mysql_harness::DIM::get_LoggingRegistry ( )
inline

◆ get_RandomGenerator()

mysql_harness::RandomGeneratorInterface & mysql_harness::DIM::get_RandomGenerator ( ) const
inline

◆ instance()

DIM & mysql_harness::DIM::instance ( )
static

◆ is_DynamicState()

bool mysql_harness::DIM::is_DynamicState ( )
inline

◆ new_generic()

template<typename T >
static UniquePtr< T > mysql_harness::DIM::new_generic ( const std::function< T *(void)> &  factory,
const std::function< void(T *)> &  deleter 
)
inlinestaticprotected

◆ new_generic1()

template<typename T , typename A1 >
static UniquePtr< T > mysql_harness::DIM::new_generic1 ( const std::function< T *(A1)> &  factory,
const std::function< void(T *)> &  deleter,
const A1 &  a1 
)
inlinestaticprotected

◆ new_generic2()

template<typename T , typename A1 , typename A2 >
static UniquePtr< T > mysql_harness::DIM::new_generic2 ( const std::function< T *(A1, A2)> &  factory,
const std::function< void(T *)> &  deleter,
const A1 &  a1,
const A2 &  a2 
)
inlinestaticprotected

◆ operator=()

DIM & mysql_harness::DIM::operator= ( const DIM )
delete

◆ reset_Config()

void mysql_harness::DIM::reset_Config ( )
inline

◆ reset_DynamicState()

void mysql_harness::DIM::reset_DynamicState ( )
inline

◆ reset_generic()

template<typename T >
void mysql_harness::DIM::reset_generic ( UniquePtr< T > &  object)
inlineprotected

◆ reset_LoggingRegistry()

void mysql_harness::DIM::reset_LoggingRegistry ( )
inline

◆ set_Config()

void mysql_harness::DIM::set_Config ( const std::function< mysql_harness::LoaderConfig *(void)> &  factory,
const std::function< void(mysql_harness::LoaderConfig *)> &  deleter 
)
inline

◆ set_DynamicState()

void mysql_harness::DIM::set_DynamicState ( const std::function< mysql_harness::DynamicState *(void)> &  factory,
const std::function< void(mysql_harness::DynamicState *)> &  deleter 
)
inline

◆ set_LoggingRegistry()

void mysql_harness::DIM::set_LoggingRegistry ( const std::function< mysql_harness::logging::Registry *(void)> &  factory,
const std::function< void(mysql_harness::logging::Registry *)> &  deleter 
)
inline

◆ set_RandomGenerator()

void mysql_harness::DIM::set_RandomGenerator ( const std::function< mysql_harness::RandomGeneratorInterface *(void)> &  factory,
const std::function< void(mysql_harness::RandomGeneratorInterface *)> &  deleter 
)
inline

Member Data Documentation

◆ deleter_Config_

std::function<void(mysql_harness::LoaderConfig *)> mysql_harness::DIM::deleter_Config_
private

◆ deleter_DynamicState_

std::function<void(mysql_harness::DynamicState *)> mysql_harness::DIM::deleter_DynamicState_
private

◆ deleter_LoggingRegistry_

std::function<void(mysql_harness::logging::Registry *)> mysql_harness::DIM::deleter_LoggingRegistry_
private

◆ deleter_RandomGenerator_

std::function<void(mysql_harness::RandomGeneratorInterface *)> mysql_harness::DIM::deleter_RandomGenerator_
private

◆ factory_Config_

std::function<mysql_harness::LoaderConfig *(void)> mysql_harness::DIM::factory_Config_
private

◆ factory_DynamicState_

std::function<mysql_harness::DynamicState *(void)> mysql_harness::DIM::factory_DynamicState_
private

◆ factory_LoggingRegistry_

std::function<mysql_harness::logging::Registry *(void)> mysql_harness::DIM::factory_LoggingRegistry_
private

◆ factory_RandomGenerator_

std::function<mysql_harness::RandomGeneratorInterface *(void)> mysql_harness::DIM::factory_RandomGenerator_
private

◆ instance_Config_

UniquePtr<mysql_harness::LoaderConfig> mysql_harness::DIM::instance_Config_
private

◆ instance_DynamicState_

UniquePtr<mysql_harness::DynamicState> mysql_harness::DIM::instance_DynamicState_
private

◆ instance_LoggingRegistry_

UniquePtr<mysql_harness::logging::Registry> mysql_harness::DIM::instance_LoggingRegistry_
private

◆ mtx_

std::recursive_mutex mysql_harness::DIM::mtx_
mutableprotected

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