AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
Datum.h
1
6#pragma once
7#include <aws/iotsitewise/IoTSiteWise_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSAllocator.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace IoTSiteWise
24{
25namespace Model
26{
27 class Row;
28
35 class Datum
36 {
37 public:
38 AWS_IOTSITEWISE_API Datum() = default;
39 AWS_IOTSITEWISE_API Datum(Aws::Utils::Json::JsonView jsonValue);
40 AWS_IOTSITEWISE_API Datum& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_IOTSITEWISE_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
49 inline const Aws::String& GetScalarValue() const { return m_scalarValue; }
50 inline bool ScalarValueHasBeenSet() const { return m_scalarValueHasBeenSet; }
51 template<typename ScalarValueT = Aws::String>
52 void SetScalarValue(ScalarValueT&& value) { m_scalarValueHasBeenSet = true; m_scalarValue = std::forward<ScalarValueT>(value); }
53 template<typename ScalarValueT = Aws::String>
54 Datum& WithScalarValue(ScalarValueT&& value) { SetScalarValue(std::forward<ScalarValueT>(value)); return *this;}
56
58
61 inline const Aws::Vector<Datum>& GetArrayValue() const { return m_arrayValue; }
62 inline bool ArrayValueHasBeenSet() const { return m_arrayValueHasBeenSet; }
63 template<typename ArrayValueT = Aws::Vector<Datum>>
64 void SetArrayValue(ArrayValueT&& value) { m_arrayValueHasBeenSet = true; m_arrayValue = std::forward<ArrayValueT>(value); }
65 template<typename ArrayValueT = Aws::Vector<Datum>>
66 Datum& WithArrayValue(ArrayValueT&& value) { SetArrayValue(std::forward<ArrayValueT>(value)); return *this;}
67 template<typename ArrayValueT = Datum>
68 Datum& AddArrayValue(ArrayValueT&& value) { m_arrayValueHasBeenSet = true; m_arrayValue.emplace_back(std::forward<ArrayValueT>(value)); return *this; }
70
72
75 inline const Row& GetRowValue() const{
76 return *m_rowValue;
77 }
78 inline bool RowValueHasBeenSet() const { return m_rowValueHasBeenSet; }
79 template<typename RowValueT = Row>
80 void SetRowValue(RowValueT&& value) {
81 m_rowValueHasBeenSet = true;
82 m_rowValue = Aws::MakeShared<Row>("Datum", std::forward<RowValueT>(value));
83 }
84 template<typename RowValueT = Row>
85 Datum& WithRowValue(RowValueT&& value) { SetRowValue(std::forward<RowValueT>(value)); return *this;}
87
89
92 inline bool GetNullValue() const { return m_nullValue; }
93 inline bool NullValueHasBeenSet() const { return m_nullValueHasBeenSet; }
94 inline void SetNullValue(bool value) { m_nullValueHasBeenSet = true; m_nullValue = value; }
95 inline Datum& WithNullValue(bool value) { SetNullValue(value); return *this;}
97 private:
98
99 Aws::String m_scalarValue;
100 bool m_scalarValueHasBeenSet = false;
101
102 Aws::Vector<Datum> m_arrayValue;
103 bool m_arrayValueHasBeenSet = false;
104
105 std::shared_ptr<Row> m_rowValue;
106 bool m_rowValueHasBeenSet = false;
107
108 bool m_nullValue{false};
109 bool m_nullValueHasBeenSet = false;
110 };
111
112} // namespace Model
113} // namespace IoTSiteWise
114} // namespace Aws
Datum & WithNullValue(bool value)
Definition Datum.h:95
bool ArrayValueHasBeenSet() const
Definition Datum.h:62
const Row & GetRowValue() const
Definition Datum.h:75
bool ScalarValueHasBeenSet() const
Definition Datum.h:50
AWS_IOTSITEWISE_API Datum(Aws::Utils::Json::JsonView jsonValue)
bool RowValueHasBeenSet() const
Definition Datum.h:78
const Aws::String & GetScalarValue() const
Definition Datum.h:49
void SetNullValue(bool value)
Definition Datum.h:94
void SetArrayValue(ArrayValueT &&value)
Definition Datum.h:64
AWS_IOTSITEWISE_API Aws::Utils::Json::JsonValue Jsonize() const
bool GetNullValue() const
Definition Datum.h:92
AWS_IOTSITEWISE_API Datum & operator=(Aws::Utils::Json::JsonView jsonValue)
Datum & AddArrayValue(ArrayValueT &&value)
Definition Datum.h:68
bool NullValueHasBeenSet() const
Definition Datum.h:93
void SetRowValue(RowValueT &&value)
Definition Datum.h:80
Datum & WithArrayValue(ArrayValueT &&value)
Definition Datum.h:66
Datum & WithRowValue(RowValueT &&value)
Definition Datum.h:85
AWS_IOTSITEWISE_API Datum()=default
Datum & WithScalarValue(ScalarValueT &&value)
Definition Datum.h:54
void SetScalarValue(ScalarValueT &&value)
Definition Datum.h:52
const Aws::Vector< Datum > & GetArrayValue() const
Definition Datum.h:61
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue