Reference

corelinux_Decorator(3)

Decorators can attach additional responsibilities to an object dynamically which provide a more flexible alternative to subclassing for extending functionality.

NAME

corelinux::Decorator - Decorators can attach additional responsibilities to an object dynamically which provide a more flexible alternative to subclassing for extending functionality.

SYNOPSIS

#include <Decorator.hpp>

Inherits corelinux::CoreLinuxObject.

Public Member Functions

Decorator (Implementation aImplementation)
Default Constructor requires a Implementation. Decorator (const Decorator &aDecorator)
Copy Constructor copies theImplementation. virtual ~Decorator (void)
Virtual Destructor. Decorator & operator= (const Decorator &aDecorator) throw (Exception)
Assignment operator overload. bool operator== (const Decorator &aDecorator) const
Equality operator overload. virtual Implementation getImplementation (void) const
Gets current theImplementation. virtual void setImplementation (Implementation aImplementation) throw (Exception)
Sets current theImplementation to aImplementation.

Protected Member Functions

Decorator (void) throw (Assertion)
Default Constructor Because a Decorator requires a implementation to work, you can not construct one without it.

Protected Attributes

Implementation theImplementation
Storage for theImplementation object.

Detailed Description

template<class Implementation> class corelinux::Decorator< Implementation >

Decorators can attach additional responsibilities to an object dynamically which provide a more flexible alternative to subclassing for extending functionality.

Constructor & Destructor Documentation

template<class Implementation> corelinux::Decorator< Implementation >::Decorator (Implementation aImplementation) [inline]

Default Constructor requires a Implementation. Parameters:

Implementation instance

template<class Implementation> corelinux::Decorator< Implementation >::Decorator (const Decorator< Implementation > & aDecorator) [inline]

Copy Constructor copies theImplementation. Parameters:

Decorator const reference

template<class Implementation> corelinux::Decorator< Implementation >::Decorator (void) throw (Assertion) [inline, protected]

Default Constructor Because a Decorator requires a implementation to work, you can not construct one without it. Parameters:

void .RE

Exceptions:

NEVER_GET_HERE .RE

Member Function Documentation

template<class Implementation> virtual Implementation corelinux::Decorator< Implementation >::getImplementation (void) const [inline, virtual]

Gets current theImplementation. Returns:

Implementation instance

template<class Implementation> Decorator& corelinux::Decorator< Implementation >::operator= (const Decorator< Implementation > & aDecorator) throw (Exception) [inline]

Assignment operator overload. This may throw Exception if there is a problem cloning theImplementation.

Parameters:

Decorator const reference

Returns:

Decorator reference to self

Exceptions:

Exception - implementation defined

template<class Implementation> bool corelinux::Decorator< Implementation >::operator== (const Decorator< Implementation > & aDecorator) const [inline]

Equality operator overload. Parameters:

Decorator const reference

Returns:

true if equal, false otherwise

template<class Implementation> virtual void corelinux::Decorator< Implementation >::setImplementation (Implementation aImplementation) throw (Exception) [inline, virtual]

Sets current theImplementation to aImplementation. Parameters:

Implementation - implementation instance

Exceptions:

Exception - derivation defined

Author

Generated automatically by Doxygen for CoreLinux++ from the source code.

History