rattletrap-0.1.0: library/Rattletrap/KeyFrame.hs
module Rattletrap.KeyFrame where
import Rattletrap.Float32
import Rattletrap.Word32
import qualified Data.Binary as Binary
data KeyFrame = KeyFrame
{ keyFrameTime :: Float32
, keyFrameFrame :: Word32
, keyFramePosition :: Word32
} deriving (Eq, Ord, Show)
getKeyFrame :: Binary.Get KeyFrame
getKeyFrame = do
time <- getFloat32
frame <- getWord32
position <- getWord32
pure
KeyFrame
{keyFrameTime = time, keyFrameFrame = frame, keyFramePosition = position}
putKeyFrame :: KeyFrame -> Binary.Put
putKeyFrame keyFrame = do
putFloat32 (keyFrameTime keyFrame)
putWord32 (keyFrameFrame keyFrame)
putWord32 (keyFramePosition keyFrame)