vdr
2.6.1
|
#include <plugin.h>
Public Member Functions | |
cPluginManager (const char *Directory) | |
virtual | ~cPluginManager () |
void | SetDirectory (const char *Directory) |
void | AddPlugin (const char *Args) |
bool | LoadPlugins (bool Log=false) |
bool | InitializePlugins (void) |
bool | StartPlugins (void) |
void | Housekeeping (void) |
void | MainThreadHook (void) |
void | StopPlugins (void) |
void | Shutdown (bool Log=false) |
Static Public Member Functions | |
static bool | Active (const char *Prompt=NULL) |
static cPlugin * | GetNextWakeupPlugin (void) |
static bool | HasPlugins (void) |
static cPlugin * | GetPlugin (int Index) |
static cPlugin * | GetPlugin (const char *Name) |
static cPlugin * | CallFirstService (const char *Id, void *Data=NULL) |
static bool | CallAllServices (const char *Id, void *Data=NULL) |
Private Attributes | |
char * | directory |
time_t | lastHousekeeping |
int | nextHousekeeping |
cDlls | dlls |
Static Private Attributes | |
static cPluginManager * | pluginManager = NULL |
cPluginManager::cPluginManager | ( | const char * | Directory | ) |
Definition at line 303 of file plugin.c.
References directory, lastHousekeeping, nextHousekeeping, pluginManager, and SetDirectory().
|
virtual |
Definition at line 316 of file plugin.c.
References directory, pluginManager, and Shutdown().
|
static |
Definition at line 427 of file plugin.c.
References cPlugin::Active(), cInterface::Confirm(), dlls, cList< T >::First(), Interface, isempty(), cList< T >::Next(), pluginManager, and cString::sprintf().
Referenced by cShutdownHandler::ConfirmRestart(), and cShutdownHandler::ConfirmShutdown().
void cPluginManager::AddPlugin | ( | const char * | Args | ) |
Definition at line 330 of file plugin.c.
References cListBase::Add(), APIVERSION, cVector< T >::At(), directory, dlls, esyslog, LIBVDR_PREFIX, cVector< T >::Size(), skipspace(), SO_INDICATOR, and cString::sprintf().
Referenced by main().
|
static |
Definition at line 499 of file plugin.c.
References dlls, cList< T >::First(), cList< T >::Next(), pluginManager, and cPlugin::Service().
Referenced by cPluginSvcCli::MainMenuAction().
|
static |
Definition at line 487 of file plugin.c.
References dlls, cList< T >::First(), cList< T >::Next(), pluginManager, and cPlugin::Service().
Referenced by cMenuMain::cMenuMain(), cPluginSvcCli::MainMenuAction(), and cMenuMain::ProcessKey().
|
static |
Definition at line 444 of file plugin.c.
References dlls, cList< T >::First(), cList< T >::Next(), pluginManager, and cPlugin::WakeupTime().
Referenced by cShutdownHandler::ConfirmShutdown(), and cShutdownHandler::DoShutdown().
|
static |
Definition at line 475 of file plugin.c.
References dlls, cList< T >::First(), cPlugin::Name(), cList< T >::Next(), and pluginManager.
|
static |
Definition at line 469 of file plugin.c.
References dlls, cList< T >::Get(), cDll::Plugin(), and pluginManager.
Referenced by cSVDRPServer::CmdHELP(), cSVDRPServer::CmdPLUG(), cMenuSetupPlugins::cMenuSetupPlugins(), cSetup::Load(), main(), cPluginSvcCli::MainMenuAction(), cKeyMacro::Parse(), cMenuSetupPlugins::ProcessKey(), cMenuMain::ProcessKey(), and cMenuMain::Set().
|
static |
Definition at line 464 of file plugin.c.
References cListBase::Count(), dlls, and pluginManager.
Referenced by main(), and cMenuSetup::Set().
void cPluginManager::Housekeeping | ( | void | ) |
Definition at line 402 of file plugin.c.
References cListBase::Count(), dlls, cList< T >::Get(), cPlugin::Housekeeping(), HOUSEKEEPINGDELTA, lastHousekeeping, nextHousekeeping, and cDll::Plugin().
Referenced by main().
bool cPluginManager::InitializePlugins | ( | void | ) |
Definition at line 375 of file plugin.c.
References cPlugin::Description(), dlls, cList< T >::First(), cPlugin::Initialize(), isyslog, cPlugin::Name(), cList< T >::Next(), and cPlugin::Version().
Referenced by main().
bool cPluginManager::LoadPlugins | ( | bool | Log = false | ) |
Definition at line 366 of file plugin.c.
References dlls, cList< T >::First(), and cList< T >::Next().
Referenced by main().
void cPluginManager::MainThreadHook | ( | void | ) |
Definition at line 418 of file plugin.c.
References dlls, cList< T >::First(), cPlugin::MainThreadHook(), cList< T >::Next(), and pluginManager.
Referenced by main().
void cPluginManager::SetDirectory | ( | const char * | Directory | ) |
Definition at line 324 of file plugin.c.
References directory.
Referenced by cPluginManager(), and main().
void cPluginManager::Shutdown | ( | bool | Log = false | ) |
Definition at line 524 of file plugin.c.
References cListBase::Del(), dlls, isyslog, cList< T >::Last(), cPlugin::Name(), and cDll::Plugin().
Referenced by main(), and ~cPluginManager().
bool cPluginManager::StartPlugins | ( | void | ) |
Definition at line 388 of file plugin.c.
References dlls, cList< T >::First(), isyslog, cPlugin::Name(), cList< T >::Next(), cPlugin::Start(), and cPlugin::started.
Referenced by main().
void cPluginManager::StopPlugins | ( | void | ) |
Definition at line 512 of file plugin.c.
References dlls, isyslog, cList< T >::Last(), cPlugin::Name(), cList< T >::Prev(), cPlugin::started, and cPlugin::Stop().
Referenced by main().
|
private |
Definition at line 90 of file plugin.h.
Referenced by AddPlugin(), cPluginManager(), SetDirectory(), and ~cPluginManager().
|
private |
Definition at line 93 of file plugin.h.
Referenced by Active(), AddPlugin(), CallAllServices(), CallFirstService(), GetNextWakeupPlugin(), GetPlugin(), HasPlugins(), Housekeeping(), InitializePlugins(), LoadPlugins(), MainThreadHook(), Shutdown(), StartPlugins(), and StopPlugins().
|
private |
Definition at line 91 of file plugin.h.
Referenced by cPluginManager(), and Housekeeping().
|
private |
Definition at line 92 of file plugin.h.
Referenced by cPluginManager(), and Housekeeping().
|
staticprivate |
Definition at line 89 of file plugin.h.
Referenced by Active(), CallAllServices(), CallFirstService(), cPluginManager(), GetNextWakeupPlugin(), GetPlugin(), HasPlugins(), MainThreadHook(), and ~cPluginManager().