SASSY  0.0
Software Architecture Support System
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Classes | Namespaces | Macros | Typedefs | Functions
plugin.h File Reference

Declarations for the plug-in component of libcfi. More...

#include "stringy.h"
#include <map>
#include <list>
#include <memory>
#include <iostream>

Go to the source code of this file.

Classes

class  SASSY::cfi::PlugIn
 Base class for objects loaded from dynamically loaded libraries. More...
 
class  SASSY::cfi::AutoRunPlugIn
 Base class for plug ins that are run immediately that the library is loaded. More...
 
class  SASSY::cfi::PlugInFactory
 Base class for factories that create plug-in objects. More...
 
class  SASSY::cfi::PlugInFamilyFactoryT< F >
 Template base class for families of plug-in factories. More...
 
class  SASSY::cfi::PlugInFactoryT< F, P >
 Template class for factories. More...
 
struct  SASSY::cfi::PlugInDescriptor
 Descriptor for plug-ins that can be used by the application. More...
 
struct  SASSY::cfi::PlugInDetails
 Details of plug-ins as provided by the loaded library. More...
 
class  SASSY::cfi::PlugInLib
 Manages an instance of a dynamically loaded shared library. More...
 
class  SASSY::cfi::PlugInMgr
 Manage the handling of plug-in shared libraries. More...
 

Namespaces

 SASSY
 The namespace for the Software Architecture Support System project.
 
 SASSY::cfi
 The namespace for the Common Facilities Infrastructure components.
 

Macros

#define SASSY_PLUGIN_VERSION   "0.1"
 Version number for plug-ins. This is checked when the library is loaded.
 

Typedefs

typedef std::shared_ptr
< PlugInLib > 
SASSY::cfi::PlugInLibPtr
 Shared pointer to PlugInLib.
 
typedef std::unique_ptr
< AutoRunPlugIn > 
SASSY::cfi::AutoRunPlugInPtr
 Unique pointer to an AutoRunPlugIn.
 

Functions

void initSassyPlugin ()
 Initialise the plugin. More...
 
void closeSassyPlugin ()
 Shutdown the plugin. More...
 

Detailed Description

Declarations for the plug-in component of libcfi.

Applications will include this file if the need to load plug-ins such as used by the testing component.

Plug-in libraries will include this file.

Function Documentation

void closeSassyPlugin ( )

Shutdown the plugin.

Each plug-in will implement this function. It should delete the factory objects.

void initSassyPlugin ( )

Initialise the plugin.

Each plug-in will implement this function. It should add a PlugInDetails object to the PlugInMgr