cPluginManager Class Reference

#include <plugin.h>

Collaboration diagram for cPluginManager:

Collaboration graph
[legend]

List of all members.

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 bool HasPlugins (void)
static cPluginGetPlugin (int Index)
static cPluginGetPlugin (const char *Name)
static cPluginCallFirstService (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 cPluginManagerpluginManager = NULL


Detailed Description

Definition at line 78 of file plugin.h.


Constructor & Destructor Documentation

cPluginManager::cPluginManager ( const char *  Directory  ) 

Definition at line 262 of file plugin.c.

References directory, lastHousekeeping, nextHousekeeping, pluginManager, and SetDirectory().

Here is the call graph for this function:

cPluginManager::~cPluginManager (  )  [virtual]

Definition at line 275 of file plugin.c.

References directory, pluginManager, and Shutdown().

Here is the call graph for this function:


Member Function Documentation

void cPluginManager::SetDirectory ( const char *  Directory  ) 

Definition at line 283 of file plugin.c.

References directory.

Referenced by cPluginManager(), and main().

void cPluginManager::AddPlugin ( const char *  Args  ) 

Definition at line 289 of file plugin.c.

References cListBase::Add(), APIVERSION, directory, dlls, LIBVDR_PREFIX, cReadDir::Next(), skipspace(), and SO_INDICATOR.

Referenced by main().

Here is the call graph for this function:

bool cPluginManager::LoadPlugins ( bool  Log = false  ) 

Definition at line 322 of file plugin.c.

References dlls, cList< T >::First(), and cList< T >::Next().

Referenced by main().

Here is the call graph for this function:

bool cPluginManager::InitializePlugins ( void   ) 

Definition at line 331 of file plugin.c.

References cPlugin::Description(), dlls, cList< T >::First(), cPlugin::Initialize(), isyslog, cPlugin::Name(), cList< T >::Next(), cSetup::OSDLanguage, Setup, and cPlugin::Version().

Referenced by main().

Here is the call graph for this function:

bool cPluginManager::StartPlugins ( void   ) 

Definition at line 347 of file plugin.c.

References dlls, cList< T >::First(), isyslog, cPlugin::Name(), cList< T >::Next(), cSetup::OSDLanguage, Setup, cPlugin::Start(), and cPlugin::started.

Referenced by main().

Here is the call graph for this function:

void cPluginManager::Housekeeping ( void   ) 

Definition at line 364 of file plugin.c.

References cListBase::Count(), dlls, cList< T >::Get(), cPlugin::Housekeeping(), HOUSEKEEPINGDELTA, lastHousekeeping, nextHousekeeping, and cDll::Plugin().

Referenced by main().

Here is the call graph for this function:

void cPluginManager::MainThreadHook ( void   ) 

Definition at line 380 of file plugin.c.

References dlls, cList< T >::First(), cPlugin::MainThreadHook(), cList< T >::Next(), and pluginManager.

Referenced by main().

Here is the call graph for this function:

bool cPluginManager::Active ( const char *  Prompt = NULL  )  [static]

Definition at line 389 of file plugin.c.

References cPlugin::Active(), cInterface::Confirm(), dlls, cList< T >::First(), Interface, isempty(), cList< T >::Next(), pluginManager, and cString::sprintf().

Referenced by main(), and cMenuSetup::Restart().

Here is the call graph for this function:

bool cPluginManager::HasPlugins ( void   )  [static]

Definition at line 406 of file plugin.c.

References cListBase::Count(), dlls, and pluginManager.

Referenced by main(), and cMenuSetup::Set().

Here is the call graph for this function:

cPlugin * cPluginManager::GetPlugin ( int  Index  )  [static]

Definition at line 411 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().

Here is the call graph for this function:

cPlugin * cPluginManager::GetPlugin ( const char *  Name  )  [static]

Definition at line 417 of file plugin.c.

References dlls, cList< T >::First(), cPlugin::Name(), cList< T >::Next(), and pluginManager.

Here is the call graph for this function:

cPlugin * cPluginManager::CallFirstService ( const char *  Id,
void *  Data = NULL 
) [static]

Definition at line 429 of file plugin.c.

References dlls, cList< T >::First(), cList< T >::Next(), pluginManager, and cPlugin::Service().

Referenced by cPluginSvcCli::MainMenuAction().

Here is the call graph for this function:

bool cPluginManager::CallAllServices ( const char *  Id,
void *  Data = NULL 
) [static]

Definition at line 441 of file plugin.c.

References dlls, cList< T >::First(), cList< T >::Next(), pluginManager, and cPlugin::Service().

Referenced by cPluginSvcCli::MainMenuAction().

Here is the call graph for this function:

void cPluginManager::StopPlugins ( void   ) 

Definition at line 454 of file plugin.c.

References dlls, isyslog, cList< T >::Last(), cPlugin::Name(), cList< T >::Prev(), cPlugin::started, and cPlugin::Stop().

Referenced by main().

Here is the call graph for this function:

void cPluginManager::Shutdown ( bool  Log = false  ) 

Definition at line 466 of file plugin.c.

References cListBase::Del(), dlls, isyslog, cList< T >::Last(), cPlugin::Name(), and cDll::Plugin().

Referenced by main(), and ~cPluginManager().

Here is the call graph for this function:


Member Data Documentation

cPluginManager * cPluginManager::pluginManager = NULL [static, private]

Definition at line 80 of file plugin.h.

Referenced by Active(), CallAllServices(), CallFirstService(), cPluginManager(), GetPlugin(), HasPlugins(), MainThreadHook(), and ~cPluginManager().

char* cPluginManager::directory [private]

Definition at line 81 of file plugin.h.

Referenced by AddPlugin(), cPluginManager(), SetDirectory(), and ~cPluginManager().

time_t cPluginManager::lastHousekeeping [private]

Definition at line 82 of file plugin.h.

Referenced by cPluginManager(), and Housekeeping().

int cPluginManager::nextHousekeeping [private]

Definition at line 83 of file plugin.h.

Referenced by cPluginManager(), and Housekeeping().

cDlls cPluginManager::dlls [private]

Definition at line 84 of file plugin.h.

Referenced by Active(), AddPlugin(), CallAllServices(), CallFirstService(), GetPlugin(), HasPlugins(), Housekeeping(), InitializePlugins(), LoadPlugins(), MainThreadHook(), Shutdown(), StartPlugins(), and StopPlugins().


The documentation for this class was generated from the following files:
Generated on Tue Nov 6 20:22:11 2007 for VDR by  doxygen 1.5.3-20071008