IByteStreamEventAccess Node1 IByteStreamEventAccess + getRawEvent() + interfaceID() Node3 ByteStreamCnvSvcBase # m_initCnvs # m_ROD2ROBmap + ByteStreamCnvSvcBase() + ~ByteStreamCnvSvcBase() + initialize() + queryInterface() + updateServiceState() + handle() * m_isSimulation * m_isTestbeam * m_isCalibration Node1->Node3 Node2 IInterface Node2->Node1 Node4 ByteStreamCnvSvc - m_ioSvcName - m_ioSvcNameList - m_fillTriggerBits - m_ioSvcMap - m_evtStore - m_userType - m_slots + ByteStreamCnvSvc() + ~ByteStreamCnvSvc() + initialize() + finalize() + connectOutput() + connectOutput() + commitOutput() + getRawEvent() + getFullEventAssembler() + queryInterface() + interfaceID() # setRawEvent() - writeFEA() Node3->Node4 Node5 TrigByteStreamCnvSvc - m_evtStore - m_robDataProviderSvc - m_monTool - m_rawEventWriteCache + TrigByteStreamCnvSvc() + ~TrigByteStreamCnvSvc() + initialize() + finalize() + connectOutput() + connectOutput() + connectOutput() + commitOutput() + commitOutput() + getRawEvent() + getRawEvent() - setRawEvent() - clearRawEvent() - printRawEvent() - monitorRawEvent() - currentContext() Node3->Node5