Copyright | Copyright (c) 2017 David Sorokin <david.sorokin@gmail.com> |
---|---|
License | BSD3 |
Maintainer | David Sorokin <david.sorokin@gmail.com> |
Stability | experimental |
Safe Haskell | None |
Language | Haskell98 |
Tested with: GHC 8.0.1
This module defines the GPSS Storage entity.
- data Storage
- newStorage :: Int -> Event Storage
- storageCapacity :: Storage -> Int
- storageEmpty :: Storage -> Event Bool
- storageFull :: Storage -> Event Bool
- storageContent :: Storage -> Event Int
- storageContentStats :: Storage -> Event (TimingStats Int)
- storageUseCount :: Storage -> Event Int
- storageUsedContent :: Storage -> Event Int
- storageUtilisationCount :: Storage -> Event Int
- storageUtilisationCountStats :: Storage -> Event (TimingStats Int)
- storageQueueCount :: Storage -> Event Int
- storageQueueCountStats :: Storage -> Event (TimingStats Int)
- storageTotalWaitTime :: Storage -> Event Double
- storageWaitTime :: Storage -> Event (SamplingStats Double)
- storageAverageHoldingTime :: Storage -> Event Double
- enterStorage :: Storage -> Transact a -> Int -> Process ()
- leaveStorage :: Storage -> Int -> Process ()
- leaveStorageWithinEvent :: Storage -> Int -> Event ()
- resetStorage :: Storage -> Event ()
- storageContentChanged :: Storage -> Signal Int
- storageContentChanged_ :: Storage -> Signal ()
- storageUseCountChanged :: Storage -> Signal Int
- storageUseCountChanged_ :: Storage -> Signal ()
- storageUsedContentChanged :: Storage -> Signal Int
- storageUsedContentChanged_ :: Storage -> Signal ()
- storageUtilisationCountChanged :: Storage -> Signal Int
- storageUtilisationCountChanged_ :: Storage -> Signal ()
- storageQueueCountChanged :: Storage -> Signal Int
- storageQueueCountChanged_ :: Storage -> Signal ()
- storageWaitTimeChanged :: Storage -> Signal (SamplingStats Double)
- storageWaitTimeChanged_ :: Storage -> Signal ()
- storageChanged_ :: Storage -> Signal ()
Storage Type
Creating Storage
Storage Properties
storageCapacity :: Storage -> Int Source #
Return the storage capacity.
storageContent :: Storage -> Event Int Source #
Return the current storage content available for use.
storageContentStats :: Storage -> Event (TimingStats Int) Source #
Return the statistics of the storage content available for use.
storageUtilisationCount :: Storage -> Event Int Source #
Return the current utilisation count of the storage.
storageUtilisationCountStats :: Storage -> Event (TimingStats Int) Source #
Return the statistics for the utilisation count of the storage.
storageQueueCountStats :: Storage -> Event (TimingStats Int) Source #
Return the statistics for the queue length of the storage.
storageWaitTime :: Storage -> Event (SamplingStats Double) Source #
Return the statistics for the wait time of the storage.
storageAverageHoldingTime :: Storage -> Event Double Source #
Return the average holding time per unit.
Entering-Leaving Storage
:: Storage | the requested storage |
-> Transact a | a transact that makes the request |
-> Int | the content decrement |
-> Process () |
Enter the storage.
Leave the storage.
leaveStorageWithinEvent Source #
Leave the storage.
Statistics Reset
resetStorage :: Storage -> Event () Source #
Reset the statistics.
Signals
storageContentChanged :: Storage -> Signal Int Source #
Signal triggered when the storageContent
property changes.
storageContentChanged_ :: Storage -> Signal () Source #
Signal triggered when the storageContent
property changes.
storageUseCountChanged :: Storage -> Signal Int Source #
Signal triggered when the storageUseCount
property changes.
storageUseCountChanged_ :: Storage -> Signal () Source #
Signal triggered when the storageUseCount
property changes.
storageUsedContentChanged :: Storage -> Signal Int Source #
Signal triggered when the storageUsedContent
property changes.
storageUsedContentChanged_ :: Storage -> Signal () Source #
Signal triggered when the storageUsedContent
property changes.
storageUtilisationCountChanged :: Storage -> Signal Int Source #
Signal triggered when the storageUtilisationCount
property changes.
storageUtilisationCountChanged_ :: Storage -> Signal () Source #
Signal triggered when the storageUtilisationCount
property changes.
storageQueueCountChanged :: Storage -> Signal Int Source #
Signal triggered when the storageQueueCount
property changes.
storageQueueCountChanged_ :: Storage -> Signal () Source #
Signal triggered when the storageQueueCount
property changes.
storageWaitTimeChanged :: Storage -> Signal (SamplingStats Double) Source #
Signal triggered when the storageTotalWaitTime
and storageWaitTime
properties change.
storageWaitTimeChanged_ :: Storage -> Signal () Source #
Signal triggered when the storageTotalWaitTime
and storageWaitTime
properties change.
storageChanged_ :: Storage -> Signal () Source #
Signal triggered when one of the storage counters changes.