7#ifndef RIME_COMPONENT_H_
8#define RIME_COMPONENT_H_
20template <
class T,
class Arg>
37 T*
Create(
typename T::Initializer arg) {
return new T(arg); }
virtual ~ComponentBase()=default
Definition component.h:21
Arg Initializer
Definition component.h:22
static Component * Require(const string &name)
Definition component.h:29
Definition component.h:24
virtual T * Create(Initializer arg)=0
Definition component.h:35
T * Create(typename T::Initializer arg)
Definition component.h:37
static RIME_DLL Registry & instance()
Definition registry.cc:47
RIME_DLL ComponentBase * Find(const string &name)
Definition registry.cc:39