aivika-distributed-0.1: Simulation/Aivika/Distributed/Optimistic/Internal/InputMessageQueue.hs-boot
-- |
-- Module : Simulation.Aivika.Distributed.Optimistic.Internal.InputMessageQueue
-- Copyright : Copyright (c) 2015-2016, David Sorokin <david.sorokin@gmail.com>
-- License : BSD3
-- Maintainer : David Sorokin <david.sorokin@gmail.com>
-- Stability : experimental
-- Tested with: GHC 7.10.3
--
-- This is an hs-boot file.
--
module Simulation.Aivika.Distributed.Optimistic.Internal.InputMessageQueue
(InputMessageQueue,
newInputMessageQueue,
inputMessageQueueSize,
inputMessageQueueVersion,
enqueueMessage,
messageEnqueued,
retryInputMessages,
reduceInputMessages) where
import Simulation.Aivika.Trans.Simulation
import Simulation.Aivika.Trans.Event
import Simulation.Aivika.Trans.Signal
import Simulation.Aivika.Distributed.Optimistic.Internal.Message
import Simulation.Aivika.Distributed.Optimistic.Internal.UndoableLog
import Simulation.Aivika.Distributed.Optimistic.Internal.DIO
import Simulation.Aivika.Distributed.Optimistic.Internal.TimeWarp
data InputMessageQueue
newInputMessageQueue :: UndoableLog
-> (Bool -> TimeWarp DIO ())
-> (Bool -> TimeWarp DIO ())
-> TimeWarp DIO ()
-> DIO InputMessageQueue
inputMessageQueueSize :: InputMessageQueue -> IO Int
inputMessageQueueVersion :: InputMessageQueue -> IO Int
enqueueMessage :: InputMessageQueue -> Message -> TimeWarp DIO ()
messageEnqueued :: InputMessageQueue -> Signal DIO Message
retryInputMessages :: InputMessageQueue -> TimeWarp DIO ()
reduceInputMessages :: InputMessageQueue -> Double -> IO ()