AWS SDK for C++

AWS SDK for C++ Version 1.11.812

Loading...
Searching...
No Matches
TimePeriod.h
1
6#pragma once
7#include <aws/compute-optimizer-automation/ComputeOptimizerAutomation_EXPORTS.h>
8#include <aws/core/utils/DateTime.h>
9#include <aws/crt/cbor/Cbor.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Cbor {
16class CborValue;
17} // namespace Cbor
18} // namespace Utils
19namespace ComputeOptimizerAutomation {
20namespace Model {
21
29 public:
30 AWS_COMPUTEOPTIMIZERAUTOMATION_API TimePeriod() = default;
31 AWS_COMPUTEOPTIMIZERAUTOMATION_API TimePeriod(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
32 AWS_COMPUTEOPTIMIZERAUTOMATION_API TimePeriod& operator=(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
33 AWS_COMPUTEOPTIMIZERAUTOMATION_API void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder) const;
34
36
40 inline const Aws::Utils::DateTime& GetStartTimeInclusive() const { return m_startTimeInclusive; }
41 inline bool StartTimeInclusiveHasBeenSet() const { return m_startTimeInclusiveHasBeenSet; }
42 template <typename StartTimeInclusiveT = Aws::Utils::DateTime>
43 void SetStartTimeInclusive(StartTimeInclusiveT&& value) {
44 m_startTimeInclusiveHasBeenSet = true;
45 m_startTimeInclusive = std::forward<StartTimeInclusiveT>(value);
46 }
47 template <typename StartTimeInclusiveT = Aws::Utils::DateTime>
48 TimePeriod& WithStartTimeInclusive(StartTimeInclusiveT&& value) {
49 SetStartTimeInclusive(std::forward<StartTimeInclusiveT>(value));
50 return *this;
51 }
53
55
59 inline const Aws::Utils::DateTime& GetEndTimeExclusive() const { return m_endTimeExclusive; }
60 inline bool EndTimeExclusiveHasBeenSet() const { return m_endTimeExclusiveHasBeenSet; }
61 template <typename EndTimeExclusiveT = Aws::Utils::DateTime>
62 void SetEndTimeExclusive(EndTimeExclusiveT&& value) {
63 m_endTimeExclusiveHasBeenSet = true;
64 m_endTimeExclusive = std::forward<EndTimeExclusiveT>(value);
65 }
66 template <typename EndTimeExclusiveT = Aws::Utils::DateTime>
67 TimePeriod& WithEndTimeExclusive(EndTimeExclusiveT&& value) {
68 SetEndTimeExclusive(std::forward<EndTimeExclusiveT>(value));
69 return *this;
70 }
72 private:
73 Aws::Utils::DateTime m_startTimeInclusive{};
74
75 Aws::Utils::DateTime m_endTimeExclusive{};
76 bool m_startTimeInclusiveHasBeenSet = false;
77 bool m_endTimeExclusiveHasBeenSet = false;
78};
79
80} // namespace Model
81} // namespace ComputeOptimizerAutomation
82} // namespace Aws
const Aws::Utils::DateTime & GetEndTimeExclusive() const
Definition TimePeriod.h:59
void SetStartTimeInclusive(StartTimeInclusiveT &&value)
Definition TimePeriod.h:43
void SetEndTimeExclusive(EndTimeExclusiveT &&value)
Definition TimePeriod.h:62
AWS_COMPUTEOPTIMIZERAUTOMATION_API TimePeriod & operator=(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
TimePeriod & WithEndTimeExclusive(EndTimeExclusiveT &&value)
Definition TimePeriod.h:67
TimePeriod & WithStartTimeInclusive(StartTimeInclusiveT &&value)
Definition TimePeriod.h:48
AWS_COMPUTEOPTIMIZERAUTOMATION_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const
AWS_COMPUTEOPTIMIZERAUTOMATION_API TimePeriod(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
const Aws::Utils::DateTime & GetStartTimeInclusive() const
Definition TimePeriod.h:40
AWS_COMPUTEOPTIMIZERAUTOMATION_API TimePeriod()=default