gi-glib-0.2.46.12: GI/GLib/Structs/MainContext.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
The `GMainContext` struct is an opaque data
type representing a set of sources to be handled in a main loop.
-}
module GI.GLib.Structs.MainContext
(
-- * Exported types
MainContext(..) ,
noMainContext ,
-- * Methods
-- ** mainContextAcquire
mainContextAcquire ,
-- ** mainContextAddPoll
mainContextAddPoll ,
-- ** mainContextCheck
mainContextCheck ,
-- ** mainContextDispatch
mainContextDispatch ,
-- ** mainContextFindSourceByFuncsUserData
mainContextFindSourceByFuncsUserData ,
-- ** mainContextFindSourceById
mainContextFindSourceById ,
-- ** mainContextFindSourceByUserData
mainContextFindSourceByUserData ,
-- ** mainContextInvokeFull
mainContextInvokeFull ,
-- ** mainContextIsOwner
mainContextIsOwner ,
-- ** mainContextIteration
mainContextIteration ,
-- ** mainContextNew
mainContextNew ,
-- ** mainContextPending
mainContextPending ,
-- ** mainContextPopThreadDefault
mainContextPopThreadDefault ,
-- ** mainContextPrepare
mainContextPrepare ,
-- ** mainContextPushThreadDefault
mainContextPushThreadDefault ,
-- ** mainContextQuery
mainContextQuery ,
-- ** mainContextRef
mainContextRef ,
-- ** mainContextRelease
mainContextRelease ,
-- ** mainContextRemovePoll
mainContextRemovePoll ,
-- ** mainContextUnref
mainContextUnref ,
-- ** mainContextWait
mainContextWait ,
-- ** mainContextWakeup
mainContextWakeup ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.GLib.Types
import GI.GLib.Callbacks
newtype MainContext = MainContext (ForeignPtr MainContext)
foreign import ccall "g_main_context_get_type" c_g_main_context_get_type ::
IO GType
instance BoxedObject MainContext where
boxedType _ = c_g_main_context_get_type
noMainContext :: Maybe MainContext
noMainContext = Nothing
-- method MainContext::new
-- method type : Constructor
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TInterface "GLib" "MainContext"
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_new" g_main_context_new ::
IO (Ptr MainContext)
mainContextNew ::
(MonadIO m) =>
m MainContext
mainContextNew = liftIO $ do
result <- g_main_context_new
checkUnexpectedReturnNULL "g_main_context_new" result
result' <- (wrapBoxed MainContext) result
return result'
-- method MainContext::acquire
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_acquire" g_main_context_acquire ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
IO CInt
mainContextAcquire ::
(MonadIO m) =>
MainContext -> -- _obj
m Bool
mainContextAcquire _obj = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
result <- g_main_context_acquire _obj'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
-- method MainContext::add_poll
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "fd", argType = TInterface "GLib" "PollFD", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "priority", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "fd", argType = TInterface "GLib" "PollFD", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "priority", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_add_poll" g_main_context_add_poll ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
Ptr PollFD -> -- fd : TInterface "GLib" "PollFD"
Int32 -> -- priority : TBasicType TInt32
IO ()
mainContextAddPoll ::
(MonadIO m) =>
MainContext -> -- _obj
PollFD -> -- fd
Int32 -> -- priority
m ()
mainContextAddPoll _obj fd priority = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
let fd' = unsafeManagedPtrGetPtr fd
g_main_context_add_poll _obj' fd' priority
touchManagedPtr _obj
touchManagedPtr fd
return ()
-- method MainContext::check
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "max_priority", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "fds", argType = TCArray False (-1) 3 (TInterface "GLib" "PollFD"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_fds", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : [Arg {argName = "n_fds", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "max_priority", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "fds", argType = TCArray False (-1) 3 (TInterface "GLib" "PollFD"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TInt32
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_check" g_main_context_check ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
Int32 -> -- max_priority : TBasicType TInt32
Ptr PollFD -> -- fds : TCArray False (-1) 3 (TInterface "GLib" "PollFD")
Int32 -> -- n_fds : TBasicType TInt32
IO Int32
mainContextCheck ::
(MonadIO m) =>
MainContext -> -- _obj
Int32 -> -- max_priority
[PollFD] -> -- fds
m Int32
mainContextCheck _obj max_priority fds = liftIO $ do
let n_fds = fromIntegral $ length fds
let _obj' = unsafeManagedPtrGetPtr _obj
let fds' = map unsafeManagedPtrGetPtr fds
fds'' <- packBlockArray 8 fds'
result <- g_main_context_check _obj' max_priority fds'' n_fds
touchManagedPtr _obj
mapM_ touchManagedPtr fds
freeMem fds''
return result
-- method MainContext::dispatch
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_dispatch" g_main_context_dispatch ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
IO ()
mainContextDispatch ::
(MonadIO m) =>
MainContext -> -- _obj
m ()
mainContextDispatch _obj = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
g_main_context_dispatch _obj'
touchManagedPtr _obj
return ()
-- method MainContext::find_source_by_funcs_user_data
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "funcs", argType = TInterface "GLib" "SourceFuncs", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "funcs", argType = TInterface "GLib" "SourceFuncs", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TInterface "GLib" "Source"
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_find_source_by_funcs_user_data" g_main_context_find_source_by_funcs_user_data ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
Ptr SourceFuncs -> -- funcs : TInterface "GLib" "SourceFuncs"
Ptr () -> -- user_data : TBasicType TVoid
IO (Ptr Source)
mainContextFindSourceByFuncsUserData ::
(MonadIO m) =>
MainContext -> -- _obj
SourceFuncs -> -- funcs
Ptr () -> -- user_data
m Source
mainContextFindSourceByFuncsUserData _obj funcs user_data = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
let funcs' = unsafeManagedPtrGetPtr funcs
result <- g_main_context_find_source_by_funcs_user_data _obj' funcs' user_data
checkUnexpectedReturnNULL "g_main_context_find_source_by_funcs_user_data" result
result' <- (newBoxed Source) result
touchManagedPtr _obj
touchManagedPtr funcs
return result'
-- method MainContext::find_source_by_id
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "source_id", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "source_id", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TInterface "GLib" "Source"
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_find_source_by_id" g_main_context_find_source_by_id ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
Word32 -> -- source_id : TBasicType TUInt32
IO (Ptr Source)
mainContextFindSourceById ::
(MonadIO m) =>
MainContext -> -- _obj
Word32 -> -- source_id
m Source
mainContextFindSourceById _obj source_id = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
result <- g_main_context_find_source_by_id _obj' source_id
checkUnexpectedReturnNULL "g_main_context_find_source_by_id" result
result' <- (newBoxed Source) result
touchManagedPtr _obj
return result'
-- method MainContext::find_source_by_user_data
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TInterface "GLib" "Source"
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_find_source_by_user_data" g_main_context_find_source_by_user_data ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
Ptr () -> -- user_data : TBasicType TVoid
IO (Ptr Source)
mainContextFindSourceByUserData ::
(MonadIO m) =>
MainContext -> -- _obj
Ptr () -> -- user_data
m Source
mainContextFindSourceByUserData _obj user_data = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
result <- g_main_context_find_source_by_user_data _obj' user_data
checkUnexpectedReturnNULL "g_main_context_find_source_by_user_data" result
result' <- (newBoxed Source) result
touchManagedPtr _obj
return result'
-- method MainContext::invoke_full
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "priority", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "function", argType = TInterface "GLib" "SourceFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeNotified, argClosure = 3, argDestroy = 4, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "notify", argType = TInterface "GLib" "DestroyNotify", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "priority", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "function", argType = TInterface "GLib" "SourceFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeNotified, argClosure = 3, argDestroy = 4, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_invoke_full" g_main_context_invoke_full ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
Int32 -> -- priority : TBasicType TInt32
FunPtr SourceFuncC -> -- function : TInterface "GLib" "SourceFunc"
Ptr () -> -- data : TBasicType TVoid
FunPtr DestroyNotifyC -> -- notify : TInterface "GLib" "DestroyNotify"
IO ()
mainContextInvokeFull ::
(MonadIO m) =>
MainContext -> -- _obj
Int32 -> -- priority
SourceFunc -> -- function
m ()
mainContextInvokeFull _obj priority function = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
function' <- mkSourceFunc (sourceFuncWrapper Nothing function)
let data_ = castFunPtrToPtr function'
let notify = safeFreeFunPtrPtr
g_main_context_invoke_full _obj' priority function' data_ notify
touchManagedPtr _obj
return ()
-- method MainContext::is_owner
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_is_owner" g_main_context_is_owner ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
IO CInt
mainContextIsOwner ::
(MonadIO m) =>
MainContext -> -- _obj
m Bool
mainContextIsOwner _obj = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
result <- g_main_context_is_owner _obj'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
-- method MainContext::iteration
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "may_block", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "may_block", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_iteration" g_main_context_iteration ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
CInt -> -- may_block : TBasicType TBoolean
IO CInt
mainContextIteration ::
(MonadIO m) =>
MainContext -> -- _obj
Bool -> -- may_block
m Bool
mainContextIteration _obj may_block = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
let may_block' = (fromIntegral . fromEnum) may_block
result <- g_main_context_iteration _obj' may_block'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
-- method MainContext::pending
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_pending" g_main_context_pending ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
IO CInt
mainContextPending ::
(MonadIO m) =>
MainContext -> -- _obj
m Bool
mainContextPending _obj = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
result <- g_main_context_pending _obj'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
-- method MainContext::pop_thread_default
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_pop_thread_default" g_main_context_pop_thread_default ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
IO ()
mainContextPopThreadDefault ::
(MonadIO m) =>
MainContext -> -- _obj
m ()
mainContextPopThreadDefault _obj = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
g_main_context_pop_thread_default _obj'
touchManagedPtr _obj
return ()
-- method MainContext::prepare
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "priority", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "priority", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_prepare" g_main_context_prepare ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
Int32 -> -- priority : TBasicType TInt32
IO CInt
mainContextPrepare ::
(MonadIO m) =>
MainContext -> -- _obj
Int32 -> -- priority
m Bool
mainContextPrepare _obj priority = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
result <- g_main_context_prepare _obj' priority
let result' = (/= 0) result
touchManagedPtr _obj
return result'
-- method MainContext::push_thread_default
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_push_thread_default" g_main_context_push_thread_default ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
IO ()
mainContextPushThreadDefault ::
(MonadIO m) =>
MainContext -> -- _obj
m ()
mainContextPushThreadDefault _obj = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
g_main_context_push_thread_default _obj'
touchManagedPtr _obj
return ()
-- method MainContext::query
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "max_priority", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "timeout_", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "fds", argType = TCArray False (-1) 4 (TInterface "GLib" "PollFD"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_fds", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
-- Lengths : [Arg {argName = "n_fds", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "max_priority", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TInt32
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_query" g_main_context_query ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
Int32 -> -- max_priority : TBasicType TInt32
Ptr Int32 -> -- timeout_ : TBasicType TInt32
Ptr (Ptr PollFD) -> -- fds : TCArray False (-1) 4 (TInterface "GLib" "PollFD")
Ptr Int32 -> -- n_fds : TBasicType TInt32
IO Int32
mainContextQuery ::
(MonadIO m) =>
MainContext -> -- _obj
Int32 -> -- max_priority
m (Int32,Int32,[PollFD])
mainContextQuery _obj max_priority = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
timeout_ <- allocMem :: IO (Ptr Int32)
fds <- allocMem :: IO (Ptr (Ptr PollFD))
n_fds <- allocMem :: IO (Ptr Int32)
result <- g_main_context_query _obj' max_priority timeout_ fds n_fds
n_fds' <- peek n_fds
timeout_' <- peek timeout_
fds' <- peek fds
fds'' <- (unpackBoxedArrayWithLength 8 n_fds') fds'
fds''' <- mapM (newBoxed PollFD) fds''
touchManagedPtr _obj
freeMem timeout_
freeMem fds
freeMem n_fds
return (result, timeout_', fds''')
-- method MainContext::ref
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TInterface "GLib" "MainContext"
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_ref" g_main_context_ref ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
IO (Ptr MainContext)
mainContextRef ::
(MonadIO m) =>
MainContext -> -- _obj
m MainContext
mainContextRef _obj = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
result <- g_main_context_ref _obj'
checkUnexpectedReturnNULL "g_main_context_ref" result
result' <- (wrapBoxed MainContext) result
touchManagedPtr _obj
return result'
-- method MainContext::release
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_release" g_main_context_release ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
IO ()
mainContextRelease ::
(MonadIO m) =>
MainContext -> -- _obj
m ()
mainContextRelease _obj = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
g_main_context_release _obj'
touchManagedPtr _obj
return ()
-- method MainContext::remove_poll
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "fd", argType = TInterface "GLib" "PollFD", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "fd", argType = TInterface "GLib" "PollFD", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_remove_poll" g_main_context_remove_poll ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
Ptr PollFD -> -- fd : TInterface "GLib" "PollFD"
IO ()
mainContextRemovePoll ::
(MonadIO m) =>
MainContext -> -- _obj
PollFD -> -- fd
m ()
mainContextRemovePoll _obj fd = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
let fd' = unsafeManagedPtrGetPtr fd
g_main_context_remove_poll _obj' fd'
touchManagedPtr _obj
touchManagedPtr fd
return ()
-- method MainContext::unref
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_unref" g_main_context_unref ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
IO ()
mainContextUnref ::
(MonadIO m) =>
MainContext -> -- _obj
m ()
mainContextUnref _obj = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
g_main_context_unref _obj'
touchManagedPtr _obj
return ()
-- method MainContext::wait
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cond", argType = TInterface "GLib" "Cond", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "mutex", argType = TInterface "GLib" "Mutex", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cond", argType = TInterface "GLib" "Cond", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "mutex", argType = TInterface "GLib" "Mutex", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_wait" g_main_context_wait ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
Ptr Cond -> -- cond : TInterface "GLib" "Cond"
Ptr Mutex -> -- mutex : TInterface "GLib" "Mutex"
IO CInt
mainContextWait ::
(MonadIO m) =>
MainContext -> -- _obj
Cond -> -- cond
Mutex -> -- mutex
m Bool
mainContextWait _obj cond mutex = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
let cond' = unsafeManagedPtrGetPtr cond
let mutex' = unsafeManagedPtrGetPtr mutex
result <- g_main_context_wait _obj' cond' mutex'
let result' = (/= 0) result
touchManagedPtr _obj
touchManagedPtr cond
touchManagedPtr mutex
return result'
-- method MainContext::wakeup
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "MainContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_main_context_wakeup" g_main_context_wakeup ::
Ptr MainContext -> -- _obj : TInterface "GLib" "MainContext"
IO ()
mainContextWakeup ::
(MonadIO m) =>
MainContext -> -- _obj
m ()
mainContextWakeup _obj = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
g_main_context_wakeup _obj'
touchManagedPtr _obj
return ()