ldas-tools-diskcacheAPI  2.7.2
Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Private Types | Private Attributes | List of all members
diskCache::Common::Registry Class Reference

#include <Registry.hh>

Inheritance diagram for diskCache::Common::Registry:
Inheritance graph
[legend]

Classes

class  AlreadyRegisteredException
 
struct  Info
 

Public Types

typedef INT_4U id_type
 
typedef std::string ascii_key_type
 
typedef boost::shared_ptr< Infoinfo_type
 
typedef INT_4U id_type
 
typedef std::string ascii_key_type
 
typedef boost::shared_ptr< Infoinfo_type
 
typedef INT_4U id_type
 
typedef std::string ascii_key_type
 
typedef boost::shared_ptr< Infoinfo_type
 

Public Member Functions

 Registry ()
 Default constructor. More...
 
id_type Register (const Info &Key)
 
id_type Id (const std::string &Name) const
 
const info_type GetInfo (id_type Id) const
 
 Registry ()
 Default constructor. More...
 
id_type Register (const Info &Key)
 
id_type Id (const std::string &Name) const
 
const info_type GetInfo (id_type Id) const
 
 Registry ()
 Default constructor. More...
 
id_type Register (const Info &Key)
 
id_type Id (const std::string &Name) const
 
const info_type GetInfo (id_type Id) const
 

Static Public Attributes

static const id_type KEY_NULL = id_type( 0 )
 

Protected Types

typedef LDASTools::AL::unordered_map< id_type, info_typeregistry_container_type
 
typedef LDASTools::AL::unordered_map< id_type, info_typeregistry_container_type
 
typedef LDASTools::AL::unordered_map< id_type, info_typeregistry_container_type
 

Protected Member Functions

 Registry (const Registry &Source)
 
const registry_container_typeregistry () const
 
 Registry (const Registry &Source)
 
const registry_container_typeregistry () const
 
 Registry (const Registry &Source)
 
const registry_container_typeregistry () const
 

Private Types

typedef LDASTools::AL::unordered_map< std::string, id_typeregistry_name_container_type
 
typedef LDASTools::AL::unordered_map< std::string, id_typeregistry_name_container_type
 
typedef LDASTools::AL::unordered_map< std::string, id_typeregistry_name_container_type
 

Private Attributes

registry_container_type m_info
 
registry_name_container_type m_name_info
 
id_type m_max_id
 

Member Typedef Documentation

◆ ascii_key_type [1/3]

◆ ascii_key_type [2/3]

◆ ascii_key_type [3/3]

◆ id_type [1/3]

◆ id_type [2/3]

◆ id_type [3/3]

◆ info_type [1/3]

typedef boost::shared_ptr< Info > diskCache::Common::Registry::info_type

◆ info_type [2/3]

typedef boost::shared_ptr< Info > diskCache::Common::Registry::info_type

◆ info_type [3/3]

typedef boost::shared_ptr< Info > diskCache::Common::Registry::info_type

◆ registry_container_type [1/3]

typedef LDASTools::AL::unordered_map< id_type, info_type > diskCache::Common::Registry::registry_container_type
protected

◆ registry_container_type [2/3]

typedef LDASTools::AL::unordered_map< id_type, info_type > diskCache::Common::Registry::registry_container_type
protected

◆ registry_container_type [3/3]

typedef LDASTools::AL::unordered_map< id_type, info_type > diskCache::Common::Registry::registry_container_type
protected

◆ registry_name_container_type [1/3]

typedef LDASTools::AL::unordered_map< std::string, id_type > diskCache::Common::Registry::registry_name_container_type
private

◆ registry_name_container_type [2/3]

typedef LDASTools::AL::unordered_map< std::string, id_type > diskCache::Common::Registry::registry_name_container_type
private

◆ registry_name_container_type [3/3]

typedef LDASTools::AL::unordered_map< std::string, id_type > diskCache::Common::Registry::registry_name_container_type
private

Constructor & Destructor Documentation

◆ Registry() [1/6]

diskCache::Common::Registry::Registry ( )

Default constructor.

◆ Registry() [2/6]

diskCache::Common::Registry::Registry ( const Registry Source)
protected

◆ Registry() [3/6]

diskCache::Common::Registry::Registry ( )

Default constructor.

◆ Registry() [4/6]

diskCache::Common::Registry::Registry ( const Registry Source)
protected

◆ Registry() [5/6]

diskCache::Common::Registry::Registry ( )

Default constructor.

◆ Registry() [6/6]

diskCache::Common::Registry::Registry ( const Registry Source)
protected

Member Function Documentation

◆ GetInfo() [1/3]

const Registry::info_type diskCache::Common::Registry::GetInfo ( id_type  Id) const
inline

◆ GetInfo() [2/3]

const info_type diskCache::Common::Registry::GetInfo ( id_type  Id) const

◆ GetInfo() [3/3]

const info_type diskCache::Common::Registry::GetInfo ( id_type  Id) const

◆ Id() [1/3]

Registry::id_type diskCache::Common::Registry::Id ( const std::string &  Name) const
inline
Todo:
This needs to be locked to be thread safe. It only needs to be locked with a read lock since it only queries the information.
Todo:
This needs to be locked to be thread safe. It only needs to be locked with a read lock since it only queries the information.
Todo:
This needs to be locked to be thread safe. It only needs to be locked with a read lock since it only queries the information.

◆ Id() [2/3]

id_type diskCache::Common::Registry::Id ( const std::string &  Name) const

◆ Id() [3/3]

id_type diskCache::Common::Registry::Id ( const std::string &  Name) const

◆ Register() [1/3]

Registry::id_type diskCache::Common::Registry::Register ( const Info Key)
Todo:
Lock the registry because changes are going to happen

◆ Register() [2/3]

id_type diskCache::Common::Registry::Register ( const Info Key)

◆ Register() [3/3]

id_type diskCache::Common::Registry::Register ( const Info Key)

◆ registry() [1/3]

const Registry::registry_container_type & diskCache::Common::Registry::registry ( ) const
inlineprotected

◆ registry() [2/3]

const registry_container_type& diskCache::Common::Registry::registry ( ) const
protected

◆ registry() [3/3]

const registry_container_type& diskCache::Common::Registry::registry ( ) const
protected

Member Data Documentation

◆ KEY_NULL

static const id_type diskCache::Common::Registry::KEY_NULL = id_type( 0 )
static

◆ m_info

registry_container_type diskCache::Common::Registry::m_info
private

◆ m_max_id

id_type diskCache::Common::Registry::m_max_id
private

◆ m_name_info

registry_name_container_type diskCache::Common::Registry::m_name_info
private

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