25#ifndef __TERRALIB_COMMON_INTERNAL_DECORATOR_H 
   26#define __TERRALIB_COMMON_INTERNAL_DECORATOR_H 
   56        Decorator(T* decorated, 
bool deleteDecorated = 
false);
 
  105        m_decorated(decorated),
 
  106        m_delDecorated(deleteDecorated)
 
  119      : m_decorated(rhs.m_decorated),
 
  120        m_delDecorated(rhs.m_delDecorated)
 
  142      if(decorated == m_decorated)
 
  148        return findDecorator(d);
 
  156      if(decorated == 
this)
 
  158        m_delDecorated = 
false;
 
  162      T* fd = findDecorator(decorated);
 
  166      if(aux != 0 && fd != 0)
 
bool m_delDecorated
If true, also delete decorated pointer.
 
Decorator(const Decorator &rhs)
Copy constructor.
 
T * removeDecorator(T *decorated)
Removes The decorator of the decorated.
 
virtual ~Decorator()
Virtual destructor.
 
T * findDecorator(T *decorated)
Returns the Decorator that decorates this item.
 
T * m_decorated
The object decorated.
 
Decorator & operator=(const Decorator &rhs)
Copy operator.
 
Decorator(T *decorated, bool deleteDecorated=false)
Constructor.
 
T * getDecorated()
Returns the pointer of decorated object.