{-# LANGUAGE TypeApplications #-}


-- | Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-- License    : LGPL-2.1
-- Maintainer : Iñaki García Etxebarria
-- 
-- An implementation of GstPad that can be used with t'GI.GstAudio.Objects.AudioAggregator.AudioAggregator'.
-- 
-- See t'GI.GstAudio.Objects.AudioAggregator.AudioAggregator' for more details.
-- 
-- /Since: 1.14/

#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif

module GI.GstAudio.Objects.AudioAggregatorConvertPad
    ( 

-- * Exported types
    AudioAggregatorConvertPad(..)           ,
    IsAudioAggregatorConvertPad             ,
    toAudioAggregatorConvertPad             ,


 -- * Methods
-- | 
-- 
--  === __Click to display all available methods, including inherited ones__
-- ==== Methods
-- [activateMode]("GI.Gst.Objects.Pad#g:method:activateMode"), [addControlBinding]("GI.Gst.Objects.Object#g:method:addControlBinding"), [addProbe]("GI.Gst.Objects.Pad#g:method:addProbe"), [bindProperty]("GI.GObject.Objects.Object#g:method:bindProperty"), [bindPropertyFull]("GI.GObject.Objects.Object#g:method:bindPropertyFull"), [canLink]("GI.Gst.Objects.Pad#g:method:canLink"), [chain]("GI.Gst.Objects.Pad#g:method:chain"), [chainList]("GI.Gst.Objects.Pad#g:method:chainList"), [checkReconfigure]("GI.Gst.Objects.Pad#g:method:checkReconfigure"), [createStreamId]("GI.Gst.Objects.Pad#g:method:createStreamId"), [defaultError]("GI.Gst.Objects.Object#g:method:defaultError"), [dropBuffer]("GI.GstBase.Objects.AggregatorPad#g:method:dropBuffer"), [eventDefault]("GI.Gst.Objects.Pad#g:method:eventDefault"), [forceFloating]("GI.GObject.Objects.Object#g:method:forceFloating"), [forward]("GI.Gst.Objects.Pad#g:method:forward"), [freezeNotify]("GI.GObject.Objects.Object#g:method:freezeNotify"), [getv]("GI.GObject.Objects.Object#g:method:getv"), [hasActiveControlBindings]("GI.Gst.Objects.Object#g:method:hasActiveControlBindings"), [hasAncestor]("GI.Gst.Objects.Object#g:method:hasAncestor"), [hasAsAncestor]("GI.Gst.Objects.Object#g:method:hasAsAncestor"), [hasAsParent]("GI.Gst.Objects.Object#g:method:hasAsParent"), [hasBuffer]("GI.GstBase.Objects.AggregatorPad#g:method:hasBuffer"), [hasCurrentCaps]("GI.Gst.Objects.Pad#g:method:hasCurrentCaps"), [isActive]("GI.Gst.Objects.Pad#g:method:isActive"), [isBlocked]("GI.Gst.Objects.Pad#g:method:isBlocked"), [isBlocking]("GI.Gst.Objects.Pad#g:method:isBlocking"), [isEos]("GI.GstBase.Objects.AggregatorPad#g:method:isEos"), [isFloating]("GI.GObject.Objects.Object#g:method:isFloating"), [isLinked]("GI.Gst.Objects.Pad#g:method:isLinked"), [iterateInternalLinks]("GI.Gst.Objects.Pad#g:method:iterateInternalLinks"), [iterateInternalLinksDefault]("GI.Gst.Objects.Pad#g:method:iterateInternalLinksDefault"), [link]("GI.Gst.Objects.Pad#g:method:link"), [linkFull]("GI.Gst.Objects.Pad#g:method:linkFull"), [linkMaybeGhosting]("GI.Gst.Objects.Pad#g:method:linkMaybeGhosting"), [linkMaybeGhostingFull]("GI.Gst.Objects.Pad#g:method:linkMaybeGhostingFull"), [markReconfigure]("GI.Gst.Objects.Pad#g:method:markReconfigure"), [needsReconfigure]("GI.Gst.Objects.Pad#g:method:needsReconfigure"), [notify]("GI.GObject.Objects.Object#g:method:notify"), [notifyByPspec]("GI.GObject.Objects.Object#g:method:notifyByPspec"), [pauseTask]("GI.Gst.Objects.Pad#g:method:pauseTask"), [peekBuffer]("GI.GstBase.Objects.AggregatorPad#g:method:peekBuffer"), [peerQuery]("GI.Gst.Objects.Pad#g:method:peerQuery"), [peerQueryAcceptCaps]("GI.Gst.Objects.Pad#g:method:peerQueryAcceptCaps"), [peerQueryCaps]("GI.Gst.Objects.Pad#g:method:peerQueryCaps"), [peerQueryConvert]("GI.Gst.Objects.Pad#g:method:peerQueryConvert"), [peerQueryDuration]("GI.Gst.Objects.Pad#g:method:peerQueryDuration"), [peerQueryPosition]("GI.Gst.Objects.Pad#g:method:peerQueryPosition"), [popBuffer]("GI.GstBase.Objects.AggregatorPad#g:method:popBuffer"), [proxyQueryAcceptCaps]("GI.Gst.Objects.Pad#g:method:proxyQueryAcceptCaps"), [proxyQueryCaps]("GI.Gst.Objects.Pad#g:method:proxyQueryCaps"), [pullRange]("GI.Gst.Objects.Pad#g:method:pullRange"), [push]("GI.Gst.Objects.Pad#g:method:push"), [pushEvent]("GI.Gst.Objects.Pad#g:method:pushEvent"), [pushList]("GI.Gst.Objects.Pad#g:method:pushList"), [query]("GI.Gst.Objects.Pad#g:method:query"), [queryAcceptCaps]("GI.Gst.Objects.Pad#g:method:queryAcceptCaps"), [queryCaps]("GI.Gst.Objects.Pad#g:method:queryCaps"), [queryConvert]("GI.Gst.Objects.Pad#g:method:queryConvert"), [queryDefault]("GI.Gst.Objects.Pad#g:method:queryDefault"), [queryDuration]("GI.Gst.Objects.Pad#g:method:queryDuration"), [queryPosition]("GI.Gst.Objects.Pad#g:method:queryPosition"), [ref]("GI.Gst.Objects.Object#g:method:ref"), [refSink]("GI.GObject.Objects.Object#g:method:refSink"), [removeControlBinding]("GI.Gst.Objects.Object#g:method:removeControlBinding"), [removeProbe]("GI.Gst.Objects.Pad#g:method:removeProbe"), [runDispose]("GI.GObject.Objects.Object#g:method:runDispose"), [sendEvent]("GI.Gst.Objects.Pad#g:method:sendEvent"), [startTask]("GI.Gst.Objects.Pad#g:method:startTask"), [stealData]("GI.GObject.Objects.Object#g:method:stealData"), [stealQdata]("GI.GObject.Objects.Object#g:method:stealQdata"), [stickyEventsForeach]("GI.Gst.Objects.Pad#g:method:stickyEventsForeach"), [stopTask]("GI.Gst.Objects.Pad#g:method:stopTask"), [storeStickyEvent]("GI.Gst.Objects.Pad#g:method:storeStickyEvent"), [suggestNextSync]("GI.Gst.Objects.Object#g:method:suggestNextSync"), [syncValues]("GI.Gst.Objects.Object#g:method:syncValues"), [thawNotify]("GI.GObject.Objects.Object#g:method:thawNotify"), [unlink]("GI.Gst.Objects.Pad#g:method:unlink"), [unparent]("GI.Gst.Objects.Object#g:method:unparent"), [unref]("GI.Gst.Objects.Object#g:method:unref"), [useFixedCaps]("GI.Gst.Objects.Pad#g:method:useFixedCaps"), [watchClosure]("GI.GObject.Objects.Object#g:method:watchClosure").
-- 
-- ==== Getters
-- [getAllowedCaps]("GI.Gst.Objects.Pad#g:method:getAllowedCaps"), [getControlBinding]("GI.Gst.Objects.Object#g:method:getControlBinding"), [getControlRate]("GI.Gst.Objects.Object#g:method:getControlRate"), [getCurrentCaps]("GI.Gst.Objects.Pad#g:method:getCurrentCaps"), [getData]("GI.GObject.Objects.Object#g:method:getData"), [getDirection]("GI.Gst.Objects.Pad#g:method:getDirection"), [getElementPrivate]("GI.Gst.Objects.Pad#g:method:getElementPrivate"), [getGValueArray]("GI.Gst.Objects.Object#g:method:getGValueArray"), [getLastFlowReturn]("GI.Gst.Objects.Pad#g:method:getLastFlowReturn"), [getName]("GI.Gst.Objects.Object#g:method:getName"), [getOffset]("GI.Gst.Objects.Pad#g:method:getOffset"), [getPadTemplate]("GI.Gst.Objects.Pad#g:method:getPadTemplate"), [getPadTemplateCaps]("GI.Gst.Objects.Pad#g:method:getPadTemplateCaps"), [getParent]("GI.Gst.Objects.Object#g:method:getParent"), [getParentElement]("GI.Gst.Objects.Pad#g:method:getParentElement"), [getPathString]("GI.Gst.Objects.Object#g:method:getPathString"), [getPeer]("GI.Gst.Objects.Pad#g:method:getPeer"), [getProperty]("GI.GObject.Objects.Object#g:method:getProperty"), [getQdata]("GI.GObject.Objects.Object#g:method:getQdata"), [getRange]("GI.Gst.Objects.Pad#g:method:getRange"), [getSingleInternalLink]("GI.Gst.Objects.Pad#g:method:getSingleInternalLink"), [getStickyEvent]("GI.Gst.Objects.Pad#g:method:getStickyEvent"), [getStream]("GI.Gst.Objects.Pad#g:method:getStream"), [getStreamId]("GI.Gst.Objects.Pad#g:method:getStreamId"), [getTaskState]("GI.Gst.Objects.Pad#g:method:getTaskState"), [getValue]("GI.Gst.Objects.Object#g:method:getValue").
-- 
-- ==== Setters
-- [setActivateFunctionFull]("GI.Gst.Objects.Pad#g:method:setActivateFunctionFull"), [setActivatemodeFunctionFull]("GI.Gst.Objects.Pad#g:method:setActivatemodeFunctionFull"), [setActive]("GI.Gst.Objects.Pad#g:method:setActive"), [setChainFunctionFull]("GI.Gst.Objects.Pad#g:method:setChainFunctionFull"), [setChainListFunctionFull]("GI.Gst.Objects.Pad#g:method:setChainListFunctionFull"), [setControlBindingDisabled]("GI.Gst.Objects.Object#g:method:setControlBindingDisabled"), [setControlBindingsDisabled]("GI.Gst.Objects.Object#g:method:setControlBindingsDisabled"), [setControlRate]("GI.Gst.Objects.Object#g:method:setControlRate"), [setData]("GI.GObject.Objects.Object#g:method:setData"), [setDataFull]("GI.GObject.Objects.Object#g:method:setDataFull"), [setElementPrivate]("GI.Gst.Objects.Pad#g:method:setElementPrivate"), [setEventFullFunctionFull]("GI.Gst.Objects.Pad#g:method:setEventFullFunctionFull"), [setEventFunctionFull]("GI.Gst.Objects.Pad#g:method:setEventFunctionFull"), [setGetrangeFunctionFull]("GI.Gst.Objects.Pad#g:method:setGetrangeFunctionFull"), [setIterateInternalLinksFunctionFull]("GI.Gst.Objects.Pad#g:method:setIterateInternalLinksFunctionFull"), [setLinkFunctionFull]("GI.Gst.Objects.Pad#g:method:setLinkFunctionFull"), [setName]("GI.Gst.Objects.Object#g:method:setName"), [setOffset]("GI.Gst.Objects.Pad#g:method:setOffset"), [setParent]("GI.Gst.Objects.Object#g:method:setParent"), [setProperty]("GI.GObject.Objects.Object#g:method:setProperty"), [setQueryFunctionFull]("GI.Gst.Objects.Pad#g:method:setQueryFunctionFull"), [setUnlinkFunctionFull]("GI.Gst.Objects.Pad#g:method:setUnlinkFunctionFull").

#if defined(ENABLE_OVERLOADING)
    ResolveAudioAggregatorConvertPadMethod  ,
#endif



 -- * Properties


-- ** converterConfig #attr:converterConfig#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    AudioAggregatorConvertPadConverterConfigPropertyInfo,
#endif
#if defined(ENABLE_OVERLOADING)
    audioAggregatorConvertPadConverterConfig,
#endif
    clearAudioAggregatorConvertPadConverterConfig,
    constructAudioAggregatorConvertPadConverterConfig,
    getAudioAggregatorConvertPadConverterConfig,
    setAudioAggregatorConvertPadConverterConfig,




    ) 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.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.Text as T
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 qualified GI.Gst.Objects.Object as Gst.Object
import qualified GI.Gst.Objects.Pad as Gst.Pad
import qualified GI.Gst.Structs.Structure as Gst.Structure
import {-# SOURCE #-} qualified GI.GstAudio.Objects.AudioAggregatorPad as GstAudio.AudioAggregatorPad
import qualified GI.GstBase.Objects.AggregatorPad as GstBase.AggregatorPad

-- | Memory-managed wrapper type.
newtype AudioAggregatorConvertPad = AudioAggregatorConvertPad (SP.ManagedPtr AudioAggregatorConvertPad)
    deriving (AudioAggregatorConvertPad -> AudioAggregatorConvertPad -> Bool
(AudioAggregatorConvertPad -> AudioAggregatorConvertPad -> Bool)
-> (AudioAggregatorConvertPad -> AudioAggregatorConvertPad -> Bool)
-> Eq AudioAggregatorConvertPad
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AudioAggregatorConvertPad -> AudioAggregatorConvertPad -> Bool
$c/= :: AudioAggregatorConvertPad -> AudioAggregatorConvertPad -> Bool
== :: AudioAggregatorConvertPad -> AudioAggregatorConvertPad -> Bool
$c== :: AudioAggregatorConvertPad -> AudioAggregatorConvertPad -> Bool
Eq)

instance SP.ManagedPtrNewtype AudioAggregatorConvertPad where
    toManagedPtr :: AudioAggregatorConvertPad -> ManagedPtr AudioAggregatorConvertPad
toManagedPtr (AudioAggregatorConvertPad ManagedPtr AudioAggregatorConvertPad
p) = ManagedPtr AudioAggregatorConvertPad
p

foreign import ccall "gst_audio_aggregator_convert_pad_get_type"
    c_gst_audio_aggregator_convert_pad_get_type :: IO B.Types.GType

instance B.Types.TypedObject AudioAggregatorConvertPad where
    glibType :: IO GType
glibType = IO GType
c_gst_audio_aggregator_convert_pad_get_type

instance B.Types.GObject AudioAggregatorConvertPad

-- | Type class for types which can be safely cast to `AudioAggregatorConvertPad`, for instance with `toAudioAggregatorConvertPad`.
class (SP.GObject o, O.IsDescendantOf AudioAggregatorConvertPad o) => IsAudioAggregatorConvertPad o
instance (SP.GObject o, O.IsDescendantOf AudioAggregatorConvertPad o) => IsAudioAggregatorConvertPad o

instance O.HasParentTypes AudioAggregatorConvertPad
type instance O.ParentTypes AudioAggregatorConvertPad = '[GstAudio.AudioAggregatorPad.AudioAggregatorPad, GstBase.AggregatorPad.AggregatorPad, Gst.Pad.Pad, Gst.Object.Object, GObject.Object.Object]

-- | Cast to `AudioAggregatorConvertPad`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toAudioAggregatorConvertPad :: (MIO.MonadIO m, IsAudioAggregatorConvertPad o) => o -> m AudioAggregatorConvertPad
toAudioAggregatorConvertPad :: forall (m :: * -> *) o.
(MonadIO m, IsAudioAggregatorConvertPad o) =>
o -> m AudioAggregatorConvertPad
toAudioAggregatorConvertPad = IO AudioAggregatorConvertPad -> m AudioAggregatorConvertPad
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO AudioAggregatorConvertPad -> m AudioAggregatorConvertPad)
-> (o -> IO AudioAggregatorConvertPad)
-> o
-> m AudioAggregatorConvertPad
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr AudioAggregatorConvertPad -> AudioAggregatorConvertPad)
-> o -> IO AudioAggregatorConvertPad
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
 ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr AudioAggregatorConvertPad -> AudioAggregatorConvertPad
AudioAggregatorConvertPad

-- | Convert 'AudioAggregatorConvertPad' to and from 'Data.GI.Base.GValue.GValue'. See 'Data.GI.Base.GValue.toGValue' and 'Data.GI.Base.GValue.fromGValue'.
instance B.GValue.IsGValue (Maybe AudioAggregatorConvertPad) where
    gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_gst_audio_aggregator_convert_pad_get_type
    gvalueSet_ :: Ptr GValue -> Maybe AudioAggregatorConvertPad -> IO ()
gvalueSet_ Ptr GValue
gv Maybe AudioAggregatorConvertPad
P.Nothing = Ptr GValue -> Ptr AudioAggregatorConvertPad -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr AudioAggregatorConvertPad
forall a. Ptr a
FP.nullPtr :: FP.Ptr AudioAggregatorConvertPad)
    gvalueSet_ Ptr GValue
gv (P.Just AudioAggregatorConvertPad
obj) = AudioAggregatorConvertPad
-> (Ptr AudioAggregatorConvertPad -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr AudioAggregatorConvertPad
obj (Ptr GValue -> Ptr AudioAggregatorConvertPad -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
    gvalueGet_ :: Ptr GValue -> IO (Maybe AudioAggregatorConvertPad)
gvalueGet_ Ptr GValue
gv = do
        Ptr AudioAggregatorConvertPad
ptr <- Ptr GValue -> IO (Ptr AudioAggregatorConvertPad)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr AudioAggregatorConvertPad)
        if Ptr AudioAggregatorConvertPad
ptr Ptr AudioAggregatorConvertPad
-> Ptr AudioAggregatorConvertPad -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr AudioAggregatorConvertPad
forall a. Ptr a
FP.nullPtr
        then AudioAggregatorConvertPad -> Maybe AudioAggregatorConvertPad
forall a. a -> Maybe a
P.Just (AudioAggregatorConvertPad -> Maybe AudioAggregatorConvertPad)
-> IO AudioAggregatorConvertPad
-> IO (Maybe AudioAggregatorConvertPad)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr AudioAggregatorConvertPad -> AudioAggregatorConvertPad)
-> Ptr AudioAggregatorConvertPad -> IO AudioAggregatorConvertPad
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr AudioAggregatorConvertPad -> AudioAggregatorConvertPad
AudioAggregatorConvertPad Ptr AudioAggregatorConvertPad
ptr
        else Maybe AudioAggregatorConvertPad
-> IO (Maybe AudioAggregatorConvertPad)
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe AudioAggregatorConvertPad
forall a. Maybe a
P.Nothing
        
    

#if defined(ENABLE_OVERLOADING)
type family ResolveAudioAggregatorConvertPadMethod (t :: Symbol) (o :: *) :: * where
    ResolveAudioAggregatorConvertPadMethod "activateMode" o = Gst.Pad.PadActivateModeMethodInfo
    ResolveAudioAggregatorConvertPadMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
    ResolveAudioAggregatorConvertPadMethod "addProbe" o = Gst.Pad.PadAddProbeMethodInfo
    ResolveAudioAggregatorConvertPadMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveAudioAggregatorConvertPadMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "canLink" o = Gst.Pad.PadCanLinkMethodInfo
    ResolveAudioAggregatorConvertPadMethod "chain" o = Gst.Pad.PadChainMethodInfo
    ResolveAudioAggregatorConvertPadMethod "chainList" o = Gst.Pad.PadChainListMethodInfo
    ResolveAudioAggregatorConvertPadMethod "checkReconfigure" o = Gst.Pad.PadCheckReconfigureMethodInfo
    ResolveAudioAggregatorConvertPadMethod "createStreamId" o = Gst.Pad.PadCreateStreamIdMethodInfo
    ResolveAudioAggregatorConvertPadMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
    ResolveAudioAggregatorConvertPadMethod "dropBuffer" o = GstBase.AggregatorPad.AggregatorPadDropBufferMethodInfo
    ResolveAudioAggregatorConvertPadMethod "eventDefault" o = Gst.Pad.PadEventDefaultMethodInfo
    ResolveAudioAggregatorConvertPadMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveAudioAggregatorConvertPadMethod "forward" o = Gst.Pad.PadForwardMethodInfo
    ResolveAudioAggregatorConvertPadMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveAudioAggregatorConvertPadMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
    ResolveAudioAggregatorConvertPadMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
    ResolveAudioAggregatorConvertPadMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
    ResolveAudioAggregatorConvertPadMethod "hasBuffer" o = GstBase.AggregatorPad.AggregatorPadHasBufferMethodInfo
    ResolveAudioAggregatorConvertPadMethod "hasCurrentCaps" o = Gst.Pad.PadHasCurrentCapsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "isActive" o = Gst.Pad.PadIsActiveMethodInfo
    ResolveAudioAggregatorConvertPadMethod "isBlocked" o = Gst.Pad.PadIsBlockedMethodInfo
    ResolveAudioAggregatorConvertPadMethod "isBlocking" o = Gst.Pad.PadIsBlockingMethodInfo
    ResolveAudioAggregatorConvertPadMethod "isEos" o = GstBase.AggregatorPad.AggregatorPadIsEosMethodInfo
    ResolveAudioAggregatorConvertPadMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveAudioAggregatorConvertPadMethod "isLinked" o = Gst.Pad.PadIsLinkedMethodInfo
    ResolveAudioAggregatorConvertPadMethod "iterateInternalLinks" o = Gst.Pad.PadIterateInternalLinksMethodInfo
    ResolveAudioAggregatorConvertPadMethod "iterateInternalLinksDefault" o = Gst.Pad.PadIterateInternalLinksDefaultMethodInfo
    ResolveAudioAggregatorConvertPadMethod "link" o = Gst.Pad.PadLinkMethodInfo
    ResolveAudioAggregatorConvertPadMethod "linkFull" o = Gst.Pad.PadLinkFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "linkMaybeGhosting" o = Gst.Pad.PadLinkMaybeGhostingMethodInfo
    ResolveAudioAggregatorConvertPadMethod "linkMaybeGhostingFull" o = Gst.Pad.PadLinkMaybeGhostingFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "markReconfigure" o = Gst.Pad.PadMarkReconfigureMethodInfo
    ResolveAudioAggregatorConvertPadMethod "needsReconfigure" o = Gst.Pad.PadNeedsReconfigureMethodInfo
    ResolveAudioAggregatorConvertPadMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveAudioAggregatorConvertPadMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveAudioAggregatorConvertPadMethod "pauseTask" o = Gst.Pad.PadPauseTaskMethodInfo
    ResolveAudioAggregatorConvertPadMethod "peekBuffer" o = GstBase.AggregatorPad.AggregatorPadPeekBufferMethodInfo
    ResolveAudioAggregatorConvertPadMethod "peerQuery" o = Gst.Pad.PadPeerQueryMethodInfo
    ResolveAudioAggregatorConvertPadMethod "peerQueryAcceptCaps" o = Gst.Pad.PadPeerQueryAcceptCapsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "peerQueryCaps" o = Gst.Pad.PadPeerQueryCapsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "peerQueryConvert" o = Gst.Pad.PadPeerQueryConvertMethodInfo
    ResolveAudioAggregatorConvertPadMethod "peerQueryDuration" o = Gst.Pad.PadPeerQueryDurationMethodInfo
    ResolveAudioAggregatorConvertPadMethod "peerQueryPosition" o = Gst.Pad.PadPeerQueryPositionMethodInfo
    ResolveAudioAggregatorConvertPadMethod "popBuffer" o = GstBase.AggregatorPad.AggregatorPadPopBufferMethodInfo
    ResolveAudioAggregatorConvertPadMethod "proxyQueryAcceptCaps" o = Gst.Pad.PadProxyQueryAcceptCapsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "proxyQueryCaps" o = Gst.Pad.PadProxyQueryCapsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "pullRange" o = Gst.Pad.PadPullRangeMethodInfo
    ResolveAudioAggregatorConvertPadMethod "push" o = Gst.Pad.PadPushMethodInfo
    ResolveAudioAggregatorConvertPadMethod "pushEvent" o = Gst.Pad.PadPushEventMethodInfo
    ResolveAudioAggregatorConvertPadMethod "pushList" o = Gst.Pad.PadPushListMethodInfo
    ResolveAudioAggregatorConvertPadMethod "query" o = Gst.Pad.PadQueryMethodInfo
    ResolveAudioAggregatorConvertPadMethod "queryAcceptCaps" o = Gst.Pad.PadQueryAcceptCapsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "queryCaps" o = Gst.Pad.PadQueryCapsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "queryConvert" o = Gst.Pad.PadQueryConvertMethodInfo
    ResolveAudioAggregatorConvertPadMethod "queryDefault" o = Gst.Pad.PadQueryDefaultMethodInfo
    ResolveAudioAggregatorConvertPadMethod "queryDuration" o = Gst.Pad.PadQueryDurationMethodInfo
    ResolveAudioAggregatorConvertPadMethod "queryPosition" o = Gst.Pad.PadQueryPositionMethodInfo
    ResolveAudioAggregatorConvertPadMethod "ref" o = Gst.Object.ObjectRefMethodInfo
    ResolveAudioAggregatorConvertPadMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveAudioAggregatorConvertPadMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
    ResolveAudioAggregatorConvertPadMethod "removeProbe" o = Gst.Pad.PadRemoveProbeMethodInfo
    ResolveAudioAggregatorConvertPadMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveAudioAggregatorConvertPadMethod "sendEvent" o = Gst.Pad.PadSendEventMethodInfo
    ResolveAudioAggregatorConvertPadMethod "startTask" o = Gst.Pad.PadStartTaskMethodInfo
    ResolveAudioAggregatorConvertPadMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveAudioAggregatorConvertPadMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveAudioAggregatorConvertPadMethod "stickyEventsForeach" o = Gst.Pad.PadStickyEventsForeachMethodInfo
    ResolveAudioAggregatorConvertPadMethod "stopTask" o = Gst.Pad.PadStopTaskMethodInfo
    ResolveAudioAggregatorConvertPadMethod "storeStickyEvent" o = Gst.Pad.PadStoreStickyEventMethodInfo
    ResolveAudioAggregatorConvertPadMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
    ResolveAudioAggregatorConvertPadMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
    ResolveAudioAggregatorConvertPadMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveAudioAggregatorConvertPadMethod "unlink" o = Gst.Pad.PadUnlinkMethodInfo
    ResolveAudioAggregatorConvertPadMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
    ResolveAudioAggregatorConvertPadMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
    ResolveAudioAggregatorConvertPadMethod "useFixedCaps" o = Gst.Pad.PadUseFixedCapsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getAllowedCaps" o = Gst.Pad.PadGetAllowedCapsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getCurrentCaps" o = Gst.Pad.PadGetCurrentCapsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getDirection" o = Gst.Pad.PadGetDirectionMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getElementPrivate" o = Gst.Pad.PadGetElementPrivateMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getLastFlowReturn" o = Gst.Pad.PadGetLastFlowReturnMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getOffset" o = Gst.Pad.PadGetOffsetMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getPadTemplate" o = Gst.Pad.PadGetPadTemplateMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getPadTemplateCaps" o = Gst.Pad.PadGetPadTemplateCapsMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getParentElement" o = Gst.Pad.PadGetParentElementMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getPeer" o = Gst.Pad.PadGetPeerMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getRange" o = Gst.Pad.PadGetRangeMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getSingleInternalLink" o = Gst.Pad.PadGetSingleInternalLinkMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getStickyEvent" o = Gst.Pad.PadGetStickyEventMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getStream" o = Gst.Pad.PadGetStreamMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getStreamId" o = Gst.Pad.PadGetStreamIdMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getTaskState" o = Gst.Pad.PadGetTaskStateMethodInfo
    ResolveAudioAggregatorConvertPadMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setActivateFunctionFull" o = Gst.Pad.PadSetActivateFunctionFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setActivatemodeFunctionFull" o = Gst.Pad.PadSetActivatemodeFunctionFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setActive" o = Gst.Pad.PadSetActiveMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setChainFunctionFull" o = Gst.Pad.PadSetChainFunctionFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setChainListFunctionFull" o = Gst.Pad.PadSetChainListFunctionFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setElementPrivate" o = Gst.Pad.PadSetElementPrivateMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setEventFullFunctionFull" o = Gst.Pad.PadSetEventFullFunctionFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setEventFunctionFull" o = Gst.Pad.PadSetEventFunctionFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setGetrangeFunctionFull" o = Gst.Pad.PadSetGetrangeFunctionFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setIterateInternalLinksFunctionFull" o = Gst.Pad.PadSetIterateInternalLinksFunctionFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setLinkFunctionFull" o = Gst.Pad.PadSetLinkFunctionFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setOffset" o = Gst.Pad.PadSetOffsetMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setQueryFunctionFull" o = Gst.Pad.PadSetQueryFunctionFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod "setUnlinkFunctionFull" o = Gst.Pad.PadSetUnlinkFunctionFullMethodInfo
    ResolveAudioAggregatorConvertPadMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveAudioAggregatorConvertPadMethod t AudioAggregatorConvertPad, O.OverloadedMethod info AudioAggregatorConvertPad p) => OL.IsLabel t (AudioAggregatorConvertPad -> 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 ~ ResolveAudioAggregatorConvertPadMethod t AudioAggregatorConvertPad, O.OverloadedMethod info AudioAggregatorConvertPad p, R.HasField t AudioAggregatorConvertPad p) => R.HasField t AudioAggregatorConvertPad p where
    getField = O.overloadedMethod @info

