Scanframe Modular Application 0.1.0
Loading...
Searching...
No Matches
sf::VariableTypes Class Reference

This base class contains all local types of used in the Variable class. Multiple inheritance makes these types local for other classes as well. Making code more readable and also prevents name space problems. More...

#include <VariableTypes.h>

Inheritance diagram for sf::VariableTypes:
Collaboration diagram for sf::VariableTypes:

Classes

struct  Definition
 Structure used to set up a variable The method Variable::getDefinition() transforms the definition string into this structure. More...
 
class  State
 Type containing a name referencing a value and is called a state. More...
 

Public Types

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< VariableVector
 Vector for instances of variables.
 
typedef TVector< VariableReference * > ReferenceVector
 Types for internal use.
 
- Public Types inherited from sf::InformationTypes
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_typeIdVector
 Vector for lists of information ID's.
 
typedef TVector< InformationBase * > Vector
 Vector for containing different information base derived classes.
 

Additional Inherited Members

- Public Member Functions inherited from sf::InformationTypes
template<typename T >
constexpr std::enable_if_t<(sizeof(T)<=sizeof(data_type)), data_typetoDataType (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.
 
- Static Public Attributes inherited from sf::InformationTypes
static constexpr size_t npos = std::numeric_limits<size_type>::max()
 Unsigned size value indicating not found or no index.
 

Detailed Description

This base class contains all local types of used in the Variable class. Multiple inheritance makes these types local for other classes as well. Making code more readable and also prevents name space problems.

Member Typedef Documentation

◆ PtrVector

Vector for pointers to variables.

◆ ReferenceVector

◆ Vector

Vector for instances of variables.

Member Enumeration Documentation

◆ EEvent

Events send to the handler set with sf::Variable::setHandler.

For broadcast events the variable parameter is not the variable that called the sf::Variable::setHandler method and the param parameter isn't also the one passed to function sf::Variable::setHandler either.

Enumerator
veConvert 

Special event passed to the global conversion handler.

veNewId 

Global events for a new variable with ID.

veUserGlobal 

First user global event.

veFirstLocal 

From here only specific variables are called.
Indicates first local event.

veFlagsChange 

current flags have been changed.

veValueChange 

current value has been changed.
Can be local when temp value is used.

veInvalid 

Variable reference is becoming invalid for this instance. Owner is deleted.

veConverted 

Conversion values have been changed or conversion was enables/disabled.

veUserLocal 

First event which can be used by an implementation for its own purposes.

veFirstPrivate 

Indicates first private event.

veIdChanged 

This variable instance ID changed.

veDesiredId 

This variable instance desired ID changed.

veRemove 

This variable instance is being removed.

veGetOwner 

This instance has become owner.

veLostOwner 

This instance has lost ownership.

veLinked 

This instance event handler has been linked.

veUnlinked 

This instance has lost event handler link.

veSetup 

This variable instance was set up.

veUserPrivate 

Start of user private event ID's.

◆ EField

Enumeration of the order of fields in the setup string.

Enumerator
vfId 

Integer identifier

vfName 

Name(path) where '|' character is used to separate the group.

vfUnit 
vfFlags 

Single character flags, see EFlag.

vfDescription 

Description of the variable.

vfType 

Type of the contained value, see sf::Value::EType.

vfConversionType 

Type of the contained value.

vfRound 

Rounding value. Makes the value a multiple of this value. Also used for displaying amount of digits.

vfDefault 

Default and initial

vfMinimum 

Minimum allowed value.

vfMaximum 

Maximum allowed value.

vfFirstState 

First state id any

◆ EFlag

Enumeration type for specifying flags.

Enumerator
flgReadonly 

Represented by character 'R'.
Only the owner can change it.

flgArchive 

Represented by character 'A'.
Variable needs saving when storing results.

flgShare 

Represented by character 'S'.
Parameter may be exported outside the application. When communicating over a network connection only these variables are exported.

flgLink 

Represented by character 'L'.

flgFunction 

Represented by character 'F'.
Variable is used as a function and is reset or changed by the owning instance after execution.

flgParameter 

Represented by character 'P'.
Variable is a parameter and indicates that it is needed for configuration of an application.
This makes it possible to distinguishes between operational settings and device configuration parameters.

flgHidden 

Represented by character 'H'.
For selection of client only when listing.

flgExport 

Represented by character 'E'.
Set when Local variable may be exported globally.
Exported local variables are readonly by default.

flgWriteable 

Represented by character 'W'.
Set when a local variable is exported globally and may be written globally.

◆ EStringType

Enumeration of string types used for filtering.

Enumerator
stNormal 

This is a straight normal string where control characters are not converted to any multibyte translation.

stMulti 

This is a multi line string with new-line control characters.

stPath 

The string contains a complete filepath.

stDirectory 

The string contains a complete directory a drive letter.

stFilename 

The string contains a filename.

stSubdirectory 

The string contains a subdirectory having an ending backslash and no drive letter or starting backslash.


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