8#include "Arp/System/Commons/Runtime/SharedLibraryMemoryLockOption.hpp" 
   11namespace Arp { 
namespace System { 
namespace Ve
 
   13class ISharedLibraryService;
 
   16namespace Arp { 
namespace System { 
namespace Commons { 
namespace Runtime
 
   23    using SymbolNames = std::vector<String>;
 
   46    static String GetArpLibrariesDirectory(
void);
 
   51    Arp::System::Ve::ISharedLibraryService* pSharedLibraryService = 
nullptr;
 
This class represents the Arp String. The implementation is based on std::string.
Definition: String.hpp:39
 
High level API to enable work with dynamically loadable shared libraries.
Definition: SharedLibrary.hpp:21
 
void Load(const String &path, SharedLibraryMemoryLockOption sharedLibraryMemoryLockOption=SharedLibraryMemoryLockOption::Nothing)
Loads the specified shared library.
Definition: SharedLibrary.cpp:66
 
SharedLibrary(const SharedLibrary &arg)=delete
Copy contructor.
 
bool TryLoad(const String &path, SharedLibraryMemoryLockOption sharedLibraryMemoryLockOption=SharedLibraryMemoryLockOption::Nothing)
Loads the specified shared library.
Definition: SharedLibrary.cpp:86
 
static bool ProbeLibrary(const String &path, String &probedPath)
Probes the library
Definition: SharedLibrary.cpp:139
 
~SharedLibrary(void)
Destructs this instance and frees all resouces.
Definition: SharedLibrary.cpp:36
 
SharedLibrary & operator=(const SharedLibrary &arg)=delete
Assignment operator.
 
SharedLibrary(void)
Constructs an SharedLibrary instance.
Definition: SharedLibrary.cpp:23
 
static String GetFormattedPath(const String &path)
Formats the path depending on OS.
Definition: SharedLibrary.cpp:117
 
void * GetFunctionAddress(const String &symbolName)
Returns the address where specified symbol is located in the memory.
Definition: SharedLibrary.cpp:104
 
void Unload(void)
Unloads the shared library.
Definition: SharedLibrary.cpp:94
 
SymbolNames GetExportedFunctionNames(const String &path) const
Loads the specified shared library.
Definition: SharedLibrary.cpp:48
 
SharedLibraryMemoryLockOption
Options to lock the memory of shared library by !:SharedLibrary when loading the binary.
Definition: SharedLibraryMemoryLockOption.hpp:17
 
Root namespace for the PLCnext API