#endif

instance (info ~ ResolveAudioAggregatorConvertPadMethod t AudioAggregatorConvertPad, O.OverloadedMethodInfo info AudioAggregatorConvertPad) => OL.IsLabel t (O.MethodProxy info AudioAggregatorConvertPad) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.MethodProxy
#else
    fromLabel _ = O.MethodProxy
#endif

#endif

-- VVV Prop "converter-config"
   -- Type: TInterface (Name {namespace = "Gst", name = "Structure"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@converter-config@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' audioAggregatorConvertPad #converterConfig
-- @
getAudioAggregatorConvertPadConverterConfig :: (MonadIO m, IsAudioAggregatorConvertPad o) => o -> m (Maybe Gst.Structure.Structure)
getAudioAggregatorConvertPadConverterConfig :: forall (m :: * -> *) o.
(MonadIO m, IsAudioAggregatorConvertPad o) =>
o -> m (Maybe Structure)
getAudioAggregatorConvertPadConverterConfig o
obj = IO (Maybe Structure) -> m (Maybe Structure)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe Structure) -> m (Maybe Structure))
-> IO (Maybe Structure) -> m (Maybe Structure)
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr Structure -> Structure)
-> IO (Maybe Structure)
forall a b.
(GObject a, GBoxed b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyBoxed o
obj String
"converter-config" ManagedPtr Structure -> Structure
Gst.Structure.Structure

-- | Set the value of the “@converter-config@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' audioAggregatorConvertPad [ #converterConfig 'Data.GI.Base.Attributes.:=' value ]
-- @
setAudioAggregatorConvertPadConverterConfig :: (MonadIO m, IsAudioAggregatorConvertPad o) => o -> Gst.Structure.Structure -> m ()
setAudioAggregatorConvertPadConverterConfig :: forall (m :: * -> *) o.
(MonadIO m, IsAudioAggregatorConvertPad o) =>
o -> Structure -> m ()
setAudioAggregatorConvertPadConverterConfig o
obj Structure
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Maybe Structure -> IO ()
forall a b.
(GObject a, GBoxed b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyBoxed o
obj String
"converter-config" (Structure -> Maybe Structure
forall a. a -> Maybe a
Just Structure
val)

-- | Construct a `GValueConstruct` with valid value for the “@converter-config@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructAudioAggregatorConvertPadConverterConfig :: (IsAudioAggregatorConvertPad o, MIO.MonadIO m) => Gst.Structure.Structure -> m (GValueConstruct o)
constructAudioAggregatorConvertPadConverterConfig :: forall o (m :: * -> *).
(IsAudioAggregatorConvertPad o, MonadIO m) =>
Structure -> m (GValueConstruct o)
constructAudioAggregatorConvertPadConverterConfig Structure
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe Structure -> IO (GValueConstruct o)
forall a o. GBoxed a => String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBoxed String
"converter-config" (Structure -> Maybe Structure
forall a. a -> Maybe a
P.Just Structure
val)

-- | Set the value of the “@converter-config@” property to `Nothing`.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.clear' #converterConfig
-- @
clearAudioAggregatorConvertPadConverterConfig :: (MonadIO m, IsAudioAggregatorConvertPad o) => o -> m ()
clearAudioAggregatorConvertPadConverterConfig :: forall (m :: * -> *) o.
(MonadIO m, IsAudioAggregatorConvertPad o) =>
o -> m ()
clearAudioAggregatorConvertPadConverterConfig o
obj = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Structure -> IO ()
forall a b.
(GObject a, GBoxed b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyBoxed o
obj String
"converter-config" (Maybe Structure
forall a. Maybe a
Nothing :: Maybe Gst.Structure.Structure)

#if defined(ENABLE_OVERLOADING)
data AudioAggregatorConvertPadConverterConfigPropertyInfo
instance AttrInfo AudioAggregatorConvertPadConverterConfigPropertyInfo where
    type AttrAllowedOps AudioAggregatorConvertPadConverterConfigPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint AudioAggregatorConvertPadConverterConfigPropertyInfo = IsAudioAggregatorConvertPad
    type AttrSetTypeConstraint AudioAggregatorConvertPadConverterConfigPropertyInfo = (~) Gst.Structure.Structure
    type AttrTransferTypeConstraint AudioAggregatorConvertPadConverterConfigPropertyInfo = (~) Gst.Structure.Structure
    type AttrTransferType AudioAggregatorConvertPadConverterConfigPropertyInfo = Gst.Structure.Structure
    type AttrGetType AudioAggregatorConvertPadConverterConfigPropertyInfo = (Maybe Gst.Structure.Structure)
    type AttrLabel AudioAggregatorConvertPadConverterConfigPropertyInfo = "converter-config"
    type AttrOrigin AudioAggregatorConvertPadConverterConfigPropertyInfo = AudioAggregatorConvertPad
    attrGet = getAudioAggregatorConvertPadConverterConfig
    attrSet = setAudioAggregatorConvertPadConverterConfig
    attrTransfer _ v = do
        return v
    attrConstruct = constructAudioAggregatorConvertPadConverterConfig
    attrClear = clearAudioAggregatorConvertPadConverterConfig
#endif

#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList AudioAggregatorConvertPad
type instance O.AttributeList AudioAggregatorConvertPad = AudioAggregatorConvertPadAttributeList
type AudioAggregatorConvertPadAttributeList = ('[ '("caps", Gst.Pad.PadCapsPropertyInfo), '("converterConfig", AudioAggregatorConvertPadConverterConfigPropertyInfo), '("direction", Gst.Pad.PadDirectionPropertyInfo), '("emitSignals", GstBase.AggregatorPad.AggregatorPadEmitSignalsPropertyInfo), '("name", Gst.Object.ObjectNamePropertyInfo), '("offset", Gst.Pad.PadOffsetPropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("template", Gst.Pad.PadTemplatePropertyInfo)] :: [(Symbol, *)])
#endif

#if defined(ENABLE_OVERLOADING)
audioAggregatorConvertPadConverterConfig :: AttrLabelProxy "converterConfig"
audioAggregatorConvertPadConverterConfig = AttrLabelProxy

#endif

#if defined(ENABLE_OVERLOADING)
type instance O.SignalList AudioAggregatorConvertPad = AudioAggregatorConvertPadSignalList
type AudioAggregatorConvertPadSignalList = ('[ '("bufferConsumed", GstBase.AggregatorPad.AggregatorPadBufferConsumedSignalInfo), '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("linked", Gst.Pad.PadLinkedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("unlinked", Gst.Pad.PadUnlinkedSignalInfo)] :: [(Symbol, *)])

#endif