AWS SDK for C++

AWS SDK for C++ Version 1.11.741

Loading...
Searching...
No Matches
PrivacyBudget.h
1
6#pragma once
7#include <aws/cleanrooms/CleanRooms_EXPORTS.h>
8#include <aws/cleanrooms/model/AccessBudget.h>
9#include <aws/cleanrooms/model/DifferentialPrivacyPrivacyBudget.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace CleanRooms {
21namespace Model {
22
30 public:
31 AWS_CLEANROOMS_API PrivacyBudget() = default;
32 AWS_CLEANROOMS_API PrivacyBudget(Aws::Utils::Json::JsonView jsonValue);
33 AWS_CLEANROOMS_API PrivacyBudget& operator=(Aws::Utils::Json::JsonView jsonValue);
34 AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
41 inline const DifferentialPrivacyPrivacyBudget& GetDifferentialPrivacy() const { return m_differentialPrivacy; }
42 inline bool DifferentialPrivacyHasBeenSet() const { return m_differentialPrivacyHasBeenSet; }
43 template <typename DifferentialPrivacyT = DifferentialPrivacyPrivacyBudget>
44 void SetDifferentialPrivacy(DifferentialPrivacyT&& value) {
45 m_differentialPrivacyHasBeenSet = true;
46 m_differentialPrivacy = std::forward<DifferentialPrivacyT>(value);
47 }
48 template <typename DifferentialPrivacyT = DifferentialPrivacyPrivacyBudget>
49 PrivacyBudget& WithDifferentialPrivacy(DifferentialPrivacyT&& value) {
50 SetDifferentialPrivacy(std::forward<DifferentialPrivacyT>(value));
51 return *this;
52 }
54
56
59 inline const AccessBudget& GetAccessBudget() const { return m_accessBudget; }
60 inline bool AccessBudgetHasBeenSet() const { return m_accessBudgetHasBeenSet; }
61 template <typename AccessBudgetT = AccessBudget>
62 void SetAccessBudget(AccessBudgetT&& value) {
63 m_accessBudgetHasBeenSet = true;
64 m_accessBudget = std::forward<AccessBudgetT>(value);
65 }
66 template <typename AccessBudgetT = AccessBudget>
67 PrivacyBudget& WithAccessBudget(AccessBudgetT&& value) {
68 SetAccessBudget(std::forward<AccessBudgetT>(value));
69 return *this;
70 }
72 private:
73 DifferentialPrivacyPrivacyBudget m_differentialPrivacy;
74
75 AccessBudget m_accessBudget;
76 bool m_differentialPrivacyHasBeenSet = false;
77 bool m_accessBudgetHasBeenSet = false;
78};
79
80} // namespace Model
81} // namespace CleanRooms
82} // namespace Aws
AWS_CLEANROOMS_API PrivacyBudget()=default
void SetAccessBudget(AccessBudgetT &&value)
void SetDifferentialPrivacy(DifferentialPrivacyT &&value)
const AccessBudget & GetAccessBudget() const
PrivacyBudget & WithDifferentialPrivacy(DifferentialPrivacyT &&value)
const DifferentialPrivacyPrivacyBudget & GetDifferentialPrivacy() const
AWS_CLEANROOMS_API PrivacyBudget(Aws::Utils::Json::JsonView jsonValue)
AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_CLEANROOMS_API PrivacyBudget & operator=(Aws::Utils::Json::JsonView jsonValue)
PrivacyBudget & WithAccessBudget(AccessBudgetT &&value)
Aws::Utils::Json::JsonValue JsonValue