| The Gaudi Framework v29r0 (ff2e7097)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Namespace List
- Namespace Members

Classes | Typedefs | Enumerations | Functions | Variables
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< map > | Map
| Forward declaration of specialized std::map-like object manager. More...
typedef KeyedObjectManager< hashmap > | HashMap
| Forward declaration of specialized std::hashmap-like object manager. More...
typedef KeyedObjectManager< vector > | Vector
| Forward declaration of specialized std::vector-like object manager. More...
typedef KeyedObjectManager< array > | Array
| 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

typedef KeyedObjectManager<array> Containers::Array

Forward declaration of specialized redirection array object manager.

Definition at line 103 of file KeyedObjectManager.h.

typedef KeyedObjectManager<hashmap> Containers::HashMap

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.

typedef KeyedObjectManager<map> Containers::Map

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

Definition at line 97 of file KeyedObjectManager.h.

typedef KeyedObjectManager<vector> Containers::Vector

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 {
24 OBJ_NOT_FOUND,
25 OBJ_DELETED,
26 OBJ_ERASED,
27 OBJ_INSERTED,
28 OBJ_CANNOT_INSERT
29 };
Containers::OBJ_INSERTED
Object was inserted into the container.
Definition: KeyedTraits.h:27
Containers::OBJ_DELETED
Object was removed from the container and deleted.
Definition: KeyedTraits.h:25
Containers::OBJ_CANNOT_INSERT
Cannot insert object into container.
Definition: KeyedTraits.h:28
Containers::OBJ_ERASED
Object was removed, but not deleted.
Definition: KeyedTraits.h:26
Containers::OBJ_NOT_FOUND
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 }
GaudiException
Define general base for Gaudi exception.
Definition: GaudiException.h:22

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 }
GaudiException
Define general base for Gaudi exception.
Definition: GaudiException.h:22

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 }
GaudiException
Define general base for Gaudi exception.
Definition: GaudiException.h:22

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 }
GaudiException
Define general base for Gaudi exception.
Definition: GaudiException.h:22

## Variable Documentation

struct GAUDI_API Containers::array

Parametrisation class for redirection array - like implementation.

Definition at line 28 of file KeyedObjectManager.h.

struct GAUDI_API Containers::hashmap

Parametrisation class for hashmap-like implementation.

Definition at line 24 of file KeyedObjectManager.h.

struct GAUDI_API Containers::map

Parametrisation class for map-like implementation.

Definition at line 26 of file KeyedObjectManager.h.

struct GAUDI_API Containers::vector

Parametrisation class for vector-like implementation.

Definition at line 30 of file KeyedObjectManager.h.