Scanframe Modular Application 0.1.0
Loading...
Searching...
No Matches
sf::TVariableHandler< T > Class Template Reference

Template for linking pointers of member function to Variable instances. More...

#include <VariableHandler.h>

Inheritance diagram for sf::TVariableHandler< T >:
Collaboration diagram for sf::TVariableHandler< T >:

Public Types

typedef void(T::* TPmf) (EEvent event, const Variable &caller, Variable &link, bool sameInst)
 Required event handler type.
 
- Public Types inherited from sf::VariableTypes
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.
 

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.
 
TVariableHandleroperator= (const VariableHandler &)=delete
 Prevent copying by not implementing assignment operator.
 
- Public Member Functions inherited from sf::VariableHandler
virtual ~VariableHandler ()
 Destructor clears the link with variable instances so no errors occur when the link is destructed before the variable is.
 
- 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.
 

Additional Inherited Members

- 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

template<typename T>
class sf::TVariableHandler< T >

Template for linking pointers of member function to Variable instances.

Template Parameters
T

Member Typedef Documentation

◆ TPmf

template<typename T >
typedef void(T::* sf::TVariableHandler< T >::TPmf) (EEvent event, const Variable &caller, Variable &link, bool sameInst)

Required event handler type.

Constructor & Destructor Documentation

◆ TVariableHandler() [1/2]

template<typename T >
sf::TVariableHandler< T >::TVariableHandler ( T *  self,
const TVariableHandler< T >::TPmf  pmf 
)
inline

Constructor for assigning the pointer of the member function.

◆ TVariableHandler() [2/2]

template<typename T >
sf::TVariableHandler< T >::TVariableHandler ( const TVariableHandler< T > &  )
delete

Prevent copying by not implementing copy constructor.

Member Function Documentation

◆ operator=()

template<typename T >
TVariableHandler & sf::TVariableHandler< T >::operator= ( const VariableHandler )
delete

Prevent copying by not implementing assignment operator.


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