1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/medialive/MediaLive_EXPORTS.h>
8 
9 namespace Aws
10 {
11 namespace Utils
12 {
13 namespace Json
14 {
15   class JsonValue;
16   class JsonView;
17 } // namespace Json
18 } // namespace Utils
19 namespace MediaLive
20 {
21 namespace Model
22 {
23 
24   /**
25    * Video Selector Program Id<p><h3>See Also:</h3>   <a
26    * href="http://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/VideoSelectorProgramId">AWS
27    * API Reference</a></p>
28    */
29   class AWS_MEDIALIVE_API VideoSelectorProgramId
30   {
31   public:
32     VideoSelectorProgramId();
33     VideoSelectorProgramId(Aws::Utils::Json::JsonView jsonValue);
34     VideoSelectorProgramId& operator=(Aws::Utils::Json::JsonView jsonValue);
35     Aws::Utils::Json::JsonValue Jsonize() const;
36 
37 
38     /**
39      * Selects a specific program from within a multi-program transport stream. If the
40      * program doesn't exist, the first program within the transport stream will be
41      * selected by default.
42      */
GetProgramId()43     inline int GetProgramId() const{ return m_programId; }
44 
45     /**
46      * Selects a specific program from within a multi-program transport stream. If the
47      * program doesn't exist, the first program within the transport stream will be
48      * selected by default.
49      */
ProgramIdHasBeenSet()50     inline bool ProgramIdHasBeenSet() const { return m_programIdHasBeenSet; }
51 
52     /**
53      * Selects a specific program from within a multi-program transport stream. If the
54      * program doesn't exist, the first program within the transport stream will be
55      * selected by default.
56      */
SetProgramId(int value)57     inline void SetProgramId(int value) { m_programIdHasBeenSet = true; m_programId = value; }
58 
59     /**
60      * Selects a specific program from within a multi-program transport stream. If the
61      * program doesn't exist, the first program within the transport stream will be
62      * selected by default.
63      */
WithProgramId(int value)64     inline VideoSelectorProgramId& WithProgramId(int value) { SetProgramId(value); return *this;}
65 
66   private:
67 
68     int m_programId;
69     bool m_programIdHasBeenSet;
70   };
71 
72 } // namespace Model
73 } // namespace MediaLive
74 } // namespace Aws
75