FindPluginsArgs#

Fully qualified name: carb::FindPluginsArgs

Defined in carb/FindPlugins.h

struct FindPluginsArgs#

Arguments that are passed to findPlugins().

Public Members

cpp::span<const cpp::string_view> searchPaths#

Search folders to look for plugins in.

This may contain relative or absolute paths. Absolute paths in the list will be searched directly. If search paths configuration is empty, the fall-back values are taken from the default plugin desc.

Warning

All relative paths will be resolved relative to carb::filesystem::IFileSystem::getAppDirectoryPath(), not the current working directory.

bool searchRecursive#

Search the given paths recursively if true.

cpp::span<const cpp::string_view> loadedFileWildcards#

Filename wildcards to select loaded files. * and ? can be used, e.g. “carb.*.pl?gin”.

If empty, a reasonable default is used.

cpp::span<const cpp::string_view> reloadableFileWildcards#

Filename wildcards to mark loaded files as reloadable. Framework will treat them specially to allow overwriting source plugins and will monitor them for changes.

cpp::span<const cpp::string_view> excludedFileWildcards#

Filename wildcards to select excluded files. * and ? can be used.

FindPluginsOnMatchedFn *onMatched#

Callback when a file is matched but not excluded.

Warning

Must not be nullptr.

void *onMatchedContext#

Context for onMatched. May be nullptr.

filesystem::FindFilesOnExcludedFn *onExcluded#

Callback when a file is matched and excluded.

May be nullptr.

void *onExcludedContext#

Context for onExcluded. May be nullptr.

filesystem::FindFilesOnSkippedFn *onSkipped#

Callback when a file is not match one of the “loadedFileWildcard” patterns.

May be nullptr.

void *onSkippedContext#

Context for onSkipped. May be nullptr.

filesystem::FindFilesOnSearchPathFn *onSearchPath#

Callback invoked before searching one of the given directories.

May be nullptr.

void *onSearchPathContext#

Context for onSearchPath. May be nullptr.

filesystem::IFileSystem *fs#

IFileSystem object to use to walk the file system.

If nullptr, tryAcquireInterface<IFileSystem> is called.