ActiveLib
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | List of all members
active::setting::ValueSetting Class Reference

Setting containing any number of values, e.g. bool, string etc. More...

#include <ValueSetting.h>

Inheritance diagram for active::setting::ValueSetting:
Inheritance graph
[legend]
Collaboration diagram for active::setting::ValueSetting:
Collaboration graph
[legend]

Public Types

using base = container::Vector<Value>
 
using Unique = std::unique_ptr<ValueSetting>
 Unique pointer.
 
using Shared = std::shared_ptr<ValueSetting>
 Shared pointer.
 
using Option = std::optional<ValueSetting>
 Optional.
 
- Public Types inherited from active::setting::Setting
using Unique = std::unique_ptr<Setting>
 Unique pointer.
 
using Shared = std::shared_ptr<Setting>
 Shared pointer.
 
using Option = std::optional<Setting>
 Optional.
 
- Public Types inherited from active::container::Vector< Value >
using base
 Base container type.
 
using value_type
 Stored type.
 
using size_type
 Container size (index) type.
 
using iterator
 Container iterator type.
 
using const_iterator
 Container const iterator type.
 

Public Member Functions

 ValueSetting ()
 
 ValueSetting (const utility::NameID &nameID)
 
 ValueSetting (const Value &value, size_t rows=1, size_t cols=1)
 
 ValueSetting (Value &&value, const utility::NameID::Option nameID=std::nullopt)
 
template<typename T >
 ValueSetting (const std::vector< T > &values, const utility::NameID::Option nameID=std::nullopt)
 
template<typename T >
 ValueSetting (const std::set< T > &values, const utility::NameID::Option nameID=std::nullopt)
 
 ValueSetting (bool val, const utility::NameID::Option nameID=std::nullopt)
 
 ValueSetting (int32_t val, const utility::NameID::Option nameID=std::nullopt)
 
 ValueSetting (uint32_t val, const utility::NameID::Option nameID=std::nullopt)
 
 ValueSetting (int64_t val, const utility::NameID::Option nameID=std::nullopt)
 
 ValueSetting (double val, const utility::NameID::Option nameID=std::nullopt)
 
 ValueSetting (const utility::Guid &val, const utility::NameID::Option nameID=std::nullopt)
 
 ValueSetting (const utility::String &val, const utility::NameID::Option nameID=std::nullopt)
 
 ValueSetting (const utility::Time &val, const utility::NameID::Option nameID=std::nullopt)
 
 ValueSetting (const ValueSetting &source)=default
 Use default copy constructor.
 
 ValueSetting (ValueSetting &&source) noexcept
 Use default copy constructor.
 
virtual ~ValueSetting ()=default
 
virtual ValueSettingclonePtr () const override
 
const Valueoperator() (size_t row=0, size_t col=0) const
 
virtual bool operator== (const Setting &ref) const override
 
virtual bool operator< (const Setting &ref) const override
 
Valueoperator() (size_t row=0, size_t col=0)
 
virtual Settingoperator= (const Setting &source) override
 
ValueSettingoperator= (ValueSetting &&source)=default
 
 operator bool () const
 
 operator int32_t () const
 
 operator uint32_t () const
 
 operator int64_t () const
 
 operator double () const
 
 operator active::utility::String () const
 
 operator active::utility::Guid () const
 
 operator active::utility::Time () const
 
template<typename T >
 operator std::vector< T > () const
 
std::optional< Value::TypegetDefaultType () const
 
size_t getColumnSize () const
 
bool empty () const override
 True if the setting is empty.
 
bool isGood (size_t row=0, size_t col=0) const
 
Value::Status status (size_t row=0, size_t col=0) const
 
bool boolVal (size_t row=0, size_t col=0) const
 
int32_t int32Val (size_t row=0, size_t col=0) const
 
uint32_t uint32Val (size_t row=0, size_t col=0) const
 
int64_t int64Val (size_t row=0, size_t col=0) const
 
double doubleVal (size_t row=0, size_t col=0) const
 
active::utility::String stringVal (size_t row=0, size_t col=0) const
 
active::utility::Guid guidVal (size_t row=0, size_t col=0) const
 
active::utility::Time timeVal (size_t row=0, size_t col=0) const
 
void setDefaultType (std::optional< Value::Type > type=std::nullopt)
 
void setColumnSize (size_t size)
 
void clear () override
 
void setDefault () override
 
- Public Member Functions inherited from active::setting::Setting
 Setting (utility::NameID::Option identifier=std::nullopt)
 
 Setting (utility::String::Option name, utility::Guid::Option guid=std::nullopt)
 
 Setting (const Setting &source)
 
virtual ~Setting ()=default
 
virtual utility::String name () const
 True if the setting is empty.
 
- Public Member Functions inherited from active::utility::Cloner
virtual ~Cloner ()=default
 
- Public Member Functions inherited from active::container::Vector< Value >
 Vector (size_type toReserve=0)
 
 Vector (const std::initializer_list< Derived > &items)
 
 Vector (const Vector &source)
 
 Vector (Vector &&source)
 
virtual ~Vector ()=default
 
auto operator= (const Vector &source)
 
auto operator= (Vector &&source)
 
void push_back (Value *item)
 
void emplace_back (Value &&item)
 
void emplace_back (const Value &item)
 
void emplace_back (value_type &&item)
 
void emplace_back (value_type &item)
 
auto insert (const_iterator pos, Value *item)
 
auto emplace (const_iterator pos, Value &&item)
 
auto emplace (const_iterator pos, value_type &item)
 
auto release (iterator &pos)
 
auto release (const_iterator pos)
 

Protected Member Functions

size_t getValueIndex (size_t row=0, size_t col=0) const
 Get the index of a value at a specified row/column (NB: index must be in range or an exception will be thrown)
 
template<typename T >
getValue (size_t row=0, size_t col=0) const
 Get the value at a specified row/column (NB: index must be in range or an exception will be thrown)
 

Additional Inherited Members

- Public Attributes inherited from active::setting::Setting
utility::NameID::Option identity
 Optional setting identity.
 

Detailed Description

Setting containing any number of values, e.g. bool, string etc.

Constructor & Destructor Documentation

◆ ValueSetting() [1/14]

active::setting::ValueSetting::ValueSetting ( )
inline

Default constructor

Here is the caller graph for this function:

◆ ValueSetting() [2/14]

active::setting::ValueSetting::ValueSetting ( const utility::NameID & nameID)
inlineexplicit

Constructor

Parameters
nameIDThe setting identifier

◆ ValueSetting() [3/14]

ValueSetting::ValueSetting ( const Value & value,
size_t rows = 1,
size_t cols = 1 )

Constructor

Parameters
valueA value to populate into the setting
rowsThe number of rows of this value
colsThe number of columns of this value
Here is the call graph for this function:

◆ ValueSetting() [4/14]

ValueSetting::ValueSetting ( Value && value,
const utility::NameID::Option nameID = std::nullopt )

Constructor

Parameters
valueA value to populate into the setting
nameIDThe setting identifier
Here is the call graph for this function:

◆ ValueSetting() [5/14]

template<typename T >
active::setting::ValueSetting::ValueSetting ( const std::vector< T > & values,
const utility::NameID::Option nameID = std::nullopt )
inline

Constructor

Parameters
valuesAn array of values to populate into the setting
nameIDThe setting identifier
Here is the call graph for this function:

◆ ValueSetting() [6/14]

template<typename T >
active::setting::ValueSetting::ValueSetting ( const std::set< T > & values,
const utility::NameID::Option nameID = std::nullopt )
inline

Constructor

Parameters
valuesAn array of values to populate into the setting
nameIDThe setting identifier
Here is the call graph for this function:

◆ ValueSetting() [7/14]

ValueSetting::ValueSetting ( bool val,
const utility::NameID::Option nameID = std::nullopt )
explicit

Constructor

Parameters
valThe value
nameIDThe setting identifier
Here is the call graph for this function:

◆ ValueSetting() [8/14]

ValueSetting::ValueSetting ( int32_t val,
const utility::NameID::Option nameID = std::nullopt )
explicit

Constructor

Parameters
valThe value
nameIDThe setting identifier
Here is the call graph for this function:

◆ ValueSetting() [9/14]

ValueSetting::ValueSetting ( uint32_t val,
const utility::NameID::Option nameID = std::nullopt )
explicit

Constructor

Parameters
valThe value
nameIDThe setting identifier
Here is the call graph for this function:

◆ ValueSetting() [10/14]

ValueSetting::ValueSetting ( int64_t val,
const utility::NameID::Option nameID = std::nullopt )
explicit

Constructor

Parameters
valThe value
nameIDThe setting identifier
Here is the call graph for this function:

◆ ValueSetting() [11/14]

ValueSetting::ValueSetting ( double val,
const utility::NameID::Option nameID = std::nullopt )
explicit

Constructor

Parameters
valThe value
nameIDThe setting identifier
Here is the call graph for this function:

◆ ValueSetting() [12/14]

ValueSetting::ValueSetting ( const utility::Guid & val,
const utility::NameID::Option nameID = std::nullopt )
explicit

Constructor

Parameters
valThe value
nameIDThe setting identifier
Here is the call graph for this function:

◆ ValueSetting() [13/14]

ValueSetting::ValueSetting ( const utility::String & val,
const utility::NameID::Option nameID = std::nullopt )
explicit

Constructor

Parameters
valThe value
nameIDThe setting identifier
Here is the call graph for this function:

◆ ValueSetting() [14/14]

ValueSetting::ValueSetting ( const utility::Time & val,
const utility::NameID::Option nameID = std::nullopt )
explicit

Constructor

Parameters
valThe value
nameIDThe setting identifier
Here is the call graph for this function:

◆ ~ValueSetting()

virtual active::setting::ValueSetting::~ValueSetting ( )
virtualdefault

Destructor

Member Function Documentation

◆ boolVal()

bool active::setting::ValueSetting::boolVal ( size_t row = 0,
size_t col = 0 ) const
inline

Get a boolean value

Returns
A boolean value

◆ clear()

void active::setting::ValueSetting::clear ( )
inlineoverridevirtual

Clear the setting (remove any values)

Reimplemented from active::setting::Setting.

Here is the caller graph for this function:

◆ clonePtr()

virtual ValueSetting * active::setting::ValueSetting::clonePtr ( ) const
inlineoverridevirtual

Clone method

Returns
A clone of this object

Implements active::setting::Setting.

Here is the call graph for this function:

◆ doubleVal()

double active::setting::ValueSetting::doubleVal ( size_t row = 0,
size_t col = 0 ) const
inline

Get a double precision value

Returns
A double precision value

◆ empty()

bool active::setting::ValueSetting::empty ( ) const
inlineoverridevirtual

True if the setting is empty.

Implements active::setting::Setting.

◆ getColumnSize()

size_t active::setting::ValueSetting::getColumnSize ( ) const
inline

Get the number of columns the values are notionally arranged in

Returns
The number of columns
Here is the caller graph for this function:

◆ getDefaultType()

std::optional< Value::Type > active::setting::ValueSetting::getDefaultType ( ) const
inline

Get the default value type

Returns
The default value type (nullopt = undefined)

◆ guidVal()

active::utility::Guid active::setting::ValueSetting::guidVal ( size_t row = 0,
size_t col = 0 ) const
inline

Get a guid value

Returns
A guid value

◆ int32Val()

int32_t active::setting::ValueSetting::int32Val ( size_t row = 0,
size_t col = 0 ) const
inline

Get a 32-bit integer value

Returns
A 32-bit integer value

◆ int64Val()

int64_t active::setting::ValueSetting::int64Val ( size_t row = 0,
size_t col = 0 ) const
inline

Get a 64-bit integer value

Returns
A 64-bit integer value

◆ isGood()

bool active::setting::ValueSetting::isGood ( size_t row = 0,
size_t col = 0 ) const
inline

Determine if a value is good

