{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.MediaLive.Types.InputDeviceHdSettings where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.MediaLive.Types.InputDeviceActiveInput
import Amazonka.MediaLive.Types.InputDeviceConfiguredInput
import Amazonka.MediaLive.Types.InputDeviceScanType
import Amazonka.MediaLive.Types.InputDeviceState
import qualified Amazonka.Prelude as Prelude
data InputDeviceHdSettings = InputDeviceHdSettings'
{
InputDeviceHdSettings -> Maybe InputDeviceActiveInput
activeInput :: Prelude.Maybe InputDeviceActiveInput,
InputDeviceHdSettings -> Maybe InputDeviceConfiguredInput
configuredInput :: Prelude.Maybe InputDeviceConfiguredInput,
InputDeviceHdSettings -> Maybe InputDeviceState
deviceState :: Prelude.Maybe InputDeviceState,
InputDeviceHdSettings -> Maybe Double
framerate :: Prelude.Maybe Prelude.Double,
InputDeviceHdSettings -> Maybe Int
height :: Prelude.Maybe Prelude.Int,
InputDeviceHdSettings -> Maybe Int
latencyMs :: Prelude.Maybe Prelude.Int,
InputDeviceHdSettings -> Maybe Int
maxBitrate :: Prelude.Maybe Prelude.Int,
InputDeviceHdSettings -> Maybe InputDeviceScanType
scanType :: Prelude.Maybe InputDeviceScanType,
InputDeviceHdSettings -> Maybe Int
width :: Prelude.Maybe Prelude.Int
}
deriving (InputDeviceHdSettings -> InputDeviceHdSettings -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: InputDeviceHdSettings -> InputDeviceHdSettings -> Bool
$c/= :: InputDeviceHdSettings -> InputDeviceHdSettings -> Bool
== :: InputDeviceHdSettings -> InputDeviceHdSettings -> Bool
$c== :: InputDeviceHdSettings -> InputDeviceHdSettings -> Bool
Prelude.Eq, ReadPrec [InputDeviceHdSettings]
ReadPrec InputDeviceHdSettings
Int -> ReadS InputDeviceHdSettings
ReadS [InputDeviceHdSettings]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [InputDeviceHdSettings]
$creadListPrec :: ReadPrec [InputDeviceHdSettings]
readPrec :: ReadPrec InputDeviceHdSettings
$creadPrec :: ReadPrec InputDeviceHdSettings
readList :: ReadS [InputDeviceHdSettings]
$creadList :: ReadS [InputDeviceHdSettings]
readsPrec :: Int -> ReadS InputDeviceHdSettings
$creadsPrec :: Int -> ReadS InputDeviceHdSettings
Prelude.Read, Int -> InputDeviceHdSettings -> ShowS
[InputDeviceHdSettings] -> ShowS
InputDeviceHdSettings -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [InputDeviceHdSettings] -> ShowS
$cshowList :: [InputDeviceHdSettings] -> ShowS
show :: InputDeviceHdSettings -> String
$cshow :: InputDeviceHdSettings -> String
showsPrec :: Int -> InputDeviceHdSettings -> ShowS
$cshowsPrec :: Int -> InputDeviceHdSettings -> ShowS
Prelude.Show, forall x. Rep InputDeviceHdSettings x -> InputDeviceHdSettings
forall x. InputDeviceHdSettings -> Rep InputDeviceHdSettings x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep InputDeviceHdSettings x -> InputDeviceHdSettings
$cfrom :: forall x. InputDeviceHdSettings -> Rep InputDeviceHdSettings x
Prelude.Generic)
newInputDeviceHdSettings ::
InputDeviceHdSettings
newInputDeviceHdSettings :: InputDeviceHdSettings
newInputDeviceHdSettings =
InputDeviceHdSettings'
{ $sel:activeInput:InputDeviceHdSettings' :: Maybe InputDeviceActiveInput
activeInput =
forall a. Maybe a
Prelude.Nothing,
$sel:configuredInput:InputDeviceHdSettings' :: Maybe InputDeviceConfiguredInput
configuredInput = forall a. Maybe a
Prelude.Nothing,
$sel:deviceState:InputDeviceHdSettings' :: Maybe InputDeviceState
deviceState = forall a. Maybe a
Prelude.Nothing,
$sel:framerate:InputDeviceHdSettings' :: Maybe Double
framerate = forall a. Maybe a
Prelude.Nothing,
$sel:height:InputDeviceHdSettings' :: Maybe Int
height = forall a. Maybe a
Prelude.Nothing,
$sel:latencyMs:InputDeviceHdSettings' :: Maybe Int
latencyMs = forall a. Maybe a
Prelude.Nothing,
$sel:maxBitrate:InputDeviceHdSettings' :: Maybe Int
maxBitrate = forall a. Maybe a
Prelude.Nothing,
$sel:scanType:InputDeviceHdSettings' :: Maybe InputDeviceScanType
scanType = forall a. Maybe a
Prelude.Nothing,
$sel:width:InputDeviceHdSettings' :: Maybe Int
width = forall a. Maybe a
Prelude.Nothing
}
inputDeviceHdSettings_activeInput :: Lens.Lens' InputDeviceHdSettings (Prelude.Maybe InputDeviceActiveInput)
inputDeviceHdSettings_activeInput :: Lens' InputDeviceHdSettings (Maybe InputDeviceActiveInput)
inputDeviceHdSettings_activeInput = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InputDeviceHdSettings' {Maybe InputDeviceActiveInput
activeInput :: Maybe InputDeviceActiveInput
$sel:activeInput:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceActiveInput
activeInput} -> Maybe InputDeviceActiveInput
activeInput) (\s :: InputDeviceHdSettings
s@InputDeviceHdSettings' {} Maybe InputDeviceActiveInput
a -> InputDeviceHdSettings
s {$sel:activeInput:InputDeviceHdSettings' :: Maybe InputDeviceActiveInput
activeInput = Maybe InputDeviceActiveInput
a} :: InputDeviceHdSettings)
inputDeviceHdSettings_configuredInput :: Lens.Lens' InputDeviceHdSettings (Prelude.Maybe InputDeviceConfiguredInput)
inputDeviceHdSettings_configuredInput :: Lens' InputDeviceHdSettings (Maybe InputDeviceConfiguredInput)
inputDeviceHdSettings_configuredInput = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InputDeviceHdSettings' {Maybe InputDeviceConfiguredInput
configuredInput :: Maybe InputDeviceConfiguredInput
$sel:configuredInput:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceConfiguredInput
configuredInput} -> Maybe InputDeviceConfiguredInput
configuredInput) (\s :: InputDeviceHdSettings
s@InputDeviceHdSettings' {} Maybe InputDeviceConfiguredInput
a -> InputDeviceHdSettings
s {$sel:configuredInput:InputDeviceHdSettings' :: Maybe InputDeviceConfiguredInput
configuredInput = Maybe InputDeviceConfiguredInput
a} :: InputDeviceHdSettings)
inputDeviceHdSettings_deviceState :: Lens.Lens' InputDeviceHdSettings (Prelude.Maybe InputDeviceState)
inputDeviceHdSettings_deviceState :: Lens' InputDeviceHdSettings (Maybe InputDeviceState)
inputDeviceHdSettings_deviceState = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InputDeviceHdSettings' {Maybe InputDeviceState
deviceState :: Maybe InputDeviceState
$sel:deviceState:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceState
deviceState} -> Maybe InputDeviceState
deviceState) (\s :: InputDeviceHdSettings
s@InputDeviceHdSettings' {} Maybe InputDeviceState
a -> InputDeviceHdSettings
s {$sel:deviceState:InputDeviceHdSettings' :: Maybe InputDeviceState
deviceState = Maybe InputDeviceState
a} :: InputDeviceHdSettings)
inputDeviceHdSettings_framerate :: Lens.Lens' InputDeviceHdSettings (Prelude.Maybe Prelude.Double)
inputDeviceHdSettings_framerate :: Lens' InputDeviceHdSettings (Maybe Double)
inputDeviceHdSettings_framerate = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InputDeviceHdSettings' {Maybe Double
framerate :: Maybe Double
$sel:framerate:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Double
framerate} -> Maybe Double
framerate) (\s :: InputDeviceHdSettings
s@InputDeviceHdSettings' {} Maybe Double
a -> InputDeviceHdSettings
s {$sel:framerate:InputDeviceHdSettings' :: Maybe Double
framerate = Maybe Double
a} :: InputDeviceHdSettings)
inputDeviceHdSettings_height :: Lens.Lens' InputDeviceHdSettings (Prelude.Maybe Prelude.Int)
inputDeviceHdSettings_height :: Lens' InputDeviceHdSettings (Maybe Int)
inputDeviceHdSettings_height = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InputDeviceHdSettings' {Maybe Int
height :: Maybe Int
$sel:height:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
height} -> Maybe Int
height) (\s :: InputDeviceHdSettings
s@InputDeviceHdSettings' {} Maybe Int
a -> InputDeviceHdSettings
s {$sel:height:InputDeviceHdSettings' :: Maybe Int
height = Maybe Int
a} :: InputDeviceHdSettings)
inputDeviceHdSettings_latencyMs :: Lens.Lens' InputDeviceHdSettings (Prelude.Maybe Prelude.Int)
inputDeviceHdSettings_latencyMs :: Lens' InputDeviceHdSettings (Maybe Int)
inputDeviceHdSettings_latencyMs = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InputDeviceHdSettings' {Maybe Int
latencyMs :: Maybe Int
$sel:latencyMs:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
latencyMs} -> Maybe Int
latencyMs) (\s :: InputDeviceHdSettings
s@InputDeviceHdSettings' {} Maybe Int
a -> InputDeviceHdSettings
s {$sel:latencyMs:InputDeviceHdSettings' :: Maybe Int
latencyMs = Maybe Int
a} :: InputDeviceHdSettings)
inputDeviceHdSettings_maxBitrate :: Lens.Lens' InputDeviceHdSettings (Prelude.Maybe Prelude.Int)
inputDeviceHdSettings_maxBitrate :: Lens' InputDeviceHdSettings (Maybe Int)
inputDeviceHdSettings_maxBitrate = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InputDeviceHdSettings' {Maybe Int
maxBitrate :: Maybe Int
$sel:maxBitrate:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
maxBitrate} -> Maybe Int
maxBitrate) (\s :: InputDeviceHdSettings
s@InputDeviceHdSettings' {} Maybe Int
a -> InputDeviceHdSettings
s {$sel:maxBitrate:InputDeviceHdSettings' :: Maybe Int
maxBitrate = Maybe Int
a} :: InputDeviceHdSettings)
inputDeviceHdSettings_scanType :: Lens.Lens' InputDeviceHdSettings (Prelude.Maybe InputDeviceScanType)
inputDeviceHdSettings_scanType :: Lens' InputDeviceHdSettings (Maybe InputDeviceScanType)
inputDeviceHdSettings_scanType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InputDeviceHdSettings' {Maybe InputDeviceScanType
scanType :: Maybe InputDeviceScanType
$sel:scanType:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceScanType
scanType} -> Maybe InputDeviceScanType
scanType) (\s :: InputDeviceHdSettings
s@InputDeviceHdSettings' {} Maybe InputDeviceScanType
a -> InputDeviceHdSettings
s {$sel:scanType:InputDeviceHdSettings' :: Maybe InputDeviceScanType
scanType = Maybe InputDeviceScanType
a} :: InputDeviceHdSettings)
inputDeviceHdSettings_width :: Lens.Lens' InputDeviceHdSettings (Prelude.Maybe Prelude.Int)
inputDeviceHdSettings_width :: Lens' InputDeviceHdSettings (Maybe Int)
inputDeviceHdSettings_width = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InputDeviceHdSettings' {Maybe Int
width :: Maybe Int
$sel:width:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
width} -> Maybe Int
width) (\s :: InputDeviceHdSettings
s@InputDeviceHdSettings' {} Maybe Int
a -> InputDeviceHdSettings
s {$sel:width:InputDeviceHdSettings' :: Maybe Int
width = Maybe Int
a} :: InputDeviceHdSettings)
instance Data.FromJSON InputDeviceHdSettings where
parseJSON :: Value -> Parser InputDeviceHdSettings
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"InputDeviceHdSettings"
( \Object
x ->
Maybe InputDeviceActiveInput
-> Maybe InputDeviceConfiguredInput
-> Maybe InputDeviceState
-> Maybe Double
-> Maybe Int
-> Maybe Int
-> Maybe Int
-> Maybe InputDeviceScanType
-> Maybe Int
-> InputDeviceHdSettings
InputDeviceHdSettings'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"activeInput")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"configuredInput")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"deviceState")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"framerate")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"height")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"latencyMs")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"maxBitrate")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"scanType")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"width")
)
instance Prelude.Hashable InputDeviceHdSettings where
hashWithSalt :: Int -> InputDeviceHdSettings -> Int
hashWithSalt Int
_salt InputDeviceHdSettings' {Maybe Double
Maybe Int
Maybe InputDeviceActiveInput
Maybe InputDeviceConfiguredInput
Maybe InputDeviceScanType
Maybe InputDeviceState
width :: Maybe Int
scanType :: Maybe InputDeviceScanType
maxBitrate :: Maybe Int
latencyMs :: Maybe Int
height :: Maybe Int
framerate :: Maybe Double
deviceState :: Maybe InputDeviceState
configuredInput :: Maybe InputDeviceConfiguredInput
activeInput :: Maybe InputDeviceActiveInput
$sel:width:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
$sel:scanType:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceScanType
$sel:maxBitrate:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
$sel:latencyMs:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
$sel:height:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
$sel:framerate:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Double
$sel:deviceState:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceState
$sel:configuredInput:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceConfiguredInput
$sel:activeInput:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceActiveInput
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InputDeviceActiveInput
activeInput
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InputDeviceConfiguredInput
configuredInput
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InputDeviceState
deviceState
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Double
framerate
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
height
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
latencyMs
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
maxBitrate
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InputDeviceScanType
scanType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
width
instance Prelude.NFData InputDeviceHdSettings where
rnf :: InputDeviceHdSettings -> ()
rnf InputDeviceHdSettings' {Maybe Double
Maybe Int
Maybe InputDeviceActiveInput
Maybe InputDeviceConfiguredInput
Maybe InputDeviceScanType
Maybe InputDeviceState
width :: Maybe Int
scanType :: Maybe InputDeviceScanType
maxBitrate :: Maybe Int
latencyMs :: Maybe Int
height :: Maybe Int
framerate :: Maybe Double
deviceState :: Maybe InputDeviceState
configuredInput :: Maybe InputDeviceConfiguredInput
activeInput :: Maybe InputDeviceActiveInput
$sel:width:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
$sel:scanType:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceScanType
$sel:maxBitrate:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
$sel:latencyMs:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
$sel:height:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Int
$sel:framerate:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe Double
$sel:deviceState:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceState
$sel:configuredInput:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceConfiguredInput
$sel:activeInput:InputDeviceHdSettings' :: InputDeviceHdSettings -> Maybe InputDeviceActiveInput
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe InputDeviceActiveInput
activeInput
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe InputDeviceConfiguredInput
configuredInput
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe InputDeviceState
deviceState
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Double
framerate
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
height
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
latencyMs
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
maxBitrate
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe InputDeviceScanType
scanType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
width