Apollo  6.0
Open source self driving car software
Public Types | Public Member Functions | List of all members
apollo::cyber::class_loader::SharedLibrary Class Reference

#include <shared_library.h>

Collaboration diagram for apollo::cyber::class_loader::SharedLibrary:
Collaboration graph

Public Types

enum  Flags { SHLIB_GLOBAL = 1, SHLIB_LOCAL = 2 }
 

Public Member Functions

 SharedLibrary ()=default
 
virtual ~SharedLibrary ()
 
 SharedLibrary (const std::string &path)
 
 SharedLibrary (const std::string &path, int flags)
 
void Load (const std::string &path)
 
void Load (const std::string &path, int flags)
 
void Unload ()
 
bool IsLoaded ()
 
bool HasSymbol (const std::string &name)
 
void * GetSymbol (const std::string &name)
 
const std::string & GetPath () const
 
 SharedLibrary (const SharedLibrary &)=delete
 
SharedLibraryoperator= (const SharedLibrary &)=delete
 

Member Enumeration Documentation

◆ Flags

Enumerator
SHLIB_GLOBAL 
SHLIB_LOCAL 

Constructor & Destructor Documentation

◆ SharedLibrary() [1/4]

apollo::cyber::class_loader::SharedLibrary::SharedLibrary ( )
default

◆ ~SharedLibrary()

virtual apollo::cyber::class_loader::SharedLibrary::~SharedLibrary ( )
virtual

◆ SharedLibrary() [2/4]

apollo::cyber::class_loader::SharedLibrary::SharedLibrary ( const std::string &  path)
explicit

◆ SharedLibrary() [3/4]

apollo::cyber::class_loader::SharedLibrary::SharedLibrary ( const std::string &  path,
int  flags 
)

◆ SharedLibrary() [4/4]

apollo::cyber::class_loader::SharedLibrary::SharedLibrary ( const SharedLibrary )
delete

Member Function Documentation

◆ GetPath()

const std::string& apollo::cyber::class_loader::SharedLibrary::GetPath ( ) const
inline

◆ GetSymbol()

void* apollo::cyber::class_loader::SharedLibrary::GetSymbol ( const std::string &  name)

◆ HasSymbol()

bool apollo::cyber::class_loader::SharedLibrary::HasSymbol ( const std::string &  name)

◆ IsLoaded()

bool apollo::cyber::class_loader::SharedLibrary::IsLoaded ( )

◆ Load() [1/2]

void apollo::cyber::class_loader::SharedLibrary::Load ( const std::string &  path)

◆ Load() [2/2]

void apollo::cyber::class_loader::SharedLibrary::Load ( const std::string &  path,
int  flags 
)

◆ operator=()

SharedLibrary& apollo::cyber::class_loader::SharedLibrary::operator= ( const SharedLibrary )
delete

◆ Unload()

void apollo::cyber::class_loader::SharedLibrary::Unload ( )

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