AWS SDK for C++

AWS SDK for C++ Version 1.11.745

Loading...
Searching...
No Matches
Metric.h
1
6#pragma once
7#include <aws/codeguruprofiler/CodeGuruProfiler_EXPORTS.h>
8#include <aws/codeguruprofiler/model/MetricType.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace CodeGuruProfiler {
22namespace Model {
23
32class Metric {
33 public:
34 AWS_CODEGURUPROFILER_API Metric() = default;
35 AWS_CODEGURUPROFILER_API Metric(Aws::Utils::Json::JsonView jsonValue);
36 AWS_CODEGURUPROFILER_API Metric& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_CODEGURUPROFILER_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
44 inline const Aws::String& GetFrameName() const { return m_frameName; }
45 inline bool FrameNameHasBeenSet() const { return m_frameNameHasBeenSet; }
46 template <typename FrameNameT = Aws::String>
47 void SetFrameName(FrameNameT&& value) {
48 m_frameNameHasBeenSet = true;
49 m_frameName = std::forward<FrameNameT>(value);
50 }
51 template <typename FrameNameT = Aws::String>
52 Metric& WithFrameName(FrameNameT&& value) {
53 SetFrameName(std::forward<FrameNameT>(value));
54 return *this;
55 }
57
59
63 inline const Aws::Vector<Aws::String>& GetThreadStates() const { return m_threadStates; }
64 inline bool ThreadStatesHasBeenSet() const { return m_threadStatesHasBeenSet; }
65 template <typename ThreadStatesT = Aws::Vector<Aws::String>>
66 void SetThreadStates(ThreadStatesT&& value) {
67 m_threadStatesHasBeenSet = true;
68 m_threadStates = std::forward<ThreadStatesT>(value);
69 }
70 template <typename ThreadStatesT = Aws::Vector<Aws::String>>
71 Metric& WithThreadStates(ThreadStatesT&& value) {
72 SetThreadStates(std::forward<ThreadStatesT>(value));
73 return *this;
74 }
75 template <typename ThreadStatesT = Aws::String>
76 Metric& AddThreadStates(ThreadStatesT&& value) {
77 m_threadStatesHasBeenSet = true;
78 m_threadStates.emplace_back(std::forward<ThreadStatesT>(value));
79 return *this;
80 }
82
84
90 inline MetricType GetType() const { return m_type; }
91 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
92 inline void SetType(MetricType value) {
93 m_typeHasBeenSet = true;
94 m_type = value;
95 }
96 inline Metric& WithType(MetricType value) {
97 SetType(value);
98 return *this;
99 }
101 private:
102 Aws::String m_frameName;
103
104 Aws::Vector<Aws::String> m_threadStates;
105
107 bool m_frameNameHasBeenSet = false;
108 bool m_threadStatesHasBeenSet = false;
109 bool m_typeHasBeenSet = false;
110};
111
112} // namespace Model
113} // namespace CodeGuruProfiler
114} // namespace Aws
AWS_CODEGURUPROFILER_API Metric(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetThreadStates() const
Definition Metric.h:63
Metric & AddThreadStates(ThreadStatesT &&value)
Definition Metric.h:76
AWS_CODEGURUPROFILER_API Metric & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetType(MetricType value)
Definition Metric.h:92
Metric & WithType(MetricType value)
Definition Metric.h:96
AWS_CODEGURUPROFILER_API Aws::Utils::Json::JsonValue Jsonize() const
Metric & WithThreadStates(ThreadStatesT &&value)
Definition Metric.h:71
AWS_CODEGURUPROFILER_API Metric()=default
const Aws::String & GetFrameName() const
Definition Metric.h:44
Metric & WithFrameName(FrameNameT &&value)
Definition Metric.h:52
void SetFrameName(FrameNameT &&value)
Definition Metric.h:47
void SetThreadStates(ThreadStatesT &&value)
Definition Metric.h:66
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue