{- | Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte License : LGPL-2.1 Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc) 'GI.GstPbutils.Objects.DiscovererStreamInfo.DiscovererStreamInfo' specific to subtitle streams (this includes text and image based ones). -} #define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \ && !defined(__HADDOCK_VERSION__)) module GI.GstPbutils.Objects.DiscovererSubtitleInfo ( -- * Exported types DiscovererSubtitleInfo(..) , IsDiscovererSubtitleInfo , toDiscovererSubtitleInfo , noDiscovererSubtitleInfo , -- * Methods -- ** getLanguage #method:getLanguage# #if ENABLE_OVERLOADING DiscovererSubtitleInfoGetLanguageMethodInfo, #endif discovererSubtitleInfoGetLanguage , ) 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.ManagedPtr as B.ManagedPtr 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.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 GI.GObject.Objects.Object as GObject.Object import {-# SOURCE #-} qualified GI.GstPbutils.Objects.DiscovererStreamInfo as GstPbutils.DiscovererStreamInfo -- | Memory-managed wrapper type. newtype DiscovererSubtitleInfo = DiscovererSubtitleInfo (ManagedPtr DiscovererSubtitleInfo) foreign import ccall "gst_discoverer_subtitle_info_get_type" c_gst_discoverer_subtitle_info_get_type :: IO GType instance GObject DiscovererSubtitleInfo where gobjectType = c_gst_discoverer_subtitle_info_get_type -- | Type class for types which can be safely cast to `DiscovererSubtitleInfo`, for instance with `toDiscovererSubtitleInfo`. class (GObject o, O.IsDescendantOf DiscovererSubtitleInfo o) => IsDiscovererSubtitleInfo o instance (GObject o, O.IsDescendantOf DiscovererSubtitleInfo o) => IsDiscovererSubtitleInfo o instance O.HasParentTypes DiscovererSubtitleInfo type instance O.ParentTypes DiscovererSubtitleInfo = '[GstPbutils.DiscovererStreamInfo.DiscovererStreamInfo, GObject.Object.Object] -- | Cast to `DiscovererSubtitleInfo`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`. toDiscovererSubtitleInfo :: (MonadIO m, IsDiscovererSubtitleInfo o) => o -> m DiscovererSubtitleInfo toDiscovererSubtitleInfo = liftIO . unsafeCastTo DiscovererSubtitleInfo -- | A convenience alias for `Nothing` :: `Maybe` `DiscovererSubtitleInfo`. noDiscovererSubtitleInfo :: Maybe DiscovererSubtitleInfo noDiscovererSubtitleInfo = Nothing #if ENABLE_OVERLOADING type family ResolveDiscovererSubtitleInfoMethod (t :: Symbol) (o :: *) :: * where ResolveDiscovererSubtitleInfoMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo ResolveDiscovererSubtitleInfoMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo ResolveDiscovererSubtitleInfoMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo ResolveDiscovererSubtitleInfoMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo ResolveDiscovererSubtitleInfoMethod "getv" o = GObject.Object.ObjectGetvMethodInfo ResolveDiscovererSubtitleInfoMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo ResolveDiscovererSubtitleInfoMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo ResolveDiscovererSubtitleInfoMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo ResolveDiscovererSubtitleInfoMethod "ref" o = GObject.Object.ObjectRefMethodInfo ResolveDiscovererSubtitleInfoMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo ResolveDiscovererSubtitleInfoMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo ResolveDiscovererSubtitleInfoMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo ResolveDiscovererSubtitleInfoMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo ResolveDiscovererSubtitleInfoMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo ResolveDiscovererSubtitleInfoMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo ResolveDiscovererSubtitleInfoMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo ResolveDiscovererSubtitleInfoMethod "getCaps" o = GstPbutils.DiscovererStreamInfo.DiscovererStreamInfoGetCapsMethodInfo ResolveDiscovererSubtitleInfoMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo ResolveDiscovererSubtitleInfoMethod "getLanguage" o = DiscovererSubtitleInfoGetLanguageMethodInfo ResolveDiscovererSubtitleInfoMethod "getMisc" o = GstPbutils.DiscovererStreamInfo.DiscovererStreamInfoGetMiscMethodInfo ResolveDiscovererSubtitleInfoMethod "getNext" o = GstPbutils.DiscovererStreamInfo.DiscovererStreamInfoGetNextMethodInfo ResolveDiscovererSubtitleInfoMethod "getPrevious" o = GstPbutils.DiscovererStreamInfo.DiscovererStreamInfoGetPreviousMethodInfo ResolveDiscovererSubtitleInfoMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo ResolveDiscovererSubtitleInfoMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo ResolveDiscovererSubtitleInfoMethod "getStreamId" o = GstPbutils.DiscovererStreamInfo.DiscovererStreamInfoGetStreamIdMethodInfo ResolveDiscovererSubtitleInfoMethod "getStreamTypeNick" o = GstPbutils.DiscovererStreamInfo.DiscovererStreamInfoGetStreamTypeNickMethodInfo ResolveDiscovererSubtitleInfoMethod "getTags" o = GstPbutils.DiscovererStreamInfo.DiscovererStreamInfoGetTagsMethodInfo ResolveDiscovererSubtitleInfoMethod "getToc" o = GstPbutils.DiscovererStreamInfo.DiscovererStreamInfoGetTocMethodInfo ResolveDiscovererSubtitleInfoMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo ResolveDiscovererSubtitleInfoMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo ResolveDiscovererSubtitleInfoMethod l o = O.MethodResolutionFailed l o instance (info ~ ResolveDiscovererSubtitleInfoMethod t DiscovererSubtitleInfo, O.MethodInfo info DiscovererSubtitleInfo p) => OL.IsLabel t (DiscovererSubtitleInfo -> p) where #if MIN_VERSION_base(4,10,0) fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info) #else fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info) #endif #endif #if ENABLE_OVERLOADING instance O.HasAttributeList DiscovererSubtitleInfo type instance O.AttributeList DiscovererSubtitleInfo = DiscovererSubtitleInfoAttributeList type DiscovererSubtitleInfoAttributeList = ('[ ] :: [(Symbol, *)]) #endif #if ENABLE_OVERLOADING #endif #if ENABLE_OVERLOADING type instance O.SignalList DiscovererSubtitleInfo = DiscovererSubtitleInfoSignalList type DiscovererSubtitleInfoSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)]) #endif -- method DiscovererSubtitleInfo::get_language -- method type : OrdinaryMethod -- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstPbutils", name = "DiscovererSubtitleInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstDiscovererSubtitleInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TUTF8) -- throws : False -- Skip return : False foreign import ccall "gst_discoverer_subtitle_info_get_language" gst_discoverer_subtitle_info_get_language :: Ptr DiscovererSubtitleInfo -> -- info : TInterface (Name {namespace = "GstPbutils", name = "DiscovererSubtitleInfo"}) IO CString {- | /No description available in the introspection data./ -} discovererSubtitleInfoGetLanguage :: (B.CallStack.HasCallStack, MonadIO m, IsDiscovererSubtitleInfo a) => a {- ^ /@info@/: a 'GI.GstPbutils.Objects.DiscovererSubtitleInfo.DiscovererSubtitleInfo' -} -> m T.Text {- ^ __Returns:__ the language of the stream, or NULL if unknown. -} discovererSubtitleInfoGetLanguage info = liftIO $ do info' <- unsafeManagedPtrCastPtr info result <- gst_discoverer_subtitle_info_get_language info' checkUnexpectedReturnNULL "discovererSubtitleInfoGetLanguage" result result' <- cstringToText result touchManagedPtr info return result' #if ENABLE_OVERLOADING data DiscovererSubtitleInfoGetLanguageMethodInfo instance (signature ~ (m T.Text), MonadIO m, IsDiscovererSubtitleInfo a) => O.MethodInfo DiscovererSubtitleInfoGetLanguageMethodInfo a signature where overloadedMethod _ = discovererSubtitleInfoGetLanguage #endif