## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- File List
- File Members

# csutil/csshlib.h File Reference

Crystal Space cross-platform shared library management. More...

`#include "csextern.h"`
`#include "csutil/ref.h"`
`#include "csutil/stringarray.h"`
`#include "csutil/syspath.h"`
`#include "iutil/string.h"`

Go to the source code of this file.

## Low-level shared library support

typedef void * | csLibraryHandle
void * | csGetLibrarySymbol (csLibraryHandle Handle, char const *iName)
| Return a pointer to a symbol within given shared library.
bool | csGetLoadLibraryVerbose ()
| Query if failed dynamic library loads generate verbose messages.
csRef< iString > | csGetPluginMetadata (const char *fullPath, csRef< iDocument > &metadata)
| Retrive a plugin's metadata.
csLibraryHandle | csLoadLibrary (char const *iName)
| Load a shared library and return a library handle, which is used later to query and unload the library.
void | csPrintLibraryError (char const *iModule)
| Print out the latest dynamic loader error.
csRef< iStringArray > | csScanPluginDir (const char *dir, csRef< iStringArray > &plugins, bool recursive=true)
| Scan a given directory for plugins and return a list of the plugin native file names and their respective metadata.
csRef< iStringArray > | csScanPluginDirs (csPathsList *dirs, csRef< iStringArray > &plugins)
| Scan some given directories for plugins.
void | csSetLoadLibraryVerbose (bool)
| Control whether dynamic library loading messages are verbose or terse.
bool | csUnloadLibrary (csLibraryHandle Handle)
| Unload a shared library given its handle.

## Detailed Description

Crystal Space cross-platform shared library management.

Definition in file csshlib.h.