Обсуждение файла:AdapterUML.png
omcd-код рисунка
CLASS_BEGIN(`AdapterRef<Interface>') CLASS_MEMBER(+typedef Interface interface_type) CLASS_MEMBER(#AdapterRef();) CLASS_MEMBER(+AdapterRef(Interface* pImpl);) CLASS_MEMBER(+AdapterRef(const AdapterRef&);) CLASS_MEMBER(+AdapterRef(AdapterRef&&);) CLASS_MEMBER(+AdapterRef& operator=(const AdapterRef&); /*условно*/) CLASS_MEMBER(+AdapterRef& operator=(AdapterRef&&); /*условно*/) CLASS_MEMBER(#reset_interface(Interface*);) CLASS_MEMBER(+Interface* get_interface(Interface*) const;) CLASS_END
CLASS_BEGIN(`AdapterOwn<Interface>') CLASS_MEMBER(+typedef Interface interface_type) CLASS_MEMBER(+AdapterOwn();) CLASS_MEMBER(+explicit AdapterOwn(Interface* pImpl);) CLASS_MEMBER(+AdapterOwn(const AdapterOwn&); /*условно*/) CLASS_MEMBER(+AdapterOwn(AdapterOwn&&);) CLASS_MEMBER(+explicit AdapterOwn(const AdapterRef<Interface>&); /*условно*/) CLASS_MEMBER(+AdapterOwn& operator=(const AdapterOwn&); /*условно*/) CLASS_MEMBER(+AdapterOwn& operator=(const AdapterRef<Interface>&); /*условно*/) CLASS_MEMBER(+AdapterOwn& operator=(AdapterOwn&&);) CLASS_MEMBER(+Interface* get_interface(Interface*) const;) CLASS_MEMBER(reset_ownership(Interface* pNew = nullptr);) CLASS_MEMBER(Interface* release_ownership();) CLASS_END
NODE_NAME(`AdapterOwn<Interface>')->NODE_NAME(`AdapterRef<Interface>') [INHERITANCE]