sdl2-2.5.2.0: Both high- and low-level bindings to the SDL library (version 2.0.6+).
Safe HaskellSafe
LanguageHaskell2010

SDL.Power

Contents

Synopsis

Power Status

getPowerInfo :: (Functor m, MonadIO m) => m PowerState Source #

Current power supply details.

Throws SDLException if the current power state can not be determined.

See SDL_GetPowerInfo for C documentation.

data PowerState Source #

Information about the power supply for the user's environment

Constructors

Battery BatteryState Charge

The user is on a battery powered device. See BatteryState for charge information, and Charge for charge information

Mains

The user is on a device connected to the mains.

UnknownPowerState

SDL could not determine the power for the device.

Instances

Instances details
Eq PowerState Source # 
Instance details

Defined in SDL.Power

Methods

(==) :: PowerState -> PowerState -> Bool

(/=) :: PowerState -> PowerState -> Bool

Ord PowerState Source # 
Instance details

Defined in SDL.Power

Read PowerState Source # 
Instance details

Defined in SDL.Power

Methods

readsPrec :: Int -> ReadS PowerState

readList :: ReadS [PowerState]

readPrec :: ReadPrec PowerState

readListPrec :: ReadPrec [PowerState]

Show PowerState Source # 
Instance details

Defined in SDL.Power

Methods

showsPrec :: Int -> PowerState -> ShowS

show :: PowerState -> String

showList :: [PowerState] -> ShowS

Generic PowerState Source # 
Instance details

Defined in SDL.Power

Associated Types

type Rep PowerState :: Type -> Type

Methods

from :: PowerState -> Rep PowerState x

to :: Rep PowerState x -> PowerState

type Rep PowerState Source # 
Instance details

Defined in SDL.Power

type Rep PowerState = D1 ('MetaData "PowerState" "SDL.Power" "sdl2-2.5.2.0-Cx4Ipj2keSJFpflqvJYEGr" 'False) (C1 ('MetaCons "Battery" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BatteryState) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Charge)) :+: (C1 ('MetaCons "Mains" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "UnknownPowerState" 'PrefixI 'False) (U1 :: Type -> Type)))

data BatteryState Source #

Information on battery consumption for battery powered devices

Constructors

Draining

The battery is currently being drained.

Charged

The battery is fully charged.

Charging

The device is plugged in and the battery is charging.

Instances

Instances details
Bounded BatteryState Source # 
Instance details

Defined in SDL.Power

Enum BatteryState Source # 
Instance details

Defined in SDL.Power

Eq BatteryState Source # 
Instance details

Defined in SDL.Power

Methods

(==) :: BatteryState -> BatteryState -> Bool

(/=) :: BatteryState -> BatteryState -> Bool

Data BatteryState Source # 
Instance details

Defined in SDL.Power

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BatteryState -> c BatteryState

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c BatteryState

toConstr :: BatteryState -> Constr

dataTypeOf :: BatteryState -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c BatteryState)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c BatteryState)

gmapT :: (forall b. Data b => b -> b) -> BatteryState -> BatteryState

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BatteryState -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BatteryState -> r

gmapQ :: (forall d. Data d => d -> u) -> BatteryState -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> BatteryState -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> BatteryState -> m BatteryState

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BatteryState -> m BatteryState

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BatteryState -> m BatteryState

Ord BatteryState Source # 
Instance details

Defined in SDL.Power

Read BatteryState Source # 
Instance details

Defined in SDL.Power

Methods

readsPrec :: Int -> ReadS BatteryState

readList :: ReadS [BatteryState]

readPrec :: ReadPrec BatteryState

readListPrec :: ReadPrec [BatteryState]

Show BatteryState Source # 
Instance details

Defined in SDL.Power

Methods

showsPrec :: Int -> BatteryState -> ShowS

show :: BatteryState -> String

showList :: [BatteryState] -> ShowS

Generic BatteryState Source # 
Instance details

Defined in SDL.Power

Associated Types

type Rep BatteryState :: Type -> Type

type Rep BatteryState Source # 
Instance details

Defined in SDL.Power

type Rep BatteryState = D1 ('MetaData "BatteryState" "SDL.Power" "sdl2-2.5.2.0-Cx4Ipj2keSJFpflqvJYEGr" 'False) (C1 ('MetaCons "Draining" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Charged" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Charging" 'PrefixI 'False) (U1 :: Type -> Type)))

data Charge Source #

Information about how much charge a battery has.

Constructors

Charge 

Fields

Instances

Instances details
Eq Charge Source # 
Instance details

Defined in SDL.Power

Methods

(==) :: Charge -> Charge -> Bool

(/=) :: Charge -> Charge -> Bool

Ord Charge Source # 
Instance details

Defined in SDL.Power

Methods

compare :: Charge -> Charge -> Ordering

(<) :: Charge -> Charge -> Bool

(<=) :: Charge -> Charge -> Bool

(>) :: Charge -> Charge -> Bool

(>=) :: Charge -> Charge -> Bool

max :: Charge -> Charge -> Charge

min :: Charge -> Charge -> Charge

Read Charge Source # 
Instance details

Defined in SDL.Power

Methods

readsPrec :: Int -> ReadS Charge

readList :: ReadS [Charge]

readPrec :: ReadPrec Charge

readListPrec :: ReadPrec [Charge]

Show Charge Source # 
Instance details

Defined in SDL.Power

Methods

showsPrec :: Int -> Charge -> ShowS

show :: Charge -> String

showList :: [Charge] -> ShowS

Generic Charge Source # 
Instance details

Defined in SDL.Power

Associated Types

type Rep Charge :: Type -> Type

Methods

from :: Charge -> Rep Charge x

to :: Rep Charge x -> Charge

type Rep Charge Source # 
Instance details

Defined in SDL.Power

type Rep Charge = D1 ('MetaData "Charge" "SDL.Power" "sdl2-2.5.2.0-Cx4Ipj2keSJFpflqvJYEGr" 'False) (C1 ('MetaCons "Charge" 'PrefixI 'True) (S1 ('MetaSel ('Just "chargeSecondsLeft") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe CInt)) :*: S1 ('MetaSel ('Just "chargePercent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe CInt))))