![]() |
Scanframe Modular Application 0.1.0
|
Interface class for managing an indexed lists. Sends out events when about to change and when changed using sf::TClosure instances. More...
#include <TTypedList.h>

Public Types | |
| typedef ssize_t | index_type |
| Type of the indices used by this class. | |
| typedef T | value_type |
| Type of the stored values. | |
Public Member Functions | |
| TTypedList ()=default | |
| Default constructor. | |
| virtual | ~TTypedList ()=default |
| Virtual destructor. | |
| virtual ssize_t | add (const value_type &value) |
| Adds an integer to the end of the list. | |
| void | assign (std::initializer_list< value_type > list) |
| Assigns a list of values to the list. | |
| void | assign (const TTypedList &other) |
| Assign the values from the other typed list. | |
| virtual void | exchange (index_type from_index, index_type to_index) |
| Swap underling index positions. | |
| void | clear () |
| Clears the all items from the store. | |
| virtual void | remove (index_type index, index_type sz) |
| Removes the item at the position given by the index argument. When the underlying list is static do not implement. | |
| bool | isEqual (const TTypedList &other) const |
| Compares the other list with this one. | |
| bool | operator== (const TTypedList &other) const |
| Equal operator calling isEqual(). | |
| bool | operator!= (const TTypedList &other) const |
| Equal operator calling isEqual(). | |
| index_type | indexOf (const value_type &value) const |
| Gets the found index of the given value in the list. | |
| void | set (index_type index, const value_type &value) |
| Sets an entry value using the given index position. | |
| value_type | get (index_type index) const |
| Gets the const entry reference from the given index position. | |
| value_type | operator[] (index_type index) const |
| Const array operator calling get(). | |
| virtual index_type | size () const =0 |
| Gets the size of the underlying data store. | |
| virtual void | resize (index_type) |
| Resizes the underlying store. When the store is static do not override it. | |
| S | toString (const S &separator={}) const |
| Gets the values as a string separated by the given separator. | |
| void | fromString (const S &str, value_type def={}, const S &separator={}) |
| Gets the values as a string separated by the given separator. | |
| virtual void | beginChange () |
| Enables to track when the list of strings is changing. Can be overridden when needed for change event optimization. | |
| virtual void | endChange () |
| Enables the to keep track of when the list has finished changing. Can be overridden when needed for change event optimization. | |
Public Attributes | |
| TClosure< void, void * > | onChanging |
| Event callback function for when a change is about to happen. | |
| TClosure< void, void * > | onChanged |
| Event callback function for when a change is done. | |
Static Public Attributes | |
| static constexpr index_type | npos {-1} |
| Value for no index position. | |
Protected Member Functions | |
| void | checkIndex (index_type index) const |
| Checks the validity of the passed index and when not valid throws an exception. | |
| virtual value_type | store (index_type index, const value_type *value=nullptr)=0 |
| Handles Accesses the actual store. | |
| void | setHexadecimal (bool flag) |
| Enables integral types as hexadecimals in the string from toString() function. | |
Interface class for managing an indexed lists. Sends out events when about to change and when changed using sf::TClosure instances.
| T | Type of the indexed values. |
| S | Type of the string the value is converted. |
| typedef ssize_t sf::TTypedList< T, S >::index_type |
Type of the indices used by this class.
| typedef T sf::TTypedList< T, S >::value_type |
Type of the stored values.
|
default |
Default constructor.
|
virtualdefault |
Virtual destructor.
|
virtual |
Adds an integer to the end of the list.
| value | Value added to the list. |
| void sf::TTypedList< T, S >::assign | ( | const TTypedList< T, S > & | other | ) |
Assign the values from the other typed list.
| void sf::TTypedList< T, S >::assign | ( | std::initializer_list< value_type > | list | ) |
Assigns a list of values to the list.
|
virtual |
Enables to track when the list of strings is changing. Can be overridden when needed for change event optimization.
|
protected |
Checks the validity of the passed index and when not valid throws an exception.
| index | Index to check. |
| std::out_of_range |
| void sf::TTypedList< T, S >::clear | ( | ) |
Clears the all items from the store.
|
virtual |
Enables the to keep track of when the list has finished changing. Can be overridden when needed for change event optimization.
|
virtual |
Swap underling index positions.
| void sf::TTypedList< T, S >::fromString | ( | const S & | str, |
| value_type | def = {}, |
||
| const S & | separator = {} |
||
| ) |
Gets the values as a string separated by the given separator.
| str | Separated string containing the string values. |
| separator | Between the converted values in the string. Defaults to the comma character. |
| def | Default value. |
| value_type sf::TTypedList< T, S >::get | ( | index_type | index | ) | const |
Gets the const entry reference from the given index position.
| index_type sf::TTypedList< T, S >::indexOf | ( | const value_type & | value | ) | const |
Gets the found index of the given value in the list.
| bool sf::TTypedList< T, S >::isEqual | ( | const TTypedList< T, S > & | other | ) | const |
Compares the other list with this one.
| bool sf::TTypedList< T, S >::operator!= | ( | const TTypedList< T, S > & | other | ) | const |
Equal operator calling isEqual().
| bool sf::TTypedList< T, S >::operator== | ( | const TTypedList< T, S > & | other | ) | const |
Equal operator calling isEqual().
| value_type sf::TTypedList< T, S >::operator[] | ( | index_type | index | ) | const |
Const array operator calling get().
|
virtual |
Removes the item at the position given by the index argument. When the underlying list is static do not implement.
| index | Indicates entry index to be removed. |
| sz | Amount of entries to remove. |
Reimplemented in sf::InformationIdList.
|
virtual |
Resizes the underlying store. When the store is static do not override it.
Reimplemented in sf::InformationIdList.
| void sf::TTypedList< T, S >::set | ( | index_type | index, |
| const value_type & | value | ||
| ) |
Sets an entry value using the given index position.
|
protected |
Enables integral types as hexadecimals in the string from toString() function.
| flag | true for using hexadecimals. |
|
pure virtual |
Gets the size of the underlying data store.
Implemented in sf::InformationIdList, and sf::VariableIdList.
|
protectedpure virtual |
Handles Accesses the actual store.
| index | Index to access. |
| value | Value pointer to write when not null. |
Implemented in sf::InformationIdList, and sf::VariableIdList.
| S sf::TTypedList< T, S >::toString | ( | const S & | separator = {} | ) | const |
Gets the values as a string separated by the given separator.
| separator | Between the converted values in the string. Defaults to the comma character |
|
staticconstexpr |
Value for no index position.
| TClosure<void, void*> sf::TTypedList< T, S >::onChanged |
Event callback function for when a change is done.
| TClosure<void, void*> sf::TTypedList< T, S >::onChanging |
Event callback function for when a change is about to happen.