![]() |
Scanframe Modular Application 0.1.0
|
Template for linking pointers of member function to Variable instances. More...
#include <VariableHandler.h>
Public Types | |
typedef void(T::* | TPmf) (EEvent event, const Variable &caller, Variable &link, bool sameInst) |
Required event handler type. | |
![]() | |
enum | EEvent : int { veConvert = 64000 , veNewId = -32000 , veUserGlobal , veFirstLocal = 0 , veFlagsChange = 1 , veValueChange = 2 , veInvalid = 3 , veConverted = 4 , veUserLocal = 5 , veFirstPrivate = 16000 , veIdChanged = 16001 , veDesiredId = 16002 , veRemove = 16003 , veGetOwner = 16004 , veLostOwner = 16005 , veLinked = 16006 , veUnlinked = 16007 , veSetup = 16008 , veUserPrivate = 16009 } |
Events send to the handler set with sf::Variable::setHandler. More... | |
enum | EField : int { vfId = 0 , vfName , vfUnit , vfFlags , vfDescription , vfType , vfConversionType , vfRound , vfDefault , vfMinimum , vfMaximum , vfFirstState } |
Enumeration of the order of fields in the setup string. More... | |
enum | EFlag : flags_type { flgReadonly = 1 << 0 , flgArchive = 1 << 1 , flgShare = 1 << 2 , flgLink = 1 << 3 , flgFunction = 1 << 4 , flgParameter = 1 << 5 , flgHidden = 1 << 6 , flgExport = 1 << 7 , flgWriteable = 1 << 8 } |
Enumeration type for specifying flags. More... | |
enum | EStringType : int { stNormal = 0 , stMulti , stPath , stDirectory , stFilename , stSubdirectory } |
Enumeration of string types used for filtering. More... | |
typedef TVector< Variable * > | PtrVector |
Vector for pointers to variables. | |
typedef TVector< Variable > | Vector |
Vector for instances of variables. | |
typedef TVector< VariableReference * > | ReferenceVector |
Types for internal use. | |
![]() | |
typedef unsigned long long | id_type |
Type used for the identifying integer (64-bits). | |
typedef int32_t | flags_type |
Type used for the flag integer. | |
typedef size_t | size_type |
Type used for size of vectors. | |
typedef uint64_t | data_type |
Type used for containing a single data element which is the largest integer. | |
typedef int64_t | sdata_type |
Type used for containing a single data element which is the largest signed integer. | |
typedef TVector< id_type > | IdVector |
Vector for lists of information ID's. | |
typedef TVector< InformationBase * > | Vector |
Vector for containing different information base derived classes. | |
Public Member Functions | |
TVariableHandler (T *self, TPmf pmf) | |
Constructor for assigning the pointer of the member function. | |
TVariableHandler (const TVariableHandler &)=delete | |
Prevent copying by not implementing copy constructor. | |
TVariableHandler & | operator= (const VariableHandler &)=delete |
Prevent copying by not implementing assignment operator. | |
![]() | |
virtual | ~VariableHandler () |
Destructor clears the link with variable instances so no errors occur when the link is destructed before the variable is. | |
![]() | |
template<typename T > | |
constexpr std::enable_if_t<(sizeof(T)<=sizeof(data_type)), data_type > | toDataType (T value) const |
Casts any type to a data_type value. | |
template<typename T > | |
constexpr std::enable_if_t<(sizeof(T)<=sizeof(data_type)), T > | fromDataType (data_type value) const |
Casts a data_type value to a given type. | |
Additional Inherited Members | |
![]() | |
static constexpr size_t | npos = std::numeric_limits<size_type>::max() |
Unsigned size value indicating not found or no index. | |
Template for linking pointers of member function to Variable instances.
T |
typedef void(T::* sf::TVariableHandler< T >::TPmf) (EEvent event, const Variable &caller, Variable &link, bool sameInst) |
Required event handler type.
|
inline |
Constructor for assigning the pointer of the member function.
|
delete |
Prevent copying by not implementing copy constructor.
|
delete |
Prevent copying by not implementing assignment operator.