Instrument Neutral Distributed Interface INDI 2.2.5
Classes | Public Types | Public Member Functions | List of all members
geminipbh::Device Class Reference

#include <device.h>

Classes

struct  Impl
 

Public Types

using TelemetryCallback = std::function< void(const TelemetrySnapshot &)>
 
using TelemetryCallbackHandle = std::uint64_t
 
using ConnectionCallback = std::function< void(ConnectionEvent)>
 
using ConnectionCallbackHandle = std::uint64_t
 
using InstrumentationListener = instrumentation::Dispatcher::Listener
 
using InstrumentationListenerHandle = instrumentation::Dispatcher::ListenerHandle
 

Public Member Functions

 Device ()
 
 ~Device ()
 
 Device (const Device &)=delete
 
Device & operator= (const Device &)=delete
 
 Device (Device &&)=delete
 
Device & operator= (Device &&)=delete
 
Result connect (const std::string &port, int settleMs=0)
 
Result reconnect ()
 
Result disconnect ()
 
Result recoverTelemetryStream ()
 
ConnectionState connectionState () const
 
bool isConnected () const
 
bool hasCommunicationFailure () const
 
TelemetryCallbackHandle registerTelemetryCallback (TelemetryCallback callback)
 
bool removeTelemetryCallback (TelemetryCallbackHandle handle)
 
ConnectionCallbackHandle registerConnectionCallback (ConnectionCallback callback)
 
bool removeConnectionCallback (ConnectionCallbackHandle handle)
 
void setInstrumentationLevel (instrumentation::Level level)
 
instrumentation::Level instrumentationLevel () const
 
bool instrumentationEnabled (instrumentation::Level level) const
 
InstrumentationListenerHandle registerInstrumentationListener (InstrumentationListener listener)
 
bool removeInstrumentationListener (InstrumentationListenerHandle handle)
 
void setCancelFunction (std::function< bool()> callback)
 
Result setDcOutput (std::size_t channel, bool enabled)
 
ValueResult< bool > dcOutputState (std::size_t channel) const
 
Result setUsbOutput (std::size_t channel, bool enabled)
 
ValueResult< bool > usbOutputState (std::size_t channel) const
 
Result setHeaterEnabled (std::size_t channel, bool enabled)
 
ValueResult< bool > heaterEnabled (std::size_t channel) const
 
Result setHeaterMode (std::size_t channel, HeaterMode mode)
 
ValueResult< HeaterMode > heaterMode (std::size_t channel) const
 
Result setHeaterManualPower (std::size_t channel, unsigned percent)
 
ValueResult< unsigned > heaterManualPower (std::size_t channel) const
 
ValueResult< double > heaterCurrentOutput (std::size_t channel) const
 
ValueResult< double > deviceSurfaceTemperature () const
 
ValueResult< double > airTemperature () const
 
ValueResult< double > humidity () const
 
ValueResult< double > dewPoint () const
 
ValueResult< double > inputVoltage () const
 
ValueResult< double > inputCurrent () const
 
ValueResult< double > inputPower () const
 
ValueResult< std::string > firmwareVersion () const
 

Detailed Description

Definition at line 51 of file device.h.

Member Typedef Documentation

◆ ConnectionCallback

Definition at line 56 of file device.h.

◆ ConnectionCallbackHandle

Definition at line 57 of file device.h.

◆ InstrumentationListener

Definition at line 58 of file device.h.

◆ InstrumentationListenerHandle

Definition at line 59 of file device.h.

◆ TelemetryCallback

using geminipbh::Device::TelemetryCallback = std::function<void(const TelemetrySnapshot &)>

Definition at line 54 of file device.h.

◆ TelemetryCallbackHandle

Definition at line 55 of file device.h.

Constructor & Destructor Documentation

◆ Device() [1/3]

geminipbh::Device::Device ( )

Definition at line 205 of file device.cpp.

◆ ~Device()

geminipbh::Device::~Device ( )
default

◆ Device() [2/3]

geminipbh::Device::Device ( const Device &  )
delete

◆ Device() [3/3]

geminipbh::Device::Device ( Device &&  )
delete

Member Function Documentation

◆ airTemperature()

ValueResult< double > geminipbh::Device::airTemperature ( ) const

Definition at line 461 of file device.cpp.

◆ connect()

Result geminipbh::Device::connect ( const std::string &  port,
int  settleMs = 0 
)

Definition at line 209 of file device.cpp.

◆ connectionState()

ConnectionState geminipbh::Device::connectionState ( ) const

Definition at line 278 of file device.cpp.

◆ dcOutputState()

ValueResult< bool > geminipbh::Device::dcOutputState ( std::size_t  channel) const

Definition at line 354 of file device.cpp.

◆ deviceSurfaceTemperature()

ValueResult< double > geminipbh::Device::deviceSurfaceTemperature ( ) const

Definition at line 454 of file device.cpp.

◆ dewPoint()

ValueResult< double > geminipbh::Device::dewPoint ( ) const

Definition at line 475 of file device.cpp.

◆ disconnect()

