Crystal Space: 4.3.1.9 Plugin Discovery

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

#### 4.3.1.9 Plugin Discovery

At program launch time, SCF discovers plugins automatically by searching a set of directories, and creates an internal database associating available SCF class names with the plugin modules which implement them. The directories which SCF searches by default are:

- The application resource directory as returned by `csGetResourceDir()`. On most platforms, this is the same as the directory containing the application, however, on MacOS/X, it is the ``Resources'` directory within the Cocoa application wrapper.
- The directory containing the application (or containing the Cocoa application wrapper for MacOS/X) as returned by `csGetAppDir()`.
- The installed Crystal Space resource directories as returned by `csGetConfigPath()`. This is often the value of the ``CRYSTAL'` environment variable, or the ``CrystalSpaceRoot'` default setting on MacOS/X (which is often stored within the ``NSGlobalDomain'` domain).

If you would like SCF to scan additional directories, you can invoke either of these two functions:

- `scfInitialize (csPluginPaths const*)`
- `iSCF::ScanPluginsPath(char const*, bool, char const*)`

Finally, if need to manually register a single plugin module with SCF for which you know the native pathname (not a VFS pathname), you can invoke `iSCF::RegisterPlugin()`.

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ]

This document was generated using texi2html 1.76.