====== InterfaceFactory ====== **//Inherited from//** NULL **//Inherited by//** NULL **//Friend class//** NULL **//Description//** **//Members//** * IDocument * [[interfacefactory#m_pdoc|m_pDoc]] **//Public interface//** * [[interfacefactory#interfacefactory1|InterfaceFactory]](IDocument * pDoc) * Interface * [[interfacefactory#createinterface|createInterface]](InterfaceId ifId) * void [[interfacefactory#destroyinterface|destroyInterface]](Interface * pIF) **//Private interface//** * [[interfacefactory#bool|bool]] (*m_fpCreator)(Interface **,IDocument*) * [[interfacefactory#void|void]] (*m_fpDestroyer)(Interface*) ---- {{anchor:m_pdoc}} **IDocument * m_pDoc** ---- {{anchor:interfacefactory1}} **InterfaceFactory(IDocument * pDoc)** *function: *parameters: - [i]IDocument * pDoc: *return value: {{anchor:createinterface}} **Interface * createInterface(InterfaceId ifId)** *function: *parameters: - [i]InterfaceId ifId: *return value: {{anchor:destroyinterface}} **void destroyInterface(Interface * pIF)** *function: *parameters: - [i]Interface * pIF: *return value: ---- {{anchor:bool}} **bool (*m_fpCreator)(Interface **,IDocument*)** *function: *parameters: - [i]*m_fpCreator)(Interface **: - [i]IDocument*): *return value: {{anchor:void}} **void (*m_fpDestroyer)(Interface*)** *function: *parameters: - [i]*m_fpDestroyer: *return value: