Program Listing for File PersonaStatDefinition.h
↰ Return to documentation for file (axr.sdk/models/PersonaStatDefinition.h
)
// Copyright (C) AcceleratXR, Inc. All rights reserved.
//
// Author: Jean-Philippe Steinmetz <info@acceleratxr.com>
//
// NOTE: This file was auto generated by the AcceleratXR code generator.
// https://gitlab.com/AcceleratXR/Core/code_generator.git
#pragma once
#include "axr.sdk/EntityBase.h"
#include "axr.sdk/StringEnum.h"
#include <cpprest/details/basic_types.h>
#include <vector>
namespace axr {
namespace sdk {
namespace models {
class PersonaStatDefinition : public EntityBase
{
public:
class Type : public StringEnum<Type>
{
public:
static const Type* INVALID;
static const Type* BOOLEAN;
static const Type* NUMBER;
static const Type* OBJECT;
static const Type* STRING;
private:
Type(const utility::char_t* value)
: StringEnum(value)
{
}
};
PersonaStatDefinition() {}
PersonaStatDefinition(const PersonaStatDefinition& value) : EntityBase(value) {}
PersonaStatDefinition(PersonaStatDefinition&& value) : EntityBase(value) {}
virtual ~PersonaStatDefinition() {}
// Object overrides
virtual PersonaStatDefinition& SetProperties(const std::map<utility::string_t, Variant>& value) override
{
Object::SetProperties(value);
return *this;
}
virtual PersonaStatDefinition& SetProperties(std::map<utility::string_t, Variant>&& value) override
{
Object::SetProperties(value);
return *this;
}
virtual PersonaStatDefinition& SetProperty(const utility::char_t* name, const Variant& value) override
{
Object::SetProperty(name, value);
return*this;
}
virtual PersonaStatDefinition& SetProperty(const utility::string_t& name, const Variant& value) override
{
Object::SetProperty(name, value);
return*this;
}
virtual PersonaStatDefinition& SetRemoteUrl(const utility::string_t& url) override
{
Object::SetRemoteUrl(url);
return *this;
}
// EntityBase overrides
virtual PersonaStatDefinition& SetUid(const utility::string_t& value) override
{
EntityBase::SetUid(value);
return *this;
}
virtual PersonaStatDefinition& SetDateCreated(const datetime& value) override
{
EntityBase::SetDateCreated(value);
return *this;
}
virtual PersonaStatDefinition& SetDateModified(const datetime& value) override
{
EntityBase::SetDateModified(value);
return *this;
}
virtual PersonaStatDefinition& SetVersion(const uint64_t value) override
{
EntityBase::SetVersion(value);
return *this;
}
static const utility::char_t* ClassName()
{
return _XPLATSTR("axr::sdk::models::PersonaStatDefinition");
}
void Validate() override;
// PersonaStatDefinition members
utility::string_t GetName() const;
#ifdef AXR_COMPILE_SERVER
PersonaStatDefinition& SetName(const utility::string_t& value);
#endif // AXR_COMPILE_SERVER
const Type* GetType() const;
#ifdef AXR_COMPILE_SERVER
PersonaStatDefinition& SetType(const Type* value);
#endif // AXR_COMPILE_SERVER
Variant GetMin() const;
template<class T>
inline T GetMin() const
{
return std::get<T>(GetMin());
}
#ifdef AXR_COMPILE_SERVER
PersonaStatDefinition& SetMin(const Variant& value);
#endif // AXR_COMPILE_SERVER
Variant GetMax() const;
template<class T>
inline T GetMax() const
{
return std::get<T>(GetMax());
}
#ifdef AXR_COMPILE_SERVER
PersonaStatDefinition& SetMax(const Variant& value);
#endif // AXR_COMPILE_SERVER
Variant GetDefault() const;
template<class T>
inline T GetDefault() const
{
return std::get<T>(GetDefault());
}
#ifdef AXR_COMPILE_SERVER
PersonaStatDefinition& SetDefault(const Variant& value);
#endif // AXR_COMPILE_SERVER
utility::string_t GetProductUid() const;
#ifdef AXR_COMPILE_SERVER
PersonaStatDefinition& SetProductUid(const utility::string_t& value);
#endif // AXR_COMPILE_SERVER
std::vector<Variant> GetValues() const;
template<class T>
inline std::vector<T> GetValues() const
{
std::vector<T> results;
for (auto elem : GetValues())
{
results.push_back(std::get<T>(elem));
}
return results;
}
#ifdef AXR_COMPILE_SERVER
PersonaStatDefinition& SetValues(std::vector<Variant> values);
#endif // AXR_COMPILE_SERVER
protected:
const Type* GetVariantType(const Variant& value);
};
template<>
inline bool PersonaStatDefinition::GetMin() const
{
return std::get<bool>(GetMin());
}
template<>
inline double PersonaStatDefinition::GetMin() const
{
return std::get<double>(GetMin());
}
template<>
inline float PersonaStatDefinition::GetMin() const
{
return (float)std::get<double>(GetMin());
}
template<>
inline int8_t PersonaStatDefinition::GetMin() const
{
return (int8_t)std::get<int64_t>(GetMin());
}
template<>
inline uint8_t PersonaStatDefinition::GetMin() const
{
return (uint8_t)std::get<int64_t>(GetMin());
}
template<>
inline int16_t PersonaStatDefinition::GetMin() const
{
return (int16_t)std::get<int64_t>(GetMin());
}
template<>
inline uint16_t PersonaStatDefinition::GetMin() const
{
return (uint16_t)std::get<int64_t>(GetMin());
}
template<>
inline int32_t PersonaStatDefinition::GetMin() const
{
return (int32_t)std::get<int64_t>(GetMin());
}
template<>
inline uint32_t PersonaStatDefinition::GetMin() const
{
return (uint32_t)std::get<int64_t>(GetMin());
}
template<>
inline int64_t PersonaStatDefinition::GetMin() const
{
return std::get<int64_t>(GetMin());
}
template<>
inline uint64_t PersonaStatDefinition::GetMin() const
{
return (uint64_t)std::get<int64_t>(GetMin());
}
template<>
inline std::shared_ptr<Object> PersonaStatDefinition::GetMin() const
{
return std::get<std::shared_ptr<Object>>(GetMin());
}
template<>
inline utility::string_t PersonaStatDefinition::GetMin() const
{
return std::get<utility::string_t>(GetMin());
}
template<>
inline bool PersonaStatDefinition::GetMax() const
{
return std::get<bool>(GetMax());
}
template<>
inline double PersonaStatDefinition::GetMax() const
{
return std::get<double>(GetMax());
}
template<>
inline float PersonaStatDefinition::GetMax() const
{
return (float)std::get<double>(GetMax());
}
template<>
inline int8_t PersonaStatDefinition::GetMax() const
{
return (int8_t)std::get<int64_t>(GetMax());
}
template<>
inline uint8_t PersonaStatDefinition::GetMax() const
{
return (uint8_t)std::get<int64_t>(GetMax());
}
template<>
inline int16_t PersonaStatDefinition::GetMax() const
{
return (int16_t)std::get<int64_t>(GetMax());
}
template<>
inline uint16_t PersonaStatDefinition::GetMax() const
{
return (uint16_t)std::get<int64_t>(GetMax());
}
template<>
inline int32_t PersonaStatDefinition::GetMax() const
{
return (int32_t)std::get<int64_t>(GetMax());
}
template<>
inline uint32_t PersonaStatDefinition::GetMax() const
{
return (uint32_t)std::get<int64_t>(GetMax());
}
template<>
inline int64_t PersonaStatDefinition::GetMax() const
{
return std::get<int64_t>(GetMax());
}
template<>
inline uint64_t PersonaStatDefinition::GetMax() const
{
return (uint64_t)std::get<int64_t>(GetMax());
}
template<>
inline std::shared_ptr<Object> PersonaStatDefinition::GetMax() const
{
return std::get<std::shared_ptr<Object>>(GetMax());
}
template<>
inline utility::string_t PersonaStatDefinition::GetMax() const
{
return std::get<utility::string_t>(GetMax());
}
template<>
inline bool PersonaStatDefinition::GetDefault() const
{
return std::get<bool>(GetDefault());
}
template<>
inline double PersonaStatDefinition::GetDefault() const
{
return std::get<double>(GetDefault());
}
template<>
inline float PersonaStatDefinition::GetDefault() const
{
return (float)std::get<double>(GetDefault());
}
template<>
inline int8_t PersonaStatDefinition::GetDefault() const
{
return (int8_t)std::get<int64_t>(GetDefault());
}
template<>
inline uint8_t PersonaStatDefinition::GetDefault() const
{
return (uint8_t)std::get<int64_t>(GetDefault());
}
template<>
inline int16_t PersonaStatDefinition::GetDefault() const
{
return (int16_t)std::get<int64_t>(GetDefault());
}
template<>
inline uint16_t PersonaStatDefinition::GetDefault() const
{
return (uint16_t)std::get<int64_t>(GetDefault());
}
template<>
inline int32_t PersonaStatDefinition::GetDefault() const
{
return (int32_t)std::get<int64_t>(GetDefault());
}
template<>
inline uint32_t PersonaStatDefinition::GetDefault() const
{
return (uint32_t)std::get<int64_t>(GetDefault());
}
template<>
inline int64_t PersonaStatDefinition::GetDefault() const
{
return std::get<int64_t>(GetDefault());
}
template<>
inline uint64_t PersonaStatDefinition::GetDefault() const
{
return (uint64_t)std::get<int64_t>(GetDefault());
}
template<>
inline std::shared_ptr<Object> PersonaStatDefinition::GetDefault() const
{
return std::get<std::shared_ptr<Object>>(GetDefault());
}
template<>
inline utility::string_t PersonaStatDefinition::GetDefault() const
{
return std::get<utility::string_t>(GetDefault());
}
template<>
inline std::vector<bool> PersonaStatDefinition::GetValues() const
{
std::vector<bool> results;
for (auto elem : GetValues())
{
results.push_back(std::get<bool>(elem));
}
return results;
}
template<>
inline std::vector<double> PersonaStatDefinition::GetValues() const
{
std::vector<double> results;
for (auto elem : GetValues())
{
results.push_back(std::get<double>(elem));
}
return results;
}
template<>
inline std::vector<float> PersonaStatDefinition::GetValues() const
{
std::vector<float> results;
for (auto elem : GetValues())
{
results.push_back((float)std::get<double>(elem));
}
return results;
}
template<>
inline std::vector<int8_t> PersonaStatDefinition::GetValues() const
{
std::vector<int8_t> results;
for (auto elem : GetValues())
{
results.push_back((int8_t)std::get<int64_t>(elem));
}
return results;
}
template<>
inline std::vector<uint8_t> PersonaStatDefinition::GetValues() const
{
std::vector<uint8_t> results;
for (auto elem : GetValues())
{
results.push_back((uint8_t)std::get<int64_t>(elem));
}
return results;
}
template<>
inline std::vector<int16_t> PersonaStatDefinition::GetValues() const
{
std::vector<int16_t> results;
for (auto elem : GetValues())
{
results.push_back((int16_t)std::get<int64_t>(elem));
}
return results;
}
template<>
inline std::vector<uint16_t> PersonaStatDefinition::GetValues() const
{
std::vector<uint16_t> results;
for (auto elem : GetValues())
{
results.push_back((uint16_t)std::get<int64_t>(elem));
}
return results;
}
template<>
inline std::vector<int32_t> PersonaStatDefinition::GetValues() const
{
std::vector<int32_t> results;
for (auto elem : GetValues())
{
results.push_back((int32_t)std::get<int64_t>(elem));
}
return results;
}
template<>
inline std::vector<uint32_t> PersonaStatDefinition::GetValues() const
{
std::vector<uint32_t> results;
for (auto elem : GetValues())
{
results.push_back((uint32_t)std::get<int64_t>(elem));
}
return results;
}
template<>
inline std::vector<int64_t> PersonaStatDefinition::GetValues() const
{
std::vector<int64_t> results;
for (auto elem : GetValues())
{
results.push_back(std::get<int64_t>(elem));
}
return results;
}
template<>
inline std::vector<uint64_t> PersonaStatDefinition::GetValues() const
{
std::vector<uint64_t> results;
for (auto elem : GetValues())
{
results.push_back((uint64_t)std::get<int64_t>(elem));
}
return results;
}
template<>
inline std::vector<std::shared_ptr<Object>> PersonaStatDefinition::GetValues() const
{
std::vector<std::shared_ptr<Object>> results;
for (auto elem : GetValues())
{
results.push_back(std::get<std::shared_ptr<Object>>(elem));
}
return results;
}
template<>
inline std::vector<utility::string_t> PersonaStatDefinition::GetValues() const
{
std::vector<utility::string_t> results;
for (auto elem : GetValues())
{
results.push_back(std::get<utility::string_t>(elem));
}
return results;
}
} // namespace models
} // namespace axr
} // namespace sdk