edelib: EdbusContainer< T > Class Template Reference

edelib 1.0

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

- Class List
- Class Hierarchy
- Class Members

Public Types | Protected Member Functions | Protected Attributes | List of all members
EdbusContainer< T > Class Template Reference
D-Bus classes and functions

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

`#include <edelib/EdbusContainer.h>`

## 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 ()
EdbusContainer & | operator= (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

typedef list<T>::const_iterator const_iterator

Const iterator type for container

typedef list<T>::iterator iterator

Iterator type for container

## Constructor & Destructor Documentation

EdbusContainer | ( |  | ) |
| inlineprotected

Create empty container

EdbusContainer | ( | const EdbusContainer< T > & | other | ) |
| inlineprotected

Do a shallow copying from other container

~EdbusContainer | ( |  | ) |
| inlineprotected

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

## Member Function Documentation

void dispose | ( | void |  | ) |
| inlineprotected

Clears internal data

EdbusContainer& operator= | ( | const EdbusContainer< T > & | other | ) |
| inlineprotected

Do a shallow copying from other container

void unhook | ( | void |  | ) |
| inlineprotected

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< EdbusData >::EdbusContainer(), and EdbusContainer< EdbusData >::operator=().

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

- edelib/EdbusContainer.h