Back to index

nordugrid-arc-nox  1.1.0~rc6
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends
Arc::PluginArgument Class Reference

Base class for passing arguments to loadable ARC components. More...

#include <Plugin.h>

Inheritance diagram for Arc::PluginArgument:
Inheritance graph
[legend]
Collaboration diagram for Arc::PluginArgument:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual ~PluginArgument (void)
PluginsFactoryget_factory (void)
 Returns pointer to factory which instantiated plugin.
Glib::Module * get_module (void)
 Returns pointer to loadable module/library which contains plugin.

Protected Member Functions

 PluginArgument (void)

Private Member Functions

void set_factory (PluginsFactory *factory)
void set_module (Glib::Module *module)

Private Attributes

PluginsFactoryfactory_
Glib::Module * module_

Friends

class PluginsFactory

Detailed Description

Base class for passing arguments to loadable ARC components.

During its creation constructor function of ARC loadable component expects instance of class inherited from this one or wrapped in it. Then dynamic type casting is used for obtaining class of expected kind.

Definition at line 37 of file Plugin.h.


Constructor & Destructor Documentation

Arc::PluginArgument::PluginArgument ( void  ) [protected]

Definition at line 581 of file Plugin.cpp.

                                    : factory_(NULL), module_(NULL) {
  }

Definition at line 584 of file Plugin.cpp.

                                      {
  }

Member Function Documentation

Returns pointer to factory which instantiated plugin.

Because factory usually destroys/unloads plugins in its destructor it should be safe to keep this pointer inside plugin for later use. But one must always check.

Definition at line 587 of file Plugin.cpp.

                                                  {
    return factory_;
  }

Here is the caller graph for this function:

Glib::Module * Arc::PluginArgument::get_module ( void  )

Returns pointer to loadable module/library which contains plugin.

Corresponding factory keeps list of modules till itself is destroyed. So it should be safe to keep that pointer. But care must be taken if module contains persistent plugins. Such modules stay in memory after factory is detroyed. So it is advisable to use obtained pointer only in constructor function of plugin.

Definition at line 591 of file Plugin.cpp.

                                             {
    return module_;
  }

Here is the caller graph for this function:

void Arc::PluginArgument::set_factory ( PluginsFactory factory) [private]

Definition at line 595 of file Plugin.cpp.

                                                          {
    factory_=factory;
  }

Here is the caller graph for this function:

void Arc::PluginArgument::set_module ( Glib::Module *  module) [private]

Definition at line 599 of file Plugin.cpp.

                                                    {
    module_=module;
  }

Here is the caller graph for this function:


Friends And Related Function Documentation

friend class PluginsFactory [friend]

Definition at line 38 of file Plugin.h.


Member Data Documentation

Definition at line 40 of file Plugin.h.

Glib::Module* Arc::PluginArgument::module_ [private]

Definition at line 41 of file Plugin.h.


The documentation for this class was generated from the following files: