19 #ifndef DOIL_PROXYFACTORY_H 20 #define DOIL_PROXYFACTORY_H 30 typedef ProxyBase* (*ProxyNewFunc)(::CORBA::Object_ptr obj);
34 template <
class Proxy>
37 return new Proxy(obj);
41 template <
class Proxy>
56 virtual const char*
name() = 0;
70 : m_id(id), m_new(new_func), m_delete(delete_func)
91 virtual const char*
id()
112 #endif // DOIL_SERVANTFACTORY_H
void(* ProxyDeleteFunc)(ProxyBase *)
ProxyBase * New(::CORBA::Object_ptr obj)
virtual ~ProxyFactoryBase()
doil implementation base class
virtual const char * id()
virtual const char * name()=0
virtual void destroy(ProxyBase *impl)=0
ProxyBase *(* ProxyNewFunc)(::CORBA::Object_ptr obj)
virtual ProxyBase * create(::CORBA::Object_ptr obj)
virtual void destroy(ProxyBase *impl)
ProxyFactory(const char *id, ProxyNewFunc new_func, ProxyDeleteFunc delete_func)
virtual ProxyBase * create()=0
void Delete(ProxyBase *impl)