| # Gaudi Framework, version v21r6 |

Home |  | Generated: 11 Nov 2009

# implements.h File Reference

`#include "GaudiKernel/IInterface.h"`

Include dependency graph for implements.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
struct | check_cast< THIS >
| Helper class for the cast used in the MPL for_each algorithm in the implementation of i_cast. More...
struct | interfaceMatch< THIS >
| Helper class for the cast used in the MPL for_each algorithm in the implementation of queryInterface. More...
struct | AppendInterfaceName
| Helper class for the cast used in the MPL for_each algorithm in the implementation of query_interface. More...
struct | implements1< I1 >
| Base class used to implement the interfaces. More...
struct | implements2< I1, I2 >
| Base class used to implement the interfaces. More...
struct | implements3< I1, I2, I3 >
| Base class used to implement the interfaces. More...
struct | implements4< I1, I2, I3, I4 >
| Base class used to implement the interfaces. More...
## Defines
#define | _refcounting_implementation_
#define | _helper_common_implementation_(N)

## Define Documentation

#define _helper_common_implementation_ | ( | N |  | ) |

Definition at line 86 of file implements.h.

#define _refcounting_implementation_

Value:

    public: \ \
      virtual unsigned long addRef() { return ++m_refCount; } \ \
      virtual unsigned long release() { \
        /* Avoid to decrement 0 */ \
        const unsigned long count = (m_refCount) ? --m_refCount : m_refCount; \
        if(count == 0) delete this; \
        return count; \
      } \ \
      virtual unsigned long refCount() const { return m_refCount; } \
    protected: \ \
      unsigned long m_refCount; \
    private:

Definition at line 67 of file implements.h.