vdr
1.7.27
|
#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) |
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) |
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 |
Definition at line 77 of file include/vdr/plugin.h.
cPluginManager::cPluginManager | ( | const char * | Directory | ) |
Definition at line 262 of file plugin.c.
References directory, lastHousekeeping, nextHousekeeping, pluginManager, and SetDirectory().
cPluginManager::~cPluginManager | ( | ) | [virtual] |
Definition at line 275 of file plugin.c.
References directory, pluginManager, and Shutdown().
cPluginManager::cPluginManager | ( | const char * | Directory | ) |
virtual cPluginManager::~cPluginManager | ( | ) | [virtual] |
bool cPluginManager::Active | ( | const char * | Prompt = NULL | ) | [static] |
Definition at line 386 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().
static bool cPluginManager::Active | ( | const char * | Prompt = NULL | ) | [static] |
void cPluginManager::AddPlugin | ( | const char * | Args | ) |
Definition at line 289 of file plugin.c.
References cListBase::Add(), APIVERSION, directory, dlls, esyslog, LIBVDR_PREFIX, cReadDir::Next(), skipspace(), SO_INDICATOR, and cString::sprintf().
Referenced by main().
void cPluginManager::AddPlugin | ( | const char * | Args | ) |
bool cPluginManager::CallAllServices | ( | const char * | Id, |
void * | Data = NULL |
||
) | [static] |
Definition at line 458 of file plugin.c.
References dlls, cList< T >::First(), cList< T >::Next(), pluginManager, and cPlugin::Service().
Referenced by cPluginSvcCli::MainMenuAction().
static bool cPluginManager::CallAllServices | ( | const char * | Id, |
void * | Data = NULL |
||
) | [static] |
static cPlugin* cPluginManager::CallFirstService | ( | const char * | Id, |
void * | Data = NULL |
||
) | [static] |
cPlugin * cPluginManager::CallFirstService | ( | const char * | Id, |
void * | Data = NULL |
||
) | [static] |
Definition at line 446 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().
cPlugin * cPluginManager::GetNextWakeupPlugin | ( | void | ) | [static] |
Definition at line 403 of file plugin.c.
References dlls, cList< T >::First(), cList< T >::Next(), pluginManager, and cPlugin::WakeupTime().
Referenced by cShutdownHandler::ConfirmShutdown(), and cShutdownHandler::DoShutdown().
static cPlugin* cPluginManager::GetNextWakeupPlugin | ( | void | ) | [static] |
cPlugin * cPluginManager::GetPlugin | ( | int | Index | ) | [static] |
Definition at line 428 of file plugin.c.
References dlls, cList< T >::Get(), cDll::Plugin(), and pluginManager.
Referenced by cSVDRP::CmdHELP(), cSVDRP::CmdPLUG(), cMenuSetupPlugins::cMenuSetupPlugins(), cSetup::Load(), main(), cPluginSvcCli::MainMenuAction(), cKeyMacro::Parse(), cMenuMain::ProcessKey(), cMenuSetupPlugins::ProcessKey(), and cMenuMain::Set().
static cPlugin* cPluginManager::GetPlugin | ( | int | Index | ) | [static] |
cPlugin * cPluginManager::GetPlugin | ( | const char * | Name | ) | [static] |
Definition at line 434 of file plugin.c.
References dlls, cList< T >::First(), cPlugin::Name(), cList< T >::Next(), and pluginManager.
static cPlugin* cPluginManager::GetPlugin | ( | const char * | Name | ) | [static] |
bool cPluginManager::HasPlugins | ( | void | ) | [static] |
Definition at line 423 of file plugin.c.
References cListBase::Count(), dlls, and pluginManager.
Referenced by main(), and cMenuSetup::Set().
static bool cPluginManager::HasPlugins | ( | void | ) | [static] |
void cPluginManager::Housekeeping | ( | void | ) |
void cPluginManager::Housekeeping | ( | void | ) |
Definition at line 361 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 334 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::InitializePlugins | ( | void | ) |
bool cPluginManager::LoadPlugins | ( | bool | Log = false | ) |
bool cPluginManager::LoadPlugins | ( | bool | Log = false | ) |
Definition at line 325 of file plugin.c.
References dlls, cList< T >::First(), and cList< T >::Next().
Referenced by main().
void cPluginManager::MainThreadHook | ( | void | ) |
void cPluginManager::MainThreadHook | ( | void | ) |
Definition at line 377 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 283 of file plugin.c.
References directory.
Referenced by cPluginManager(), and main().
void cPluginManager::SetDirectory | ( | const char * | Directory | ) |
void cPluginManager::Shutdown | ( | bool | Log = false | ) |
void cPluginManager::Shutdown | ( | bool | Log = false | ) |
Definition at line 483 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 | ) |
bool cPluginManager::StartPlugins | ( | void | ) |
Definition at line 347 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 471 of file plugin.c.
References dlls, isyslog, cList< T >::Last(), cPlugin::Name(), cList< T >::Prev(), cPlugin::started, and cPlugin::Stop().
Referenced by main().
void cPluginManager::StopPlugins | ( | void | ) |
char * cPluginManager::directory [private] |
Definition at line 80 of file include/vdr/plugin.h.
Referenced by AddPlugin(), cPluginManager(), SetDirectory(), and ~cPluginManager().
cDlls cPluginManager::dlls [private] |
Definition at line 83 of file include/vdr/plugin.h.
Referenced by Active(), AddPlugin(), CallAllServices(), CallFirstService(), GetNextWakeupPlugin(), GetPlugin(), HasPlugins(), Housekeeping(), InitializePlugins(), LoadPlugins(), MainThreadHook(), Shutdown(), StartPlugins(), and StopPlugins().
time_t cPluginManager::lastHousekeeping [private] |
Definition at line 81 of file include/vdr/plugin.h.
Referenced by cPluginManager(), and Housekeeping().
int cPluginManager::nextHousekeeping [private] |
Definition at line 82 of file include/vdr/plugin.h.
Referenced by cPluginManager(), and Housekeeping().
static cPluginManager * cPluginManager::pluginManager = NULL [static, private] |
Definition at line 79 of file include/vdr/plugin.h.
Referenced by Active(), CallAllServices(), CallFirstService(), cPluginManager(), GetNextWakeupPlugin(), GetPlugin(), HasPlugins(), MainThreadHook(), and ~cPluginManager().