System documentation of the GNU Image-Finding Tool

Classes | Public Types | Public Member Functions | Protected Attributes | List of all members
CAccessorFactoryContainer Class Reference

This is destined to hold a number of CAccessorFactories. More...

#include <CAccessorFactoryContainer.h>

Public Types

typedef map< string,
CContentElement > 
CContent
 Typedef: The content is a map of string to content element In this map is noted, which accessors are open for the collection with the given ID.
 

Public Member Functions

 CAccessorFactoryContainer ()
 construct this. More...
 
void configure (CXMLElement *inConfigurationData)
 configure this More...
 
 ~CAccessorFactoryContainer ()
 The destructor destroys the CContentElements properly.
 
void registerFactory (CAccessorFactory *inFactory, string inName)
 adding a factory to the content
 
CAccessoropenAccessor (string inName, const CXMLElement &inCollectionElement)
 opening an accessor: if the accessor is already constructed, then simply give the pointer, otherwhise construct a new one using the appropriate factory More...
 
void closeAccessor (string inName)
 closing an accessor. More...
 
bool isPresentFactory (string inName) const
 Is a given factory present in the factory? Useful for building in order to avoid double registration and double dynamic linking.
 

Protected Attributes

CContent mContent
 the content
 

Detailed Description

This is destined to hold a number of CAccessorFactories.

The use of this is to have an open-close-counter for all the factories which have been registered in this

New elements are only constructed if necessary.

Author
Wolfgang Müller

Constructor & Destructor Documentation

CAccessorFactoryContainer::CAccessorFactoryContainer ( )

construct this.

In the case of static linking, this means the construction of factorys for all accessors.

Member Function Documentation

void CAccessorFactoryContainer::closeAccessor ( string  inName)

closing an accessor.

If there have been as many openAccessor as closeAccessor calls, the accessor will be delete-d.

void CAccessorFactoryContainer::configure ( CXMLElement inConfigurationData)

configure this

In the case of dynamic linking we will scan libdir for plugins

CAccessor* CAccessorFactoryContainer::openAccessor ( string  inName,
const CXMLElement inCollectionElement 
)

opening an accessor: if the accessor is already constructed, then simply give the pointer, otherwhise construct a new one using the appropriate factory

Parameters
nameof the accessor to be created
inConfigurationDatathe configuration data of the CXMLElement to be created

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

Need for discussion? Want to contribute? Contact
help-gift@gnu.org Generated using Doxygen