The Gaudi Framework  master (ff829712)
Loading...
Searching...
No Matches
Containers Namespace Reference

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.
 
typedef KeyedObjectManager< mapMap
 Forward declaration of specialized std::map-like object manager.
 
typedef KeyedObjectManager< hashmapHashMap
 Forward declaration of specialized std::hashmap-like object manager.
 
typedef KeyedObjectManager< vectorVector
 Forward declaration of specialized std::vector-like object manager.
 
typedef KeyedObjectManager< arrayArray
 Forward declaration of specialized redirection array object manager.
 

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.
 
GAUDI_API void containerIsInconsistent ()
 Function to be called to indicate that the container is found to be inconsistent.
 
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.
 
GAUDI_API void cannotAssignObjectKey ()
 Function to be called when an object key cannot be assigned.
 

Variables

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

Typedef Documentation

◆ Array

Forward declaration of specialized redirection array object manager.

Definition at line 103 of file KeyedObjectManager.h.

◆ HashMap

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

Definition at line 99 of file KeyedObjectManager.h.

◆ MANIPULATOR

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

Object manipulator type definition.

Definition at line 23 of file KeyedObjectManager.h.

◆ Map

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

Definition at line 97 of file KeyedObjectManager.h.

◆ Vector

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

Definition at line 101 of file KeyedObjectManager.h.

Enumeration Type Documentation

◆ anonymous enum

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 29 of file KeyedTraits.h.

29 {
35 };
@ OBJ_DELETED
Object was removed from the container and deleted.
Definition KeyedTraits.h:31
@ OBJ_INSERTED
Object was inserted into the container.
Definition KeyedTraits.h:33
@ OBJ_ERASED
Object was removed, but not deleted.
Definition KeyedTraits.h:32
@ OBJ_NOT_FOUND
Object not present in the container.
Definition KeyedTraits.h:30
@ OBJ_CANNOT_INSERT
Cannot insert object into container.
Definition KeyedTraits.h:34

Function Documentation

◆ cannotAssignObjectKey()

void Containers::cannotAssignObjectKey ( )

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

Definition at line 78 of file KeyedObjectManager.cpp.

78 {
79 throw GaudiException( "Cannot assign key to keyed object! Object already has a key.", "KeyedObject",
81}
Define general base for Gaudi exception.
constexpr static const auto FAILURE
Definition StatusCode.h:100

◆ cannotInsertToContainer()

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 82 of file KeyedObjectManager.cpp.

82 {
83 throw GaudiException( "Cannot insert element to Keyed Container!", "KeyedContainer", StatusCode::FAILURE );
84}

◆ containerIsInconsistent()

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 86 of file KeyedObjectManager.cpp.

86 {
87 throw GaudiException( "Keyed Container structures are inconsistent - severe problem!", "KeyedContainer",
89}

◆ invalidContainerOperation()

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 91 of file KeyedObjectManager.cpp.

91 {
92 throw GaudiException( "Keyed Container cannot satisfy request - severe problem!", "KeyedContainer",
94}

Variable Documentation

◆ array

struct GAUDI_API Containers::array

Parametrisation class for redirection array - like implementation.

Definition at line 29 of file KeyedObjectManager.h.

◆ hashmap

struct GAUDI_API Containers::hashmap

Parametrisation class for hashmap-like implementation.

Definition at line 25 of file KeyedObjectManager.h.

◆ map

struct GAUDI_API Containers::map

Parametrisation class for map-like implementation.

Definition at line 27 of file KeyedObjectManager.h.

◆ vector

struct GAUDI_API Containers::vector

Parametrisation class for vector-like implementation.

Definition at line 31 of file KeyedObjectManager.h.