rattletrap-2.2.2: library/Rattletrap/Attribute/Float.hs
module Rattletrap.Attribute.Float where
import Rattletrap.Primitive
import qualified Data.Binary.Bits.Get as BinaryBit
import qualified Data.Binary.Bits.Put as BinaryBit
newtype FloatAttribute = FloatAttribute
{ floatAttributeValue :: Float32
} deriving (Eq, Ord, Show)
getFloatAttribute :: BinaryBit.BitGet FloatAttribute
getFloatAttribute = do
value <- getFloat32Bits
pure (FloatAttribute value)
putFloatAttribute :: FloatAttribute -> BinaryBit.BitPut ()
putFloatAttribute floatAttribute =
putFloat32Bits (floatAttributeValue floatAttribute)