    module SDL.Raw.Power (
      -- * Power Management Status
      getPowerInfo
    ) where

    import Control.Monad.IO.Class
    import Foreign.C.Types
    import Foreign.Ptr
    import SDL.Raw.Enum

    foreign import ccall "SDL.h SDL_GetPowerInfo" getPowerInfoFFI :: Ptr CInt -> Ptr CInt -> IO PowerState

    getPowerInfo :: MonadIO m => Ptr CInt -> Ptr CInt -> m PowerState
    getPowerInfo :: forall (m :: Type -> Type).
    MonadIO m =>
    Ptr CInt -> Ptr CInt -> m PowerState
    getPowerInfo Ptr CInt
    v1 Ptr CInt
    v2 = IO PowerState -> m PowerState
    forall a. IO a -> m a
    forall (m :: Type -> Type) a. MonadIO m => IO a -> m a
    liftIO (IO PowerState -> m PowerState) -> IO PowerState -> m PowerState
    forall a b. (a -> b) -> a -> b
    $ Ptr CInt -> Ptr CInt -> IO PowerState
    getPowerInfoFFI Ptr CInt
    v1 Ptr CInt
    v2
    {-# INLINE getPowerInfo #-}