{-# 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.MediaConnect.Types.FmtpRequest where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.MediaConnect.Types.Colorimetry
import Amazonka.MediaConnect.Types.Range
import Amazonka.MediaConnect.Types.ScanMode
import Amazonka.MediaConnect.Types.Tcs
import qualified Amazonka.Prelude as Prelude
data FmtpRequest = FmtpRequest'
{
FmtpRequest -> Maybe Text
channelOrder :: Prelude.Maybe Prelude.Text,
FmtpRequest -> Maybe Colorimetry
colorimetry :: Prelude.Maybe Colorimetry,
FmtpRequest -> Maybe Text
exactFramerate :: Prelude.Maybe Prelude.Text,
FmtpRequest -> Maybe Text
par :: Prelude.Maybe Prelude.Text,
FmtpRequest -> Maybe Range
range :: Prelude.Maybe Range,
FmtpRequest -> Maybe ScanMode
scanMode :: Prelude.Maybe ScanMode,
FmtpRequest -> Maybe Tcs
tcs :: Prelude.Maybe Tcs
}
deriving (FmtpRequest -> FmtpRequest -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: FmtpRequest -> FmtpRequest -> Bool
$c/= :: FmtpRequest -> FmtpRequest -> Bool
== :: FmtpRequest -> FmtpRequest -> Bool
$c== :: FmtpRequest -> FmtpRequest -> Bool
Prelude.Eq, ReadPrec [FmtpRequest]
ReadPrec FmtpRequest
Int -> ReadS FmtpRequest
ReadS [FmtpRequest]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [FmtpRequest]
$creadListPrec :: ReadPrec [FmtpRequest]
readPrec :: ReadPrec FmtpRequest
$creadPrec :: ReadPrec FmtpRequest
readList :: ReadS [FmtpRequest]
$creadList :: ReadS [FmtpRequest]
readsPrec :: Int -> ReadS FmtpRequest
$creadsPrec :: Int -> ReadS FmtpRequest
Prelude.Read, Int -> FmtpRequest -> ShowS
[FmtpRequest] -> ShowS
FmtpRequest -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [FmtpRequest] -> ShowS
$cshowList :: [FmtpRequest] -> ShowS
show :: FmtpRequest -> String
$cshow :: FmtpRequest -> String
showsPrec :: Int -> FmtpRequest -> ShowS
$cshowsPrec :: Int -> FmtpRequest -> ShowS
Prelude.Show, forall x. Rep FmtpRequest x -> FmtpRequest
forall x. FmtpRequest -> Rep FmtpRequest x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep FmtpRequest x -> FmtpRequest
$cfrom :: forall x. FmtpRequest -> Rep FmtpRequest x
Prelude.Generic)
newFmtpRequest ::
FmtpRequest
newFmtpRequest :: FmtpRequest
newFmtpRequest =
FmtpRequest'
{ $sel:channelOrder:FmtpRequest' :: Maybe Text
channelOrder = forall a. Maybe a
Prelude.Nothing,
$sel:colorimetry:FmtpRequest' :: Maybe Colorimetry
colorimetry = forall a. Maybe a
Prelude.Nothing,
$sel:exactFramerate:FmtpRequest' :: Maybe Text
exactFramerate = forall a. Maybe a
Prelude.Nothing,
$sel:par:FmtpRequest' :: Maybe Text
par = forall a. Maybe a
Prelude.Nothing,
$sel:range:FmtpRequest' :: Maybe Range
range = forall a. Maybe a
Prelude.Nothing,
$sel:scanMode:FmtpRequest' :: Maybe ScanMode
scanMode = forall a. Maybe a
Prelude.Nothing,
$sel:tcs:FmtpRequest' :: Maybe Tcs
tcs = forall a. Maybe a
Prelude.Nothing
}
fmtpRequest_channelOrder :: Lens.Lens' FmtpRequest (Prelude.Maybe Prelude.Text)
fmtpRequest_channelOrder :: Lens' FmtpRequest (Maybe Text)
fmtpRequest_channelOrder = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FmtpRequest' {Maybe Text
channelOrder :: Maybe Text
$sel:channelOrder:FmtpRequest' :: FmtpRequest -> Maybe Text
channelOrder} -> Maybe Text
channelOrder) (\s :: FmtpRequest
s@FmtpRequest' {} Maybe Text
a -> FmtpRequest
s {$sel:channelOrder:FmtpRequest' :: Maybe Text
channelOrder = Maybe Text
a} :: FmtpRequest)
fmtpRequest_colorimetry :: Lens.Lens' FmtpRequest (Prelude.Maybe Colorimetry)
fmtpRequest_colorimetry :: Lens' FmtpRequest (Maybe Colorimetry)
fmtpRequest_colorimetry = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FmtpRequest' {Maybe Colorimetry
colorimetry :: Maybe Colorimetry
$sel:colorimetry:FmtpRequest' :: FmtpRequest -> Maybe Colorimetry
colorimetry} -> Maybe Colorimetry
colorimetry) (\s :: FmtpRequest
s@FmtpRequest' {} Maybe Colorimetry
a -> FmtpRequest
s {$sel:colorimetry:FmtpRequest' :: Maybe Colorimetry
colorimetry = Maybe Colorimetry
a} :: FmtpRequest)
fmtpRequest_exactFramerate :: Lens.Lens' FmtpRequest (Prelude.Maybe Prelude.Text)
fmtpRequest_exactFramerate :: Lens' FmtpRequest (Maybe Text)
fmtpRequest_exactFramerate = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FmtpRequest' {Maybe Text
exactFramerate :: Maybe Text
$sel:exactFramerate:FmtpRequest' :: FmtpRequest -> Maybe Text
exactFramerate} -> Maybe Text
exactFramerate) (\s :: FmtpRequest
s@FmtpRequest' {} Maybe Text
a -> FmtpRequest
s {$sel:exactFramerate:FmtpRequest' :: Maybe Text
exactFramerate = Maybe Text
a} :: FmtpRequest)
fmtpRequest_par :: Lens.Lens' FmtpRequest (Prelude.Maybe Prelude.Text)
fmtpRequest_par :: Lens' FmtpRequest (Maybe Text)
fmtpRequest_par = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FmtpRequest' {Maybe Text
par :: Maybe Text
$sel:par:FmtpRequest' :: FmtpRequest -> Maybe Text
par} -> Maybe Text
par) (\s :: FmtpRequest
s@FmtpRequest' {} Maybe Text
a -> FmtpRequest
s {$sel:par:FmtpRequest' :: Maybe Text
par = Maybe Text
a} :: FmtpRequest)
fmtpRequest_range :: Lens.Lens' FmtpRequest (Prelude.Maybe Range)
fmtpRequest_range :: Lens' FmtpRequest (Maybe Range)
fmtpRequest_range = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FmtpRequest' {Maybe Range
range :: Maybe Range
$sel:range:FmtpRequest' :: FmtpRequest -> Maybe Range
range} -> Maybe Range
range) (\s :: FmtpRequest
s@FmtpRequest' {} Maybe Range
a -> FmtpRequest
s {$sel:range:FmtpRequest' :: Maybe Range
range = Maybe Range
a} :: FmtpRequest)
fmtpRequest_scanMode :: Lens.Lens' FmtpRequest (Prelude.Maybe ScanMode)
fmtpRequest_scanMode :: Lens' FmtpRequest (Maybe ScanMode)
fmtpRequest_scanMode = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FmtpRequest' {Maybe ScanMode
scanMode :: Maybe ScanMode
$sel:scanMode:FmtpRequest' :: FmtpRequest -> Maybe ScanMode
scanMode} -> Maybe ScanMode
scanMode) (\s :: FmtpRequest
s@FmtpRequest' {} Maybe ScanMode
a -> FmtpRequest
s {$sel:scanMode:FmtpRequest' :: Maybe ScanMode
scanMode = Maybe ScanMode
a} :: FmtpRequest)
fmtpRequest_tcs :: Lens.Lens' FmtpRequest (Prelude.Maybe Tcs)
fmtpRequest_tcs :: Lens' FmtpRequest (Maybe Tcs)
fmtpRequest_tcs = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FmtpRequest' {Maybe Tcs
tcs :: Maybe Tcs
$sel:tcs:FmtpRequest' :: FmtpRequest -> Maybe Tcs
tcs} -> Maybe Tcs
tcs) (\s :: FmtpRequest
s@FmtpRequest' {} Maybe Tcs
a -> FmtpRequest
s {$sel:tcs:FmtpRequest' :: Maybe Tcs
tcs = Maybe Tcs
a} :: FmtpRequest)
instance Prelude.Hashable FmtpRequest where
hashWithSalt :: Int -> FmtpRequest -> Int
hashWithSalt Int
_salt FmtpRequest' {Maybe Text
Maybe Colorimetry
Maybe Range
Maybe ScanMode
Maybe Tcs
tcs :: Maybe Tcs
scanMode :: Maybe ScanMode
range :: Maybe Range
par :: Maybe Text
exactFramerate :: Maybe Text
colorimetry :: Maybe Colorimetry
channelOrder :: Maybe Text
$sel:tcs:FmtpRequest' :: FmtpRequest -> Maybe Tcs
$sel:scanMode:FmtpRequest' :: FmtpRequest -> Maybe ScanMode
$sel:range:FmtpRequest' :: FmtpRequest -> Maybe Range
$sel:par:FmtpRequest' :: FmtpRequest -> Maybe Text
$sel:exactFramerate:FmtpRequest' :: FmtpRequest -> Maybe Text
$sel:colorimetry:FmtpRequest' :: FmtpRequest -> Maybe Colorimetry
$sel:channelOrder:FmtpRequest' :: FmtpRequest -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
channelOrder
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Colorimetry
colorimetry
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
exactFramerate
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
par
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Range
range
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ScanMode
scanMode
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Tcs
tcs
instance Prelude.NFData FmtpRequest where
rnf :: FmtpRequest -> ()
rnf FmtpRequest' {Maybe Text
Maybe Colorimetry
Maybe Range
Maybe ScanMode
Maybe Tcs
tcs :: Maybe Tcs
scanMode :: Maybe ScanMode
range :: Maybe Range
par :: Maybe Text
exactFramerate :: Maybe Text
colorimetry :: Maybe Colorimetry
channelOrder :: Maybe Text
$sel:tcs:FmtpRequest' :: FmtpRequest -> Maybe Tcs
$sel:scanMode:FmtpRequest' :: FmtpRequest -> Maybe ScanMode
$sel:range:FmtpRequest' :: FmtpRequest -> Maybe Range
$sel:par:FmtpRequest' :: FmtpRequest -> Maybe Text
$sel:exactFramerate:FmtpRequest' :: FmtpRequest -> Maybe Text
$sel:colorimetry:FmtpRequest' :: FmtpRequest -> Maybe Colorimetry
$sel:channelOrder:FmtpRequest' :: FmtpRequest -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
channelOrder
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Colorimetry
colorimetry
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
exactFramerate
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
par
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Range
range
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ScanMode
scanMode
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Tcs
tcs
instance Data.ToJSON FmtpRequest where
toJSON :: FmtpRequest -> Value
toJSON FmtpRequest' {Maybe Text
Maybe Colorimetry
Maybe Range
Maybe ScanMode
Maybe Tcs
tcs :: Maybe Tcs
scanMode :: Maybe ScanMode
range :: Maybe Range
par :: Maybe Text
exactFramerate :: Maybe Text
colorimetry :: Maybe Colorimetry
channelOrder :: Maybe Text
$sel:tcs:FmtpRequest' :: FmtpRequest -> Maybe Tcs
$sel:scanMode:FmtpRequest' :: FmtpRequest -> Maybe ScanMode
$sel:range:FmtpRequest' :: FmtpRequest -> Maybe Range
$sel:par:FmtpRequest' :: FmtpRequest -> Maybe Text
$sel:exactFramerate:FmtpRequest' :: FmtpRequest -> Maybe Text
$sel:colorimetry:FmtpRequest' :: FmtpRequest -> Maybe Colorimetry
$sel:channelOrder:FmtpRequest' :: FmtpRequest -> Maybe Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"channelOrder" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
channelOrder,
(Key
"colorimetry" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Colorimetry
colorimetry,
(Key
"exactFramerate" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
exactFramerate,
(Key
"par" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
par,
(Key
"range" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Range
range,
(Key
"scanMode" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ScanMode
scanMode,
(Key
"tcs" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Tcs
tcs
]
)