libnifalcon  1.0.1
Public Types | Public Member Functions | Protected Attributes | List of all members
libnifalcon::FalconGrip Class Referenceabstract

#include <FalconGrip.h>

+ Inheritance diagram for libnifalcon::FalconGrip:
+ Collaboration diagram for libnifalcon::FalconGrip:

Public Types

enum  { FALCON_GRIP_INDEX_OUT_OF_RANGE = 4000 }
 

Public Member Functions

 FalconGrip (int32_t digital_inputs, int32_t analog_inputs)
 
virtual ~FalconGrip ()
 
virtual bool runGripLoop (int size, const uint8_t *data)=0
 
unsigned int getNumDigitalInputs () const
 
unsigned int getNumAnalogInputs () const
 
bool getDigitalInput (unsigned int index)
 
unsigned int getDigitalInputs () const
 
int getAnalogInput (unsigned int index)
 
- Public Member Functions inherited from libnifalcon::FalconCore
 FalconCore ()
 
virtual ~FalconCore ()
 
int getErrorCode ()
 

Protected Attributes

unsigned int m_numDigitalInputs
 
unsigned int m_numAnalogInputs
 
unsigned int m_digitalInputs
 
int m_analogInputs [128]
 
- Protected Attributes inherited from libnifalcon::FalconCore
int m_errorCode
 

Detailed Description

Grip classes define how we deal with whatever grip might appear on the falcon. The base class tries to be as generic as possible, allowing for up to 32 digital inputs and 128 analog inputs.

Member Enumeration Documentation

anonymous enum
Enumerator
FALCON_GRIP_INDEX_OUT_OF_RANGE 

Returned if button index requested is out of range for the current grip

Constructor & Destructor Documentation

libnifalcon::FalconGrip::FalconGrip ( int32_t  digital_inputs,
int32_t  analog_inputs 
)
inline

Constructor. Defines the grip capabilities.

Parameters
digital_inputsNumber of digital inputs on the grip
analog_inputsNumber of analog inputs on the grip
virtual libnifalcon::FalconGrip::~FalconGrip ( )
inlinevirtual

Destructor

Member Function Documentation

int libnifalcon::FalconGrip::getAnalogInput ( unsigned int  index)
inline

Returns the value of the requested analog input

Parameters
indexIndex of the analog input to return
Returns
Value of analog input requested, (0 if index is out of range)
bool libnifalcon::FalconGrip::getDigitalInput ( unsigned int  index)
inline

Returns the value of the requested digital input

Parameters
indexIndex of the digital input to return
Returns
true if digital input requested is high, false otherwise (or if index is out of range)
unsigned int libnifalcon::FalconGrip::getDigitalInputs ( ) const
inline

Returns the bitfield used to store all digital inputs

Returns
Bitfield of digital inputs
unsigned int libnifalcon::FalconGrip::getNumAnalogInputs ( ) const
inline

Returns the number of analog inputs available on the current grip

Returns
Number of analog inputs available on the grip
unsigned int libnifalcon::FalconGrip::getNumDigitalInputs ( ) const
inline

Returns the number of digital inputs available on the current grip

Returns
Number of digital inputs available on the grip
virtual bool libnifalcon::FalconGrip::runGripLoop ( int  size,
const uint8_t *  data 
)
pure virtual

Parses input/output for grip related data (button states, etc...)

Parameters
sizeAmount of data in the buffer being passed in
dataBuffer of button data
Returns
true if parsing successful, false otherwise

Implemented in libnifalcon::FalconGripFourButton.

Member Data Documentation

int libnifalcon::FalconGrip::m_analogInputs[128]
protected

Array of analog input values

unsigned int libnifalcon::FalconGrip::m_digitalInputs
protected

Bitfield to hold digital input values

unsigned int libnifalcon::FalconGrip::m_numAnalogInputs
protected

Number of analog inputs available on the grip

unsigned int libnifalcon::FalconGrip::m_numDigitalInputs
protected

Number of digital inputs available on the grip


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