Torc  0.1
Public Slots | Signals | Public Member Functions | List of all members
TorcNetworkButtonInput Class Referencefinal

A network input that mimics the behaviour of a mechanical push button. More...

#include <torcnetworkbuttoninput.h>

Inheritance diagram for TorcNetworkButtonInput:
[legend]

Public Slots

void SetValue (double Value) final
 Toggle the value of the button. More...
 
- Public Slots inherited from TorcInput
void SubscriberDeleted (QObject *Subscriber)
 
void SetValue (double Value) override
 Update the inputs value. More...
 
void SetValid (bool Valid) final
 
double GetOperatingRangeMin (void)
 
double GetOperatingRangeMax (void)
 
bool GetOutOfRangeLow (void)
 
bool GetOutOfRangeHigh (void)
 
- Public Slots inherited from TorcDevice
virtual void SetValue (double Value)
 
virtual void SetValid (bool Valid)
 
bool GetValid (void)
 
double GetValue (void)
 
double GetDefaultValue (void)
 
QString GetModelId (void)
 
QString GetUniqueId (void)
 
QString GetUserName (void)
 
QString GetUserDescription (void)
 

Signals

void Pushed (void)
 
- Signals inherited from TorcInput
void OutOfRangeLowChanged (bool Value)
 
void OutOfRangeHighChanged (bool Value)
 
- Signals inherited from TorcDevice
void ValidChanged (bool Valid)
 
void ValueChanged (double Value)
 

Public Member Functions

 TorcNetworkButtonInput (double Default, const QVariantMap &Details)
 
 ~TorcNetworkButtonInput ()=default
 
QStringList GetDescription (void) override
 
void Start (void) override
 
TorcInput::Type GetType (void) override
 
- Public Member Functions inherited from TorcNetworkSwitchInput
 TorcNetworkSwitchInput (double Default, const QVariantMap &Details)
 
virtual ~TorcNetworkSwitchInput ()=default
 
QStringList GetDescription (void) override
 
void Start (void) override
 
- Public Member Functions inherited from TorcSwitchInput
 TorcSwitchInput (double Default, const QString &ModelId, const QVariantMap &Details)
 
virtual ~TorcSwitchInput ()=default
 
QStringList GetDescription (void) override
 
TorcInput::Type GetType (void) override
 
void Start (void) override
 
double ScaleValue (double Value)
 
- Public Member Functions inherited from TorcInput
 TorcInput (TorcInput::Type Type, double Value, double RangeMinimum, double RangeMaximum, const QString &ModelId, const QVariantMap &Details)
 
QString GetUIName (void) override
 
- Public Member Functions inherited from TorcReferenceCounter
 TorcReferenceCounter (void)
 
virtual ~TorcReferenceCounter (void)=default
 
void UpRef (void)
 
virtual bool DownRef (void)
 
bool IsShared (void)
 
- Public Member Functions inherited from TorcHTTPService
 TorcHTTPService (QObject *Parent, const QString &Signature, const QString &Name, const QMetaObject &MetaObject, const QString &Blacklist=QStringLiteral(""))
 
virtual ~TorcHTTPService ()
 
void ProcessHTTPRequest (const QString &PeerAddress, int PeerPort, const QString &LocalAddress, int LocalPort, TorcHTTPRequest &Request) override
 
QVariantMap ProcessRequest (const QString &Method, const QVariant &Parameters, QObject *Connection, bool Authenticated) override
 
QString GetMethod (int Index)
 
QVariant GetProperty (int Index)
 Get the value of a given property. More...
 
QVariantMap GetServiceDetails (void)
 Return a QVariantMap describing the services methods and properties. More...
 
virtual QString GetPresentationURL (void)
 
- Public Member Functions inherited from TorcHTTPHandler
 TorcHTTPHandler (const QString &Signature, const QString &Name)
 
virtual ~TorcHTTPHandler ()
 
QString Signature (void) const
 
bool GetRecursive (void) const
 
QString Name (void) const
 

Additional Inherited Members

