{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GstPbutils.Objects.EncodingTarget
(
EncodingTarget(..) ,
IsEncodingTarget ,
toEncodingTarget ,
#if defined(ENABLE_OVERLOADING)
ResolveEncodingTargetMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
EncodingTargetAddProfileMethodInfo ,
#endif
encodingTargetAddProfile ,
#if defined(ENABLE_OVERLOADING)
EncodingTargetGetCategoryMethodInfo ,
#endif
encodingTargetGetCategory ,
#if defined(ENABLE_OVERLOADING)
EncodingTargetGetDescriptionMethodInfo ,
#endif
encodingTargetGetDescription ,
#if defined(ENABLE_OVERLOADING)
EncodingTargetGetNameMethodInfo ,
#endif
encodingTargetGetName ,
#if defined(ENABLE_OVERLOADING)
EncodingTargetGetPathMethodInfo ,
#endif
encodingTargetGetPath ,
#if defined(ENABLE_OVERLOADING)
EncodingTargetGetProfileMethodInfo ,
#endif
encodingTargetGetProfile ,
#if defined(ENABLE_OVERLOADING)
EncodingTargetGetProfilesMethodInfo ,
#endif
encodingTargetGetProfiles ,
encodingTargetLoad ,
encodingTargetLoadFromFile ,
encodingTargetNew ,
#if defined(ENABLE_OVERLOADING)
EncodingTargetSaveMethodInfo ,
#endif
encodingTargetSave ,
#if defined(ENABLE_OVERLOADING)
EncodingTargetSaveToFileMethodInfo ,
#endif
encodingTargetSaveToFile ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.Kind as DK
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GHC.Records as R
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.GstPbutils.Objects.EncodingProfile as GstPbutils.EncodingProfile
newtype EncodingTarget = EncodingTarget (SP.ManagedPtr EncodingTarget)
deriving (EncodingTarget -> EncodingTarget -> Bool
(EncodingTarget -> EncodingTarget -> Bool)
-> (EncodingTarget -> EncodingTarget -> Bool) -> Eq EncodingTarget
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: EncodingTarget -> EncodingTarget -> Bool
== :: EncodingTarget -> EncodingTarget -> Bool
$c/= :: EncodingTarget -> EncodingTarget -> Bool
/= :: EncodingTarget -> EncodingTarget -> Bool
Eq)
instance SP.ManagedPtrNewtype EncodingTarget where
toManagedPtr :: EncodingTarget -> ManagedPtr EncodingTarget
toManagedPtr (EncodingTarget ManagedPtr EncodingTarget
p) = ManagedPtr EncodingTarget
p
foreign import ccall "gst_encoding_target_get_type"
c_gst_encoding_target_get_type :: IO B.Types.GType
instance B.Types.TypedObject EncodingTarget where
glibType :: IO GType
glibType = IO GType
c_gst_encoding_target_get_type
instance B.Types.GObject EncodingTarget
class (SP.GObject o, O.IsDescendantOf EncodingTarget o) => IsEncodingTarget o
instance (SP.GObject o, O.IsDescendantOf EncodingTarget o) => IsEncodingTarget o
instance O.HasParentTypes EncodingTarget
type instance O.ParentTypes EncodingTarget = '[GObject.Object.Object]
toEncodingTarget :: (MIO.MonadIO m, IsEncodingTarget o) => o -> m EncodingTarget
toEncodingTarget :: forall (m :: * -> *) o.
(MonadIO m, IsEncodingTarget o) =>
o -> m EncodingTarget
toEncodingTarget = IO EncodingTarget -> m EncodingTarget
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO EncodingTarget -> m EncodingTarget)
-> (o -> IO EncodingTarget) -> o -> m EncodingTarget
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr EncodingTarget -> EncodingTarget)
-> o -> IO EncodingTarget
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr EncodingTarget -> EncodingTarget
EncodingTarget
instance B.GValue.IsGValue (Maybe EncodingTarget) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_gst_encoding_target_get_type
gvalueSet_ :: Ptr GValue -> Maybe EncodingTarget -> IO ()
gvalueSet_ Ptr GValue
gv Maybe EncodingTarget
P.Nothing = Ptr GValue -> Ptr EncodingTarget -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr EncodingTarget
forall a. Ptr a
FP.nullPtr :: FP.Ptr EncodingTarget)
gvalueSet_ Ptr GValue
gv (P.Just EncodingTarget
obj) = EncodingTarget -> (Ptr EncodingTarget -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr EncodingTarget
obj (Ptr GValue -> Ptr EncodingTarget -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe EncodingTarget)
gvalueGet_ Ptr GValue
gv = do
Ptr EncodingTarget
ptr <- Ptr GValue -> IO (Ptr EncodingTarget)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr EncodingTarget)
if Ptr EncodingTarget
ptr Ptr EncodingTarget -> Ptr EncodingTarget -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr EncodingTarget
forall a. Ptr a
FP.nullPtr
then EncodingTarget -> Maybe EncodingTarget
forall a. a -> Maybe a
P.Just (EncodingTarget -> Maybe EncodingTarget)
-> IO EncodingTarget -> IO (Maybe EncodingTarget)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr EncodingTarget -> EncodingTarget)
-> Ptr EncodingTarget -> IO EncodingTarget
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr EncodingTarget -> EncodingTarget
EncodingTarget Ptr EncodingTarget
ptr
else Maybe EncodingTarget -> IO (Maybe EncodingTarget)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe EncodingTarget
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveEncodingTargetMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveEncodingTargetMethod "addProfile" o = EncodingTargetAddProfileMethodInfo
ResolveEncodingTargetMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveEncodingTargetMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveEncodingTargetMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveEncodingTargetMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveEncodingTargetMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveEncodingTargetMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveEncodingTargetMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveEncodingTargetMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveEncodingTargetMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveEncodingTargetMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveEncodingTargetMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveEncodingTargetMethod "save" o = EncodingTargetSaveMethodInfo
ResolveEncodingTargetMethod "saveToFile" o = EncodingTargetSaveToFileMethodInfo
ResolveEncodingTargetMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveEncodingTargetMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveEncodingTargetMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveEncodingTargetMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveEncodingTargetMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveEncodingTargetMethod "getCategory" o = EncodingTargetGetCategoryMethodInfo
ResolveEncodingTargetMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveEncodingTargetMethod "getDescription" o = EncodingTargetGetDescriptionMethodInfo
ResolveEncodingTargetMethod "getName" o = EncodingTargetGetNameMethodInfo
ResolveEncodingTargetMethod "getPath" o = EncodingTargetGetPathMethodInfo
ResolveEncodingTargetMethod "getProfile" o = EncodingTargetGetProfileMethodInfo
ResolveEncodingTargetMethod "getProfiles" o = EncodingTargetGetProfilesMethodInfo
ResolveEncodingTargetMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveEncodingTargetMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveEncodingTargetMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveEncodingTargetMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveEncodingTargetMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveEncodingTargetMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveEncodingTargetMethod t EncodingTarget, O.OverloadedMethod info EncodingTarget p) => OL.IsLabel t (EncodingTarget -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveEncodingTargetMethod t EncodingTarget, O.OverloadedMethod info EncodingTarget p, R.HasField t EncodingTarget p) => R.HasField t EncodingTarget p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveEncodingTargetMethod t EncodingTarget, O.OverloadedMethodInfo info EncodingTarget) => OL.IsLabel t (O.MethodProxy info EncodingTarget) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList EncodingTarget
type instance O.AttributeList EncodingTarget = EncodingTargetAttributeList
type EncodingTargetAttributeList = ('[ ] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList EncodingTarget = EncodingTargetSignalList
type EncodingTargetSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, DK.Type)])
#endif
foreign import ccall "gst_encoding_target_new" gst_encoding_target_new ::
CString ->
CString ->
CString ->
Ptr (GList (Ptr GstPbutils.EncodingProfile.EncodingProfile)) ->
IO (Ptr EncodingTarget)
encodingTargetNew ::
(B.CallStack.HasCallStack, MonadIO m, GstPbutils.EncodingProfile.IsEncodingProfile a) =>
T.Text
-> T.Text
-> T.Text
-> [a]
-> m (Maybe EncodingTarget)
encodingTargetNew :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEncodingProfile a) =>
Text -> Text -> Text -> [a] -> m (Maybe EncodingTarget)
encodingTargetNew Text
name Text
category Text
description [a]
profiles = IO (Maybe EncodingTarget) -> m (Maybe EncodingTarget)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe EncodingTarget) -> m (Maybe EncodingTarget))
-> IO (Maybe EncodingTarget) -> m (Maybe EncodingTarget)
forall a b. (a -> b) -> a -> b
$ do
CString
name' <- Text -> IO CString
textToCString Text
name
CString
category' <- Text -> IO CString
textToCString Text
category
CString
description' <- Text -> IO CString
textToCString Text
description
[Ptr EncodingProfile]
profiles' <- (a -> IO (Ptr EncodingProfile)) -> [a] -> IO [Ptr EncodingProfile]
forall (t :: * -> *) (m :: * -> *) a b.
(Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
forall (m :: * -> *) a b. Monad m => (a -> m b) -> [a] -> m [b]
mapM a -> IO (Ptr EncodingProfile)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr [a]
profiles
Ptr (GList (Ptr EncodingProfile))
profiles'' <- [Ptr EncodingProfile] -> IO (Ptr (GList (Ptr EncodingProfile)))
forall a. [Ptr a] -> IO (Ptr (GList (Ptr a)))
packGList [Ptr EncodingProfile]
profiles'
Ptr EncodingTarget
result <- CString
-> CString
-> CString
-> Ptr (GList (Ptr EncodingProfile))
-> IO (Ptr EncodingTarget)
gst_encoding_target_new CString
name' CString
category' CString
description' Ptr (GList (Ptr EncodingProfile))
profiles''
Maybe EncodingTarget
maybeResult <- Ptr EncodingTarget
-> (Ptr EncodingTarget -> IO EncodingTarget)
-> IO (Maybe EncodingTarget)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr EncodingTarget
result ((Ptr EncodingTarget -> IO EncodingTarget)
-> IO (Maybe EncodingTarget))
-> (Ptr EncodingTarget -> IO EncodingTarget)
-> IO (Maybe EncodingTarget)
forall a b. (a -> b) -> a -> b
$ \Ptr EncodingTarget
result' -> do
EncodingTarget
result'' <- ((ManagedPtr EncodingTarget -> EncodingTarget)
-> Ptr EncodingTarget -> IO EncodingTarget
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr EncodingTarget -> EncodingTarget
EncodingTarget) Ptr EncodingTarget
result'
EncodingTarget -> IO EncodingTarget
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return EncodingTarget
result''
(a -> IO ()) -> [a] -> IO ()
forall (t :: * -> *) (m :: * -> *) a b.
(Foldable t, Monad m) =>
(a -> m b) -> t a -> m ()
mapM_ a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr [a]
profiles
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
category'
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
description'
Ptr (GList (Ptr EncodingProfile)) -> IO ()
forall a. Ptr (GList a) -> IO ()
g_list_free Ptr (GList (Ptr EncodingProfile))
profiles''
Maybe EncodingTarget -> IO (Maybe EncodingTarget)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe EncodingTarget
maybeResult
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "gst_encoding_target_add_profile" gst_encoding_target_add_profile ::
Ptr EncodingTarget ->
Ptr GstPbutils.EncodingProfile.EncodingProfile ->
IO CInt
encodingTargetAddProfile ::
(B.CallStack.HasCallStack, MonadIO m, IsEncodingTarget a, GstPbutils.EncodingProfile.IsEncodingProfile b) =>
a
-> b
-> m Bool
encodingTargetAddProfile :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsEncodingTarget a,
IsEncodingProfile b) =>
a -> b -> m Bool
encodingTargetAddProfile a
target b
profile = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr EncodingTarget
target' <- a -> IO (Ptr EncodingTarget)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
target
Ptr EncodingProfile
profile' <- b -> IO (Ptr EncodingProfile)
forall a b. (HasCallStack, GObject a) => a -> IO (Ptr b)
B.ManagedPtr.disownObject b
profile
CInt
result <- Ptr EncodingTarget -> Ptr EncodingProfile -> IO CInt
gst_encoding_target_add_profile Ptr EncodingTarget
target' Ptr EncodingProfile
profile'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
target
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
profile
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data EncodingTargetAddProfileMethodInfo
instance (signature ~ (b -> m Bool), MonadIO m, IsEncodingTarget a, GstPbutils.EncodingProfile.IsEncodingProfile b) => O.OverloadedMethod EncodingTargetAddProfileMethodInfo a signature where
overloadedMethod = encodingTargetAddProfile
instance O.OverloadedMethodInfo EncodingTargetAddProfileMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstPbutils.Objects.EncodingTarget.encodingTargetAddProfile",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstpbutils-1.0.27/docs/GI-GstPbutils-Objects-EncodingTarget.html#v:encodingTargetAddProfile"
})
#endif
foreign import ccall "gst_encoding_target_get_category" gst_encoding_target_get_category ::
Ptr EncodingTarget ->
IO CString
encodingTargetGetCategory ::
(B.CallStack.HasCallStack, MonadIO m, IsEncodingTarget a) =>
a
-> m T.Text
encodingTargetGetCategory :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEncodingTarget a) =>
a -> m Text
encodingTargetGetCategory a
target = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
Ptr EncodingTarget
target' <- a -> IO (Ptr EncodingTarget)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
target
CString
result <- Ptr EncodingTarget -> IO CString
gst_encoding_target_get_category Ptr EncodingTarget
target'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"encodingTargetGetCategory" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
target
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data EncodingTargetGetCategoryMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsEncodingTarget a) => O.OverloadedMethod EncodingTargetGetCategoryMethodInfo a signature where
overloadedMethod = encodingTargetGetCategory
instance O.OverloadedMethodInfo EncodingTargetGetCategoryMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstPbutils.Objects.EncodingTarget.encodingTargetGetCategory",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstpbutils-1.0.27/docs/GI-GstPbutils-Objects-EncodingTarget.html#v:encodingTargetGetCategory"
})
#endif
foreign import ccall "gst_encoding_target_get_description" gst_encoding_target_get_description ::
Ptr EncodingTarget ->
IO CString
encodingTargetGetDescription ::
(B.CallStack.HasCallStack, MonadIO m, IsEncodingTarget a) =>
a
-> m T.Text
encodingTargetGetDescription :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEncodingTarget a) =>
a -> m Text
encodingTargetGetDescription a
target = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
Ptr EncodingTarget
target' <- a -> IO (Ptr EncodingTarget)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
target
CString
result <- Ptr EncodingTarget -> IO CString
gst_encoding_target_get_description Ptr EncodingTarget
target'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"encodingTargetGetDescription" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
target
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data EncodingTargetGetDescriptionMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsEncodingTarget a) => O.OverloadedMethod EncodingTargetGetDescriptionMethodInfo a signature where
overloadedMethod = encodingTargetGetDescription
instance O.OverloadedMethodInfo EncodingTargetGetDescriptionMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstPbutils.Objects.EncodingTarget.encodingTargetGetDescription",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstpbutils-1.0.27/docs/GI-GstPbutils-Objects-EncodingTarget.html#v:encodingTargetGetDescription"
})
#endif
foreign import ccall "gst_encoding_target_get_name" gst_encoding_target_get_name ::
Ptr EncodingTarget ->
IO CString
encodingTargetGetName ::
(B.CallStack.HasCallStack, MonadIO m, IsEncodingTarget a) =>
a
-> m T.Text
encodingTargetGetName :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEncodingTarget a) =>
a -> m Text
encodingTargetGetName a
target = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
Ptr EncodingTarget
target' <- a -> IO (Ptr EncodingTarget)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
target
CString
result <- Ptr EncodingTarget -> IO CString
gst_encoding_target_get_name Ptr EncodingTarget
target'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"encodingTargetGetName" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
target
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data EncodingTargetGetNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsEncodingTarget a) => O.OverloadedMethod EncodingTargetGetNameMethodInfo a signature where
overloadedMethod = encodingTargetGetName
instance O.OverloadedMethodInfo EncodingTargetGetNameMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstPbutils.Objects.EncodingTarget.encodingTargetGetName",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstpbutils-1.0.27/docs/GI-GstPbutils-Objects-EncodingTarget.html#v:encodingTargetGetName"
})
#endif
foreign import ccall "gst_encoding_target_get_path" gst_encoding_target_get_path ::
Ptr EncodingTarget ->
IO CString
encodingTargetGetPath ::
(B.CallStack.HasCallStack, MonadIO m, IsEncodingTarget a) =>
a
-> m (Maybe [Char])
encodingTargetGetPath :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEncodingTarget a) =>
a -> m (Maybe [Char])
encodingTargetGetPath a
target = IO (Maybe [Char]) -> m (Maybe [Char])
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe [Char]) -> m (Maybe [Char]))
-> IO (Maybe [Char]) -> m (Maybe [Char])
forall a b. (a -> b) -> a -> b
$ do
Ptr EncodingTarget
target' <- a -> IO (Ptr EncodingTarget)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
target
CString
result <- Ptr EncodingTarget -> IO CString
gst_encoding_target_get_path Ptr EncodingTarget
target'
Maybe [Char]
maybeResult <- CString -> (CString -> IO [Char]) -> IO (Maybe [Char])
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull CString
result ((CString -> IO [Char]) -> IO (Maybe [Char]))
-> (CString -> IO [Char]) -> IO (Maybe [Char])
forall a b. (a -> b) -> a -> b
$ \CString
result' -> do
[Char]
result'' <- HasCallStack => CString -> IO [Char]
CString -> IO [Char]
cstringToString CString
result'
[Char] -> IO [Char]
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return [Char]
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
target
Maybe [Char] -> IO (Maybe [Char])
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe [Char]
maybeResult
#if defined(ENABLE_OVERLOADING)
data EncodingTargetGetPathMethodInfo
instance (signature ~ (m (Maybe [Char])), MonadIO m, IsEncodingTarget a) => O.OverloadedMethod EncodingTargetGetPathMethodInfo a signature where
overloadedMethod = encodingTargetGetPath
instance O.OverloadedMethodInfo EncodingTargetGetPathMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstPbutils.Objects.EncodingTarget.encodingTargetGetPath",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstpbutils-1.0.27/docs/GI-GstPbutils-Objects-EncodingTarget.html#v:encodingTargetGetPath"
})
#endif
foreign import ccall "gst_encoding_target_get_profile" gst_encoding_target_get_profile ::
Ptr EncodingTarget ->
CString ->
IO (Ptr GstPbutils.EncodingProfile.EncodingProfile)
encodingTargetGetProfile ::
(B.CallStack.HasCallStack, MonadIO m, IsEncodingTarget a) =>
a
-> T.Text
-> m (Maybe GstPbutils.EncodingProfile.EncodingProfile)
encodingTargetGetProfile :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEncodingTarget a) =>
a -> Text -> m (Maybe EncodingProfile)
encodingTargetGetProfile a
target Text
name = IO (Maybe EncodingProfile) -> m (Maybe EncodingProfile)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe EncodingProfile) -> m (Maybe EncodingProfile))
-> IO (Maybe EncodingProfile) -> m (Maybe EncodingProfile)
forall a b. (a -> b) -> a -> b
$ do
Ptr EncodingTarget
target' <- a -> IO (Ptr EncodingTarget)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
target
CString
name' <- Text -> IO CString
textToCString Text
name
Ptr EncodingProfile
result <- Ptr EncodingTarget -> CString -> IO (Ptr EncodingProfile)
gst_encoding_target_get_profile Ptr EncodingTarget
target' CString
name'
Maybe EncodingProfile
maybeResult <- Ptr EncodingProfile
-> (Ptr EncodingProfile -> IO EncodingProfile)
-> IO (Maybe EncodingProfile)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr EncodingProfile
result ((Ptr EncodingProfile -> IO EncodingProfile)
-> IO (Maybe EncodingProfile))
-> (Ptr EncodingProfile -> IO EncodingProfile)
-> IO (Maybe EncodingProfile)
forall a b. (a -> b) -> a -> b
$ \Ptr EncodingProfile
result' -> do
EncodingProfile
result'' <- ((ManagedPtr EncodingProfile -> EncodingProfile)
-> Ptr EncodingProfile -> IO EncodingProfile
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr EncodingProfile -> EncodingProfile
GstPbutils.EncodingProfile.EncodingProfile) Ptr EncodingProfile
result'
EncodingProfile -> IO EncodingProfile
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return EncodingProfile
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
target
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
Maybe EncodingProfile -> IO (Maybe EncodingProfile)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe EncodingProfile
maybeResult
#if defined(ENABLE_OVERLOADING)
data EncodingTargetGetProfileMethodInfo
instance (signature ~ (T.Text -> m (Maybe GstPbutils.EncodingProfile.EncodingProfile)), MonadIO m, IsEncodingTarget a) => O.OverloadedMethod EncodingTargetGetProfileMethodInfo a signature where
overloadedMethod = encodingTargetGetProfile
instance O.OverloadedMethodInfo EncodingTargetGetProfileMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstPbutils.Objects.EncodingTarget.encodingTargetGetProfile",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstpbutils-1.0.27/docs/GI-GstPbutils-Objects-EncodingTarget.html#v:encodingTargetGetProfile"
})
#endif
foreign import ccall "gst_encoding_target_get_profiles" gst_encoding_target_get_profiles ::
Ptr EncodingTarget ->
IO (Ptr (GList (Ptr GstPbutils.EncodingProfile.EncodingProfile)))
encodingTargetGetProfiles ::
(B.CallStack.HasCallStack, MonadIO m, IsEncodingTarget a) =>
a
-> m [GstPbutils.EncodingProfile.EncodingProfile]
encodingTargetGetProfiles :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEncodingTarget a) =>
a -> m [EncodingProfile]
encodingTargetGetProfiles a
target = IO [EncodingProfile] -> m [EncodingProfile]
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [EncodingProfile] -> m [EncodingProfile])
-> IO [EncodingProfile] -> m [EncodingProfile]
forall a b. (a -> b) -> a -> b
$ do
Ptr EncodingTarget
target' <- a -> IO (Ptr EncodingTarget)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
target
Ptr (GList (Ptr EncodingProfile))
result <- Ptr EncodingTarget -> IO (Ptr (GList (Ptr EncodingProfile)))
gst_encoding_target_get_profiles Ptr EncodingTarget
target'
[Ptr EncodingProfile]
result' <- Ptr (GList (Ptr EncodingProfile)) -> IO [Ptr EncodingProfile]
forall a. Ptr (GList (Ptr a)) -> IO [Ptr a]
unpackGList Ptr (GList (Ptr EncodingProfile))
result
[EncodingProfile]
result'' <- (Ptr EncodingProfile -> IO EncodingProfile)
-> [Ptr EncodingProfile] -> IO [EncodingProfile]
forall (t :: * -> *) (m :: * -> *) a b.
(Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
forall (m :: * -> *) a b. Monad m => (a -> m b) -> [a] -> m [b]
mapM ((ManagedPtr EncodingProfile -> EncodingProfile)
-> Ptr EncodingProfile -> IO EncodingProfile
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr EncodingProfile -> EncodingProfile
GstPbutils.EncodingProfile.EncodingProfile) [Ptr EncodingProfile]
result'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
target
[EncodingProfile] -> IO [EncodingProfile]
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return [EncodingProfile]
result''
#if defined(ENABLE_OVERLOADING)
data EncodingTargetGetProfilesMethodInfo
instance (signature ~ (m [GstPbutils.EncodingProfile.EncodingProfile]), MonadIO m, IsEncodingTarget a) => O.OverloadedMethod EncodingTargetGetProfilesMethodInfo a signature where
overloadedMethod = encodingTargetGetProfiles
instance O.OverloadedMethodInfo EncodingTargetGetProfilesMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstPbutils.Objects.EncodingTarget.encodingTargetGetProfiles",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstpbutils-1.0.27/docs/GI-GstPbutils-Objects-EncodingTarget.html#v:encodingTargetGetProfiles"
})
#endif
foreign import ccall "gst_encoding_target_save" gst_encoding_target_save ::
Ptr EncodingTarget ->
Ptr (Ptr GError) ->
IO CInt
encodingTargetSave ::
(B.CallStack.HasCallStack, MonadIO m, IsEncodingTarget a) =>
a
-> m ()
encodingTargetSave :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEncodingTarget a) =>
a -> m ()
encodingTargetSave a
target = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr EncodingTarget
target' <- a -> IO (Ptr EncodingTarget)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
target
IO () -> IO () -> IO ()
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO CInt) -> IO CInt)
-> (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ Ptr EncodingTarget -> Ptr (Ptr GError) -> IO CInt
gst_encoding_target_save Ptr EncodingTarget
target'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
target
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
) (do
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data EncodingTargetSaveMethodInfo
instance (signature ~ (m ()), MonadIO m, IsEncodingTarget a) => O.OverloadedMethod EncodingTargetSaveMethodInfo a signature where
overloadedMethod = encodingTargetSave
instance O.OverloadedMethodInfo EncodingTargetSaveMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstPbutils.Objects.EncodingTarget.encodingTargetSave",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstpbutils-1.0.27/docs/GI-GstPbutils-Objects-EncodingTarget.html#v:encodingTargetSave"
})
#endif
foreign import ccall "gst_encoding_target_save_to_file" gst_encoding_target_save_to_file ::
Ptr EncodingTarget ->
CString ->
Ptr (Ptr GError) ->
IO CInt
encodingTargetSaveToFile ::
(B.CallStack.HasCallStack, MonadIO m, IsEncodingTarget a) =>
a
-> [Char]
-> m ()
encodingTargetSaveToFile :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEncodingTarget a) =>
a -> [Char] -> m ()
encodingTargetSaveToFile a
target [Char]
filepath = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr EncodingTarget
target' <- a -> IO (Ptr EncodingTarget)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
target
CString
filepath' <- [Char] -> IO CString
stringToCString [Char]
filepath
IO () -> IO () -> IO ()
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO CInt) -> IO CInt)
-> (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ Ptr EncodingTarget -> CString -> Ptr (Ptr GError) -> IO CInt
gst_encoding_target_save_to_file Ptr EncodingTarget
target' CString
filepath'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
target
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
filepath'
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
) (do
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
filepath'
)
#if defined(ENABLE_OVERLOADING)
data EncodingTargetSaveToFileMethodInfo
instance (signature ~ ([Char] -> m ()), MonadIO m, IsEncodingTarget a) => O.OverloadedMethod EncodingTargetSaveToFileMethodInfo a signature where
overloadedMethod = encodingTargetSaveToFile
instance O.OverloadedMethodInfo EncodingTargetSaveToFileMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstPbutils.Objects.EncodingTarget.encodingTargetSaveToFile",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstpbutils-1.0.27/docs/GI-GstPbutils-Objects-EncodingTarget.html#v:encodingTargetSaveToFile"
})
#endif
foreign import ccall "gst_encoding_target_load" gst_encoding_target_load ::
CString ->
CString ->
Ptr (Ptr GError) ->
IO (Ptr EncodingTarget)
encodingTargetLoad ::
(B.CallStack.HasCallStack, MonadIO m) =>
T.Text
-> Maybe (T.Text)
-> m EncodingTarget
encodingTargetLoad :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
Text -> Maybe Text -> m EncodingTarget
encodingTargetLoad Text
name Maybe Text
category = IO EncodingTarget -> m EncodingTarget
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO EncodingTarget -> m EncodingTarget)
-> IO EncodingTarget -> m EncodingTarget
forall a b. (a -> b) -> a -> b
$ do
CString
name' <- Text -> IO CString
textToCString Text
name
CString
maybeCategory <- case Maybe Text
category of
Maybe Text
Nothing -> CString -> IO CString
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return CString
forall a. Ptr a
nullPtr
Just Text
jCategory -> do
CString
jCategory' <- Text -> IO CString
textToCString Text
jCategory
CString -> IO CString
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return CString
jCategory'
IO EncodingTarget -> IO () -> IO EncodingTarget
forall a b. IO a -> IO b -> IO a
onException (do
Ptr EncodingTarget
result <- (Ptr (Ptr GError) -> IO (Ptr EncodingTarget))
-> IO (Ptr EncodingTarget)
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO (Ptr EncodingTarget))
-> IO (Ptr EncodingTarget))
-> (Ptr (Ptr GError) -> IO (Ptr EncodingTarget))
-> IO (Ptr EncodingTarget)
forall a b. (a -> b) -> a -> b
$ CString -> CString -> Ptr (Ptr GError) -> IO (Ptr EncodingTarget)
gst_encoding_target_load CString
name' CString
maybeCategory
Text -> Ptr EncodingTarget -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"encodingTargetLoad" Ptr EncodingTarget
result
EncodingTarget
result' <- ((ManagedPtr EncodingTarget -> EncodingTarget)
-> Ptr EncodingTarget -> IO EncodingTarget
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr EncodingTarget -> EncodingTarget
EncodingTarget) Ptr EncodingTarget
result
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
maybeCategory
EncodingTarget -> IO EncodingTarget
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return EncodingTarget
result'
) (do
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
maybeCategory
)
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "gst_encoding_target_load_from_file" gst_encoding_target_load_from_file ::
CString ->
Ptr (Ptr GError) ->
IO (Ptr EncodingTarget)
encodingTargetLoadFromFile ::
(B.CallStack.HasCallStack, MonadIO m) =>
[Char]
-> m EncodingTarget
encodingTargetLoadFromFile :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
[Char] -> m EncodingTarget
encodingTargetLoadFromFile [Char]
filepath = IO EncodingTarget -> m EncodingTarget
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO EncodingTarget -> m EncodingTarget)
-> IO EncodingTarget -> m EncodingTarget
forall a b. (a -> b) -> a -> b
$ do
CString
filepath' <- [Char] -> IO CString
stringToCString [Char]
filepath
IO EncodingTarget -> IO () -> IO EncodingTarget
forall a b. IO a -> IO b -> IO a
onException (do
Ptr EncodingTarget
result <- (Ptr (Ptr GError) -> IO (Ptr EncodingTarget))
-> IO (Ptr EncodingTarget)
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO (Ptr EncodingTarget))
-> IO (Ptr EncodingTarget))
-> (Ptr (Ptr GError) -> IO (Ptr EncodingTarget))
-> IO (Ptr EncodingTarget)
forall a b. (a -> b) -> a -> b
$ CString -> Ptr (Ptr GError) -> IO (Ptr EncodingTarget)
gst_encoding_target_load_from_file CString
filepath'
Text -> Ptr EncodingTarget -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"encodingTargetLoadFromFile" Ptr EncodingTarget
result
EncodingTarget
result' <- ((ManagedPtr EncodingTarget -> EncodingTarget)
-> Ptr EncodingTarget -> IO EncodingTarget
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr EncodingTarget -> EncodingTarget
EncodingTarget) Ptr EncodingTarget
result
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
filepath'
EncodingTarget -> IO EncodingTarget
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return EncodingTarget
result'
) (do
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
filepath'
)
#if defined(ENABLE_OVERLOADING)
#endif