Apollo 10.0
自动驾驶开放平台
apollo::cyber::class_loader::utility::ClassFactory< ClassObject, Base > 模板类 参考

#include <class_factory.h>

类 apollo::cyber::class_loader::utility::ClassFactory< ClassObject, Base > 继承关系图:
apollo::cyber::class_loader::utility::ClassFactory< ClassObject, Base > 的协作图:

Public 成员函数

 ClassFactory (const std::string &class_name, const std::string &base_class_name)
 
BaseCreateObj () const
 
- Public 成员函数 继承自 apollo::cyber::class_loader::utility::AbstractClassFactory< Base >
 AbstractClassFactory (const std::string &class_name, const std::string &base_class_name)
 
- Public 成员函数 继承自 apollo::cyber::class_loader::utility::AbstractClassFactoryBase
 AbstractClassFactoryBase (const std::string &class_name, const std::string &base_class_name)
 
virtual ~AbstractClassFactoryBase ()
 
void SetRelativeLibraryPath (const std::string &library_path)
 
void AddOwnedClassLoader (ClassLoader *loader)
 
void RemoveOwnedClassLoader (const ClassLoader *loader)
 
bool IsOwnedBy (const ClassLoader *loader)
 
bool IsOwnedByAnybody ()
 
std::vector< ClassLoader * > GetRelativeClassLoaders ()
 
const std::string GetRelativeLibraryPath () const
 
const std::string GetBaseClassName () const
 
const std::string GetClassName () const
 

额外继承的成员函数

- Protected 属性 继承自 apollo::cyber::class_loader::utility::AbstractClassFactoryBase
std::vector< ClassLoader * > relative_class_loaders_
 
std::string relative_library_path_
 
std::string base_class_name_
 
std::string class_name_
 

详细描述

template<typename ClassObject, typename Base>
class apollo::cyber::class_loader::utility::ClassFactory< ClassObject, Base >

在文件 class_factory.h70 行定义.

构造及析构函数说明

◆ ClassFactory()

template<typename ClassObject , typename Base >
apollo::cyber::class_loader::utility::ClassFactory< ClassObject, Base >::ClassFactory ( const std::string &  class_name,
const std::string &  base_class_name 
)
inline

在文件 class_factory.h72 行定义.

74 : AbstractClassFactory<Base>(class_name, base_class_name) {}

成员函数说明

◆ CreateObj()

template<typename ClassObject , typename Base >
Base * apollo::cyber::class_loader::utility::ClassFactory< ClassObject, Base >::CreateObj ( ) const
inlinevirtual

实现了 apollo::cyber::class_loader::utility::AbstractClassFactory< Base >.

在文件 class_factory.h76 行定义.

76{ return new ClassObject; }

该类的文档由以下文件生成: