libnebular::Core Class Reference
[User API]

Core library services More...

#include <libnebular.hpp>

List of all members.

Classes

class  Impl_
 Implementation details. More...

Public Member Functions

 Core ()
 For internal usage only.
 ~Core ()
 For internal usage only.
void setPluginDir (const std::string &newPluginDir)
 Sets (only) plugin directory.
void registerPlugins ()
 Searches through plugin directory and registers all plugins found.
bool isPluginRegDone () const
 Is plugin registration done.
void makePluginsRegistered ()
 If plugin registration haven't been done, do it.

Static Public Member Functions

static Coreget ()
 (The only) instance of Core

Friends

class PluginIteratorImpl_
PluginIterator pluginBegin ()
 Iterator value for first registered PicHandlerMgr.
PluginIterator pluginEnd ()
 Iterator value for after-the-last registered PicHandlerMgr.

Detailed Description

Core library services

Responsible for PicHandlerMgr registration and storage. Singleton.

Design note:
How to specify which directory is to search? Use setPluginDir() and text file list enumerating plugins (Or how to do so in other way and without use of system-specific filesystem functions or sth like library ⟨Boost.filesystem⟩?). No, let's search given directory for names "libnebular-plugin-⟨something⟩.so" by system-specific filesystem functions.
Design note:
Register plugins on file type detection or on creation of object of this type? On file type detection or sooner by user request.

Definition at line 256 of file libnebular.hpp.


Constructor & Destructor Documentation

libnebular::Core::Core (  ) 

For internal usage only.

Definition at line 202 of file core.cpp.

libnebular::Core::~Core (  ) 

For internal usage only.

Definition at line 206 of file core.cpp.


Member Function Documentation

Core & libnebular::Core::get (  )  [static]

(The only) instance of Core

Definition at line 324 of file core.cpp.

bool libnebular::Core::isPluginRegDone (  )  const

Is plugin registration done.

Definition at line 316 of file core.cpp.

void libnebular::Core::makePluginsRegistered (  ) 

If plugin registration haven't been done, do it.

Definition at line 310 of file core.cpp.

void libnebular::Core::registerPlugins (  ) 

Searches through plugin directory and registers all plugins found.

Structure for enumeration of plugin files with help of GNU C library

With some corrections can be used for other file types' enumeration

Definition at line 208 of file core.cpp.

void libnebular::Core::setPluginDir ( const std::string &  newPluginDir  ) 

Sets (only) plugin directory.

Definition at line 320 of file core.cpp.


Friends And Related Function Documentation

PluginIterator pluginBegin (  )  [friend]

Iterator value for first registered PicHandlerMgr.

PluginIterator pluginEnd (  )  [friend]

Iterator value for after-the-last registered PicHandlerMgr.

friend class PluginIteratorImpl_ [friend]

Definition at line 275 of file libnebular.hpp.


The documentation for this class was generated from the following files:
Generated on Sun May 29 18:23:57 2011 for libnebular by  doxygen 1.6.3