Now you can download a copy of these docs so you can use them offline! Download now
InterruptableSensorBase Class Referenceabstract
Inheritance diagram for InterruptableSensorBase:
Collaboration diagram for InterruptableSensorBase:

Public Member Functions

virtual void RequestInterrupts (tInterruptHandler handler, void *param)=0
 Asynchronus handler version.
 
virtual void RequestInterrupts ()=0
 Synchronus Wait version.
 
virtual void CancelInterrupts ()
 Free up the underlying chipobject functions. More...
 
virtual void WaitForInterrupt (float timeout)
 Synchronus version. More...
 
virtual void EnableInterrupts ()
 Enable interrupts - after finishing setup. More...
 
virtual void DisableInterrupts ()
 Disable, but don't deallocate. More...
 
virtual double ReadInterruptTimestamp ()
 Return the timestamp for the interrupt that occurred. More...
 
- Public Member Functions inherited from SensorBase
 SensorBase ()
 
virtual ~SensorBase ()
 
- Public Member Functions inherited from ErrorBase
virtual ErrorGetError ()
 Retrieve the current error. Get the current error information associated with this sensor.
 
virtual const ErrorGetError () const
 
virtual void SetErrnoError (const char *contextMessage, const char *filename, const char *function, uint32_t 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, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) const
 Set the current error information associated from the nivision Imaq API. More...
 
virtual void SetError (Error::Code code, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) const
 Set the current error information associated with this sensor. More...
 
virtual void SetWPIError (const char *errorMessage, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) const
 Set the current error information associated with this sensor. More...
 
virtual void CloneError (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...
 

Protected Member Functions

void AllocateInterrupts (bool watcher)
 
- Protected Member Functions inherited from SensorBase
void AddToSingletonList ()
 
- Protected Member Functions inherited from ErrorBase
 ErrorBase ()
 Initialize the instance status to 0 for now.
 

Protected Attributes

tInterrupt * m_interrupt
 
tInterruptManager * m_manager
 
uint32_t m_interruptIndex
 
- Protected Attributes inherited from ErrorBase
Error m_error
 

Additional Inherited Members

- Static Public Member Functions inherited from SensorBase
static void DeleteSingletons ()
 
static uint32_t GetDefaultAnalogModule ()
 
static uint32_t GetDefaultDigitalModule ()
 
static uint32_t GetDefaultSolenoidModule ()
 
static bool CheckAnalogModule (uint8_t moduleNumber)
 
static bool CheckDigitalModule (uint8_t moduleNumber)
 
static bool CheckPWMModule (uint8_t moduleNumber)
 
static bool CheckRelayModule (uint8_t moduleNumber)
 
static bool CheckSolenoidModule (uint8_t moduleNumber)
 
static bool CheckDigitalChannel (uint32_t channel)
 
static bool CheckRelayChannel (uint32_t channel)
 
static bool CheckPWMChannel (uint32_t channel)
 
static bool CheckAnalogChannel (uint32_t channel)
 
static bool CheckSolenoidChannel (uint32_t channel)
 
- Static Public Member Functions inherited from ErrorBase
static void SetGlobalError (Error::Code code, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber)
 
static void SetGlobalWPIError (const char *errorMessage, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber)
 
static ErrorGetGlobalError ()
 
- Static Public Attributes inherited from SensorBase
static const uint32_t kSystemClockTicksPerMicrosecond = 40
 
static const uint32_t kDigitalChannels = 14
 
static const uint32_t kAnalogChannels = 8
 
static const uint32_t kAnalogModules = 2
 
static const uint32_t kDigitalModules = 2
 
static const uint32_t kSolenoidChannels = 8
 
static const uint32_t kSolenoidModules = 2
 
static const uint32_t kPwmChannels = 10
 
static const uint32_t kRelayChannels = 8
 
static const uint32_t kChassisSlots = 8
 
- Static Protected Attributes inherited from ErrorBase
static SEM_ID _globalErrorMutex = semMCreate(SEM_Q_PRIORITY | SEM_DELETE_SAFE | SEM_INVERSION_SAFE)
 
static Error _globalError
 

Detailed Description

Definition at line 13 of file InterruptableSensorBase.h.

Member Function Documentation

void InterruptableSensorBase::CancelInterrupts ( )
virtual

Free up the underlying chipobject functions.

Cancel interrupts on this device. This deallocates all the chipobject structures and disables any interrupts.

Definition at line 37 of file InterruptableSensorBase.cpp.

void InterruptableSensorBase::DisableInterrupts ( )
virtual

Disable, but don't deallocate.

Disable Interrupts without without deallocating structures.

Definition at line 77 of file InterruptableSensorBase.cpp.

void InterruptableSensorBase::EnableInterrupts ( )
virtual

Enable interrupts - after finishing setup.

Enable interrupts to occur on this input. Interrupts are disabled when the RequestInterrupt call is made. This gives time to do the setup of the other options before starting to field interrupts.

Definition at line 65 of file InterruptableSensorBase.cpp.

double InterruptableSensorBase::ReadInterruptTimestamp ( )
virtual

Return the timestamp for the interrupt that occurred.

Return the timestamp for the interrupt that occurred most recently. This is in the same time domain as GetClock().

Returns
Timestamp in seconds since boot.

Definition at line 91 of file InterruptableSensorBase.cpp.

void InterruptableSensorBase::WaitForInterrupt ( float  timeout)
virtual

Synchronus version.

In synchronous mode, wait for the defined interrupt to occur.

Parameters
timeoutTimeout in seconds

Definition at line 51 of file InterruptableSensorBase.cpp.


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

Generated on Sat Apr 26 2014 12:26:46 for WPILibC++ by doxygen 1.8.6