WPILibC++
unspecified
|
DigitalSource Interface. More...
#include <DigitalSource.h>
Public Member Functions | |
virtual HAL_Handle | GetPortHandleForRouting () const =0 |
virtual AnalogTriggerType | GetAnalogTriggerTypeForRouting () const =0 |
virtual bool | IsAnalogTrigger () const =0 |
virtual int | GetChannel () const =0 |
![]() | |
virtual void | RequestInterrupts (HAL_InterruptHandlerFunction handler, void *param) |
Asynchronus handler version. More... | |
virtual void | RequestInterrupts () |
Synchronus Wait version. More... | |
virtual void | CancelInterrupts () |
Free up the underlying chipobject functions. More... | |
virtual WaitResult | WaitForInterrupt (double timeout, bool ignorePrevious=true) |
Synchronus version. More... | |
virtual void | EnableInterrupts () |
Enable interrupts - after finishing setup. More... | |
virtual void | DisableInterrupts () |
Disable, but don't deallocate. More... | |
virtual double | ReadRisingTimestamp () |
Return the timestamp for the rising interrupt that occurred. More... | |
virtual double | ReadFallingTimestamp () |
Return the timestamp for the falling interrupt that occurred. More... | |
virtual void | SetUpSourceEdge (bool risingEdge, bool fallingEdge) |
Set which edge to trigger interrupts on. More... | |
![]() | |
SensorBase (const SensorBase &)=delete | |
SensorBase & | operator= (const SensorBase &)=delete |
![]() | |
ErrorBase (const ErrorBase &)=delete | |
ErrorBase & | operator= (const ErrorBase &)=delete |
virtual Error & | GetError () |
Retrieve the current error. More... | |
virtual const Error & | GetError () const |
virtual void | SetErrnoError (llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, int lineNumber) const |
Set error information associated with a C library call that set an error to the "errno" global variable. More... | |
virtual void | SetImaqError (int success, llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, int lineNumber) const |
Set the current error information associated from the nivision Imaq API. More... | |
virtual void | SetError (Error::Code code, llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, int lineNumber) const |
Set the current error information associated with this sensor. More... | |
virtual void | SetErrorRange (Error::Code code, int32_t minRange, int32_t maxRange, int32_t requestedValue, llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, int lineNumber) const |
Set the current error information associated with this sensor. More... | |
virtual void | SetWPIError (llvm::StringRef errorMessage, Error::Code code, llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, int lineNumber) const |
Set the current error information associated with this sensor. More... | |
virtual void | CloneError (const ErrorBase &rhs) const |
virtual void | ClearError () const |
Clear the current error information associated with this sensor. | |
virtual bool | StatusIsFatal () const |
Check if the current error code represents a fatal error. More... | |
Additional Inherited Members | |
![]() | |
enum | WaitResult { kTimeout = 0x0, kRisingEdge = 0x1, kFallingEdge = 0x100, kBoth = 0x101 } |
![]() | |
static int | GetDefaultSolenoidModule () |
static bool | CheckSolenoidModule (int moduleNumber) |
Check that the solenoid module number is valid. More... | |
static bool | CheckDigitalChannel (int channel) |
Check that the digital channel number is valid. More... | |
static bool | CheckRelayChannel (int channel) |
Check that the relay channel number is valid. More... | |
static bool | CheckPWMChannel (int channel) |
Check that the digital channel number is valid. More... | |
static bool | CheckAnalogInputChannel (int channel) |
Check that the analog input number is value. More... | |
static bool | CheckAnalogOutputChannel (int channel) |
Check that the analog output number is valid. More... | |
static bool | CheckSolenoidChannel (int channel) |
Verify that the solenoid channel number is within limits. More... | |
static bool | CheckPDPChannel (int channel) |
Verify that the power distribution channel number is within limits. More... | |
![]() | |
static void | SetGlobalError (Error::Code code, llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, int lineNumber) |
static void | SetGlobalWPIError (llvm::StringRef errorMessage, llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, int lineNumber) |
static Error & | GetGlobalError () |
Retrieve the current global error. | |
![]() | |
static const int | kDigitalChannels = HAL_GetNumDigitalChannels() |
static const int | kAnalogInputs = HAL_GetNumAnalogInputs() |
static const int | kAnalogOutputs |
static const int | kSolenoidChannels = HAL_GetNumSolenoidChannels() |
static const int | kSolenoidModules = HAL_GetNumPCMModules() |
static const int | kPwmChannels = HAL_GetNumPWMChannels() |
static const int | kRelayChannels = HAL_GetNumRelayHeaders() |
static const int | kPDPChannels = HAL_GetNumPDPChannels() |
![]() | |
void | AllocateInterrupts (bool watcher) |
![]() | |
HAL_InterruptHandle | m_interrupt = HAL_kInvalidHandle |
![]() | |
Error | m_error |
![]() | |
static hal::priority_mutex | _globalErrorMutex |
static Error | _globalError |
DigitalSource Interface.
The DigitalSource represents all the possible inputs for a counter or a quadrature encoder. The source may be either a digital input or an analog input. If the caller just provides a channel, then a digital input will be constructed and freed when finished for the source. The source can either be a digital input or analog trigger but not both.