sdl2-2.5.5.0: Both high- and low-level bindings to the SDL library (version 2.0.6+).
Safe HaskellSafe-Inferred
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
Generic PowerState Source # 
Instance details

Defined in SDL.Power

Associated Types

type Rep PowerState :: Type -> Type Source #

Read PowerState Source # 
Instance details

Defined in SDL.Power

Show PowerState Source # 
Instance details

Defined in SDL.Power

Eq PowerState Source # 
Instance details

Defined in SDL.Power

Ord PowerState Source # 
Instance details

Defined in SDL.Power

type Rep PowerState Source # 
Instance details

Defined in SDL.Power

type Rep PowerState = D1 ('MetaData "PowerState" "SDL.Power" "sdl2-2.5.5.0-inplace" '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
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 Source #

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

toConstr :: BatteryState -> Constr Source #

dataTypeOf :: BatteryState -> DataType Source #

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

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

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

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

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

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

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

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

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

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

Bounded BatteryState Source # 
Instance details

Defined in SDL.Power

Enum BatteryState Source # 
Instance details

Defined in SDL.Power

Generic BatteryState Source # 
Instance details

Defined in SDL.Power

Associated Types

type Rep BatteryState :: Type -> Type Source #

Read BatteryState Source # 
Instance details

Defined in SDL.Power

Show BatteryState Source # 
Instance details

Defined in SDL.Power

Eq BatteryState Source # 
Instance details

Defined in SDL.Power

Ord BatteryState Source # 
Instance details

Defined in SDL.Power

type Rep BatteryState Source # 
Instance details

Defined in SDL.Power

type Rep BatteryState = D1 ('MetaData "BatteryState" "SDL.Power" "sdl2-2.5.5.0-inplace" '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
Generic Charge Source # 
Instance details

Defined in SDL.Power

Associated Types

type Rep Charge :: Type -> Type Source #

Read Charge Source # 
Instance details

Defined in SDL.Power

Show Charge Source # 
Instance details

Defined in SDL.Power

Eq Charge Source # 
Instance details

Defined in SDL.Power

Ord Charge Source # 
Instance details

Defined in SDL.Power

type Rep Charge Source # 
Instance details

Defined in SDL.Power

type Rep Charge = D1 ('MetaData "Charge" "SDL.Power" "sdl2-2.5.5.0-inplace" '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))))