Apollo  6.0
Open source self driving car software
Public Member Functions | List of all members
apollo::cyber::class_loader::utility::ClassFactory< ClassObject, Base > Class Template Reference

#include <class_factory.h>

Inheritance diagram for apollo::cyber::class_loader::utility::ClassFactory< ClassObject, Base >:
Inheritance graph
Collaboration diagram for apollo::cyber::class_loader::utility::ClassFactory< ClassObject, Base >:
Collaboration graph

Public Member Functions

 ClassFactory (const std::string &class_name, const std::string &base_class_name)
 
BaseCreateObj () const
 
- Public Member Functions inherited from apollo::cyber::class_loader::utility::AbstractClassFactory< Base >
 AbstractClassFactory (const std::string &class_name, const std::string &base_class_name)
 
- Public Member Functions inherited from 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
 

Additional Inherited Members

- Protected Attributes inherited from 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_
 

Constructor & Destructor Documentation

◆ 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

Member Function Documentation

◆ CreateObj()

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

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