|
| Data.EventList.Absolute.TimeTime | | Portability | Haskell 98 | | Stability | stable | | Maintainer | haskell@henning-thielemann.de |
|
|
|
| Description |
| Event list with absolute times starting with a time and ending with a body
|
|
| Synopsis |
|
| data T time body | | | pause :: time -> T time body | | | isPause :: T time body -> Bool | | | viewL :: T time body -> (time, Maybe (body, T time body)) | | | switchL :: (time -> a) -> ((time, body) -> T time body -> a) -> T time body -> a | | | cons :: time -> body -> T time body -> T time body | | | snoc :: T time body -> body -> time -> T time body | | | mapBody :: (body0 -> body1) -> T time body0 -> T time body1 | | | mapTime :: (time0 -> time1) -> T time0 body -> T time1 body | | | concatMapMonoid :: Monoid m => (time -> m) -> (body -> m) -> T time body -> m | | | mapM :: Monad m => (time0 -> m time1) -> (body0 -> m body1) -> T time0 body0 -> m (T time1 body1) | | | mapM_ :: Monad m => (time -> m ()) -> (body -> m ()) -> T time body -> m () | | | mapBodyM :: Monad m => (body0 -> m body1) -> T time body0 -> m (T time body1) | | | mapTimeM :: Monad m => (time0 -> m time1) -> T time0 body -> m (T time1 body) | | | getTimes :: T time body -> [time] | | | getBodies :: T time body -> [body] | | | duration :: Num time => T time body -> time | | | merge :: (Ord time, Ord body) => T time body -> T time body -> T time body | | | mergeBy :: Ord time => (body -> body -> Bool) -> T time body -> T time body -> T time body | | | insert :: (Ord time, Ord body) => time -> body -> T time body -> T time body | | | insertBy :: Ord time => (body -> body -> Bool) -> time -> body -> T time body -> T time body | | | moveForward :: (Ord time, Num time) => T time (time, body) -> T time body | | | decreaseStart :: (Ord time, Num time) => time -> T time body -> T time body | | | delay :: (Ord time, Num time) => time -> T time body -> T time body | | | filter :: Num time => (body -> Bool) -> T time body -> T time body | | | partition :: (body -> Bool) -> T time body -> (T time body, T time body) | | | slice :: (Eq a, Num time) => (body -> a) -> T time body -> [(a, T time body)] | | | foldr :: (time -> a -> b) -> (body -> b -> a) -> a -> T time body -> b | | | mapMaybe :: Num time => (body0 -> Maybe body1) -> T time body0 -> T time body1 | | | catMaybes :: Num time => T time (Maybe body) -> T time body | | | normalize :: (Ord time, Num time, Ord body) => T time body -> T time body | | | isNormalized :: (Ord time, Num time, Ord body) => T time body -> Bool | | | collectCoincident :: Eq time => T time body -> T time [body] | | | flatten :: (Ord time, Num time) => T time [body] -> T time body | | | mapCoincident :: (Ord time, Num time) => ([a] -> [b]) -> T time a -> T time b | | | append :: (Ord time, Num time) => T time body -> T time body -> T time body | | | concat :: (Ord time, Num time) => [T time body] -> T time body | | | cycle :: (Ord time, Num time) => T time body -> T time body | | | discretize :: (RealFrac time, Integral i) => T time body -> T i body | | | resample :: (RealFrac time, Integral i) => time -> T time body -> T i body |
|
|
| Documentation |
|
|
Instances | |
|
|
|
|
|
|
|
|
| switchL :: (time -> a) -> ((time, body) -> T time body -> a) -> T time body -> a | Source |
|
|
| cons :: time -> body -> T time body -> T time body | Source |
|
|
| snoc :: T time body -> body -> time -> T time body | Source |
|
|
| mapBody :: (body0 -> body1) -> T time body0 -> T time body1 | Source |
|
|
| mapTime :: (time0 -> time1) -> T time0 body -> T time1 body | Source |
|
|
| concatMapMonoid :: Monoid m => (time -> m) -> (body -> m) -> T time body -> m | Source |
|
|
| mapM :: Monad m => (time0 -> m time1) -> (body0 -> m body1) -> T time0 body0 -> m (T time1 body1) | Source |
|
|
|
|
| mapBodyM :: Monad m => (body0 -> m body1) -> T time body0 -> m (T time body1) | Source |
|
|
| mapTimeM :: Monad m => (time0 -> m time1) -> T time0 body -> m (T time1 body) | Source |
|
|
| getTimes :: T time body -> [time] | Source |
|
|
| getBodies :: T time body -> [body] | Source |
|
|
|
|
| merge :: (Ord time, Ord body) => T time body -> T time body -> T time body | Source |
|
|
| mergeBy :: Ord time => (body -> body -> Bool) -> T time body -> T time body -> T time body | Source |
|
|
| insert :: (Ord time, Ord body) => time -> body -> T time body -> T time body | Source |
|
|
| insertBy :: Ord time => (body -> body -> Bool) -> time -> body -> T time body -> T time body | Source |
|
|
| moveForward :: (Ord time, Num time) => T time (time, body) -> T time body | Source |
|
| Move events towards the front of the event list.
You must make sure, that no event is moved before time zero.
This works only for finite lists.
|
|
| decreaseStart :: (Ord time, Num time) => time -> T time body -> T time body | Source |
|
|
| delay :: (Ord time, Num time) => time -> T time body -> T time body | Source |
|
|
|
|
| partition :: (body -> Bool) -> T time body -> (T time body, T time body) | Source |
|
|
| slice :: (Eq a, Num time) => (body -> a) -> T time body -> [(a, T time body)] | Source |
|
|
| foldr :: (time -> a -> b) -> (body -> b -> a) -> a -> T time body -> b | Source |
|
|
| mapMaybe :: Num time => (body0 -> Maybe body1) -> T time body0 -> T time body1 | Source |
|
|
|
|
|
| sort sorts a list of coinciding events,
that is all events but the first one have time difference 0.
normalize sorts all coinciding events in a list
thus yielding a canonical representation of a time ordered list.
|
|
|
|
| collectCoincident :: Eq time => T time body -> T time [body] | Source |
|
|
|
|
| mapCoincident :: (Ord time, Num time) => ([a] -> [b]) -> T time a -> T time b | Source |
|
| Apply a function to the lists of coincident events.
|
|
| append :: (Ord time, Num time) => T time body -> T time body -> T time body | Source |
|
|
|
|
|
|
|
|
|
|
| Produced by Haddock version 2.4.2 |