AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
Fragment.h
1
6#pragma once
7#include <aws/kinesis-video-archived-media/KinesisVideoArchivedMedia_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace KinesisVideoArchivedMedia
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_KINESISVIDEOARCHIVEDMEDIA_API Fragment() = default;
37 AWS_KINESISVIDEOARCHIVEDMEDIA_API Fragment(Aws::Utils::Json::JsonView jsonValue);
38 AWS_KINESISVIDEOARCHIVEDMEDIA_API Fragment& operator=(Aws::Utils::Json::JsonView jsonValue);
39 AWS_KINESISVIDEOARCHIVEDMEDIA_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
47 inline const Aws::String& GetFragmentNumber() const { return m_fragmentNumber; }
48 inline bool FragmentNumberHasBeenSet() const { return m_fragmentNumberHasBeenSet; }
49 template<typename FragmentNumberT = Aws::String>
50 void SetFragmentNumber(FragmentNumberT&& value) { m_fragmentNumberHasBeenSet = true; m_fragmentNumber = std::forward<FragmentNumberT>(value); }
51 template<typename FragmentNumberT = Aws::String>
52 Fragment& WithFragmentNumber(FragmentNumberT&& value) { SetFragmentNumber(std::forward<FragmentNumberT>(value)); return *this;}
54
56
60 inline long long GetFragmentSizeInBytes() const { return m_fragmentSizeInBytes; }
61 inline bool FragmentSizeInBytesHasBeenSet() const { return m_fragmentSizeInBytesHasBeenSet; }
62 inline void SetFragmentSizeInBytes(long long value) { m_fragmentSizeInBytesHasBeenSet = true; m_fragmentSizeInBytes = value; }
63 inline Fragment& WithFragmentSizeInBytes(long long value) { SetFragmentSizeInBytes(value); return *this;}
65
67
70 inline const Aws::Utils::DateTime& GetProducerTimestamp() const { return m_producerTimestamp; }
71 inline bool ProducerTimestampHasBeenSet() const { return m_producerTimestampHasBeenSet; }
72 template<typename ProducerTimestampT = Aws::Utils::DateTime>
73 void SetProducerTimestamp(ProducerTimestampT&& value) { m_producerTimestampHasBeenSet = true; m_producerTimestamp = std::forward<ProducerTimestampT>(value); }
74 template<typename ProducerTimestampT = Aws::Utils::DateTime>
75 Fragment& WithProducerTimestamp(ProducerTimestampT&& value) { SetProducerTimestamp(std::forward<ProducerTimestampT>(value)); return *this;}
77
79
83 inline const Aws::Utils::DateTime& GetServerTimestamp() const { return m_serverTimestamp; }
84 inline bool ServerTimestampHasBeenSet() const { return m_serverTimestampHasBeenSet; }
85 template<typename ServerTimestampT = Aws::Utils::DateTime>
86 void SetServerTimestamp(ServerTimestampT&& value) { m_serverTimestampHasBeenSet = true; m_serverTimestamp = std::forward<ServerTimestampT>(value); }
87 template<typename ServerTimestampT = Aws::Utils::DateTime>
88 Fragment& WithServerTimestamp(ServerTimestampT&& value) { SetServerTimestamp(std::forward<ServerTimestampT>(value)); return *this;}
90
92
95 inline long long GetFragmentLengthInMilliseconds() const { return m_fragmentLengthInMilliseconds; }
96 inline bool FragmentLengthInMillisecondsHasBeenSet() const { return m_fragmentLengthInMillisecondsHasBeenSet; }
97 inline void SetFragmentLengthInMilliseconds(long long value) { m_fragmentLengthInMillisecondsHasBeenSet = true; m_fragmentLengthInMilliseconds = value; }
98 inline Fragment& WithFragmentLengthInMilliseconds(long long value) { SetFragmentLengthInMilliseconds(value); return *this;}
100 private:
101
102 Aws::String m_fragmentNumber;
103 bool m_fragmentNumberHasBeenSet = false;
104
105 long long m_fragmentSizeInBytes{0};
106 bool m_fragmentSizeInBytesHasBeenSet = false;
107
108 Aws::Utils::DateTime m_producerTimestamp{};
109 bool m_producerTimestampHasBeenSet = false;
110
111 Aws::Utils::DateTime m_serverTimestamp{};
112 bool m_serverTimestampHasBeenSet = false;
113
114 long long m_fragmentLengthInMilliseconds{0};
115 bool m_fragmentLengthInMillisecondsHasBeenSet = false;
116 };
117
118} // namespace Model
119} // namespace KinesisVideoArchivedMedia
120} // namespace Aws
Fragment & WithFragmentLengthInMilliseconds(long long value)
Definition Fragment.h:98
const Aws::Utils::DateTime & GetProducerTimestamp() const
Definition Fragment.h:70
const Aws::Utils::DateTime & GetServerTimestamp() const
Definition Fragment.h:83
void SetFragmentNumber(FragmentNumberT &&value)
Definition Fragment.h:50
Fragment & WithFragmentSizeInBytes(long long value)
Definition Fragment.h:63
void SetServerTimestamp(ServerTimestampT &&value)
Definition Fragment.h:86
AWS_KINESISVIDEOARCHIVEDMEDIA_API Fragment(Aws::Utils::Json::JsonView jsonValue)
AWS_KINESISVIDEOARCHIVEDMEDIA_API Fragment & operator=(Aws::Utils::Json::JsonView jsonValue)
Fragment & WithServerTimestamp(ServerTimestampT &&value)
Definition Fragment.h:88
const Aws::String & GetFragmentNumber() const
Definition Fragment.h:47
AWS_KINESISVIDEOARCHIVEDMEDIA_API Aws::Utils::Json::JsonValue Jsonize() const
void SetFragmentLengthInMilliseconds(long long value)
Definition Fragment.h:97
void SetProducerTimestamp(ProducerTimestampT &&value)
Definition Fragment.h:73
AWS_KINESISVIDEOARCHIVEDMEDIA_API Fragment()=default
Fragment & WithFragmentNumber(FragmentNumberT &&value)
Definition Fragment.h:52
Fragment & WithProducerTimestamp(ProducerTimestampT &&value)
Definition Fragment.h:75
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue