MyGUI 3.4.3
MyGUI::FactoryManager Class Reference

#include <MyGUI_FactoryManager.h>

Public Types

using Delegate = delegates::Delegate<IObject*&>
 

Public Member Functions

 FactoryManager (const FactoryManager &)=delete
 
FactoryManageroperator= (const FactoryManager &)=delete
 
 FactoryManager ()
 
void initialise ()
 
void shutdown ()
 
void registerFactory (std::string_view _category, std::string_view _type, Delegate::IDelegate *_delegate)
 
void unregisterFactory (std::string_view _category, std::string_view _type)
 
void unregisterFactory (std::string_view _category)
 
bool isFactoryExist (std::string_view _category, std::string_view _type)
 
template<typename Type >
void registerFactory (std::string_view _category)
 
template<typename Type >
void registerFactory (std::string_view _category, std::string_view _type)
 
template<typename Type >
void unregisterFactory (std::string_view _category)
 
IObjectcreateObject (std::string_view _category, std::string_view _type)
 
template<typename Type >
Type * createObject (std::string_view _category)
 
void destroyObject (IObject *_object)
 

Static Public Member Functions

static FactoryManagergetInstance ()
 
static FactoryManagergetInstancePtr ()
 
static std::string_view getClassTypeName ()
 

Detailed Description

Definition at line 18 of file MyGUI_FactoryManager.h.

Member Typedef Documentation

◆ Delegate

Constructor & Destructor Documentation

◆ FactoryManager() [1/2]

MyGUI::FactoryManager::FactoryManager ( const FactoryManager & )
delete

◆ FactoryManager() [2/2]

MyGUI::FactoryManager::FactoryManager ( )

Definition at line 16 of file MyGUI_FactoryManager.cpp.

Member Function Documentation

◆ createObject() [1/2]

template<typename Type >
Type * MyGUI::FactoryManager::createObject ( std::string_view _category)
inline

Create object with given _category and _type. Return nullptr if there's no registered factory.

Definition at line 64 of file MyGUI_FactoryManager.h.

◆ createObject() [2/2]

IObject * MyGUI::FactoryManager::createObject ( std::string_view _category,
std::string_view _type )

Create object with given _category and _type. Return nullptr if there's no registered factory.

Definition at line 80 of file MyGUI_FactoryManager.cpp.

◆ destroyObject()

void MyGUI::FactoryManager::destroyObject ( IObject * _object)

Destroy object

Definition at line 104 of file MyGUI_FactoryManager.cpp.

◆ getClassTypeName()

static std::string_view MyGUI::FactoryManager::getClassTypeName ( )
static

◆ getInstance()

static FactoryManager & MyGUI::FactoryManager::getInstance ( )
static

◆ getInstancePtr()

static FactoryManager * MyGUI::FactoryManager::getInstancePtr ( )
static

◆ initialise()

void MyGUI::FactoryManager::initialise ( )

Definition at line 21 of file MyGUI_FactoryManager.cpp.

◆ isFactoryExist()

bool MyGUI::FactoryManager::isFactoryExist ( std::string_view _category,
std::string_view _type )

Is factory for specified _category and _type exist.

Definition at line 126 of file MyGUI_FactoryManager.cpp.

◆ operator=()

FactoryManager & MyGUI::FactoryManager::operator= ( const FactoryManager & )
delete

◆ registerFactory() [1/3]

template<typename Type >
void MyGUI::FactoryManager::registerFactory ( std::string_view _category)
inline

Register factory for specified _category.

Definition at line 41 of file MyGUI_FactoryManager.h.

◆ registerFactory() [2/3]

template<typename Type >
void MyGUI::FactoryManager::registerFactory ( std::string_view _category,
std::string_view _type )
inline

Register factory for specified _category and _type.

Definition at line 48 of file MyGUI_FactoryManager.h.

◆ registerFactory() [3/3]

void MyGUI::FactoryManager::registerFactory ( std::string_view _category,
std::string_view _type,
Delegate::IDelegate * _delegate )

Register delegate function that creates object for specified _category and _type.

Definition at line 39 of file MyGUI_FactoryManager.cpp.

◆ shutdown()

void MyGUI::FactoryManager::shutdown ( )

Definition at line 30 of file MyGUI_FactoryManager.cpp.

◆ unregisterFactory() [1/3]

void MyGUI::FactoryManager::unregisterFactory ( std::string_view _category)

Unregister all delegate functions that creates object for specified _category.

Definition at line 70 of file MyGUI_FactoryManager.cpp.

◆ unregisterFactory() [2/3]

template<typename Type >
void MyGUI::FactoryManager::unregisterFactory ( std::string_view _category)
inline

Unegister factory for specified _category.

Definition at line 55 of file MyGUI_FactoryManager.h.

◆ unregisterFactory() [3/3]

void MyGUI::FactoryManager::unregisterFactory ( std::string_view _category,
std::string_view _type )

Unregister delegate function that creates object for specified _category and _type.

Definition at line 54 of file MyGUI_FactoryManager.cpp.


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