Result geminipbh::Device::disconnect ( )

Definition at line 252 of file device.cpp.

◆ firmwareVersion()

ValueResult< std::string > geminipbh::Device::firmwareVersion ( ) const

Definition at line 503 of file device.cpp.

◆ hasCommunicationFailure()

bool geminipbh::Device::hasCommunicationFailure ( ) const

Definition at line 288 of file device.cpp.

◆ heaterCurrentOutput()

ValueResult< double > geminipbh::Device::heaterCurrentOutput ( std::size_t  channel) const

Definition at line 446 of file device.cpp.

◆ heaterEnabled()

ValueResult< bool > geminipbh::Device::heaterEnabled ( std::size_t  channel) const

Definition at line 390 of file device.cpp.

◆ heaterManualPower()

ValueResult< unsigned > geminipbh::Device::heaterManualPower ( std::size_t  channel) const

Definition at line 438 of file device.cpp.

◆ heaterMode()

ValueResult< HeaterMode > geminipbh::Device::heaterMode ( std::size_t  channel) const

Definition at line 410 of file device.cpp.

◆ humidity()

ValueResult< double > geminipbh::Device::humidity ( ) const

Definition at line 468 of file device.cpp.

◆ inputCurrent()

ValueResult< double > geminipbh::Device::inputCurrent ( ) const

Definition at line 489 of file device.cpp.

◆ inputPower()

ValueResult< double > geminipbh::Device::inputPower ( ) const

Definition at line 496 of file device.cpp.

◆ inputVoltage()

ValueResult< double > geminipbh::Device::inputVoltage ( ) const

Definition at line 482 of file device.cpp.

◆ instrumentationEnabled()

bool geminipbh::Device::instrumentationEnabled ( instrumentation::Level  level) const

Definition at line 323 of file device.cpp.

◆ instrumentationLevel()

instrumentation::Level geminipbh::Device::instrumentationLevel ( ) const

Definition at line 318 of file device.cpp.

◆ isConnected()

bool geminipbh::Device::isConnected ( ) const

Definition at line 283 of file device.cpp.

◆ operator=() [1/2]

Device & geminipbh::Device::operator= ( const Device &  )
delete

◆ operator=() [2/2]

Device & geminipbh::Device::operator= ( Device &&  )
delete

◆ reconnect()

Result geminipbh::Device::reconnect ( )

Definition at line 229 of file device.cpp.

◆ recoverTelemetryStream()

Result geminipbh::Device::recoverTelemetryStream ( )

Definition at line 268 of file device.cpp.

◆ registerConnectionCallback()

Device::ConnectionCallbackHandle geminipbh::Device::registerConnectionCallback ( ConnectionCallback  callback)

Definition at line 303 of file device.cpp.

◆ registerInstrumentationListener()

Device::InstrumentationListenerHandle geminipbh::Device::registerInstrumentationListener ( InstrumentationListener  listener)

Definition at line 328 of file device.cpp.

◆ registerTelemetryCallback()

Device::TelemetryCallbackHandle geminipbh::Device::registerTelemetryCallback ( TelemetryCallback  callback)

Definition at line 293 of file device.cpp.

◆ removeConnectionCallback()

bool geminipbh::Device::removeConnectionCallback ( ConnectionCallbackHandle  handle)

Definition at line 308 of file device.cpp.

◆ removeInstrumentationListener()

bool geminipbh::Device::removeInstrumentationListener ( InstrumentationListenerHandle  handle)

Definition at line 333 of file device.cpp.

◆ removeTelemetryCallback()

bool geminipbh::Device::removeTelemetryCallback ( TelemetryCallbackHandle  handle)

Definition at line 298 of file device.cpp.

◆ setCancelFunction()

void geminipbh::Device::setCancelFunction ( std::function< bool()>  callback)

Definition at line 338 of file device.cpp.

◆ setDcOutput()

Result geminipbh::Device::setDcOutput ( std::size_t  channel,
bool  enabled 
)

Definition at line 344 of file device.cpp.

◆ setHeaterEnabled()

Result geminipbh::Device::setHeaterEnabled ( std::size_t  channel,
bool  enabled 
)

Definition at line 380 of file device.cpp.

◆ setHeaterManualPower()

Result geminipbh::Device::setHeaterManualPower ( std::size_t  channel,
unsigned  percent 
)

Definition at line 418 of file device.cpp.

◆ setHeaterMode()

Result geminipbh::Device::setHeaterMode ( std::size_t  channel,
HeaterMode  mode 
)

Definition at line 398 of file device.cpp.

◆ setInstrumentationLevel()

void geminipbh::Device::setInstrumentationLevel ( instrumentation::Level  level)

Definition at line 313 of file device.cpp.

◆ setUsbOutput()

Result geminipbh::Device::setUsbOutput ( std::size_t  channel,
bool  enabled 
)

Definition at line 362 of file device.cpp.

◆ usbOutputState()

ValueResult< bool > geminipbh::Device::usbOutputState ( std::size_t  channel) const

Definition at line 372 of file device.cpp.


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