GKD.RoboCtrl
RoboMaster Linux 电控:异步 IO、设备驱动与机器人控制
载入中...
搜索中...
未找到
roboctrl::multiton::details::multiton_impl< owner_type > 模板结构体 参考final

详细描述

template<typename owner_type>
struct roboctrl::multiton::details::multiton_impl< owner_type >

在文件 multiton.hpp 第 105 行定义.

类 roboctrl::multiton::details::multiton_impl< owner_type > 继承关系图:
roboctrl::multiton::details::multiton_impl< owner_type > 的协作图:

Public 类型

using key_type = typename owner_type::info_type::key_type
 
using info_type = typename owner_type::info_type
 

静态 Public 成员函数

static auto init (const info_type &info) -> owner_type &
 
static void init (std::initializer_list< info_type > infos)
 
static void init (std::span< const info_type > infos)
 
static bool contains (const key_type &key)
 
template<typename Fn >
static void for_each (Fn &&fn)
 
static auto get (const key_type &key) -> owner_type &
 

静态 Public 属性

static std::mutex mutex_ {}
 
static std::unordered_map< key_type, std::unique_ptr< owner_type > > instances
 

额外继承的成员函数

- Public 成员函数 继承自 roboctrl::utils::immovable_base
 immovable_base (immovable_base &&)=delete
 
immovable_base & operator= (immovable_base &&)=delete
 
- Public 成员函数 继承自 roboctrl::utils::not_copyable_base
 not_copyable_base (const not_copyable_base &)=delete
 
not_copyable_base & operator= (const not_copyable_base &)=delete
 

成员类型定义说明

◆ info_type

template<typename owner_type >
using roboctrl::multiton::details::multiton_impl< owner_type >::info_type = typename owner_type::info_type

在文件 multiton.hpp 第 114 行定义.

◆ key_type

template<typename owner_type >
using roboctrl::multiton::details::multiton_impl< owner_type >::key_type = typename owner_type::info_type::key_type

在文件 multiton.hpp 第 109 行定义.

成员函数说明

◆ contains()

template<typename owner_type >
static bool roboctrl::multiton::details::multiton_impl< owner_type >::contains ( const key_type &  key)
inlinestatic

在文件 multiton.hpp 第 159 行定义.

◆ for_each()

template<typename owner_type >
template<typename Fn >
static void roboctrl::multiton::details::multiton_impl< owner_type >::for_each ( Fn &&  fn)
inlinestatic

在文件 multiton.hpp 第 165 行定义.

◆ get()

template<typename owner_type >
static auto roboctrl::multiton::details::multiton_impl< owner_type >::get ( const key_type &  key) -> owner_type&
inlinestatic

在文件 multiton.hpp 第 173 行定义.

◆ init() [1/3]

template<typename owner_type >
static auto roboctrl::multiton::details::multiton_impl< owner_type >::init ( const info_type &  info) -> owner_type&
inlinestatic

在文件 multiton.hpp 第 116 行定义.

◆ init() [2/3]

template<typename owner_type >
static void roboctrl::multiton::details::multiton_impl< owner_type >::init ( std::initializer_list< info_type >  infos)
inlinestatic

在文件 multiton.hpp 第 132 行定义.

◆ init() [3/3]

template<typename owner_type >
static void roboctrl::multiton::details::multiton_impl< owner_type >::init ( std::span< const info_type >  infos)
inlinestatic

在文件 multiton.hpp 第 136 行定义.

类成员变量说明

◆ instances

template<typename owner_type >
std::unordered_map<key_type, std::unique_ptr<owner_type> > roboctrl::multiton::details::multiton_impl< owner_type >::instances
static

在文件 multiton.hpp 第 112 行定义.

◆ mutex_

template<typename owner_type >
std::mutex roboctrl::multiton::details::multiton_impl< owner_type >::mutex_ {}
static

在文件 multiton.hpp 第 111 行定义.


该结构体的文档由以下文件生成: