OpenWalnut  1.4.0
Public Types | Public Member Functions
WSharedAssociativeContainer< T > Class Template Reference

This class provides a common interface for thread-safe access to associative containers (set, multiset, map, multimap). More...

#include <WSharedAssociativeContainer.h>

+ Inheritance diagram for WSharedAssociativeContainer< T >:

List of all members.

Public Types

typedef T::const_iterator ConstIterator
 A typedef for the correct const iterator useful to traverse this sequence container.
typedef T::iterator Iterator
 A typedef for the correct iterator to traverse this sequence container.
typedef T::value_type value_type
 The type of the elements.
typedef T::key_type key_type
 The type of the key used in this associative container.

Public Member Functions

 WSharedAssociativeContainer ()
 Default constructor.
virtual ~WSharedAssociativeContainer ()
 Destructor.
void clear ()
 Clears the container.
bool empty () const
 Return true if the container is empty.
size_t size () const
 The current size of the container.
size_t max_size () const
 The maximum size of a container.
size_t count (const key_type &x) const
 Count elements with a specific key.
size_t erase (const key_type &x)
 Erases the element with the specified key.
std::pair< Iterator, bool > insert (const value_type &x)
 Inserts the specified element.

Detailed Description

template<typename T>
class WSharedAssociativeContainer< T >

This class provides a common interface for thread-safe access to associative containers (set, multiset, map, multimap).

Definition at line 38 of file WSharedAssociativeContainer.h.


Member Typedef Documentation

template<typename T>
typedef T::const_iterator WSharedAssociativeContainer< T >::ConstIterator

A typedef for the correct const iterator useful to traverse this sequence container.

Definition at line 46 of file WSharedAssociativeContainer.h.

template<typename T>
typedef T::iterator WSharedAssociativeContainer< T >::Iterator

A typedef for the correct iterator to traverse this sequence container.

Definition at line 51 of file WSharedAssociativeContainer.h.

template<typename T>
typedef T::key_type WSharedAssociativeContainer< T >::key_type

The type of the key used in this associative container.

Definition at line 61 of file WSharedAssociativeContainer.h.

template<typename T>
typedef T::value_type WSharedAssociativeContainer< T >::value_type

The type of the elements.

Definition at line 56 of file WSharedAssociativeContainer.h.


Constructor & Destructor Documentation

Default constructor.

Definition at line 131 of file WSharedAssociativeContainer.h.

template<typename T >
WSharedAssociativeContainer< T >::~WSharedAssociativeContainer ( ) [virtual]

Destructor.

Definition at line 138 of file WSharedAssociativeContainer.h.


Member Function Documentation

template<typename T >
void WSharedAssociativeContainer< T >::clear ( )
template<typename T >
size_t WSharedAssociativeContainer< T >::count ( const key_type x) const

Count elements with a specific key.

The sense and non-sense of this method in a multi threaded environment is questionable.

Parameters:
xthe key
Returns:
the count, 0 if none found.

Definition at line 172 of file WSharedAssociativeContainer.h.

References WSharedAssociativeContainer< T >::count(), and WSharedObject< T >::getReadTicket().

Referenced by WSharedAssociativeContainer< T >::count().

template<typename T >
bool WSharedAssociativeContainer< T >::empty ( ) const

Return true if the container is empty.

The sense and non-sense of this method in a multi threaded environment is questionable.

Returns:
true if empty

Definition at line 151 of file WSharedAssociativeContainer.h.

References WSharedAssociativeContainer< T >::empty(), and WSharedObject< T >::getReadTicket().

Referenced by WSharedAssociativeContainer< T >::empty().

template<typename T >
size_t WSharedAssociativeContainer< T >::erase ( const key_type x)

Erases the element with the specified key.

Parameters:
xthe key
Returns:
the number of elements erased

Definition at line 179 of file WSharedAssociativeContainer.h.

References WSharedAssociativeContainer< T >::erase(), and WSharedObject< T >::getWriteTicket().

Referenced by WSharedAssociativeContainer< T >::erase().

template<typename T >
std::pair< typename WSharedAssociativeContainer< T >::Iterator, bool > WSharedAssociativeContainer< T >::insert ( const value_type x)

Inserts the specified element.

Parameters:
xthe element to add
Returns:
a pair containing the Iterator pointing to the inserted element and the bool is true if the element not existed before.

Definition at line 186 of file WSharedAssociativeContainer.h.

References WSharedObject< T >::getWriteTicket(), and WSharedAssociativeContainer< T >::insert().

Referenced by WGEColormapping::applyInst(), WModuleFactory::create(), and WSharedAssociativeContainer< T >::insert().

template<typename T >
size_t WSharedAssociativeContainer< T >::max_size ( ) const

The maximum size of a container.

Returns:
the maximum size

Definition at line 165 of file WSharedAssociativeContainer.h.

References WSharedObject< T >::getReadTicket(), and WSharedAssociativeContainer< T >::max_size().

Referenced by WSharedAssociativeContainer< T >::max_size().

template<typename T >
size_t WSharedAssociativeContainer< T >::size ( ) const

The current size of the container.

0 if empty. The sense and non-sense of this method in a multi threaded environment is questionable.

Returns:
the size.

Definition at line 158 of file WSharedAssociativeContainer.h.

References WSharedObject< T >::getReadTicket(), and WSharedAssociativeContainer< T >::size().

Referenced by WSharedAssociativeContainer< T >::size().


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