module Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.PerasCert
( TracePerasCertDiffusionInbound
, TracePerasCertDiffusionOutbound
, PerasCertPoolReader
, PerasCertPoolWriter
, PerasCertDiffusionInboundPipelined
, PerasCertDiffusionOutbound
, PerasCertDiffusion
) where
import Ouroboros.Consensus.Block
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.Inbound
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.ObjectPool.API
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.Outbound
import Ouroboros.Consensus.Storage.PerasCertDB.API
import Ouroboros.Network.Protocol.ObjectDiffusion.Inbound (ObjectDiffusionInboundPipelined)
import Ouroboros.Network.Protocol.ObjectDiffusion.Outbound (ObjectDiffusionOutbound)
import Ouroboros.Network.Protocol.ObjectDiffusion.Type (ObjectDiffusion)
type TracePerasCertDiffusionInbound blk =
TraceObjectDiffusionInbound PerasRoundNo (PerasCert blk)
type TracePerasCertDiffusionOutbound blk =
TraceObjectDiffusionOutbound PerasRoundNo (PerasCert blk)
type PerasCertPoolReader blk m =
ObjectPoolReader PerasRoundNo (PerasCert blk) PerasCertTicketNo m
type PerasCertPoolWriter blk m =
ObjectPoolWriter PerasRoundNo (PerasCert blk) m
type PerasCertDiffusionInboundPipelined blk m a =
ObjectDiffusionInboundPipelined PerasRoundNo (PerasCert blk) m a
type PerasCertDiffusionOutbound blk m a =
ObjectDiffusionOutbound PerasRoundNo (PerasCert blk) m a
type PerasCertDiffusion blk =
ObjectDiffusion PerasRoundNo (PerasCert blk)