CLAM::Factory< AbstractProductType >::Registry Class Reference

#include <Factory.hxx>

List of all members.


Detailed Description

template<typename AbstractProductType>
class CLAM::Factory< AbstractProductType >::Registry

This class is an implementation class of the Factory.

It is basically a container that maps keys with creators. It is not ment to be used directly by the user.

Definition at line 215 of file Factory.hxx.


Public Member Functions

CreatorGetCreator (RegistryKey creatorId)
CreatorGetCreatorSafe (RegistryKey creatorId) throw (ErrFactory)
void AddCreator (RegistryKey creatorId, Creator *creator)
void AddCreatorWarningRepetitions (RegistryKey creatorId, Creator *creator)
void AddCreatorSafe (RegistryKey creatorId, Creator *creator) throw (ErrFactory)
void DeleteCreator (RegistryKey creatorId)
void RemoveAllCreators ()
std::size_t Count ()
void GetRegisteredNames (std::list< RegistryKey > &namesList)
std::string GetRegisteredNames ()
bool KeyExists (const RegistryKey &key)
bool AttributeExists (const std::string &key, const std::string &attribute)
Keys GetKeys (const std::string &attribute, const std::string &value)
 Get all keys that have attribute==value in its metadata.
Keys GetKeys ()
 Get all keys in the factory.
Pairs GetPairsFromKey (const std::string &key)
 Return all the metadata available for a product key.
Values GetSetOfValues (const std::string &attribute)
 Get the set of all values present for a given metadata attribute. Example GetSetOfValues("category") could return ["modulators","generators","reverbs"] without repeated items.
Values GetValuesFromAttribute (const std::string &key, const std::string &attribute)
 Return the list of values for a metadata attribute for a product key.
Value GetValueFromAttribute (const std::string &key, const std::string &attribute)
 Return the value for a metadata attribute of product key.
void AddAttribute (const std::string &key, const std::string &attribute, const std::string &value)

Classes

struct  FactoryEntry

Member Function Documentation

template<typename AbstractProductType>
Creator& CLAM::Factory< AbstractProductType >::Registry::GetCreator ( RegistryKey  creatorId  )  [inline]

template<typename AbstractProductType>
Creator& CLAM::Factory< AbstractProductType >::Registry::GetCreatorSafe ( RegistryKey  creatorId  )  throw (ErrFactory) [inline]

template<typename AbstractProductType>
void CLAM::Factory< AbstractProductType >::Registry::AddCreator ( RegistryKey  creatorId,
Creator creator 
) [inline]

template<typename AbstractProductType>
void CLAM::Factory< AbstractProductType >::Registry::AddCreatorWarningRepetitions ( RegistryKey  creatorId,
Creator creator 
) [inline]

template<typename AbstractProductType>
void CLAM::Factory< AbstractProductType >::Registry::AddCreatorSafe ( RegistryKey  creatorId,
Creator creator 
) throw (ErrFactory) [inline]

Definition at line 282 of file Factory.hxx.

Referenced by CLAM::Factory< CLAM::Processing >::AddCreatorSafe().

template<typename AbstractProductType>
void CLAM::Factory< AbstractProductType >::Registry::DeleteCreator ( RegistryKey  creatorId  )  [inline]

Definition at line 288 of file Factory.hxx.

Referenced by CLAM::Factory< CLAM::Processing >::DeleteCreator().

template<typename AbstractProductType>
void CLAM::Factory< AbstractProductType >::Registry::RemoveAllCreators (  )  [inline]

Definition at line 294 of file Factory.hxx.

Referenced by CLAM::Factory< CLAM::Processing >::Clear().

template<typename AbstractProductType>
std::size_t CLAM::Factory< AbstractProductType >::Registry::Count (  )  [inline]

Definition at line 299 of file Factory.hxx.

Referenced by CLAM::Factory< CLAM::Processing >::Count().

template<typename AbstractProductType>
void CLAM::Factory< AbstractProductType >::Registry::GetRegisteredNames ( std::list< RegistryKey > &  namesList  )  [inline]

Definition at line 301 of file Factory.hxx.

Referenced by CLAM::Factory< CLAM::Processing >::GetRegisteredNames().

template<typename AbstractProductType>
std::string CLAM::Factory< AbstractProductType >::Registry::GetRegisteredNames (  )  [inline]

template<typename AbstractProductType>
bool CLAM::Factory< AbstractProductType >::Registry::KeyExists ( const RegistryKey key  )  [inline]

Definition at line 324 of file Factory.hxx.

Referenced by CLAM::Factory< CLAM::Processing >::KeyExists().

template<typename AbstractProductType>
bool CLAM::Factory< AbstractProductType >::Registry::AttributeExists ( const std::string &  key,
const std::string &  attribute 
) [inline]

template<typename AbstractProductType>
Keys CLAM::Factory< AbstractProductType >::Registry::GetKeys ( const std::string &  attribute,
const std::string &  value 
) [inline]

Get all keys that have attribute==value in its metadata.

Definition at line 345 of file Factory.hxx.

Referenced by CLAM::Factory< CLAM::Processing >::GetKeys().

template<typename AbstractProductType>
Keys CLAM::Factory< AbstractProductType >::Registry::GetKeys (  )  [inline]

Get all keys in the factory.

Definition at line 369 of file Factory.hxx.

template<typename AbstractProductType>
Pairs CLAM::Factory< AbstractProductType >::Registry::GetPairsFromKey ( const std::string &  key  )  [inline]

Return all the metadata available for a product key.

Definition at line 374 of file Factory.hxx.

Referenced by CLAM::Factory< AbstractProductType >::Registry::AttributeExists(), and CLAM::Factory< CLAM::Processing >::GetPairsFromKey().

template<typename AbstractProductType>
Values CLAM::Factory< AbstractProductType >::Registry::GetSetOfValues ( const std::string &  attribute  )  [inline]

Get the set of all values present for a given metadata attribute. Example GetSetOfValues("category") could return ["modulators","generators","reverbs"] without repeated items.

Definition at line 386 of file Factory.hxx.

Referenced by CLAM::Factory< CLAM::Processing >::GetSetOfValues().

template<typename AbstractProductType>
Values CLAM::Factory< AbstractProductType >::Registry::GetValuesFromAttribute ( const std::string &  key,
const std::string &  attribute 
) [inline]

Return the list of values for a metadata attribute for a product key.

Definition at line 416 of file Factory.hxx.

Referenced by CLAM::Factory< AbstractProductType >::Registry::GetValueFromAttribute(), and CLAM::Factory< CLAM::Processing >::GetValuesFromAttribute().

template<typename AbstractProductType>
Value CLAM::Factory< AbstractProductType >::Registry::GetValueFromAttribute ( const std::string &  key,
const std::string &  attribute 
) [inline]

Return the value for a metadata attribute of product key.

Definition at line 434 of file Factory.hxx.

References CLAM::Factory< AbstractProductType >::Registry::GetValuesFromAttribute().

template<typename AbstractProductType>
void CLAM::Factory< AbstractProductType >::Registry::AddAttribute ( const std::string &  key,
const std::string &  attribute,
const std::string &  value 
) [inline]

Definition at line 439 of file Factory.hxx.

Referenced by CLAM::Factory< CLAM::Processing >::AddAttribute().


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

Generated on Tue Aug 12 22:33:47 2008 for CLAM by  doxygen 1.5.5