| The Gaudi Framework v29r1 (5cd95fa2)

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

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | List of all members
Gaudi::iid_cast_details::iid_cast_t< I, Is... > Struct Template Reference

`#include <GaudiKernel/IInterface.h>`

## Public Member Functions
template<typename P >
void * | operator() (const InterfaceID &tid, P *ptr) const

## Detailed Description

### template<typename I, typename... Is>
struct Gaudi::iid_cast_details::iid_cast_t< I, Is... >

Definition at line 195 of file IInterface.h.

## Member Function Documentation

template<typename I , typename... Is>
template<typename P >

void* Gaudi::iid_cast_details::iid_cast_t< I, Is... >::operator() | ( | const InterfaceID & | tid,
|  | P * | ptr
| ) |  | const
| inline

Definition at line 197 of file IInterface.h.

198 {
199 return tid.versionMatch( I::interfaceID() ) ? void_cast<typename I::interface_type>( ptr )
200 : iid_cast_t<Is...>{}( tid, ptr );
201 }
InterfaceID::versionMatch
constexpr bool versionMatch(const InterfaceID &iid) const
check compatibility.
Definition: IInterface.h:62
Gaudi::iid_cast_details::void_cast
constexpr void * void_cast(const I *i)
Definition: IInterface.h:177

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

- GaudiKernel/GaudiKernel/IInterface.h