isobmff-builder-0.11.2.0: src/Data/ByteString/IsoBaseFileFormat/Boxes/DataEntryUrn.hs
-- | A table of data references (URN with optional URL.
module Data.ByteString.IsoBaseFileFormat.Boxes.DataEntryUrn
(DataEntryUrn()
,dataEntryUrn
)
where
import Data.ByteString.IsoBaseFileFormat.Box
import Data.ByteString.IsoBaseFileFormat.Util.FullBox
import qualified Data.Text as T
-- | A container for a URN and optionally a URL
newtype DataEntryUrn =
DataEntryUrn (T.Text :+ T.Text)
deriving (IsBoxContent)
-- | Create a 'DataEntryUrn' box. The flag determines if the url is local, i.e.
-- the media data is in the same file.
dataEntryUrn
:: Bool -> T.Text -> T.Text -> Box (FullBox DataEntryUrn 0)
dataEntryUrn isLocal urn url = Box (FullBox (fromIntegral $ fromEnum isLocal) $ DataEntryUrn $ urn :+ url)
instance IsBox DataEntryUrn
type instance BoxTypeSymbol DataEntryUrn = "urn "