TSDuck v3.40-3963
MPEG Transport Stream Toolkit
|
A repository of TSDuck extensions. More...
#include <tsDuckExtensionRepository.h>
Classes | |
class | Register |
A class to register extension. More... | |
Public Member Functions | |
size_t | extensionCount () const |
Get the number of loaded extensions. | |
UString | listExtensions (Report &report) |
List all loaded extensions. | |
Static Public Member Functions | |
static DuckExtensionRepository & | Instance () |
Get the instance of the singleton of this class. | |
A repository of TSDuck extensions.
This class is a singleton. Use static Instance() method to access the single instance.
A TSDuck Extension is a dynamically loaded shared library. It is typically provided by some third party. Unlike tsp plugins, a TSDuck extension shared library has no callable interface. Instead, it statically registers hooks inside the TSDuck library, when the TSDuck extension shared library is loaded.
The extensions repository is responsible for statically loading all available extensions. The extension shared libraries are all shared libraries named "tslibext_*", using the same search rules as tsp plugins.
Since this operation occurs before entering the main code of any executable using the TSDuck library, the application has no control over the loading of extensions. The following environment variables can be defined to alter the loading of extensions:
|
inlinestatic |
Get the instance of the singleton of this class.
|
inline |
Get the number of loaded extensions.
List all loaded extensions.
This function is typically used to implement the tsversion --list-extensions
option.
[in,out] | report | Where to report errors. Used to get verbosity level. |