module Data.ByteString.IsoBaseFileFormat.Boxes.TrackFragBaseMediaDecodeTime where
import Data.ByteString.IsoBaseFileFormat.Box
import Data.ByteString.IsoBaseFileFormat.Util.FullBox
import Data.ByteString.IsoBaseFileFormat.Util.Time
import GHC.TypeLits
trackFragBaseMediaDecodeTime 
  :: KnownNat version
  => TS version "track-fragment-base-media-decode-time"
  -> Box (FullBox (TrackFragBaseMediaDecodeTime version) version)
trackFragBaseMediaDecodeTime = fullBox 0 . TrackFragBaseMediaDecodeTime
newtype TrackFragBaseMediaDecodeTime (version :: Nat) where
  TrackFragBaseMediaDecodeTime
    :: TS version "track-fragment-base-media-decode-time"
    -> TrackFragBaseMediaDecodeTime version
  deriving (IsBoxContent)
instance IsBox (TrackFragBaseMediaDecodeTime v)
type instance BoxTypeSymbol (TrackFragBaseMediaDecodeTime v) = "tfdt"
trackFragBaseMediaDecodeTimeStaticSize64 :: Num a => a
trackFragBaseMediaDecodeTimeStaticSize64 =
  fromBoxSize 0 (boxSize (trackFragBaseMediaDecodeTime (TSv1 0)))