The Gaudi Framework  v29r0 (ff2e7097)
Containers Namespace Reference

Containers namespace. More...

Classes

struct  array
 
class  find
 
struct  hashmap
 
struct  key_traits
 Key traits class. More...
 
class  KeyedObjectManager
 KeyedObjectManager Class to manage keyed objects. More...
 
struct  map
 
struct  traits
 Container traits class. More...
 
struct  vector
 

Typedefs

typedef long(* MANIPULATOR) (void *)
 Object manipulator type definition. More...
 
typedef KeyedObjectManager< mapMap
 Forward declaration of specialized std::map-like object manager. More...
 
typedef KeyedObjectManager< hashmapHashMap
 Forward declaration of specialized std::hashmap-like object manager. More...
 
typedef KeyedObjectManager< vectorVector
 Forward declaration of specialized std::vector-like object manager. More...
 
typedef KeyedObjectManager< arrayArray
 Forward declaration of specialized redirection array object manager. More...
 

Enumerations

enum  {
  OBJ_NOT_FOUND, OBJ_DELETED, OBJ_ERASED, OBJ_INSERTED,
  OBJ_CANNOT_INSERT
}
 

Functions

GAUDI_API void cannotInsertToContainer ()
 Function to be called to indicate that an object cannot be inserted to the container. More...
 
GAUDI_API void containerIsInconsistent ()
 Function to be called to indicate that the container is found to be inconsistent. More...
 
GAUDI_API void invalidContainerOperation ()
 Function to be called to indicate that an operation should be performed on the container or it's contained data, which is not allowed. More...
 
GAUDI_API void cannotAssignObjectKey ()
 Function to be called when an object key cannot be assigned. More...
 

Variables

struct GAUDI_API hashmap
 Parametrisation class for hashmap-like implementation. More...
 
struct GAUDI_API map
 Parametrisation class for map-like implementation. More...
 
struct GAUDI_API array
 Parametrisation class for redirection array - like implementation. More...
 
struct GAUDI_API vector
 Parametrisation class for vector-like implementation. More...
 

Detailed Description

Containers namespace.

Typedef Documentation

Forward declaration of specialized redirection array object manager.

Definition at line 103 of file KeyedObjectManager.h.

Forward declaration of specialized std::hashmap-like object manager.

Definition at line 99 of file KeyedObjectManager.h.

typedef long( * Containers::MANIPULATOR) (void *)

Object manipulator type definition.

Definition at line 22 of file KeyedObjectManager.h.

Forward declaration of specialized std::map-like object manager.

Definition at line 97 of file KeyedObjectManager.h.

Forward declaration of specialized std::vector-like object manager.

Definition at line 101 of file KeyedObjectManager.h.

Enumeration Type Documentation

anonymous enum
Enumerator
OBJ_NOT_FOUND 

Object not present in the container.

OBJ_DELETED 

Object was removed from the container and deleted.

OBJ_ERASED 

Object was removed, but not deleted.

OBJ_INSERTED 

Object was inserted into the container.

OBJ_CANNOT_INSERT 

Cannot insert object into container.

Definition at line 23 of file KeyedTraits.h.

23  {
25  OBJ_DELETED,
26  OBJ_ERASED,
27  OBJ_INSERTED,
29  };
Object was inserted into the container.
Definition: KeyedTraits.h:27
Object was removed from the container and deleted.
Definition: KeyedTraits.h:25
Cannot insert object into container.
Definition: KeyedTraits.h:28
Object was removed, but not deleted.
Definition: KeyedTraits.h:26
Object not present in the container.
Definition: KeyedTraits.h:24

Function Documentation

void Containers::cannotAssignObjectKey ( )

Function to be called when an object key cannot be assigned.

Definition at line 74 of file KeyedObjectManager.cpp.

75 {
76  throw GaudiException( "Cannot assign key to keyed object! Object already has a key.", "KeyedObject", 0 );
77 }
Define general base for Gaudi exception.
void Containers::cannotInsertToContainer ( )

Function to be called to indicate that an object cannot be inserted to the container.

Internally an exception is thrown.

Definition at line 78 of file KeyedObjectManager.cpp.

79 {
80  throw GaudiException( "Cannot insert element to Keyed Container!", "KeyedContainer", 0 );
81 }
Define general base for Gaudi exception.
void Containers::containerIsInconsistent ( )

Function to be called to indicate that the container is found to be inconsistent.

Internally an exception is thrown.

Definition at line 83 of file KeyedObjectManager.cpp.

84 {
85  throw GaudiException( "Keyed Container structures are inconsistent - severe problem!", "KeyedContainer", 0 );
86 }
Define general base for Gaudi exception.
void Containers::invalidContainerOperation ( )

Function to be called to indicate that an operation should be performed on the container or it's contained data, which is not allowed.

Internally an exception is thrown.

Definition at line 88 of file KeyedObjectManager.cpp.

89 {
90  throw GaudiException( "Keyed Container cannot satisfy request - severe problem!", "KeyedContainer", 0 );
91 }
Define general base for Gaudi exception.

Variable Documentation

Parametrisation class for redirection array - like implementation.

Definition at line 28 of file KeyedObjectManager.h.

Parametrisation class for hashmap-like implementation.

Definition at line 24 of file KeyedObjectManager.h.

Parametrisation class for map-like implementation.

Definition at line 26 of file KeyedObjectManager.h.

Parametrisation class for vector-like implementation.

Definition at line 30 of file KeyedObjectManager.h.