{-# LANGUAGE FlexibleInstances, MultiParamTypeClasses #-}
module Simulation.Aivika.Trans.Results.Transform
(
ResultTransformer(..),
SamplingStats(..),
samplingStatsCount,
samplingStatsMin,
samplingStatsMax,
samplingStatsMean,
samplingStatsMean2,
samplingStatsVariance,
samplingStatsDeviation,
TimingStats(..),
timingStatsCount,
timingStatsMin,
timingStatsMax,
timingStatsMean,
timingStatsVariance,
timingStatsDeviation,
timingStatsMinTime,
timingStatsMaxTime,
timingStatsStartTime,
timingStatsLastTime,
timingStatsSum,
timingStatsSum2,
SamplingCounter(..),
samplingCounterValue,
samplingCounterStats,
TimingCounter(..),
timingCounterValue,
timingCounterStats,
Queue(..),
enqueueStrategy,
enqueueStoringStrategy,
dequeueStrategy,
queueNull,
queueFull,
queueMaxCount,
queueCount,
queueCountStats,
enqueueCount,
enqueueLostCount,
enqueueStoreCount,
dequeueCount,
dequeueExtractCount,
queueLoadFactor,
enqueueRate,
enqueueStoreRate,
dequeueRate,
dequeueExtractRate,
queueWaitTime,
queueTotalWaitTime,
enqueueWaitTime,
dequeueWaitTime,
queueRate,
ArrivalTimer(..),
arrivalProcessingTime,
Server(..),
serverInitState,
serverState,
serverTotalInputWaitTime,
serverTotalProcessingTime,
serverTotalOutputWaitTime,
serverTotalPreemptionTime,
serverInputWaitTime,
serverProcessingTime,
serverOutputWaitTime,
serverPreemptionTime,
serverInputWaitFactor,
serverProcessingFactor,
serverOutputWaitFactor,
serverPreemptionFactor,
Activity(..),
activityInitState,
activityState,
activityTotalUtilisationTime,
activityTotalIdleTime,
activityTotalPreemptionTime,
activityUtilisationTime,
activityIdleTime,
activityPreemptionTime,
activityUtilisationFactor,
activityIdleFactor,
activityPreemptionFactor,
Resource(..),
resourceCount,
resourceCountStats,
resourceUtilisationCount,
resourceUtilisationCountStats,
resourceQueueCount,
resourceQueueCountStats,
resourceTotalWaitTime,
resourceWaitTime,
Operation(..),
operationTotalUtilisationTime,
operationTotalPreemptionTime,
operationUtilisationTime,
operationPreemptionTime,
operationUtilisationFactor,
operationPreemptionFactor) where
import Control.Arrow
import Simulation.Aivika.Trans.DES
import Simulation.Aivika.Trans.Results
import Simulation.Aivika.Trans.Results.Locale
class ResultTransformer t m where
tr :: t m -> ResultTransform m
newtype SamplingStats m = SamplingStats (ResultTransform m)
instance ResultTransformer SamplingStats m where
tr :: SamplingStats m -> ResultTransform m
tr (SamplingStats ResultTransform m
a) = ResultTransform m
a
samplingStatsCount :: MonadDES m => SamplingStats m -> ResultTransform m
samplingStatsCount :: forall (m :: * -> *).
MonadDES m =>
SamplingStats m -> ResultTransform m
samplingStatsCount (SamplingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
SamplingStatsCountId
samplingStatsMin :: MonadDES m => SamplingStats m -> ResultTransform m
samplingStatsMin :: forall (m :: * -> *).
MonadDES m =>
SamplingStats m -> ResultTransform m
samplingStatsMin (SamplingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
SamplingStatsMinId
samplingStatsMax :: MonadDES m => SamplingStats m -> ResultTransform m
samplingStatsMax :: forall (m :: * -> *).
MonadDES m =>
SamplingStats m -> ResultTransform m
samplingStatsMax (SamplingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
SamplingStatsMaxId
samplingStatsMean :: MonadDES m => SamplingStats m -> ResultTransform m
samplingStatsMean :: forall (m :: * -> *).
MonadDES m =>
SamplingStats m -> ResultTransform m
samplingStatsMean (SamplingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
SamplingStatsMeanId
samplingStatsMean2 :: MonadDES m => SamplingStats m -> ResultTransform m
samplingStatsMean2 :: forall (m :: * -> *).
MonadDES m =>
SamplingStats m -> ResultTransform m
samplingStatsMean2 (SamplingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
SamplingStatsMean2Id
samplingStatsVariance :: MonadDES m => SamplingStats m -> ResultTransform m
samplingStatsVariance :: forall (m :: * -> *).
MonadDES m =>
SamplingStats m -> ResultTransform m
samplingStatsVariance (SamplingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
SamplingStatsVarianceId
samplingStatsDeviation :: MonadDES m => SamplingStats m -> ResultTransform m
samplingStatsDeviation :: forall (m :: * -> *).
MonadDES m =>
SamplingStats m -> ResultTransform m
samplingStatsDeviation (SamplingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
SamplingStatsDeviationId
newtype SamplingCounter m = SamplingCounter (ResultTransform m)
instance ResultTransformer SamplingCounter m where
tr :: SamplingCounter m -> ResultTransform m
tr (SamplingCounter ResultTransform m
a) = ResultTransform m
a
samplingCounterValue :: SamplingCounter m -> ResultTransform m
samplingCounterValue :: forall (m :: * -> *). SamplingCounter m -> ResultTransform m
samplingCounterValue (SamplingCounter ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
SamplingCounterValueId
samplingCounterStats :: SamplingCounter m -> SamplingStats m
samplingCounterStats :: forall (m :: * -> *). SamplingCounter m -> SamplingStats m
samplingCounterStats (SamplingCounter ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
SamplingCounterStatsId)
newtype TimingStats m = TimingStats (ResultTransform m)
instance ResultTransformer TimingStats m where
tr :: TimingStats m -> ResultTransform m
tr (TimingStats ResultTransform m
a) = ResultTransform m
a
timingStatsCount :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsCount :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsCount (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsCountId
timingStatsMin :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsMin :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsMin (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsMinId
timingStatsMax :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsMax :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsMax (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsMaxId
timingStatsMean :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsMean :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsMean (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsMeanId
timingStatsVariance :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsVariance :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsVariance (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsVarianceId
timingStatsDeviation :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsDeviation :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsDeviation (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsDeviationId
timingStatsMinTime :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsMinTime :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsMinTime (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsMinTimeId
timingStatsMaxTime :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsMaxTime :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsMaxTime (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsMaxTimeId
timingStatsStartTime :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsStartTime :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsStartTime (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsStartTimeId
timingStatsLastTime :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsLastTime :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsLastTime (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsLastTimeId
timingStatsSum :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsSum :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsSum (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsSumId
timingStatsSum2 :: MonadDES m => TimingStats m -> ResultTransform m
timingStatsSum2 :: forall (m :: * -> *).
MonadDES m =>
TimingStats m -> ResultTransform m
timingStatsSum2 (TimingStats ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultTransform m
forall (m :: * -> *). MonadDES m => ResultTransform m
expandResults ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingStatsSum2Id
newtype TimingCounter m = TimingCounter (ResultTransform m)
instance ResultTransformer TimingCounter m where
tr :: TimingCounter m -> ResultTransform m
tr (TimingCounter ResultTransform m
a) = ResultTransform m
a
timingCounterValue :: TimingCounter m -> ResultTransform m
timingCounterValue :: forall (m :: * -> *). TimingCounter m -> ResultTransform m
timingCounterValue (TimingCounter ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingCounterValueId
timingCounterStats :: TimingCounter m -> TimingStats m
timingCounterStats :: forall (m :: * -> *). TimingCounter m -> TimingStats m
timingCounterStats (TimingCounter ResultTransform m
a) =
ResultTransform m -> TimingStats m
forall (m :: * -> *). ResultTransform m -> TimingStats m
TimingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
TimingCounterStatsId)
newtype Queue m = Queue (ResultTransform m)
instance ResultTransformer Queue m where
tr :: Queue m -> ResultTransform m
tr (Queue ResultTransform m
a) = ResultTransform m
a
enqueueStrategy :: Queue m -> ResultTransform m
enqueueStrategy :: forall (m :: * -> *). Queue m -> ResultTransform m
enqueueStrategy (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
EnqueueStrategyId
enqueueStoringStrategy :: Queue m -> ResultTransform m
enqueueStoringStrategy :: forall (m :: * -> *). Queue m -> ResultTransform m
enqueueStoringStrategy (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
EnqueueStoringStrategyId
dequeueStrategy :: Queue m -> ResultTransform m
dequeueStrategy :: forall (m :: * -> *). Queue m -> ResultTransform m
dequeueStrategy (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
DequeueStrategyId
queueNull :: Queue m -> ResultTransform m
queueNull :: forall (m :: * -> *). Queue m -> ResultTransform m
queueNull (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
QueueNullId
queueFull :: Queue m -> ResultTransform m
queueFull :: forall (m :: * -> *). Queue m -> ResultTransform m
queueFull (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
QueueFullId
queueMaxCount :: Queue m -> ResultTransform m
queueMaxCount :: forall (m :: * -> *). Queue m -> ResultTransform m
queueMaxCount (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
QueueMaxCountId
queueCount :: Queue m -> ResultTransform m
queueCount :: forall (m :: * -> *). Queue m -> ResultTransform m
queueCount (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
QueueCountId
queueCountStats :: Queue m -> TimingStats m
queueCountStats :: forall (m :: * -> *). Queue m -> TimingStats m
queueCountStats (Queue ResultTransform m
a) =
ResultTransform m -> TimingStats m
forall (m :: * -> *). ResultTransform m -> TimingStats m
TimingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
QueueCountStatsId)
enqueueCount :: Queue m -> ResultTransform m
enqueueCount :: forall (m :: * -> *). Queue m -> ResultTransform m
enqueueCount (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
EnqueueCountId
enqueueLostCount :: Queue m -> ResultTransform m
enqueueLostCount :: forall (m :: * -> *). Queue m -> ResultTransform m
enqueueLostCount (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
EnqueueLostCountId
enqueueStoreCount :: Queue m -> ResultTransform m
enqueueStoreCount :: forall (m :: * -> *). Queue m -> ResultTransform m
enqueueStoreCount (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
EnqueueStoreCountId
dequeueCount :: Queue m -> ResultTransform m
dequeueCount :: forall (m :: * -> *). Queue m -> ResultTransform m
dequeueCount (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
DequeueCountId
dequeueExtractCount :: Queue m -> ResultTransform m
(Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
DequeueExtractCountId
queueLoadFactor :: Queue m -> ResultTransform m
queueLoadFactor :: forall (m :: * -> *). Queue m -> ResultTransform m
queueLoadFactor (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
QueueLoadFactorId
enqueueRate :: Queue m -> ResultTransform m
enqueueRate :: forall (m :: * -> *). Queue m -> ResultTransform m
enqueueRate (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
EnqueueRateId
enqueueStoreRate :: Queue m -> ResultTransform m
enqueueStoreRate :: forall (m :: * -> *). Queue m -> ResultTransform m
enqueueStoreRate (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
EnqueueStoreRateId
dequeueRate :: Queue m -> ResultTransform m
dequeueRate :: forall (m :: * -> *). Queue m -> ResultTransform m
dequeueRate (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
DequeueRateId
dequeueExtractRate :: Queue m -> ResultTransform m
(Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
DequeueExtractRateId
queueWaitTime :: Queue m -> SamplingStats m
queueWaitTime :: forall (m :: * -> *). Queue m -> SamplingStats m
queueWaitTime (Queue ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
QueueWaitTimeId)
queueTotalWaitTime :: Queue m -> SamplingStats m
queueTotalWaitTime :: forall (m :: * -> *). Queue m -> SamplingStats m
queueTotalWaitTime (Queue ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
QueueTotalWaitTimeId)
enqueueWaitTime :: Queue m -> SamplingStats m
enqueueWaitTime :: forall (m :: * -> *). Queue m -> SamplingStats m
enqueueWaitTime (Queue ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
EnqueueWaitTimeId)
dequeueWaitTime :: Queue m -> SamplingStats m
dequeueWaitTime :: forall (m :: * -> *). Queue m -> SamplingStats m
dequeueWaitTime (Queue ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
DequeueWaitTimeId)
queueRate :: Queue m -> ResultTransform m
queueRate :: forall (m :: * -> *). Queue m -> ResultTransform m
queueRate (Queue ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
QueueRateId
newtype ArrivalTimer m = ArrivalTimer (ResultTransform m)
instance ResultTransformer ArrivalTimer m where
tr :: ArrivalTimer m -> ResultTransform m
tr (ArrivalTimer ResultTransform m
a) = ResultTransform m
a
arrivalProcessingTime :: ArrivalTimer m -> SamplingStats m
arrivalProcessingTime :: forall (m :: * -> *). ArrivalTimer m -> SamplingStats m
arrivalProcessingTime (ArrivalTimer ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ArrivalProcessingTimeId)
newtype Server m = Server (ResultTransform m)
instance ResultTransformer Server m where
tr :: Server m -> ResultTransform m
tr (Server ResultTransform m
a) = ResultTransform m
a
serverInitState :: Server m -> ResultTransform m
serverInitState :: forall (m :: * -> *). Server m -> ResultTransform m
serverInitState (Server ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerInitStateId
serverState :: Server m -> ResultTransform m
serverState :: forall (m :: * -> *). Server m -> ResultTransform m
serverState (Server ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerStateId
serverTotalInputWaitTime :: Server m -> ResultTransform m
serverTotalInputWaitTime :: forall (m :: * -> *). Server m -> ResultTransform m
serverTotalInputWaitTime (Server ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerTotalInputWaitTimeId
serverTotalProcessingTime :: Server m -> ResultTransform m
serverTotalProcessingTime :: forall (m :: * -> *). Server m -> ResultTransform m
serverTotalProcessingTime (Server ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerTotalProcessingTimeId
serverTotalOutputWaitTime :: Server m -> ResultTransform m
serverTotalOutputWaitTime :: forall (m :: * -> *). Server m -> ResultTransform m
serverTotalOutputWaitTime (Server ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerTotalOutputWaitTimeId
serverTotalPreemptionTime :: Server m -> ResultTransform m
serverTotalPreemptionTime :: forall (m :: * -> *). Server m -> ResultTransform m
serverTotalPreemptionTime (Server ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerTotalPreemptionTimeId
serverInputWaitTime :: Server m -> SamplingStats m
serverInputWaitTime :: forall (m :: * -> *). Server m -> SamplingStats m
serverInputWaitTime (Server ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerInputWaitTimeId)
serverProcessingTime :: Server m -> SamplingStats m
serverProcessingTime :: forall (m :: * -> *). Server m -> SamplingStats m
serverProcessingTime (Server ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerProcessingTimeId)
serverOutputWaitTime :: Server m -> SamplingStats m
serverOutputWaitTime :: forall (m :: * -> *). Server m -> SamplingStats m
serverOutputWaitTime (Server ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerOutputWaitTimeId)
serverPreemptionTime :: Server m -> SamplingStats m
serverPreemptionTime :: forall (m :: * -> *). Server m -> SamplingStats m
serverPreemptionTime (Server ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerPreemptionTimeId)
serverInputWaitFactor :: Server m -> ResultTransform m
serverInputWaitFactor :: forall (m :: * -> *). Server m -> ResultTransform m
serverInputWaitFactor (Server ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerInputWaitFactorId
serverProcessingFactor :: Server m -> ResultTransform m
serverProcessingFactor :: forall (m :: * -> *). Server m -> ResultTransform m
serverProcessingFactor (Server ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerProcessingFactorId
serverOutputWaitFactor :: Server m -> ResultTransform m
serverOutputWaitFactor :: forall (m :: * -> *). Server m -> ResultTransform m
serverOutputWaitFactor (Server ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerOutputWaitFactorId
serverPreemptionFactor :: Server m -> ResultTransform m
serverPreemptionFactor :: forall (m :: * -> *). Server m -> ResultTransform m
serverPreemptionFactor (Server ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ServerPreemptionFactorId
newtype Activity m = Activity (ResultTransform m)
instance ResultTransformer Activity m where
tr :: Activity m -> ResultTransform m
tr (Activity ResultTransform m
a) = ResultTransform m
a
activityInitState :: Activity m -> ResultTransform m
activityInitState :: forall (m :: * -> *). Activity m -> ResultTransform m
activityInitState (Activity ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ActivityInitStateId
activityState :: Activity m -> ResultTransform m
activityState :: forall (m :: * -> *). Activity m -> ResultTransform m
activityState (Activity ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ActivityStateId
activityTotalUtilisationTime :: Activity m -> ResultTransform m
activityTotalUtilisationTime :: forall (m :: * -> *). Activity m -> ResultTransform m
activityTotalUtilisationTime (Activity ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ActivityTotalUtilisationTimeId
activityTotalIdleTime :: Activity m -> ResultTransform m
activityTotalIdleTime :: forall (m :: * -> *). Activity m -> ResultTransform m
activityTotalIdleTime (Activity ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ActivityTotalIdleTimeId
activityTotalPreemptionTime :: Activity m -> ResultTransform m
activityTotalPreemptionTime :: forall (m :: * -> *). Activity m -> ResultTransform m
activityTotalPreemptionTime (Activity ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ActivityTotalPreemptionTimeId
activityUtilisationTime :: Activity m -> SamplingStats m
activityUtilisationTime :: forall (m :: * -> *). Activity m -> SamplingStats m
activityUtilisationTime (Activity ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ActivityUtilisationTimeId)
activityIdleTime :: Activity m -> SamplingStats m
activityIdleTime :: forall (m :: * -> *). Activity m -> SamplingStats m
activityIdleTime (Activity ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ActivityIdleTimeId)
activityPreemptionTime :: Activity m -> SamplingStats m
activityPreemptionTime :: forall (m :: * -> *). Activity m -> SamplingStats m
activityPreemptionTime (Activity ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ActivityPreemptionTimeId)
activityUtilisationFactor :: Activity m -> ResultTransform m
activityUtilisationFactor :: forall (m :: * -> *). Activity m -> ResultTransform m
activityUtilisationFactor (Activity ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ActivityUtilisationFactorId
activityIdleFactor :: Activity m -> ResultTransform m
activityIdleFactor :: forall (m :: * -> *). Activity m -> ResultTransform m
activityIdleFactor (Activity ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ActivityIdleFactorId
activityPreemptionFactor :: Activity m -> ResultTransform m
activityPreemptionFactor :: forall (m :: * -> *). Activity m -> ResultTransform m
activityPreemptionFactor (Activity ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ActivityPreemptionFactorId
newtype Resource m = Resource (ResultTransform m)
instance ResultTransformer Resource m where
tr :: Resource m -> ResultTransform m
tr (Resource ResultTransform m
a) = ResultTransform m
a
resourceCount :: Resource m -> ResultTransform m
resourceCount :: forall (m :: * -> *). Resource m -> ResultTransform m
resourceCount (Resource ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ResourceCountId
resourceCountStats :: Resource m -> TimingStats m
resourceCountStats :: forall (m :: * -> *). Resource m -> TimingStats m
resourceCountStats (Resource ResultTransform m
a) =
ResultTransform m -> TimingStats m
forall (m :: * -> *). ResultTransform m -> TimingStats m
TimingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ResourceCountStatsId)
resourceUtilisationCount :: Resource m -> ResultTransform m
resourceUtilisationCount :: forall (m :: * -> *). Resource m -> ResultTransform m
resourceUtilisationCount (Resource ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ResourceUtilisationCountId
resourceUtilisationCountStats :: Resource m -> TimingStats m
resourceUtilisationCountStats :: forall (m :: * -> *). Resource m -> TimingStats m
resourceUtilisationCountStats (Resource ResultTransform m
a) =
ResultTransform m -> TimingStats m
forall (m :: * -> *). ResultTransform m -> TimingStats m
TimingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ResourceUtilisationCountStatsId)
resourceQueueCount :: Resource m -> ResultTransform m
resourceQueueCount :: forall (m :: * -> *). Resource m -> ResultTransform m
resourceQueueCount (Resource ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ResourceQueueCountId
resourceQueueCountStats :: Resource m -> TimingStats m
resourceQueueCountStats :: forall (m :: * -> *). Resource m -> TimingStats m
resourceQueueCountStats (Resource ResultTransform m
a) =
ResultTransform m -> TimingStats m
forall (m :: * -> *). ResultTransform m -> TimingStats m
TimingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ResourceQueueCountStatsId)
resourceTotalWaitTime :: Resource m -> ResultTransform m
resourceTotalWaitTime :: forall (m :: * -> *). Resource m -> ResultTransform m
resourceTotalWaitTime (Resource ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ResourceTotalWaitTimeId
resourceWaitTime :: Resource m -> SamplingStats m
resourceWaitTime :: forall (m :: * -> *). Resource m -> SamplingStats m
resourceWaitTime (Resource ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
ResourceWaitTimeId)
newtype Operation m = Operation (ResultTransform m)
instance ResultTransformer Operation m where
tr :: Operation m -> ResultTransform m
tr (Operation ResultTransform m
a) = ResultTransform m
a
operationTotalUtilisationTime :: Operation m -> ResultTransform m
operationTotalUtilisationTime :: forall (m :: * -> *). Operation m -> ResultTransform m
operationTotalUtilisationTime (Operation ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
OperationTotalUtilisationTimeId
operationTotalPreemptionTime :: Operation m -> ResultTransform m
operationTotalPreemptionTime :: forall (m :: * -> *). Operation m -> ResultTransform m
operationTotalPreemptionTime (Operation ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
OperationTotalPreemptionTimeId
operationUtilisationTime :: Operation m -> SamplingStats m
operationUtilisationTime :: forall (m :: * -> *). Operation m -> SamplingStats m
operationUtilisationTime (Operation ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
OperationUtilisationTimeId)
operationPreemptionTime :: Operation m -> SamplingStats m
operationPreemptionTime :: forall (m :: * -> *). Operation m -> SamplingStats m
operationPreemptionTime (Operation ResultTransform m
a) =
ResultTransform m -> SamplingStats m
forall (m :: * -> *). ResultTransform m -> SamplingStats m
SamplingStats (ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
OperationPreemptionTimeId)
operationUtilisationFactor :: Operation m -> ResultTransform m
operationUtilisationFactor :: forall (m :: * -> *). Operation m -> ResultTransform m
operationUtilisationFactor (Operation ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
OperationUtilisationFactorId
operationPreemptionFactor :: Operation m -> ResultTransform m
operationPreemptionFactor :: forall (m :: * -> *). Operation m -> ResultTransform m
operationPreemptionFactor (Operation ResultTransform m
a) =
ResultTransform m
a ResultTransform m -> ResultTransform m -> ResultTransform m
forall {k} (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k).
Category cat =>
cat a b -> cat b c -> cat a c
>>> ResultId -> ResultTransform m
forall (m :: * -> *). ResultId -> ResultTransform m
resultById ResultId
OperationPreemptionFactorId