- Public Types inherited from TorcInput
enum  Type {
  Unknown = 0, Temperature, pH, Switch,
  PWM, Button, Started, Integer,
  MaxType
}
 
- Static Public Member Functions inherited from TorcReferenceCounter
static void EventLoopEnding (bool Ending)
 
- Protected Member Functions inherited from TorcInput
virtual ~TorcInput ()=default
 
- Protected Member Functions inherited from TorcDevice
virtual ~TorcDevice ()
 
- Protected Member Functions inherited from TorcHTTPService
void HandleSubscriberDeleted (QObject *Subscriber)
 
- Static Protected Member Functions inherited from TorcHTTPHandler
static bool MethodIsAuthorised (TorcHTTPRequest &Request, int Allowed)
 Check the current request is authorised and set the authentication header if not. More...
 
static void HandleOptions (TorcHTTPRequest &Request, int Allowed)
 
static void HandleFile (TorcHTTPRequest &Request, const QString &Filename, int Cache)
 
- Protected Attributes inherited from TorcDevice
double value
 
double defaultValue
 
QString modelId
 
QString uniqueId
 
QString userName
 
QString userDescription
 
QMutex lock
 
bool wasInvalid
 
- Protected Attributes inherited from TorcReferenceCounter
QAtomicInt m_refCount
 
- Protected Attributes inherited from TorcHTTPService
QReadWriteLock m_httpServiceLock
 
- Protected Attributes inherited from TorcHTTPHandler
QString m_signature
 
bool m_recursive
 
QString m_name
 
- Static Protected Attributes inherited from TorcDevice
static QHash< QString, TorcDevice * > * gDeviceList = new QHash<QString,TorcDevice*>()
 
static QMutex * gDeviceListLock = new QMutex(QMutex::Recursive)
 
- Static Protected Attributes inherited from TorcReferenceCounter
static bool m_eventLoopEnding = false
 
- Properties inherited from TorcInput
double operatingRangeMin
 
double operatingRangeMax
 
bool outOfRangeLow
 
bool outOfRangeHigh
 
- Properties inherited from TorcDevice
bool valid
 

Detailed Description

A network input that mimics the behaviour of a mechanical push button.

A traditional push button will toggle from low to high to low (or high to low to high) as it is pressed and released. This behaviour is mimicked.

Most useful in shadowing a 'real' pushbutton to give a network equivalent for dual control or for triggering other actions - usually in conjunction with the 'toggle' type control.

Note
SetValue will trigger the push button action irrespective of the current value. Be sure to set default value to the correct default state.
Linking this device to a network button output is unlikely to generate useful behaviour.
See also
TorcNetworkButtonOutput

Definition at line 10 of file torcnetworkbuttoninput.h.

Constructor & Destructor Documentation

TorcNetworkButtonInput::TorcNetworkButtonInput ( double  Default,
const QVariantMap &  Details 
)

Definition at line 40 of file torcnetworkbuttoninput.cpp.

TorcNetworkButtonInput::~TorcNetworkButtonInput ( )
default

Member Function Documentation

QStringList TorcNetworkButtonInput::GetDescription ( void  )
overridevirtual

Reimplemented from TorcDevice.

Definition at line 53 of file torcnetworkbuttoninput.cpp.

TorcInput::Type TorcNetworkButtonInput::GetType ( void  )
overridevirtual

Implements TorcInput.

Definition at line 65 of file torcnetworkbuttoninput.cpp.

void TorcNetworkButtonInput::Pushed ( void  )
signal
void TorcNetworkButtonInput::SetValue ( double  Value)
finalslot

Toggle the value of the button.

The input value is ignored, the current value is toggled and the timer started to revert the value to its original state after a small period of time. This mimics the actions of a real, mechanical push button for consistency with those devices.

Definition at line 76 of file torcnetworkbuttoninput.cpp.

void TorcNetworkButtonInput::Start ( void  )
overridevirtual

Reimplemented from TorcInput.

Definition at line 58 of file torcnetworkbuttoninput.cpp.


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