class POA_AnInterface : public virtual ServantBase { public: virtual ... AnOperation (...) = 0; ... } template <class T> class POA_AnInterface_tie : public POA_AnInterface { public: POA_AnInterface_tie (T &t) : _ptr (t) { } ... ... AnOperation (...) { return (_ptr->AnOperation (...); } }