EdbusContainer< T > Class Template Reference
[D-Bus classes and functions]

Abstract container for D-Bus containers. More...

#include <edelib/EdbusContainer.h>

List of all members.

Public Types

typedef list< T >::iterator iterator
typedef list< T >::const_iterator const_iterator

Protected Member Functions

void dispose (void)
void unhook (void)
 EdbusContainer ()
 EdbusContainer (const EdbusContainer &other)
 ~EdbusContainer ()
EdbusContaineroperator= (const EdbusContainer &other)

Protected Attributes

EdbusContainerPrivate * impl


Detailed Description

template<typename T>
class edelib::EdbusContainer< T >

Abstract container for D-Bus containers.

EdbusContainer is a class for easier creating EdbusDict and EdbusList containers. It uses implicit sharing so all concrete implementations copy internal data only when is needed.

This class should be used as base class so inherited classes can provide additional funcionality.

Inherited classes also must call unhook() member when one of their members is going to write in internal EdbusContainer container.


Member Typedef Documentation

Const iterator type for container

Reimplemented in EdbusDict, and EdbusList.

typedef list<T>::iterator iterator

Iterator type for container


Constructor & Destructor Documentation

EdbusContainer (  )  [inline, protected]

Create empty container

EdbusContainer ( const EdbusContainer< T > &  other  )  [inline, protected]

Do a shallow copying from other container

~EdbusContainer (  )  [inline, protected]

Decrease reference counter and if reached 0 it will clear allocated data


Member Function Documentation

void dispose ( void   )  [inline, protected]

Clears internal data

EdbusContainer& operator= ( const EdbusContainer< T > &  other  )  [inline, protected]

Do a shallow copying from other container

void unhook ( void   )  [inline, protected]

Do actual copying. Referece counter is set to 1. This function must be called when inherited implementations do write or change internal data


Member Data Documentation

EdbusContainerPrivate* impl [protected]

Allows access to the private data by inherited classes

Referenced by EdbusContainer< EdbusDictEntry >::EdbusContainer(), and EdbusContainer< EdbusDictEntry >::operator=().


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

Generated on Thu Dec 24 05:12:27 2009 for edelib by  doxygen 1.5.9