Athena::RootSvc Node1 Athena::RootSvc - m_catalog - m_conns - m_wconn - m_dictSvc + RootSvc() + initialize() + finalize() + queryInterface() + open() + connect() + commitOutput() + disconnect() + connection() + ~RootSvc() + getType() + readObject() + writeObject() + createObject() + destructObject() + interfaceID() - RootSvc() - RootSvc() - operator=() * getType() * readObject() * writeObject() * createObject() * destructObject() Node2 IRootSvc + ~IRootSvc() + open() + connect() + commitOutput() + disconnect() + connection() + getType() + readObject() + writeObject() + createObject() + destructObject() + interfaceID() * getType() * readObject() * writeObject() * createObject() * destructObject() Node2->Node1 Node3 IInterface Node3->Node2 Node4 AthService - AthService() - AthService() - operator=() Node4->Node1 Node5 AthCommonMsg< Service > + msg() + msg() + msgLvl() Node5->Node4 Node6 Service Node6->Node5