corelinux::TransparentComponent< CompImpl > Class Template Reference

A TransparentComponent is a templated Component whereas it declares the interface for the objects in a composition, implements default behavior and declares the interface for child operations. More...

`#include <TransparentComponent.hpp>`

## Public Member Functions

| TransparentComponent (void)
| Default Constructor.
| TransparentComponent (const TransparentComponent &aRef)
| Copy Constructor. More...
virtual | ~TransparentComponent (void)
| Virtual Destructor.
TransparentComponent & | operator= (const TransparentComponent &)
| Assignment operator overload. More...
bool | operator== (const TransparentComponent &aRef) const
| Equality operator overload. More...
bool | operator!= (const TransparentComponent &aRef) const
| Non-equality operator overload. More...
virtual void | addComponent (CompImpl) throw (InvalidCompositeException)
| Interface for adding component children to a composition. More...
virtual void | removeComponent (CompImpl) throw (InvalidCompositeException)
| Interface for removing component children from a composition. More...
virtual Iterator< CompImpl > * | createIterator (void) throw (InvalidCompositeException)
| Interface for creating an Iterator to iterate through the children of a composition. More...
virtual void | destroyIterator (Iterator< CompImpl > *) throw (InvalidCompositeException)
| Interface for returning a created Iterator. More...
Public Member Functions inherited from corelinux::Component
| Component (void)
| Default Constructor.
| Component (ComponentCref)
| Copy Constructor. More...
virtual | ~Component (void)
| Virtual Destructor.
ComponentRef | operator= (ComponentCref)
| Assignment operator overload. More...
bool | operator== (ComponentCref) const
| Equality operator overload. More...
bool | operator!= (ComponentCref) const
| Non-equality operator overload. More...
virtual void | accept (VisitorPtr) throw ( NullPointerException )
| Accept is a double dispatch method which allows components to have new operations defined without changing the structure of the components themselves. More...
Public Member Functions inherited from corelinux::CoreLinuxObject
| CoreLinuxObject (void)
| Default Constructor.
| CoreLinuxObject (CoreLinuxObjectCref)
| Copy Constructor. More...
virtual | ~CoreLinuxObject (void)
| Virtual Destructor.
CoreLinuxObjectRef | operator= (CoreLinuxObjectCref)
| Assignment operator overload. More...
bool | operator== (CoreLinuxObjectCref) const
| Equality operator overload. More...
bool | operator!= (CoreLinuxObjectCref) const
| Non-equality operator overload. More...

## Detailed Description

### template<class CompImpl>
class corelinux::TransparentComponent< CompImpl >

A TransparentComponent is a templated Component whereas it declares the interface for the objects in a composition, implements default behavior and declares the interface for child operations.

## Constructor & Destructor Documentation

template<class CompImpl >

corelinux::TransparentComponent< CompImpl >::TransparentComponent | ( | const TransparentComponent< CompImpl > & | aRef | ) |

inline

Copy Constructor.

Parameters

  TransparentComponent | const reference

## Member Function Documentation

template<class CompImpl >

virtual void corelinux::TransparentComponent< CompImpl >::addComponent | ( | CompImpl |  | ) |
throw | ( | InvalidCompositeException
| ) |  |

inline virtual

Interface for adding component children to a composition.

The default implementation throws an exception to insure needless calls are not made to leafs components

Parameters

  CompImpl | - Component instantiated with implementation

Exceptions

  InvalidCompositeInstance |

template<class CompImpl >

virtual Iterator<CompImpl>* corelinux::TransparentComponent< CompImpl >::createIterator | ( | void |  | ) |
throw | ( | InvalidCompositeException
| ) |  |

inline virtual

Interface for creating an Iterator to iterate through the children of a composition.

The default implementation throws an exception to insure needless calls are not made to leafs

Parameters

  CompImpl | - Component instantiated with implementation

Exceptions

  InvalidCompositeInstance |

template<class CompImpl >

virtual void corelinux::TransparentComponent< CompImpl >::destroyIterator | ( | Iterator< CompImpl > * |  | ) |
throw | ( | InvalidCompositeException
| ) |  |

inline virtual

Interface for returning a created Iterator.

It is up to the Composite implementation to provide accounting of Iterator instances that have been given out. The default implementation throws an exception to insure needless calls are not made to leafs

Parameters

  CompImpl | - Component instantiated with implementation

Exceptions

  InvalidCompositeInstance |

template<class CompImpl >

bool corelinux::TransparentComponent< CompImpl >::operator!= | ( | const TransparentComponent< CompImpl > & | aRef | ) | const

inline

Non-equality operator overload.

Parameters

  TransparentComponent | const reference

Returns
  false if equal, true otherwise

template<class CompImpl >

TransparentComponent& corelinux::TransparentComponent< CompImpl >::operator= | ( | const TransparentComponent< CompImpl > & |  | ) |

inline

Assignment operator overload.

Parameters

  TransparentComponent | const reference

Returns
  TransparentComponent reference to self

template<class CompImpl >

bool corelinux::TransparentComponent< CompImpl >::operator== | ( | const TransparentComponent< CompImpl > & | aRef | ) | const

inline

Equality operator overload.

Parameters

  TransparentComponent | const reference

Returns
  true if equal, false otherwise

template<class CompImpl >

virtual void corelinux::TransparentComponent< CompImpl >::removeComponent | ( | CompImpl |  | ) |
throw | ( | InvalidCompositeException
| ) |  |

inline virtual

Interface for removing component children from a composition.

The default implementation throws an exception to insure needless calls are not made to leafs

Parameters

  CompImpl | - Component instantiated with implementation

Exceptions

  InvalidCompositeInstance |

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

- TransparentComponent.hpp

This is the CoreLinux++ reference manual
Provided by The CoreLinux Consortium