Parameters
rowthe value row
colthe value column
Returns
True if the value is good (status == good)
Here is the call graph for this function:

◆ operator active::utility::Guid()

active::setting::ValueSetting::operator active::utility::Guid ( ) const
inline

Get a guid value

Returns
A guid value

◆ operator active::utility::String()

active::setting::ValueSetting::operator active::utility::String ( ) const
inline

Get a string value

Returns
A string value

◆ operator active::utility::Time()

active::setting::ValueSetting::operator active::utility::Time ( ) const
inline

Get a time value

Returns
A time value

◆ operator bool()

active::setting::ValueSetting::operator bool ( ) const
inline

Get a boolean value

Returns
A boolean value

◆ operator double()

active::setting::ValueSetting::operator double ( ) const
inline

Get a double precision value

Returns
A double precision value

◆ operator int32_t()

active::setting::ValueSetting::operator int32_t ( ) const
inline

Get a 32-bit integer value

Returns
A 32-bit integer value

◆ operator int64_t()

active::setting::ValueSetting::operator int64_t ( ) const
inline

Get a 64-bit integer value

Returns
A 64-bit integer value

◆ operator std::vector< T >()

template<typename T >
active::setting::ValueSetting::operator std::vector< T > ( ) const
inline

Get an array of values

Returns
An array of values

◆ operator uint32_t()

active::setting::ValueSetting::operator uint32_t ( ) const
inline

Get a 32-bit integer value

Returns
A 32-bit integer value

◆ operator()() [1/2]

Value & active::setting::ValueSetting::operator() ( size_t row = 0,
size_t col = 0 )
inline

Subscript operator (mutating)

Parameters
rowThe value row
colThe value column
Returns
The specified value
Here is the call graph for this function:

◆ operator()() [2/2]

const Value & active::setting::ValueSetting::operator() ( size_t row = 0,
size_t col = 0 ) const
inline

Subscript operator (const)

Parameters
rowThe value row
colThe value column
Returns
The specified value
Here is the call graph for this function:

◆ operator<()

bool ValueSetting::operator< ( const Setting & ref) const
overridevirtual

Less-than operator

Parameters
refThe value to compare
Returns
True if this is less than ref

Implements active::setting::Setting.

◆ operator=()

Setting & ValueSetting::operator= ( const Setting & source)
overridevirtual

Assignment operator

Parameters
sourceThe object to copy
Returns
A reference to this

Implements active::setting::Setting.

Here is the call graph for this function:

◆ operator==()

bool ValueSetting::operator== ( const Setting & ref) const
overridevirtual

Equality operator

Parameters
refThe value to compare
Returns
True if the values are identical

Implements active::setting::Setting.

◆ setColumnSize()

void active::setting::ValueSetting::setColumnSize ( size_t size)
inline

Set the number of columns the values are notionally arranged in

Parameters
sizeThe number of columns

◆ setDefault()

void ValueSetting::setDefault ( )
overridevirtual

Assign a default to the setting

Implements active::setting::Setting.

◆ setDefaultType()

void active::setting::ValueSetting::setDefaultType ( std::optional< Value::Type > type = std::nullopt)
inline

Set the default value type

Parameters
typeThe default value type (nullopt = undefined)

◆ status()

Value::Status active::setting::ValueSetting::status ( size_t row = 0,
size_t col = 0 ) const
inline

Get the status of a value

Parameters
rowthe value row
colthe value column
Returns
The value status
Here is the call graph for this function:

◆ stringVal()

active::utility::String active::setting::ValueSetting::stringVal ( size_t row = 0,
size_t col = 0 ) const
inline

Get a string value

Returns
A string value

◆ timeVal()

active::utility::Time active::setting::ValueSetting::timeVal ( size_t row = 0,
size_t col = 0 ) const
inline

Get a time value

Returns
A time value

◆ uint32Val()

uint32_t active::setting::ValueSetting::uint32Val ( size_t row = 0,
size_t col = 0 ) const
inline

Get a 32-bit integer value

Returns
A 32-bit integer value

The documentation for this class was generated from the following files: