JNI implementation for Java

Normal vs
This commit is contained in:
charris
2014-01-06 09:27:51 -05:00
parent 4297b2bc9d
commit b62b606110
185 changed files with 6316 additions and 1106 deletions

View File

@@ -0,0 +1,19 @@
#ifndef __AICalibration_h__
#define __AICalibration_h__
#include <stdint.h>
#ifdef __cplusplus
extern "C"
{
#endif
uint32_t FRC_NetworkCommunication_nAICalibration_getLSBWeight(const uint32_t aiSystemIndex, const uint32_t channel, int32_t *status);
int32_t FRC_NetworkCommunication_nAICalibration_getOffset(const uint32_t aiSystemIndex, const uint32_t channel, int32_t *status);
#ifdef __cplusplus
}
#endif
#endif // __AICalibration_h__

View File

@@ -0,0 +1,61 @@
// CANInterfacePlugin.h
//
// Defines the API for building a CAN Interface Plugin to support
// PWM-cable-free CAN motor control on FRC robots. This allows you
// to connect any CAN interface to the secure Jaguar CAN driver.
//
#ifndef __CANInterfacePlugin_h__
#define __CANInterfacePlugin_h__
#include <stdint.h>
#define CAN_IS_FRAME_REMOTE 0x80000000
#define CAN_MESSAGE_ID_MASK 0x1FFFFFFF
class CANInterfacePlugin
{
public:
CANInterfacePlugin() {}
virtual ~CANInterfacePlugin() {}
/**
* This entry-point of the CANInterfacePlugin is passed a message that the driver needs to send to
* a device on the CAN bus.
*
* This function may be called from multiple contexts and must therefore be reentrant.
*
* @param messageID The 29-bit CAN message ID in the lsbs. The msb can indicate a remote frame.
* @param data A pointer to a buffer containing between 0 and 8 bytes to send with the message. May be NULL if dataSize is 0.
* @param dataSize The number of bytes to send with the message.
* @return Return any error code. On success return 0.
*/
virtual int32_t sendMessage(uint32_t messageID, const uint8_t *data, uint8_t dataSize) = 0;
/**
* This entry-point of the CANInterfacePlugin is passed buffers which should be populated with
* any received messages from devices on the CAN bus.
*
* This function is always called by a single task in the Jaguar driver, so it need not be reentrant.
*
* This function is expected to block for some period of time waiting for a message from the CAN bus.
* It may timeout periodically (returning non-zero to indicate no message was populated) to allow for
* shutdown and unloading of the plugin.
*
* @param messageID A reference to be populated with a received 29-bit CAN message ID in the lsbs.
* @param data A pointer to a buffer of 8 bytes to be populated with data received with the message.
* @param dataSize A reference to be populated with the size of the data received (0 - 8 bytes).
* @return This should return 0 if a message was populated, non-0 if no message was not populated.
*/
virtual int32_t receiveMessage(uint32_t &messageID, uint8_t *data, uint8_t &dataSize) = 0;
};
/**
* This function allows you to register a CANInterfacePlugin to provide access a CAN bus.
*
* @param interface A pointer to an object that inherits from CANInterfacePlugin and implements
* the pure virtual interface. If NULL, unregister the current plugin.
*/
void FRC_NetworkCommunication_JaguarCANDriver_registerInterface(CANInterfacePlugin* interface);
#endif // __CANInterfacePlugin_h__

View File

@@ -0,0 +1,193 @@
/*************************************************************
* NOTICE
*
* These are the only externally exposed functions to the
* NetworkCommunication library
*
* This is an implementation of FRC Spec for Comm Protocol
* Revision 4.5, June 30, 2008
*
* Copyright (c) National Instruments 2008. All Rights Reserved.
*
*************************************************************/
#ifndef __FRC_COMM_H__
#define __FRC_COMM_H__
#ifdef SIMULATION
#include <vxWorks_compat.h>
#define EXPORT_FUNC __declspec(dllexport) __cdecl
#else
#if defined(__vxworks)
#include <vxWorks.h>
#define EXPORT_FUNC
#else
#include <stdint.h>
#include <pthread.h>
#define EXPORT_FUNC
#endif
#endif
// Commandeer some bytes at the end for advanced I/O feedback.
#define IO_CONFIG_DATA_SIZE 32
#define SYS_STATUS_DATA_SIZE 44
#define USER_STATUS_DATA_SIZE (984 - IO_CONFIG_DATA_SIZE - SYS_STATUS_DATA_SIZE)
#define USER_DS_LCD_DATA_SIZE 128
struct FRCCommonControlData{
uint16_t packetIndex;
union {
uint8_t control;
#ifndef __vxworks
struct {
uint8_t checkVersions :1;
uint8_t test :1;
uint8_t resync : 1;
uint8_t fmsAttached:1;
uint8_t autonomous : 1;
uint8_t enabled : 1;
uint8_t notEStop : 1;
uint8_t reset : 1;
};
#else
struct {
uint8_t reset : 1;
uint8_t notEStop : 1;
uint8_t enabled : 1;
uint8_t autonomous : 1;
uint8_t fmsAttached:1;
uint8_t resync : 1;
uint8_t test :1;
uint8_t checkVersions :1;
};
#endif
};
uint8_t dsDigitalIn;
uint16_t teamID;
char dsID_Alliance;
char dsID_Position;
union {
int8_t stick0Axes[6];
struct {
int8_t stick0Axis1;
int8_t stick0Axis2;
int8_t stick0Axis3;
int8_t stick0Axis4;
int8_t stick0Axis5;
int8_t stick0Axis6;
};
};
uint16_t stick0Buttons; // Left-most 4 bits are unused
union {
int8_t stick1Axes[6];
struct {
int8_t stick1Axis1;
int8_t stick1Axis2;
int8_t stick1Axis3;
int8_t stick1Axis4;
int8_t stick1Axis5;
int8_t stick1Axis6;
};
};
uint16_t stick1Buttons; // Left-most 4 bits are unused
union {
int8_t stick2Axes[6];
struct {
int8_t stick2Axis1;
int8_t stick2Axis2;
int8_t stick2Axis3;
int8_t stick2Axis4;
int8_t stick2Axis5;
int8_t stick2Axis6;
};
};
uint16_t stick2Buttons; // Left-most 4 bits are unused
union {
int8_t stick3Axes[6];
struct {
int8_t stick3Axis1;
int8_t stick3Axis2;
int8_t stick3Axis3;
int8_t stick3Axis4;
int8_t stick3Axis5;
int8_t stick3Axis6;
};
};
uint16_t stick3Buttons; // Left-most 4 bits are unused
//Analog inputs are 10 bit right-justified
uint16_t analog1;
uint16_t analog2;
uint16_t analog3;
uint16_t analog4;
uint64_t cRIOChecksum;
uint32_t FPGAChecksum0;
uint32_t FPGAChecksum1;
uint32_t FPGAChecksum2;
uint32_t FPGAChecksum3;
char versionData[8];
};
#define kFRC_NetworkCommunication_DynamicType_DSEnhancedIO_Input 17
#define kFRC_NetworkCommunication_DynamicType_DSEnhancedIO_Output 18
#define kFRC_NetworkCommunication_DynamicType_Kinect_Header 19
#define kFRC_NetworkCommunication_DynamicType_Kinect_Extra1 20
#define kFRC_NetworkCommunication_DynamicType_Kinect_Vertices1 21
#define kFRC_NetworkCommunication_DynamicType_Kinect_Extra2 22
#define kFRC_NetworkCommunication_DynamicType_Kinect_Vertices2 23
#define kFRC_NetworkCommunication_DynamicType_Kinect_Joystick 24
#define kFRC_NetworkCommunication_DynamicType_Kinect_Custom 25
extern "C" {
#ifndef SIMULATION
void EXPORT_FUNC getFPGAHardwareVersion(uint16_t *fpgaVersion, uint32_t *fpgaRevision);
#endif
int EXPORT_FUNC getCommonControlData(FRCCommonControlData *data, int wait_ms);
int EXPORT_FUNC getRecentCommonControlData(FRCCommonControlData *commonData, int wait_ms);
int EXPORT_FUNC getRecentStatusData(uint8_t *batteryInt, uint8_t *batteryDec, uint8_t *dsDigitalOut, int wait_ms);
int EXPORT_FUNC getDynamicControlData(uint8_t type, char *dynamicData, int32_t maxLength, int wait_ms);
int EXPORT_FUNC setStatusData(float battery, uint8_t dsDigitalOut, uint8_t updateNumber,
const char *userDataHigh, int userDataHighLength,
const char *userDataLow, int userDataLowLength, int wait_ms);
int EXPORT_FUNC setStatusDataFloatAsInt(int battery, uint8_t dsDigitalOut, uint8_t updateNumber,
const char *userDataHigh, int userDataHighLength,
const char *userDataLow, int userDataLowLength, int wait_ms);
int EXPORT_FUNC setErrorData(const char *errors, int errorsLength, int wait_ms);
int EXPORT_FUNC setUserDsLcdData(const char *userDsLcdData, int userDsLcdDataLength, int wait_ms);
int EXPORT_FUNC overrideIOConfig(const char *ioConfig, int wait_ms);
#ifdef SIMULATION
void EXPORT_FUNC setNewDataSem(HANDLE);
#else
# if defined (__vxworks)
void EXPORT_FUNC setNewDataSem(SEM_ID);
void EXPORT_FUNC setResyncSem(SEM_ID);
# else
void EXPORT_FUNC setNewDataSem(pthread_mutex_t *);
void EXPORT_FUNC setResyncSem(pthread_mutex_t *);
# endif
void EXPORT_FUNC signalResyncActionDone(void);
#endif
// this uint32_t is really a LVRefNum
void EXPORT_FUNC setNewDataOccurRef(uint32_t refnum);
#ifndef SIMULATION
void EXPORT_FUNC setResyncOccurRef(uint32_t refnum);
#endif
void EXPORT_FUNC FRC_NetworkCommunication_getVersionString(char *version);
void EXPORT_FUNC FRC_NetworkCommunication_observeUserProgramStarting(void);
void EXPORT_FUNC FRC_NetworkCommunication_observeUserProgramDisabled(void);
void EXPORT_FUNC FRC_NetworkCommunication_observeUserProgramAutonomous(void);
void EXPORT_FUNC FRC_NetworkCommunication_observeUserProgramTeleop(void);
void EXPORT_FUNC FRC_NetworkCommunication_observeUserProgramTest(void);
};
#endif

View File

@@ -0,0 +1,37 @@
// JaguarCANDriver.h
//
// Defines the API for building a CAN Interface Plugin to support
// PWM-cable-free CAN motor control on FRC robots. This allows you
// to connect any CAN interface to the secure Jaguar CAN driver.
//
#ifndef __JaguarCANDriver_h__
#define __JaguarCANDriver_h__
#if defined(__vxworks)
#include <vxWorks.h>
#else
#include <stdint.h>
#include <pthread.h>
#endif
#ifdef __cplusplus
extern "C"
{
#endif
void FRC_NetworkCommunication_JaguarCANDriver_sendMessage(uint32_t messageID, const uint8_t *data, uint8_t dataSize, int32_t *status);
void FRC_NetworkCommunication_JaguarCANDriver_receiveMessage(uint32_t *messageID, uint8_t *data, uint8_t *dataSize, uint32_t timeoutMs, int32_t *status);
int32_t FRC_NetworkCommunication_JaguarCANDriver_receiveMessageStart(uint32_t messageID, uint32_t occurRefNum, uint32_t timeoutMs, int32_t *status);
#if defined (__vxworks)
int32_t FRC_NetworkCommunication_JaguarCANDriver_receiveMessageStart_sem(uint32_t messageID, uint32_t semaphoreID, uint32_t timeoutMs, int32_t *status);
#else
int32_t FRC_NetworkCommunication_JaguarCANDriver_receiveMessageStart_mutex(uint32_t messageID, pthread_mutex_t *mutex, uint32_t timeoutMs, int32_t *status);
#endif
void FRC_NetworkCommunication_JaguarCANDriver_receiveMessageComplete(uint32_t *messageID, uint8_t *data, uint8_t *dataSize, int32_t *status);
#ifdef __cplusplus
}
#endif
#endif // __JaguarCANDriver_h__

View File

@@ -0,0 +1,52 @@
#ifndef __LoadOut_h__
#define __LoadOut_h__
#ifdef SIMULATION
#include <vxWorks_compat.h>
#define EXPORT_FUNC __declspec(dllexport) __cdecl
#elif defined (__vxworks)
#include <vxWorks.h>
#define EXPORT_FUNC
#else
#include <stdint.h>
#define EXPORT_FUNC
#endif
#define kMaxModuleNumber 2
namespace nLoadOut
{
typedef enum {
kModuleType_Unknown = 0x00,
kModuleType_Analog = 0x01,
kModuleType_Digital = 0x02,
kModuleType_Solenoid = 0x03,
} tModuleType;
bool EXPORT_FUNC getModulePresence(tModuleType moduleType, uint8_t moduleNumber);
typedef enum {
kTargetClass_Unknown = 0x00,
kTargetClass_FRC1 = 0x10,
kTargetClass_FRC2 = 0x20,
kTargetClass_FRC3 = 0x30,
kTargetClass_RoboRIO = 0x40,
kTargetClass_FRC2_Analog = kTargetClass_FRC2 | kModuleType_Analog,
kTargetClass_FRC2_Digital = kTargetClass_FRC2 | kModuleType_Digital,
kTargetClass_FRC2_Solenoid = kTargetClass_FRC2 | kModuleType_Solenoid,
kTargetClass_FamilyMask = 0xF0,
kTargetClass_ModuleMask = 0x0F,
} tTargetClass;
tTargetClass EXPORT_FUNC getTargetClass();
}
#ifdef __cplusplus
extern "C" {
#endif
uint32_t EXPORT_FUNC FRC_NetworkCommunication_nLoadOut_getModulePresence(uint32_t moduleType, uint8_t moduleNumber);
uint32_t EXPORT_FUNC FRC_NetworkCommunication_nLoadOut_getTargetClass();
#ifdef __cplusplus
}
#endif
#endif // __LoadOut_h__

View File

@@ -0,0 +1,139 @@
#ifndef __UsageReporting_h__
#define __UsageReporting_h__
#ifdef SIMULATION
#include <vxWorks_compat.h>
#define EXPORT_FUNC __declspec(dllexport) __cdecl
#elif defined (__vxworks)
#include <vxWorks.h>
#define EXPORT_FUNC
#else
#include <stdint.h>
#include <stdlib.h>
#define EXPORT_FUNC
#endif
#define kUsageReporting_version 1
namespace nUsageReporting
{
typedef enum
{
kResourceType_Controller,
kResourceType_Module,
kResourceType_Language,
kResourceType_CANPlugin,
kResourceType_Accelerometer,
kResourceType_ADXL345,
kResourceType_AnalogChannel,
kResourceType_AnalogTrigger,
kResourceType_AnalogTriggerOutput,
kResourceType_CANJaguar,
kResourceType_Compressor,
kResourceType_Counter,
kResourceType_Dashboard,
kResourceType_DigitalInput,
kResourceType_DigitalOutput,
kResourceType_DriverStationCIO,
kResourceType_DriverStationEIO,
kResourceType_DriverStationLCD,
kResourceType_Encoder,
kResourceType_GearTooth,
kResourceType_Gyro,
kResourceType_I2C,
kResourceType_Framework,
kResourceType_Jaguar,
kResourceType_Joystick,
kResourceType_Kinect,
kResourceType_KinectStick,
kResourceType_PIDController,
kResourceType_Preferences,
kResourceType_PWM,
kResourceType_Relay,
kResourceType_RobotDrive,
kResourceType_SerialPort,
kResourceType_Servo,
kResourceType_Solenoid,
kResourceType_SPI,
kResourceType_Task,
kResourceType_Ultrasonic,
kResourceType_Victor,
kResourceType_Button,
kResourceType_Command,
kResourceType_AxisCamera,
kResourceType_PCVideoServer,
kResourceType_SmartDashboard,
kResourceType_Talon,
kResourceType_HiTechnicColorSensor,
kResourceType_HiTechnicAccel,
kResourceType_HiTechnicCompass,
kResourceType_SRF08,
} tResourceType;
typedef enum
{
kLanguage_LabVIEW = 1,
kLanguage_CPlusPlus = 2,
kLanguage_Java = 3,
kLanguage_Python = 4,
kCANPlugin_BlackJagBridge = 1,
kCANPlugin_2CAN = 2,
kFramework_Iterative = 1,
kFramework_Simple = 2,
kRobotDrive_ArcadeStandard = 1,
kRobotDrive_ArcadeButtonSpin = 2,
kRobotDrive_ArcadeRatioCurve = 3,
kRobotDrive_Tank = 4,
kRobotDrive_MecanumPolar = 5,
kRobotDrive_MecanumCartesian = 6,
kDriverStationCIO_Analog = 1,
kDriverStationCIO_DigitalIn = 2,
kDriverStationCIO_DigitalOut = 3,
kDriverStationEIO_Acceleration = 1,
kDriverStationEIO_AnalogIn = 2,
kDriverStationEIO_AnalogOut = 3,
kDriverStationEIO_Button = 4,
kDriverStationEIO_LED = 5,
kDriverStationEIO_DigitalIn = 6,
kDriverStationEIO_DigitalOut = 7,
kDriverStationEIO_FixedDigitalOut = 8,
kDriverStationEIO_PWM = 9,
kDriverStationEIO_Encoder = 10,
kDriverStationEIO_TouchSlider = 11,
kADXL345_SPI = 1,
kADXL345_I2C = 2,
kCommand_Scheduler = 1,
kSmartDashboard_Instance = 1,
} tInstances;
/**
* Report the usage of a resource of interest.
*
* @param resource one of the values in the tResourceType above (max value 51).
* @param instanceNumber an index that identifies the resource instance.
* @param context an optional additional context number for some cases (such as module number). Set to 0 to omit.
* @param feature a string to be included describing features in use on a specific resource. Setting the same resource more than once allows you to change the feature string.
*/
uint32_t EXPORT_FUNC report(tResourceType resource, uint8_t instanceNumber, uint8_t context = 0, const char *feature = NULL);
}
#ifdef __cplusplus
extern "C" {
#endif
uint32_t EXPORT_FUNC FRC_NetworkCommunication_nUsageReporting_report(uint8_t resource, uint8_t instanceNumber, uint8_t context, const char *feature);
#ifdef __cplusplus
}
#endif
#endif // __UsageReporting_h__

View File

@@ -0,0 +1,61 @@
// CANInterfacePlugin.h
//
// Defines the API for building a CAN Interface Plugin to support
// PWM-cable-free CAN motor control on FRC robots. This allows you
// to connect any CAN interface to the secure Jaguar CAN driver.
//
#ifndef __CANInterfacePlugin_h__
#define __CANInterfacePlugin_h__
#include <stdint.h>
#define CAN_IS_FRAME_REMOTE 0x80000000
#define CAN_MESSAGE_ID_MASK 0x1FFFFFFF
class CANInterfacePlugin
{
public:
CANInterfacePlugin() {}
virtual ~CANInterfacePlugin() {}
/**
* This entry-point of the CANInterfacePlugin is passed a message that the driver needs to send to
* a device on the CAN bus.
*
* This function may be called from multiple contexts and must therefore be reentrant.
*
* @param messageID The 29-bit CAN message ID in the lsbs. The msb can indicate a remote frame.
* @param data A pointer to a buffer containing between 0 and 8 bytes to send with the message. May be NULL if dataSize is 0.
* @param dataSize The number of bytes to send with the message.
* @return Return any error code. On success return 0.
*/
virtual int32_t sendMessage(uint32_t messageID, const uint8_t *data, uint8_t dataSize) = 0;
/**
* This entry-point of the CANInterfacePlugin is passed buffers which should be populated with
* any received messages from devices on the CAN bus.
*
* This function is always called by a single task in the Jaguar driver, so it need not be reentrant.
*
* This function is expected to block for some period of time waiting for a message from the CAN bus.
* It may timeout periodically (returning non-zero to indicate no message was populated) to allow for
* shutdown and unloading of the plugin.
*
* @param messageID A reference to be populated with a received 29-bit CAN message ID in the lsbs.
* @param data A pointer to a buffer of 8 bytes to be populated with data received with the message.
* @param dataSize A reference to be populated with the size of the data received (0 - 8 bytes).
* @return This should return 0 if a message was populated, non-0 if no message was not populated.
*/
virtual int32_t receiveMessage(uint32_t &messageID, uint8_t *data, uint8_t &dataSize) = 0;
};
/**
* This function allows you to register a CANInterfacePlugin to provide access a CAN bus.
*
* @param interface A pointer to an object that inherits from CANInterfacePlugin and implements
* the pure virtual interface. If NULL, unregister the current plugin.
*/
void FRC_NetworkCommunication_JaguarCANDriver_registerInterface(CANInterfacePlugin* interface);
#endif // __CANInterfacePlugin_h__

View File

@@ -0,0 +1,193 @@
/*************************************************************
* NOTICE
*
* These are the only externally exposed functions to the
* NetworkCommunication library
*
* This is an implementation of FRC Spec for Comm Protocol
* Revision 4.5, June 30, 2008
*
* Copyright (c) National Instruments 2008. All Rights Reserved.
*
*************************************************************/
#ifndef __FRC_COMM_H__
#define __FRC_COMM_H__
#ifdef SIMULATION
#include <vxWorks_compat.h>
#define EXPORT_FUNC __declspec(dllexport) __cdecl
#else
#if defined(__vxworks)
#include <vxWorks.h>
#define EXPORT_FUNC
#else
#include <stdint.h>
#include <pthread.h>
#define EXPORT_FUNC
#endif
#endif
// Commandeer some bytes at the end for advanced I/O feedback.
#define IO_CONFIG_DATA_SIZE 32
#define SYS_STATUS_DATA_SIZE 44
#define USER_STATUS_DATA_SIZE (984 - IO_CONFIG_DATA_SIZE - SYS_STATUS_DATA_SIZE)
#define USER_DS_LCD_DATA_SIZE 128
struct FRCCommonControlData{
uint16_t packetIndex;
union {
uint8_t control;
#ifndef __vxworks
struct {
uint8_t checkVersions :1;
uint8_t test :1;
uint8_t resync : 1;
uint8_t fmsAttached:1;
uint8_t autonomous : 1;
uint8_t enabled : 1;
uint8_t notEStop : 1;
uint8_t reset : 1;
};
#else
struct {
uint8_t reset : 1;
uint8_t notEStop : 1;
uint8_t enabled : 1;
uint8_t autonomous : 1;
uint8_t fmsAttached:1;
uint8_t resync : 1;
uint8_t test :1;
uint8_t checkVersions :1;
};
#endif
};
uint8_t dsDigitalIn;
uint16_t teamID;
char dsID_Alliance;
char dsID_Position;
union {
int8_t stick0Axes[6];
struct {
int8_t stick0Axis1;
int8_t stick0Axis2;
int8_t stick0Axis3;
int8_t stick0Axis4;
int8_t stick0Axis5;
int8_t stick0Axis6;
};
};
uint16_t stick0Buttons; // Left-most 4 bits are unused
union {
int8_t stick1Axes[6];
struct {
int8_t stick1Axis1;
int8_t stick1Axis2;
int8_t stick1Axis3;
int8_t stick1Axis4;
int8_t stick1Axis5;
int8_t stick1Axis6;
};
};
uint16_t stick1Buttons; // Left-most 4 bits are unused
union {
int8_t stick2Axes[6];
struct {
int8_t stick2Axis1;
int8_t stick2Axis2;
int8_t stick2Axis3;
int8_t stick2Axis4;
int8_t stick2Axis5;
int8_t stick2Axis6;
};
};
uint16_t stick2Buttons; // Left-most 4 bits are unused
union {
int8_t stick3Axes[6];
struct {
int8_t stick3Axis1;
int8_t stick3Axis2;
int8_t stick3Axis3;
int8_t stick3Axis4;
int8_t stick3Axis5;
int8_t stick3Axis6;
};
};
uint16_t stick3Buttons; // Left-most 4 bits are unused
//Analog inputs are 10 bit right-justified
uint16_t analog1;
uint16_t analog2;
uint16_t analog3;
uint16_t analog4;
uint64_t cRIOChecksum;
uint32_t FPGAChecksum0;
uint32_t FPGAChecksum1;
uint32_t FPGAChecksum2;
uint32_t FPGAChecksum3;
char versionData[8];
};
#define kFRC_NetworkCommunication_DynamicType_DSEnhancedIO_Input 17
#define kFRC_NetworkCommunication_DynamicType_DSEnhancedIO_Output 18
#define kFRC_NetworkCommunication_DynamicType_Kinect_Header 19
#define kFRC_NetworkCommunication_DynamicType_Kinect_Extra1 20
#define kFRC_NetworkCommunication_DynamicType_Kinect_Vertices1 21
#define kFRC_NetworkCommunication_DynamicType_Kinect_Extra2 22
#define kFRC_NetworkCommunication_DynamicType_Kinect_Vertices2 23
#define kFRC_NetworkCommunication_DynamicType_Kinect_Joystick 24
#define kFRC_NetworkCommunication_DynamicType_Kinect_Custom 25
extern "C" {
#ifndef SIMULATION
void EXPORT_FUNC getFPGAHardwareVersion(uint16_t *fpgaVersion, uint32_t *fpgaRevision);
#endif
int EXPORT_FUNC getCommonControlData(FRCCommonControlData *data, int wait_ms);
int EXPORT_FUNC getRecentCommonControlData(FRCCommonControlData *commonData, int wait_ms);
int EXPORT_FUNC getRecentStatusData(uint8_t *batteryInt, uint8_t *batteryDec, uint8_t *dsDigitalOut, int wait_ms);
int EXPORT_FUNC getDynamicControlData(uint8_t type, char *dynamicData, int32_t maxLength, int wait_ms);
int EXPORT_FUNC setStatusData(float battery, uint8_t dsDigitalOut, uint8_t updateNumber,
const char *userDataHigh, int userDataHighLength,
const char *userDataLow, int userDataLowLength, int wait_ms);
int EXPORT_FUNC setStatusDataFloatAsInt(int battery, uint8_t dsDigitalOut, uint8_t updateNumber,
const char *userDataHigh, int userDataHighLength,
const char *userDataLow, int userDataLowLength, int wait_ms);
int EXPORT_FUNC setErrorData(const char *errors, int errorsLength, int wait_ms);
int EXPORT_FUNC setUserDsLcdData(const char *userDsLcdData, int userDsLcdDataLength, int wait_ms);
int EXPORT_FUNC overrideIOConfig(const char *ioConfig, int wait_ms);
#ifdef SIMULATION
void EXPORT_FUNC setNewDataSem(HANDLE);
#else
# if defined (__vxworks)
void EXPORT_FUNC setNewDataSem(SEM_ID);
void EXPORT_FUNC setResyncSem(SEM_ID);
# else
void EXPORT_FUNC setNewDataSem(pthread_mutex_t *);
void EXPORT_FUNC setResyncSem(pthread_mutex_t *);
# endif
void EXPORT_FUNC signalResyncActionDone(void);
#endif
// this uint32_t is really a LVRefNum
void EXPORT_FUNC setNewDataOccurRef(uint32_t refnum);
#ifndef SIMULATION
void EXPORT_FUNC setResyncOccurRef(uint32_t refnum);
#endif
void EXPORT_FUNC FRC_NetworkCommunication_getVersionString(char *version);
void EXPORT_FUNC FRC_NetworkCommunication_observeUserProgramStarting(void);
void EXPORT_FUNC FRC_NetworkCommunication_observeUserProgramDisabled(void);
void EXPORT_FUNC FRC_NetworkCommunication_observeUserProgramAutonomous(void);
void EXPORT_FUNC FRC_NetworkCommunication_observeUserProgramTeleop(void);
void EXPORT_FUNC FRC_NetworkCommunication_observeUserProgramTest(void);
};
#endif

View File

@@ -0,0 +1,37 @@
// JaguarCANDriver.h
//
// Defines the API for building a CAN Interface Plugin to support
// PWM-cable-free CAN motor control on FRC robots. This allows you
// to connect any CAN interface to the secure Jaguar CAN driver.
//
#ifndef __JaguarCANDriver_h__
#define __JaguarCANDriver_h__
#if defined(__vxworks)
#include <vxWorks.h>
#else
#include <stdint.h>
#include <pthread.h>
#endif
#ifdef __cplusplus
extern "C"
{
#endif
void FRC_NetworkCommunication_JaguarCANDriver_sendMessage(uint32_t messageID, const uint8_t *data, uint8_t dataSize, int32_t *status);
void FRC_NetworkCommunication_JaguarCANDriver_receiveMessage(uint32_t *messageID, uint8_t *data, uint8_t *dataSize, uint32_t timeoutMs, int32_t *status);
int32_t FRC_NetworkCommunication_JaguarCANDriver_receiveMessageStart(uint32_t messageID, uint32_t occurRefNum, uint32_t timeoutMs, int32_t *status);
#if defined (__vxworks)
int32_t FRC_NetworkCommunication_JaguarCANDriver_receiveMessageStart_sem(uint32_t messageID, uint32_t semaphoreID, uint32_t timeoutMs, int32_t *status);
#else
int32_t FRC_NetworkCommunication_JaguarCANDriver_receiveMessageStart_mutex(uint32_t messageID, pthread_mutex_t *mutex, uint32_t timeoutMs, int32_t *status);
#endif
void FRC_NetworkCommunication_JaguarCANDriver_receiveMessageComplete(uint32_t *messageID, uint8_t *data, uint8_t *dataSize, int32_t *status);
#ifdef __cplusplus
}
#endif
#endif // __JaguarCANDriver_h__

View File

@@ -0,0 +1,139 @@
#ifndef __UsageReporting_h__
#define __UsageReporting_h__
#ifdef SIMULATION
#include <vxWorks_compat.h>
#define EXPORT_FUNC __declspec(dllexport) __cdecl
#elif defined (__vxworks)
#include <vxWorks.h>
#define EXPORT_FUNC
#else
#include <stdint.h>
#include <stdlib.h>
#define EXPORT_FUNC
#endif
#define kUsageReporting_version 1
namespace nUsageReporting
{
typedef enum
{
kResourceType_Controller,
kResourceType_Module,
kResourceType_Language,
kResourceType_CANPlugin,
kResourceType_Accelerometer,
kResourceType_ADXL345,
kResourceType_AnalogChannel,
kResourceType_AnalogTrigger,
kResourceType_AnalogTriggerOutput,
kResourceType_CANJaguar,
kResourceType_Compressor,
kResourceType_Counter,
kResourceType_Dashboard,
kResourceType_DigitalInput,
kResourceType_DigitalOutput,
kResourceType_DriverStationCIO,
kResourceType_DriverStationEIO,
kResourceType_DriverStationLCD,
kResourceType_Encoder,
kResourceType_GearTooth,
kResourceType_Gyro,
kResourceType_I2C,
kResourceType_Framework,
kResourceType_Jaguar,
kResourceType_Joystick,
kResourceType_Kinect,
kResourceType_KinectStick,
kResourceType_PIDController,
kResourceType_Preferences,
kResourceType_PWM,
kResourceType_Relay,
kResourceType_RobotDrive,
kResourceType_SerialPort,
kResourceType_Servo,
kResourceType_Solenoid,
kResourceType_SPI,
kResourceType_Task,
kResourceType_Ultrasonic,
kResourceType_Victor,
kResourceType_Button,
kResourceType_Command,
kResourceType_AxisCamera,
kResourceType_PCVideoServer,
kResourceType_SmartDashboard,
kResourceType_Talon,
kResourceType_HiTechnicColorSensor,
kResourceType_HiTechnicAccel,
kResourceType_HiTechnicCompass,
kResourceType_SRF08,
} tResourceType;
typedef enum
{
kLanguage_LabVIEW = 1,
kLanguage_CPlusPlus = 2,
kLanguage_Java = 3,
kLanguage_Python = 4,
kCANPlugin_BlackJagBridge = 1,
kCANPlugin_2CAN = 2,
kFramework_Iterative = 1,
kFramework_Simple = 2,
kRobotDrive_ArcadeStandard = 1,
kRobotDrive_ArcadeButtonSpin = 2,
kRobotDrive_ArcadeRatioCurve = 3,
kRobotDrive_Tank = 4,
kRobotDrive_MecanumPolar = 5,
kRobotDrive_MecanumCartesian = 6,
kDriverStationCIO_Analog = 1,
kDriverStationCIO_DigitalIn = 2,
kDriverStationCIO_DigitalOut = 3,
kDriverStationEIO_Acceleration = 1,
kDriverStationEIO_AnalogIn = 2,
kDriverStationEIO_AnalogOut = 3,
kDriverStationEIO_Button = 4,
kDriverStationEIO_LED = 5,
kDriverStationEIO_DigitalIn = 6,
kDriverStationEIO_DigitalOut = 7,
kDriverStationEIO_FixedDigitalOut = 8,
kDriverStationEIO_PWM = 9,
kDriverStationEIO_Encoder = 10,
kDriverStationEIO_TouchSlider = 11,
kADXL345_SPI = 1,
kADXL345_I2C = 2,
kCommand_Scheduler = 1,
kSmartDashboard_Instance = 1,
} tInstances;
/**
* Report the usage of a resource of interest.
*
* @param resource one of the values in the tResourceType above (max value 51).
* @param instanceNumber an index that identifies the resource instance.
* @param context an optional additional context number for some cases (such as module number). Set to 0 to omit.
* @param feature a string to be included describing features in use on a specific resource. Setting the same resource more than once allows you to change the feature string.
*/
uint32_t EXPORT_FUNC report(tResourceType resource, uint8_t instanceNumber, uint8_t context = 0, const char *feature = NULL);
}
#ifdef __cplusplus
extern "C" {
#endif
uint32_t EXPORT_FUNC FRC_NetworkCommunication_nUsageReporting_report(uint8_t resource, uint8_t instanceNumber, uint8_t context, const char *feature);
#ifdef __cplusplus
}
#endif
#endif // __UsageReporting_h__

View File

@@ -0,0 +1,10 @@
#ifndef __I2C_LIB_H__
#define __I2C_LIB_H__
int i2clib_open(const char *device);
void i2clib_close(int handle);
int i2clib_read(int handle, uint8_t dev_addr, char *recv_buf, int32_t recv_size);
int i2clib_write(int handle, uint8_t dev_addr, const char *send_buf, int32_t send_size);
int i2clib_writeread(int handle, uint8_t dev_addr, const char *send_buf, int32_t send_size, char *recv_buf, int32_t recv_size);
#endif /* __I2C_LIB_H__ */

View File

@@ -0,0 +1,13 @@
#ifndef __SPI_LIB_H__
#define __SPI_LIB_H__
int spilib_open(const char *device);
void spilib_close(int handle);
int spilib_setspeed(int handle, uint32_t speed);
int spilib_setbitsperword(int handle, uint8_t bpw);
int spilib_setopts(int handle, int msb_first, int sample_on_trailing, int clk_idle_high);
int spilib_read(int handle, char *recv_buf, int32_t size);
int spilib_write(int handle, const char *send_buf, int32_t size);
int spilib_writeread(int handle, const char *send_buf, char *recv_buf, int32_t size);
#endif /* __SPI_LIB_H__ */

View File

@@ -0,0 +1,106 @@
#ifndef __LOG_H__
#define __LOG_H__
#include <sstream>
#include <iomanip>
#include <string>
#include <stdio.h>
#include <sys/time.h>
inline std::string NowTime();
enum TLogLevel {logNONE, logERROR, logWARNING, logINFO, logDEBUG, logDEBUG1, logDEBUG2, logDEBUG3, logDEBUG4};
class Log
{
public:
Log();
virtual ~Log();
std::ostringstream& Get(TLogLevel level = logINFO);
public:
static TLogLevel& ReportingLevel();
static std::string ToString(TLogLevel level);
static TLogLevel FromString(const std::string& level);
protected:
std::ostringstream os;
private:
Log(const Log&);
Log& operator =(const Log&);
};
inline Log::Log()
{
}
inline std::ostringstream& Log::Get(TLogLevel level)
{
os << "- " << NowTime();
os << " " << ToString(level) << ": ";
os << std::string(level > logDEBUG ? level - logDEBUG : 0, '\t');
return os;
}
inline Log::~Log()
{
os << std::endl;
fprintf(stderr, "%s", os.str().c_str());
fflush(stderr);
}
inline TLogLevel& Log::ReportingLevel()
{
static TLogLevel reportingLevel = logDEBUG4;
return reportingLevel;
}
inline std::string Log::ToString(TLogLevel level)
{
static const char* const buffer[] = {"NONE", "ERROR", "WARNING", "INFO", "DEBUG", "DEBUG1", "DEBUG2", "DEBUG3", "DEBUG4"};
return buffer[level];
}
inline TLogLevel Log::FromString(const std::string& level)
{
if (level == "DEBUG4")
return logDEBUG4;
if (level == "DEBUG3")
return logDEBUG3;
if (level == "DEBUG2")
return logDEBUG2;
if (level == "DEBUG1")
return logDEBUG1;
if (level == "DEBUG")
return logDEBUG;
if (level == "INFO")
return logINFO;
if (level == "WARNING")
return logWARNING;
if (level == "ERROR")
return logERROR;
if (level == "NONE")
return logNONE;
Log().Get(logWARNING) << "Unknown logging level '" << level << "'. Using INFO level as default.";
return logINFO;
}
typedef Log FILELog;
#define FILE_LOG(level) \
if (level > FILELog::ReportingLevel()) ; \
else Log().Get(level)
inline std::string NowTime()
{
char buffer[11];
time_t t;
time(&t);
tm * r = gmtime(&t);
strftime(buffer, sizeof(buffer), "%H:%M:%S", r);
struct timeval tv;
gettimeofday(&tv, 0);
char result[100] = {0};
sprintf(result, "%s.%03ld", buffer, (long)tv.tv_usec / 1000);
return result;
}
#endif //__LOG_H__

View File

@@ -1,4 +1,6 @@
<project>
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>edu.wpi.first.wpilib</groupId>
<artifactId>aggregator-pom</artifactId>

View File

@@ -7,9 +7,6 @@
<packaging>pom</packaging>
<version>0.1.0-SNAPSHOT</version>
<properties>
<local-repository>C:/Users/wpilibj-buildmaster/maven-repository</local-repository>
</properties>
<profiles>
<profile>
<id>jenkins</id>

View File

@@ -6,7 +6,7 @@
#include "ADXL345_I2C.h"
#include "DigitalModule.h"
#include "NetworkCommunication/UsageReporting.h"
//#include "NetworkCommunication/UsageReporting.h"
#include "I2C.h"
const uint8_t ADXL345_I2C::kAddress;
@@ -34,7 +34,7 @@ ADXL345_I2C::ADXL345_I2C(uint8_t moduleNumber, ADXL345_I2C::DataFormat_Range ran
// Specify the data format to read
m_i2c->Write(kDataFormatRegister, kDataFormat_FullRes | (uint8_t)range);
nUsageReporting::report(nUsageReporting::kResourceType_ADXL345, nUsageReporting::kADXL345_I2C, moduleNumber - 1);
HALReport(HALUsageReporting::kResourceType_ADXL345, HALUsageReporting::kADXL345_I2C, moduleNumber - 1);
}
}

View File

@@ -2,141 +2,15 @@
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>edu.wpi.first.wpilib</groupId>
<artifactId>WPILibJ</artifactId>
<packaging>jar</packaging>
<groupId>edu.wpi.first.wpilibj</groupId>
<artifactId>wpilibj</artifactId>
<packaging>pom</packaging>
<version>0.1.0-SNAPSHOT</version>
<parent>
<groupId>edu.wpi.first.wpilib.templates.athena</groupId>
<artifactId>library-jar</artifactId>
<version>0.1.0-SNAPSHOT</version>
</parent>
<repositories>
<repository>
<id>sonatype</id>
<name>Sonatype OSS Snapshots Repository</name>
<url>http://oss.sonatype.org/content/groups/public</url>
</repository>
<!-- For old snapshots, please use groupId `com.jnaerator` and the following repo -->
<repository>
<id>nativelibs4java-repo</id>
<url>http://nativelibs4java.sourceforge.net/maven</url>
</repository>
<repository>
<id>WPILib Repository</id>
<url>http://frcbuilder.wpi.edu:8348/</url>
</repository>
</repositories>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<excludes>
<exclude>edu/wpi/first/wpilibj/image/</exclude>
<exclude>edu/wpi/first/wpilibj/camera/</exclude>
<exclude>edu/wpi/first/wpilibj/visa/</exclude>
<exclude>edu/wpi/first/wpilibj/SerialPort.java</exclude>
<exclude>edu/wpi/first/wpilibj/Kinect.java</exclude>
<exclude>edu/wpi/first/wpilibj/KinectStick.java</exclude>
<exclude>edu/wpi/first/wpilibj/DriverStationEnhancedIO.java</exclude>
<exclude>edu/wpi/first/wpilibj/buttons/DigitalIOButton.java</exclude>
<exclude>edu/wpi/first/wpilibj/buttons/AnalogIOButton.java</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.8</version>
<executions>
<execution>
<id>fetch-sunspotfrcsdk-dependencies</id>
<phase>compile</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>edu.wpi.first.wpilib.hal</groupId>
<artifactId>libHALAthenaJava</artifactId>
<version>0.1.0-SNAPSHOT</version>
<type>so</type>
<destFileName>libHALAthenaJava.so</destFileName>
<outputDirectory>${project.build.directory}/classes/linux-arm</outputDirectory>
</artifactItem>
</artifactItems>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>true</overWriteSnapshots>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<sourceFileExcludes>
<exclude>edu/wpi/first/wpilibj/image/</exclude>
<exclude>edu/wpi/first/wpilibj/camera/</exclude>
<exclude>edu/wpi/first/wpilibj/visa/</exclude>
<exclude>edu/wpi/first/wpilibj/SerialPort.java</exclude>
<exclude>edu/wpi/first/wpilibj/Kinect.java</exclude>
<exclude>edu/wpi/first/wpilibj/KinectStick.java</exclude>
<exclude>edu/wpi/first/wpilibj/DriverStationEnhancedIO.java</exclude>
<exclude>edu/wpi/first/wpilibj/buttons/DigitalIOButton.java</exclude>
<exclude>edu/wpi/first/wpilibj/buttons/AnalogIOButton.java</exclude>
</sourceFileExcludes>
</configuration>
</plugin>
</plugins>
</build>
<modules>
<module>wpilibJava</module>
<module>wpilibJavaJNI</module>
<module>wpilibJavaFinal</module>
</modules>
<dependencies>
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
<version>4.0.0</version>
</dependency>
<dependency>
<groupId>com.nativelibs4java</groupId>
<artifactId>jnaerator-runtime</artifactId>
<version>0.12-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>edu.wpi.first.wpilib.networktables.java</groupId>
<artifactId>NetworkTables</artifactId>
<version>0.1.0-SNAPSHOT</version>
</dependency>
<!-- Add fake dependencies to inform Maven of the correct
order it should build projects in during a multi-module build.
This list should match the list in the invocation of
maven-dependency-plugin:copy above.
It may be possible to avoid this duplication by using the
maven-assembly-plugin instead.-->
<dependency>
<groupId>edu.wpi.first.wpilib.hal</groupId>
<artifactId>libHALAthenaJava</artifactId>
<version>0.1.0-SNAPSHOT</version>
<type>so</type>
</dependency>
</dependencies>
</project>

View File

@@ -1,477 +0,0 @@
package edu.wpi.first.wpilibj.can;
import com.ochafik.lang.jnaerator.runtime.LibraryExtractor;
import com.ochafik.lang.jnaerator.runtime.MangledFunctionMapper;
import com.sun.jna.Library;
import com.sun.jna.Native;
import com.sun.jna.NativeLibrary;
import com.sun.jna.Pointer;
import com.sun.jna.ptr.IntByReference;
import java.nio.ByteBuffer;
import java.nio.IntBuffer;
/**
* JNA Wrapper for library <b>CAN</b><br>
* This file was autogenerated by <a href="http://jnaerator.googlecode.com/">JNAerator</a>,<br>
* a tool written by <a href="http://ochafik.com/">Olivier Chafik</a> that <a href="http://code.google.com/p/jnaerator/wiki/CreditsAndLicense">uses a few opensource projects.</a>.<br>
* For help, please visit <a href="http://nativelibs4java.googlecode.com/">NativeLibs4Java</a> , <a href="http://rococoa.dev.java.net/">Rococoa</a>, or <a href="http://jna.dev.java.net/">JNA</a>.
*/
public class CANLibrary implements Library {
public static final String JNA_LIBRARY_NAME = LibraryExtractor.getLibraryPath("FRC_NetworkCommunication", true, CANLibrary.class);
public static final NativeLibrary JNA_NATIVE_LIB = NativeLibrary.getInstance(CANLibrary.JNA_LIBRARY_NAME, MangledFunctionMapper.DEFAULT_OPTIONS);
static {
Native.register(CANLibrary.JNA_LIBRARY_NAME);
}
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_LIMIT_REV = 0x02;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_CFG_MAX_VOUT = ((0x00020000 | 0x02000000 | 0x00001c00) | (7 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_CANERR_B0 = 30;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD_DIS = ((0x00020000 | 0x02000000 | 0x00000400) | (1 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_ACCEL = 0x05000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_FAULT = ((0x00020000 | 0x02000000 | 0x00001400) | (7 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_FIRMVER = 0x00000200;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ICTRL_EN = ((0x00020000 | 0x02000000 | 0x00001000) | (0 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_ENUMERATE = 0x00000240;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD_EN = ((0x00020000 | 0x02000000 | 0x00000400) | (0 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_CFG_LIMIT_REV = ((0x00020000 | 0x02000000 | 0x00001c00) | (6 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_POS_B2 = 11;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_POS_B3 = 12;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VCOMP_EN = ((0x00020000 | 0x02000000 | 0x00000800) | (0 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_POS_B0 = 9;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_POS_B1 = 10;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_HWVER = ((0x00020000 | 0x1f000000) | (5 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_FAULT_ILIMIT = 0x01;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ICTRL_DC = ((0x00020000 | 0x02000000 | 0x00001000) | (5 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VOLT = (0x00020000 | 0x02000000 | 0x00000000);
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_API_MC_VCOMP = 0x00000800;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_END = 0;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_CFG_LIMIT_FWD = ((0x00020000 | 0x02000000 | 0x00001c00) | (5 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_M = 0x1f000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_API_MC_ICTRL = 0x00001000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_API_MC_CFG = 0x00001c00;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_MFR_DEKA = 0x00030000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_SYSRST = 0x00000040;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_REF_QUAD_ENCODER = 0x03;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SYNC_PEND_NOW = 0;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_CMODE_CURRENT = 0x01;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_TEMP = ((0x00020000 | 0x02000000 | 0x00001400) | (3 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD_DC = ((0x00020000 | 0x02000000 | 0x00000400) | (5 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_API_MC_POS = 0x00000c00;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_LIMIT_SFWD = 0x04;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ICTRL_DIS = ((0x00020000 | 0x02000000 | 0x00001000) | (1 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VOLT_SET = ((0x00020000 | 0x02000000 | 0x00000000) | (2 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_HEARTBEAT = 0x00000140;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_FAULT_CURRENT = 0x01;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_GYRO = 0x04000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_FAULT_TLIMIT = 0x02;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_MFR_S = 16;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD_T_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000400) | (10 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_MFR_M = 0x00ff0000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_CMODE_POS = 0x03;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_REF_POT = 0x01;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_HWVER_UNKNOWN = 0x00;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_CFG_BRAKE_COAST = ((0x00020000 | 0x02000000 | 0x00001c00) | (3 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_HWVER_JAG_1_0 = 0x01;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DEVNO_BCAST = 0x00000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VOLT_T_SET = ((0x00020000 | 0x02000000 | 0x00000000) | (5 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_LIMIT_STKY_SREV = 0x80;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ICTRL_IC = ((0x00020000 | 0x02000000 | 0x00001000) | (4 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ICTRL_T_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00001000) | (9 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_FAULT_COMM = 0x10;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_SPD_B2 = 15;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_SPD_B1 = 14;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_STKY_FLT_CLR = 21;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_SPD_B3 = 16;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000400) | (11 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_STATUS_MFG_S = 16;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_LIMIT = ((0x00020000 | 0x02000000 | 0x00001400) | (6 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VOLT_EN = ((0x00020000 | 0x02000000 | 0x00000000) | (0 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VOLT_RAMP_DIS = 0;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_TEMP_B0 = 7;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_TEMP_B1 = 8;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS_IC = ((0x00020000 | 0x02000000 | 0x00000c00) | (4 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_MOTOR = 0x02000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD_T_EN = ((0x00020000 | 0x02000000 | 0x00000400) | (7 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DEVNO_M = 0x0000003f;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_VOLTBUS_B1 = 4;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_UPD_PING = ((0x00020000 | 0x1f000000) | (0 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS_T_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000c00) | (10 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DEVNO_S = 0;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_TRUST_HEARTBEAT = ((0x00020000 | 0x1f000000) | (13 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_VOLTBUS_B0 = 3;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_SPD_B0 = 13;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_CFG = (0x00020000 | 0x02000000 | 0x00001c00);
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_FLT_COUNT_COMM = 28;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_SYSHALT = 0x00000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_UPD_DOWNLOAD = ((0x00020000 | 0x1f000000) | (1 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_CMODE = ((0x00020000 | 0x02000000 | 0x00001400) | (9 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VCOMP_IN_RAMP = ((0x00020000 | 0x02000000 | 0x00000800) | (3 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_FAULT_VLIMIT = 0x04;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_LIMIT_SREV = 0x08;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_S = 24;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_FLT_COUNT_VOLTBUS = 26;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_API_MC_STATUS = 0x00001400;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VOLT_T_EN = ((0x00020000 | 0x02000000 | 0x00000000) | (4 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_VOLTBUS = ((0x00020000 | 0x02000000 | 0x00001400) | (1 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_UPD = (0x00020000 | 0x1f000000);
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_UPD_REQUEST = ((0x00020000 | 0x1f000000) | (6 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_API_MC_VOLTAGE = 0x00000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_PER_EN_S3 = ((0x00020000 | 0x02000000 | 0x00001800) | (3 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_PER_EN_S2 = ((0x00020000 | 0x02000000 | 0x00001800) | (2 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_API_MC_PSTAT = 0x00001800;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_CANERR_B1 = 31;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_PER_EN_S1 = ((0x00020000 | 0x02000000 | 0x00001800) | (1 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_REF_ENCODER = 0x00;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_PER_EN_S0 = ((0x00020000 | 0x02000000 | 0x00001800) | (0 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_CURRENT = ((0x00020000 | 0x02000000 | 0x00001400) | (2 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS_SET = ((0x00020000 | 0x02000000 | 0x00000c00) | (2 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_LIMIT_STKY_FWD = 0x10;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ICTRL = (0x00020000 | 0x02000000 | 0x00001000);
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_HWVER_JAG_2_0 = 0x02;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_STATUS_MFG_M = 0x00ff0000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_LIMIT_CLR = 18;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_CFG_POT_TURNS = ((0x00020000 | 0x02000000 | 0x00001c00) | (2 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS_REF = ((0x00020000 | 0x02000000 | 0x00000c00) | (6 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD_PC = ((0x00020000 | 0x02000000 | 0x00000400) | (3 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_VOUT = ((0x00020000 | 0x02000000 | 0x00001400) | (10 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_SYSRESUME = 0x00000280;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_UNTRUST_EN = ((0x00020000 | 0x1f000000) | (11 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_CANSTS = 29;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS_DC = ((0x00020000 | 0x02000000 | 0x00000c00) | (5 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_POS = ((0x00020000 | 0x02000000 | 0x00001400) | (4 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD_SET = ((0x00020000 | 0x02000000 | 0x00000400) | (2 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_FULL_M = 0x1fffffff;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_SPD = ((0x00020000 | 0x02000000 | 0x00001400) | (5 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_STKY_FLT_NCLR = 20;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS = (0x00020000 | 0x02000000 | 0x00001400);
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_TRUST_EN = ((0x00020000 | 0x1f000000) | (12 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ICTRL_T_SET = ((0x00020000 | 0x02000000 | 0x00001000) | (7 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_STATUS_CODE_M = 0x0000ffff;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_STATUS_CODE_S = 0;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS_T_EN = ((0x00020000 | 0x02000000 | 0x00000c00) | (7 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT = (0x00020000 | 0x02000000 | 0x00001800);
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_FAULT = 19;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_FLT_COUNT_GATE = 27;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ICTRL_T_EN = ((0x00020000 | 0x02000000 | 0x00001000) | (6 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_DEVQUERY = 0x000000c0;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_USONIC = 0x06000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_CMODE_VCOMP = 0x04;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD_T_SET = ((0x00020000 | 0x02000000 | 0x00000400) | (8 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS_EN = ((0x00020000 | 0x02000000 | 0x00000c00) | (0 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VOLT_DIS = ((0x00020000 | 0x02000000 | 0x00000000) | (1 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_LIMIT_FWD = 0x01;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VCOMP_DIS = ((0x00020000 | 0x02000000 | 0x00000800) | (1 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_REF_INV_ENCODER = 0x02;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_CFG_NUM_BRUSHES = ((0x00020000 | 0x02000000 | 0x00001c00) | (0 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_RELAY = 0x03000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_DEVASSIGN = 0x00000080;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VOLT_T_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000000) | (7 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_API_MC_SPD = 0x00000400;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_CFG_ENC_LINES = ((0x00020000 | 0x02000000 | 0x00001c00) | (1 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_REF_NONE = 0xff;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_FAULT_VBUS = 0x04;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VOLT_SET_RAMP = ((0x00020000 | 0x02000000 | 0x00000000) | (3 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD_REF = ((0x00020000 | 0x02000000 | 0x00000400) | (6 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_POWER = ((0x00020000 | 0x02000000 | 0x00001400) | (8 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_VOLTOUT_B1 = 2;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VCOMP_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000800) | (9 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_VOLTOUT_B0 = 1;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_CFG_LIMIT_MODE = ((0x00020000 | 0x02000000 | 0x00001c00) | (4 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_VOUT_B1 = 23;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_UPD_SEND_DATA = ((0x00020000 | 0x1f000000) | (2 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_FLT_COUNT_CURRENT = 24;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_VOUT_B0 = 22;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_CFG_S0 = ((0x00020000 | 0x02000000 | 0x00001800) | (4 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_LIMIT_NCLR = 17;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_CFG_S1 = ((0x00020000 | 0x02000000 | 0x00001800) | (5 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_CFG_S2 = ((0x00020000 | 0x02000000 | 0x00001800) | (6 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_CFG_S3 = ((0x00020000 | 0x02000000 | 0x00001800) | (7 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VCOMP_SET = ((0x00020000 | 0x02000000 | 0x00000800) | (2 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_UPDATE = 0x000001c0;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_CFG_FAULT_TIME = ((0x00020000 | 0x02000000 | 0x00001c00) | (8 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_VOLTOUT = ((0x00020000 | 0x02000000 | 0x00001400) | (0 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ICTRL_SET = ((0x00020000 | 0x02000000 | 0x00001000) | (2 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_M = 0x0000ffc0;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_CMODE_SPEED = 0x02;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_CLASS_M = 0x0000fc00;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_DATA_S3 = ((0x00020000 | 0x02000000 | 0x00001800) | (11 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_S = 6;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_FLT_COUNT = ((0x00020000 | 0x02000000 | 0x00001400) | (12 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_DATA_S2 = ((0x00020000 | 0x02000000 | 0x00001800) | (10 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_DATA_S1 = ((0x00020000 | 0x02000000 | 0x00001800) | (9 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_PSTAT_DATA_S0 = ((0x00020000 | 0x02000000 | 0x00001800) | (8 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ICTRL_PC = ((0x00020000 | 0x02000000 | 0x00001000) | (3 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS_PC = ((0x00020000 | 0x02000000 | 0x00000c00) | (3 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_MFR_LM = 0x00020000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS_DIS = ((0x00020000 | 0x02000000 | 0x00000c00) | (1 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_BCAST = 0x00000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_CMODE_VOLT = 0x00;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_STATUS_DTYPE_S = 24;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000c00) | (11 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_STATUS_DTYPE_M = 0x1f000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_FAULT_GATE_DRIVE = 0x08;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_LIMIT_STKY_REV = 0x20;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_ROBOT = 0x01000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VCOMP = (0x00020000 | 0x02000000 | 0x00000800);
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_API_MC_ACK = 0x00002000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_UPD_ACK = ((0x00020000 | 0x1f000000) | (4 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VCOMP_COMP_RAMP = ((0x00020000 | 0x02000000 | 0x00000800) | (4 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VCOMP_T_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000800) | (8 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS = (0x00020000 | 0x02000000 | 0x00000c00);
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_SYNC = 0x00000180;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ICTRL_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00001000) | (10 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_CURRENT_B1 = 6;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD = (0x00020000 | 0x02000000 | 0x00000400);
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_CURRENT_B0 = 5;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_UPDATE = 0x1f000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_SPD_IC = ((0x00020000 | 0x02000000 | 0x00000400) | (4 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_ACK = (0x00020000 | 0x02000000 | 0x00002000);
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VCOMP_T_SET = ((0x00020000 | 0x02000000 | 0x00000800) | (6 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_FAULT_TEMP = 0x02;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_PSTAT_FLT_COUNT_TEMP = 25;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VOLT_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000000) | (8 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_GEART = 0x07000000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_MFR_NI = 0x00010000;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_POS_T_SET = ((0x00020000 | 0x02000000 | 0x00000c00) | (8 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_STATUS_STKY_FLT = ((0x00020000 | 0x02000000 | 0x00001400) | (11 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_UPD_RESET = ((0x00020000 | 0x1f000000) | (3 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int CAN_MSGID_API_ID_M = 0x000003c0;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_API_VCOMP_T_EN = ((0x00020000 | 0x02000000 | 0x00000800) | (5 << 6));
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/can_proto.h</i> */
public static final int LM_STATUS_LIMIT_STKY_SFWD = 0x40;
/**
* Original signature : <code>void FRC_NetworkCommunication_JaguarCANDriver_sendMessage(uint32_t, const uint8_t*, uint8_t, int32_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/JaguarCANDriver.h:7</i><br>
* @deprecated use the safer methods {@link #FRC_NetworkCommunication_JaguarCANDriver_sendMessage(int, byte[], byte, java.nio.IntBuffer)} and {@link #FRC_NetworkCommunication_JaguarCANDriver_sendMessage(int, com.sun.jna.Pointer, byte, com.sun.jna.ptr.IntByReference)} instead
*/
@Deprecated
public static native void FRC_NetworkCommunication_JaguarCANDriver_sendMessage(int messageID, Pointer data, byte dataSize, IntByReference status);
/**
* Original signature : <code>void FRC_NetworkCommunication_JaguarCANDriver_sendMessage(uint32_t, const uint8_t*, uint8_t, int32_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/JaguarCANDriver.h:7</i>
*/
public static native void FRC_NetworkCommunication_JaguarCANDriver_sendMessage(int messageID, byte data[], byte dataSize, IntBuffer status);
/**
* Original signature : <code>void FRC_NetworkCommunication_JaguarCANDriver_receiveMessage(uint32_t*, uint8_t*, uint8_t*, uint32_t, int32_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/JaguarCANDriver.h:8</i><br>
* @deprecated use the safer methods {@link #FRC_NetworkCommunication_JaguarCANDriver_receiveMessage(java.nio.IntBuffer, java.nio.ByteBuffer, java.nio.ByteBuffer, int, java.nio.IntBuffer)} and {@link #FRC_NetworkCommunication_JaguarCANDriver_receiveMessage(com.sun.jna.ptr.IntByReference, com.sun.jna.Pointer, com.sun.jna.Pointer, int, com.sun.jna.ptr.IntByReference)} instead
*/
@Deprecated
public static native void FRC_NetworkCommunication_JaguarCANDriver_receiveMessage(IntByReference messageID, Pointer data, Pointer dataSize, int timeoutMs, IntByReference status);
/**
* Original signature : <code>void FRC_NetworkCommunication_JaguarCANDriver_receiveMessage(uint32_t*, uint8_t*, uint8_t*, uint32_t, int32_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/CAN/JaguarCANDriver.h:8</i>
*/
public static native void FRC_NetworkCommunication_JaguarCANDriver_receiveMessage(IntBuffer messageID, ByteBuffer data, ByteBuffer dataSize, int timeoutMs, IntBuffer status);
}

View File

@@ -1,489 +0,0 @@
package edu.wpi.first.wpilibj.communication;
import com.ochafik.lang.jnaerator.runtime.LibraryExtractor;
import com.ochafik.lang.jnaerator.runtime.MangledFunctionMapper;
import com.sun.jna.Library;
import com.sun.jna.Native;
import com.sun.jna.NativeLibrary;
import com.sun.jna.Pointer;
import com.sun.jna.PointerType;
import com.sun.jna.ptr.IntByReference;
import com.sun.jna.ptr.ShortByReference;
import java.nio.ByteBuffer;
import java.nio.IntBuffer;
import java.nio.ShortBuffer;
/**
* JNA Wrapper for library <b>FRC_NetworkCommunications</b><br>
* This file was autogenerated by <a href="http://jnaerator.googlecode.com/">JNAerator</a>,<br>
* a tool written by <a href="http://ochafik.com/">Olivier Chafik</a> that <a href="http://code.google.com/p/jnaerator/wiki/CreditsAndLicense">uses a few opensource projects.</a>.<br>
* For help, please visit <a href="http://nativelibs4java.googlecode.com/">NativeLibs4Java</a> , <a href="http://rococoa.dev.java.net/">Rococoa</a>, or <a href="http://jna.dev.java.net/">JNA</a>.
*/
public class FRC_NetworkCommunicationsLibrary implements Library {
public static final String JNA_LIBRARY_NAME = LibraryExtractor.getLibraryPath("FRC_NetworkCommunication", true, FRC_NetworkCommunicationsLibrary.class);
public static final NativeLibrary JNA_NATIVE_LIB = NativeLibrary.getInstance(FRC_NetworkCommunicationsLibrary.JNA_LIBRARY_NAME, MangledFunctionMapper.DEFAULT_OPTIONS);
static {
Native.register(FRC_NetworkCommunicationsLibrary.JNA_LIBRARY_NAME);
}
/**
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h</i><br>
* enum values
*/
public static interface tModuleType {
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:8</i> */
public static final int kModuleType_Unknown = 0x00;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:9</i> */
public static final int kModuleType_Analog = 0x01;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:10</i> */
public static final int kModuleType_Digital = 0x02;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:11</i> */
public static final int kModuleType_Solenoid = 0x03;
};
/**
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h</i><br>
* enum values
*/
public static interface tTargetClass {
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:15</i> */
public static final int kTargetClass_Unknown = 0x00;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:16</i> */
public static final int kTargetClass_FRC1 = 0x10;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:17</i> */
public static final int kTargetClass_FRC2 = 0x20;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:18</i> */
public static final int kTargetClass_FRC2_Analog = (int)FRC_NetworkCommunicationsLibrary.tTargetClass.kTargetClass_FRC2 | (int)FRC_NetworkCommunicationsLibrary.tModuleType.kModuleType_Analog;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:19</i> */
public static final int kTargetClass_FRC2_Digital = (int)FRC_NetworkCommunicationsLibrary.tTargetClass.kTargetClass_FRC2 | (int)FRC_NetworkCommunicationsLibrary.tModuleType.kModuleType_Digital;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:20</i> */
public static final int kTargetClass_FRC2_Solenoid = (int)FRC_NetworkCommunicationsLibrary.tTargetClass.kTargetClass_FRC2 | (int)FRC_NetworkCommunicationsLibrary.tModuleType.kModuleType_Solenoid;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:21</i> */
public static final int kTargetClass_FamilyMask = 0xF0;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:22</i> */
public static final int kTargetClass_ModuleMask = 0x0F;
};
/**
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h</i><br>
* enum values
*/
public static interface tResourceType {
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:8</i> */
public static final int kResourceType_Controller = 0;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:9</i> */
public static final int kResourceType_Module = 1;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:10</i> */
public static final int kResourceType_Language = 2;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:11</i> */
public static final int kResourceType_CANPlugin = 3;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:12</i> */
public static final int kResourceType_Accelerometer = 4;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:13</i> */
public static final int kResourceType_ADXL345 = 5;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:14</i> */
public static final int kResourceType_AnalogChannel = 6;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:15</i> */
public static final int kResourceType_AnalogTrigger = 7;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:16</i> */
public static final int kResourceType_AnalogTriggerOutput = 8;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:17</i> */
public static final int kResourceType_CANJaguar = 9;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:18</i> */
public static final int kResourceType_Compressor = 10;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:19</i> */
public static final int kResourceType_Counter = 11;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:20</i> */
public static final int kResourceType_Dashboard = 12;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:21</i> */
public static final int kResourceType_DigitalInput = 13;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:22</i> */
public static final int kResourceType_DigitalOutput = 14;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:23</i> */
public static final int kResourceType_DriverStationCIO = 15;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:24</i> */
public static final int kResourceType_DriverStationEIO = 16;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:25</i> */
public static final int kResourceType_DriverStationLCD = 17;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:26</i> */
public static final int kResourceType_Encoder = 18;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:27</i> */
public static final int kResourceType_GearTooth = 19;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:28</i> */
public static final int kResourceType_Gyro = 20;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:29</i> */
public static final int kResourceType_I2C = 21;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:30</i> */
public static final int kResourceType_Framework = 22;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:31</i> */
public static final int kResourceType_Jaguar = 23;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:32</i> */
public static final int kResourceType_Joystick = 24;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:33</i> */
public static final int kResourceType_Kinect = 25;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:34</i> */
public static final int kResourceType_KinectStick = 26;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:35</i> */
public static final int kResourceType_PIDController = 27;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:36</i> */
public static final int kResourceType_Preferences = 28;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:37</i> */
public static final int kResourceType_PWM = 29;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:38</i> */
public static final int kResourceType_Relay = 30;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:39</i> */
public static final int kResourceType_RobotDrive = 31;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:40</i> */
public static final int kResourceType_SerialPort = 32;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:41</i> */
public static final int kResourceType_Servo = 33;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:42</i> */
public static final int kResourceType_Solenoid = 34;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:43</i> */
public static final int kResourceType_SPI = 35;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:44</i> */
public static final int kResourceType_Task = 36;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:45</i> */
public static final int kResourceType_Ultrasonic = 37;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:46</i> */
public static final int kResourceType_Victor = 38;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:47</i> */
public static final int kResourceType_Button = 39;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:48</i> */
public static final int kResourceType_Command = 40;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:49</i> */
public static final int kResourceType_AxisCamera = 41;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:50</i> */
public static final int kResourceType_PCVideoServer = 42;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:51</i> */
public static final int kResourceType_SmartDashboard = 43;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:52</i> */
public static final int kResourceType_Talon = 44;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:53</i> */
public static final int kResourceType_HiTechnicColorSensor = 45;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:54</i> */
public static final int kResourceType_HiTechnicAccel = 46;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:55</i> */
public static final int kResourceType_HiTechnicCompass = 47;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:56</i> */
public static final int kResourceType_SRF08 = 48;
};
/**
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h</i><br>
* enum values
*/
public static interface tInstances {
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:60</i> */
public static final int kLanguage_LabVIEW = 1;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:61</i> */
public static final int kLanguage_CPlusPlus = 2;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:62</i> */
public static final int kLanguage_Java = 3;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:63</i> */
public static final int kLanguage_Python = 4;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:65</i> */
public static final int kCANPlugin_BlackJagBridge = 1;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:66</i> */
public static final int kCANPlugin_2CAN = 2;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:68</i> */
public static final int kFramework_Iterative = 1;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:69</i> */
public static final int kFramework_Simple = 2;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:71</i> */
public static final int kRobotDrive_ArcadeStandard = 1;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:72</i> */
public static final int kRobotDrive_ArcadeButtonSpin = 2;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:73</i> */
public static final int kRobotDrive_ArcadeRatioCurve = 3;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:74</i> */
public static final int kRobotDrive_Tank = 4;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:75</i> */
public static final int kRobotDrive_MecanumPolar = 5;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:76</i> */
public static final int kRobotDrive_MecanumCartesian = 6;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:78</i> */
public static final int kDriverStationCIO_Analog = 1;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:79</i> */
public static final int kDriverStationCIO_DigitalIn = 2;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:80</i> */
public static final int kDriverStationCIO_DigitalOut = 3;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:82</i> */
public static final int kDriverStationEIO_Acceleration = 1;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:83</i> */
public static final int kDriverStationEIO_AnalogIn = 2;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:84</i> */
public static final int kDriverStationEIO_AnalogOut = 3;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:85</i> */
public static final int kDriverStationEIO_Button = 4;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:86</i> */
public static final int kDriverStationEIO_LED = 5;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:87</i> */
public static final int kDriverStationEIO_DigitalIn = 6;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:88</i> */
public static final int kDriverStationEIO_DigitalOut = 7;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:89</i> */
public static final int kDriverStationEIO_FixedDigitalOut = 8;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:90</i> */
public static final int kDriverStationEIO_PWM = 9;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:91</i> */
public static final int kDriverStationEIO_Encoder = 10;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:92</i> */
public static final int kDriverStationEIO_TouchSlider = 11;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:94</i> */
public static final int kADXL345_SPI = 1;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:95</i> */
public static final int kADXL345_I2C = 2;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:97</i> */
public static final int kCommand_Scheduler = 1;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:99</i> */
public static final int kSmartDashboard_Instance = 1;
};
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int USER_DS_LCD_DATA_SIZE = 128;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int kFRC_NetworkCommunication_DynamicType_Kinect_Custom = 25;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int kFRC_NetworkCommunication_DynamicType_Kinect_Header = 19;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int IO_CONFIG_DATA_SIZE = 32;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h</i> */
public static final int kMaxModuleNumber = 2;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int kFRC_NetworkCommunication_DynamicType_DSEnhancedIO_Output = 18;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int SYS_STATUS_DATA_SIZE = 44;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int kFRC_NetworkCommunication_DynamicType_Kinect_Extra2 = 22;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int kFRC_NetworkCommunication_DynamicType_Kinect_Extra1 = 20;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int kFRC_NetworkCommunication_DynamicType_DSEnhancedIO_Input = 17;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int USER_STATUS_DATA_SIZE = (984 - 32 - 44);
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int kFRC_NetworkCommunication_DynamicType_Kinect_Joystick = 24;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h</i> */
public static final int kUsageReporting_version = 1;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int kFRC_NetworkCommunication_DynamicType_Kinect_Vertices1 = 21;
/** <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h</i> */
public static final int kFRC_NetworkCommunication_DynamicType_Kinect_Vertices2 = 23;
/**
* Original signature : <code>uint32_t FRC_NetworkCommunication_nAICalibration_getLSBWeight(const uint32_t, const uint32_t, int32_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/AICalibration.h:7</i><br>
* @deprecated use the safer methods {@link #FRC_NetworkCommunication_nAICalibration_getLSBWeight(int, int, java.nio.IntBuffer)} and {@link #FRC_NetworkCommunication_nAICalibration_getLSBWeight(int, int, com.sun.jna.ptr.IntByReference)} instead
*/
@Deprecated
public static native int FRC_NetworkCommunication_nAICalibration_getLSBWeight(int aiSystemIndex, int channel, IntByReference status);
/**
* Original signature : <code>uint32_t FRC_NetworkCommunication_nAICalibration_getLSBWeight(const uint32_t, const uint32_t, int32_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/AICalibration.h:7</i>
*/
public static native int FRC_NetworkCommunication_nAICalibration_getLSBWeight(int aiSystemIndex, int channel, IntBuffer status);
/**
* Original signature : <code>int32_t FRC_NetworkCommunication_nAICalibration_getOffset(const uint32_t, const uint32_t, int32_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/AICalibration.h:8</i><br>
* @deprecated use the safer methods {@link #FRC_NetworkCommunication_nAICalibration_getOffset(int, int, java.nio.IntBuffer)} and {@link #FRC_NetworkCommunication_nAICalibration_getOffset(int, int, com.sun.jna.ptr.IntByReference)} instead
*/
@Deprecated
public static native int FRC_NetworkCommunication_nAICalibration_getOffset(int aiSystemIndex, int channel, IntByReference status);
/**
* Original signature : <code>int32_t FRC_NetworkCommunication_nAICalibration_getOffset(const uint32_t, const uint32_t, int32_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/AICalibration.h:8</i>
*/
public static native int FRC_NetworkCommunication_nAICalibration_getOffset(int aiSystemIndex, int channel, IntBuffer status);
/**
* Original signature : <code>uint32_t FRC_NetworkCommunication_nLoadOut_getModulePresence(uint32_t, uint8_t)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:31</i>
*/
public static native int FRC_NetworkCommunication_nLoadOut_getModulePresence(int moduleType, byte moduleNumber);
/**
* Original signature : <code>uint32_t FRC_NetworkCommunication_nLoadOut_getTargetClass()</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/LoadOut.h:32</i>
*/
public static native int FRC_NetworkCommunication_nLoadOut_getTargetClass();
/**
* Original signature : <code>uint32_t FRC_NetworkCommunication_nUsageReporting_report(uint8_t, uint8_t, uint8_t, const char*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:117</i><br>
* @deprecated use the safer methods {@link #FRC_NetworkCommunication_nUsageReporting_report(byte, byte, byte, java.lang.String)} and {@link #FRC_NetworkCommunication_nUsageReporting_report(byte, byte, byte, com.sun.jna.Pointer)} instead
*/
@Deprecated
public static native int FRC_NetworkCommunication_nUsageReporting_report(byte resource, byte instanceNumber, byte context, Pointer feature);
/**
* Original signature : <code>uint32_t FRC_NetworkCommunication_nUsageReporting_report(uint8_t, uint8_t, uint8_t, const char*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/UsageReporting.h:117</i>
*/
public static native int FRC_NetworkCommunication_nUsageReporting_report(byte resource, byte instanceNumber, byte context, String feature);
/**
* Original signature : <code>void getFPGAHardwareVersion(uint16_t*, uint32_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:142</i><br>
* @deprecated use the safer methods {@link #getFPGAHardwareVersion(java.nio.ShortBuffer, java.nio.IntBuffer)} and {@link #getFPGAHardwareVersion(com.sun.jna.ptr.ShortByReference, com.sun.jna.ptr.IntByReference)} instead
*/
@Deprecated
public static native void getFPGAHardwareVersion(ShortByReference fpgaVersion, IntByReference fpgaRevision);
/**
* Original signature : <code>void getFPGAHardwareVersion(uint16_t*, uint32_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:142</i>
*/
public static native void getFPGAHardwareVersion(ShortBuffer fpgaVersion, IntBuffer fpgaRevision);
/**
* Original signature : <code>int getCommonControlData(FRCCommonControlData*, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:144</i>
*/
public static native int getCommonControlData(FRCCommonControlData data, int wait_ms);
/**
* Original signature : <code>int getRecentCommonControlData(FRCCommonControlData*, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:145</i>
*/
public static native int getRecentCommonControlData(FRCCommonControlData commonData, int wait_ms);
/**
* Original signature : <code>int getRecentStatusData(uint8_t*, uint8_t*, uint8_t*, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:146</i><br>
* @deprecated use the safer methods {@link #getRecentStatusData(java.nio.ByteBuffer, java.nio.ByteBuffer, java.nio.ByteBuffer, int)} and {@link #getRecentStatusData(com.sun.jna.Pointer, com.sun.jna.Pointer, com.sun.jna.Pointer, int)} instead
*/
@Deprecated
public static native int getRecentStatusData(Pointer batteryInt, Pointer batteryDec, Pointer dsDigitalOut, int wait_ms);
/**
* Original signature : <code>int getRecentStatusData(uint8_t*, uint8_t*, uint8_t*, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:146</i>
*/
public static native int getRecentStatusData(ByteBuffer batteryInt, ByteBuffer batteryDec, ByteBuffer dsDigitalOut, int wait_ms);
/**
* Original signature : <code>int getDynamicControlData(uint8_t, char*, int32_t, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:147</i><br>
* @deprecated use the safer methods {@link #getDynamicControlData(byte, java.nio.ByteBuffer, int, int)} and {@link #getDynamicControlData(byte, com.sun.jna.Pointer, int, int)} instead
*/
@Deprecated
public static native int getDynamicControlData(byte type, Pointer dynamicData, int maxLength, int wait_ms);
/**
* Original signature : <code>int getDynamicControlData(uint8_t, char*, int32_t, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:147</i>
*/
public static native int getDynamicControlData(byte type, ByteBuffer dynamicData, int maxLength, int wait_ms);
/**
* Original signature : <code>int setStatusData(float, uint8_t, uint8_t, const char*, int, const char*, int, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:148</i><br>
* @deprecated use the safer methods {@link #setStatusData(float, byte, byte, java.lang.String, int, java.lang.String, int, int)} and {@link #setStatusData(float, byte, byte, com.sun.jna.Pointer, int, com.sun.jna.Pointer, int, int)} instead
*/
@Deprecated
public static native int setStatusData(float battery, byte dsDigitalOut, byte updateNumber, Pointer userDataHigh, int userDataHighLength, Pointer userDataLow, int userDataLowLength, int wait_ms);
/**
* Original signature : <code>int setStatusData(float, uint8_t, uint8_t, const char*, int, const char*, int, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:148</i>
*/
public static native int setStatusData(float battery, byte dsDigitalOut, byte updateNumber, String userDataHigh, int userDataHighLength, String userDataLow, int userDataLowLength, int wait_ms);
/**
* Original signature : <code>int setStatusDataFloatAsInt(int, uint8_t, uint8_t, const char*, int, const char*, int, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:151</i><br>
* @deprecated use the safer methods {@link #setStatusDataFloatAsInt(int, byte, byte, java.lang.String, int, java.lang.String, int, int)} and {@link #setStatusDataFloatAsInt(int, byte, byte, com.sun.jna.Pointer, int, com.sun.jna.Pointer, int, int)} instead
*/
@Deprecated
public static native int setStatusDataFloatAsInt(int battery, byte dsDigitalOut, byte updateNumber, Pointer userDataHigh, int userDataHighLength, Pointer userDataLow, int userDataLowLength, int wait_ms);
/**
* Original signature : <code>int setStatusDataFloatAsInt(int, uint8_t, uint8_t, const char*, int, const char*, int, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:151</i>
*/
public static native int setStatusDataFloatAsInt(int battery, byte dsDigitalOut, byte updateNumber, String userDataHigh, int userDataHighLength, String userDataLow, int userDataLowLength, int wait_ms);
/**
* Original signature : <code>int setErrorData(const char*, int, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:154</i><br>
* @deprecated use the safer methods {@link #setErrorData(java.lang.String, int, int)} and {@link #setErrorData(com.sun.jna.Pointer, int, int)} instead
*/
@Deprecated
public static native int setErrorData(Pointer errors, int errorsLength, int wait_ms);
/**
* Original signature : <code>int setErrorData(const char*, int, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:154</i>
*/
public static native int setErrorData(String errors, int errorsLength, int wait_ms);
/**
* Original signature : <code>int setUserDsLcdData(const char*, int, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:155</i><br>
* @deprecated use the safer methods {@link #setUserDsLcdData(java.lang.String, int, int)} and {@link #setUserDsLcdData(com.sun.jna.Pointer, int, int)} instead
*/
@Deprecated
public static native int setUserDsLcdData(Pointer userDsLcdData, int userDsLcdDataLength, int wait_ms);
/**
* Original signature : <code>int setUserDsLcdData(const char*, int, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:155</i>
*/
public static native int setUserDsLcdData(String userDsLcdData, int userDsLcdDataLength, int wait_ms);
/**
* Original signature : <code>int overrideIOConfig(const char*, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:156</i><br>
* @deprecated use the safer methods {@link #overrideIOConfig(java.lang.String, int)} and {@link #overrideIOConfig(com.sun.jna.Pointer, int)} instead
*/
@Deprecated
public static native int overrideIOConfig(Pointer ioConfig, int wait_ms);
/**
* Original signature : <code>int overrideIOConfig(const char*, int)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:156</i>
*/
public static native int overrideIOConfig(String ioConfig, int wait_ms);
/**
* Original signature : <code>void setNewDataSem(pthread_mutex_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:165</i>
*/
public static native void setNewDataSem(Pointer pthread_mutex_tPtr1);
/**
* Original signature : <code>void setResyncSem(pthread_mutex_t*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:166</i>
*/
public static native void setResyncSem(Pointer pthread_mutex_tPtr1);
/**
* Original signature : <code>void signalResyncActionDone()</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:168</i>
*/
public static native void signalResyncActionDone();
/**
* this uint32_t is really a LVRefNum<br>
* Original signature : <code>void setNewDataOccurRef(uint32_t)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:172</i>
*/
public static native void setNewDataOccurRef(int refnum);
/**
* Original signature : <code>void setResyncOccurRef(uint32_t)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:174</i>
*/
public static native void setResyncOccurRef(int refnum);
/**
* Original signature : <code>void FRC_NetworkCommunication_getVersionString(char*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:177</i><br>
* @deprecated use the safer methods {@link #FRC_NetworkCommunication_getVersionString(java.nio.ByteBuffer)} and {@link #FRC_NetworkCommunication_getVersionString(com.sun.jna.Pointer)} instead
*/
@Deprecated
public static native void FRC_NetworkCommunication_getVersionString(Pointer version);
/**
* Original signature : <code>void FRC_NetworkCommunication_getVersionString(char*)</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:177</i>
*/
public static native void FRC_NetworkCommunication_getVersionString(ByteBuffer version);
/**
* Original signature : <code>void FRC_NetworkCommunication_observeUserProgramStarting()</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:178</i>
*/
public static native void FRC_NetworkCommunication_observeUserProgramStarting();
/**
* Original signature : <code>void FRC_NetworkCommunication_observeUserProgramDisabled()</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:179</i>
*/
public static native void FRC_NetworkCommunication_observeUserProgramDisabled();
/**
* Original signature : <code>void FRC_NetworkCommunication_observeUserProgramAutonomous()</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:180</i>
*/
public static native void FRC_NetworkCommunication_observeUserProgramAutonomous();
/**
* Original signature : <code>void FRC_NetworkCommunication_observeUserProgramTeleop()</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:181</i>
*/
public static native void FRC_NetworkCommunication_observeUserProgramTeleop();
/**
* Original signature : <code>void FRC_NetworkCommunication_observeUserProgramTest()</code><br>
* <i>native declaration : /home/alex/Projects/WPILib-Development/WPILibC/WPILib/src/main/include/NetworkCommunication/FRCComm.h:182</i>
*/
public static native void FRC_NetworkCommunication_observeUserProgramTest();
public static class STATUS extends PointerType {
public STATUS(Pointer address) {
super(address);
}
public STATUS() {
super();
}
};
}

128
wpilibj/wpilibJava/pom.xml Normal file
View File

@@ -0,0 +1,128 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>edu.wpi.first.wpilibj</groupId>
<artifactId>wpilibJava</artifactId>
<packaging>jar</packaging>
<version>0.1.0-SNAPSHOT</version>
<parent>
<groupId>edu.wpi.first.wpilib.templates.athena</groupId>
<artifactId>library-jar</artifactId>
<version>0.1.0-SNAPSHOT</version>
<relativePath>../../maven-utilities/athena/library-jar</relativePath>
</parent>
<repositories>
<!-- repository>
<id>sonatype</id>
<name>Sonatype OSS Snapshots Repository</name>
<url>http://oss.sonatype.org/content/groups/public</url>
</repository -->
<!-- For old snapshots, please use groupId `com.jnaerator` and the following repo -->
<!-- repository>
<id>nativelibs4java-repo</id>
<url>http://nativelibs4java.sourceforge.net/maven</url>
</repository -->
<!-- repository>
<id>WPILib Repository</id>
<url>http://frcbuilder.wpi.edu:8348/</url>
</repository-->
</repositories>
<dependencies>
<!-- dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
<version>4.0.0</version>
</dependency -->
<!-- dependency>
<groupId>com.nativelibs4java</groupId>
<artifactId>jnaerator-runtime</artifactId>
<version>0.12-SNAPSHOT</version>
<scope>compile</scope>
</dependency -->
<dependency>
<groupId>edu.wpi.first.wpilib.networktables.java</groupId>
<artifactId>NetworkTables</artifactId>
<version>0.1.0-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<excludes>
<exclude>edu/wpi/first/wpilibj/image/</exclude>
<exclude>edu/wpi/first/wpilibj/camera/</exclude>
<exclude>edu/wpi/first/wpilibj/visa/</exclude>
<exclude>edu/wpi/first/wpilibj/SerialPort.java</exclude>
<exclude>edu/wpi/first/wpilibj/Kinect.java</exclude>
<exclude>edu/wpi/first/wpilibj/KinectStick.java</exclude>
<exclude>edu/wpi/first/wpilibj/DriverStationEnhancedIO.java</exclude>
<exclude>edu/wpi/first/wpilibj/buttons/DigitalIOButton.java</exclude>
<exclude>edu/wpi/first/wpilibj/buttons/AnalogIOButton.java</exclude>
</excludes>
</configuration>
</plugin>
<!-- plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.8</version>
<executions>
<execution>
<id>fetch-dependencies</id>
<phase>compile</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>edu.wpi.first.wpilib.hal</groupId>
<artifactId>libHALAthenaJava</artifactId>
<version>0.1.0-SNAPSHOT</version>
<type>so</type>
<destFileName>libHALAthenaJava.so</destFileName>
<outputDirectory>${project.build.directory}/classes/linux-arm</outputDirectory>
</artifactItem>
</artifactItems>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>true</overWriteSnapshots>
</configuration>
</execution>
</executions>
</plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<sourceFileExcludes>
<exclude>edu/wpi/first/wpilibj/image/</exclude>
<exclude>edu/wpi/first/wpilibj/camera/</exclude>
<exclude>edu/wpi/first/wpilibj/visa/</exclude>
<exclude>edu/wpi/first/wpilibj/SerialPort.java</exclude>
<exclude>edu/wpi/first/wpilibj/Kinect.java</exclude>
<exclude>edu/wpi/first/wpilibj/KinectStick.java</exclude>
<exclude>edu/wpi/first/wpilibj/DriverStationEnhancedIO.java</exclude>
<exclude>edu/wpi/first/wpilibj/buttons/DigitalIOButton.java</exclude>
<exclude>edu/wpi/first/wpilibj/buttons/AnalogIOButton.java</exclude>
</sourceFileExcludes>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@@ -0,0 +1,206 @@
/*----------------------------------------------------------------------------*/
/* Copyright (c) FIRST 2008-2012. All Rights Reserved. */
/* Open Source Software - may be modified and shared by FRC teams. The code */
/* must be accompanied by the FIRST BSD license file in the root directory of */
/* the project. */
/*----------------------------------------------------------------------------*/
package edu.wpi.first.wpilibj;
import java.util.logging.*;
import java.nio.ByteOrder;
import java.nio.IntBuffer;
import java.nio.ByteBuffer;
//import com.sun.jna.Pointer;
import edu.wpi.first.wpilibj.hal.WatchdogJNI;
import edu.wpi.first.wpilibj.hal.HALUtil;
import edu.wpi.first.wpilibj.parsing.IUtility;
/**
* Watchdog timer class. The watchdog timer is designed to keep the robots safe.
* The idea is that the robot program must constantly "feed" the watchdog
* otherwise it will shut down all the motor outputs. That way if a program
* breaks, rather than having the robot continue to operate at the last known
* speed, the motors will be shut down.
*
* This is serious business. Don't just disable the watchdog. You can't afford
* it!
*
* http://thedailywtf.com/Articles/_0x2f__0x2f_TODO_0x3a__Uncomment_Later.aspx
*/
public class Watchdog extends SensorBase implements IUtility {
private static Logger logger = Logger.getLogger("Watchdog");
private static ConsoleHandler ch = new ConsoleHandler();
private static Watchdog m_instance;
private ByteBuffer m_watchDog;
static
{
logger.addHandler(ch);
logger.setLevel(Level.ALL);
}
/**
* The Watchdog is born.
*/
protected Watchdog() {
// allocate direct
ByteBuffer status = ByteBuffer.allocateDirect(4);
// set the byte order
status.order(ByteOrder.LITTLE_ENDIAN);
m_watchDog = WatchdogJNI.initializeWatchdog(status.asIntBuffer());
// set the byte order for the return value
m_watchDog.order(ByteOrder.LITTLE_ENDIAN);
logger.info("Initialize Watchdog Status = " + status.getInt(0) );
logger.info("Watchdog Handle Length = " + m_watchDog.capacity() );
logger.info("Watchdog Handle Value:" + m_watchDog.getInt(0));
HALUtil.checkStatus(status.asIntBuffer());
}
/**
* Get an instance of the watchdog
*
* @return an instance of the watchdog
*/
public static synchronized Watchdog getInstance() {
if (m_instance == null) {
m_instance = new Watchdog();
}
return m_instance;
}
/**
* Throw the dog a bone.
*
* When everything is going well, you feed your dog when you get home. Let's
* hope you don't drive your car off a bridge on the way home... Your dog
* won't get fed and he will starve to death.
*
* By the way, it's not cool to ask the neighbor (some random task) to feed
* your dog for you. He's your responsibility!
*/
public void feed() {
IntBuffer status = ByteBuffer.allocateDirect(4).asIntBuffer();
WatchdogJNI.feedWatchdog(m_watchDog, status);
HALUtil.checkStatus(status);
}
/**
* Put the watchdog out of its misery.
*
* Don't wait for your dying robot to starve when there is a problem. Kill
* it quickly, cleanly, and humanely.
*/
public void kill() {
IntBuffer status = ByteBuffer.allocateDirect(4).asIntBuffer();
WatchdogJNI.killWatchdog(m_watchDog, status);
HALUtil.checkStatus(status);
}
/**
* Read how long it has been since the watchdog was last fed.
*
* @return The number of seconds since last meal.
*/
public double getTimer() {
IntBuffer status = ByteBuffer.allocateDirect(4).asIntBuffer();
double value = WatchdogJNI.getWatchdogLastFed(m_watchDog, status);
HALUtil.checkStatus(status);
return value;
}
/**
* Read what the current expiration is.
*
* @return The number of seconds before starvation following a meal
* (watchdog starves if it doesn't eat this often).
*/
public double getExpiration() {
IntBuffer status = ByteBuffer.allocateDirect(4).asIntBuffer();
double value = WatchdogJNI.getWatchdogExpiration(m_watchDog, status);
HALUtil.checkStatus(status);
return value;
}
/**
* Configure how many seconds your watchdog can be neglected before it
* starves to death.
*
* @param expiration
* The number of seconds before starvation following a meal
* (watchdog starves if it doesn't eat this often).
*/
public void setExpiration(double expiration) {
// allocate direct
ByteBuffer status = ByteBuffer.allocateDirect(4);
// set to c++ byte order
status.order(ByteOrder.LITTLE_ENDIAN);
WatchdogJNI.setWatchdogExpiration(m_watchDog, expiration, status.asIntBuffer());
HALUtil.checkStatus(status.asIntBuffer());
}
/**
* Find out if the watchdog is currently enabled or disabled (mortal or
* immortal).
*
* @return Enabled or disabled.
*/
public boolean getEnabled() {
IntBuffer status = ByteBuffer.allocateDirect(4).asIntBuffer();
boolean value = WatchdogJNI.getWatchdogEnabled(m_watchDog, status) != 0;
HALUtil.checkStatus(status);
return value;
}
/**
* Enable or disable the watchdog timer.
*
* When enabled, you must keep feeding the watchdog timer to keep the
* watchdog active, and hence the dangerous parts (motor outputs, etc.) can
* keep functioning. When disabled, the watchdog is immortal and will remain
* active even without being fed. It will also ignore any kill commands
* while disabled.
*
* @param enabled
* Enable or disable the watchdog.
*/
public void setEnabled(final boolean enabled) {
IntBuffer status = ByteBuffer.allocateDirect(4).asIntBuffer();
WatchdogJNI.setWatchdogEnabled(m_watchDog, (byte) (enabled ? 1 : 0),
status);
HALUtil.checkStatus(status);
}
/**
* Check in on the watchdog and make sure he's still kicking.
*
* This indicates that your watchdog is allowing the system to operate. It
* is still possible that the network communications is not allowing the
* system to run, but you can check this to make sure it's not your fault.
* Check isSystemActive() for overall system status.
*
* If the watchdog is disabled, then your watchdog is immortal.
*
* @return Is the watchdog still alive?
*/
public boolean isAlive() {
IntBuffer status = ByteBuffer.allocateDirect(4).asIntBuffer();
boolean value = WatchdogJNI.isWatchdogAlive(m_watchDog, status) != 0;
HALUtil.checkStatus(status);
return value;
}
/**
* Check on the overall status of the system.
*
* @return Is the system active (i.e. PWM motor outputs, etc. enabled)?
*/
public boolean isSystemActive() {
IntBuffer status = ByteBuffer.allocateDirect(4).asIntBuffer();
boolean value = WatchdogJNI.isWatchdogSystemActive(m_watchDog, status) != 0;
HALUtil.checkStatus(status);
return value;
}
}

View File

@@ -0,0 +1,458 @@
package edu.wpi.first.wpilibj.can;
//import com.ochafik.lang.jnaerator.runtime.LibraryExtractor;
//import com.ochafik.lang.jnaerator.runtime.MangledFunctionMapper;
//import com.sun.jna.Library;
//import com.sun.jna.Native;
//import com.sun.jna.NativeLibrary;
//import com.sun.jna.Pointer;
//import com.sun.jna.ptr.IntByReference;
import edu.wpi.first.wpilibj.hal.JNIWrapper;
import java.nio.ByteBuffer;
import java.nio.IntBuffer;
/**
* JNA Wrapper for library <b>CAN</b><br>
* This file was autogenerated by <a href="http://jnaerator.googlecode.com/">JNAerator</a>,<br>
* a tool written by <a href="http://ochafik.com/">Olivier Chafik</a> that <a href="http://code.google.com/p/jnaerator/wiki/CreditsAndLicense">uses a few opensource projects.</a>.<br>
* For help, please visit <a href="http://nativelibs4java.googlecode.com/">NativeLibs4Java</a> , <a href="http://rococoa.dev.java.net/">Rococoa</a>, or <a href="http://jna.dev.java.net/">JNA</a>.
*/
public class CANJNI extends JNIWrapper{
//public static final String JNA_LIBRARY_NAME = LibraryExtractor.getLibraryPath("CAN", true, CANLibrary.class);
//public static final NativeLibrary JNA_NATIVE_LIB = NativeLibrary.getInstance(CANLibrary.JNA_LIBRARY_NAME, MangledFunctionMapper.DEFAULT_OPTIONS);
//static {
// System.loadLibrary("JNIWrappers");
//Native.register(CANLibrary.class, CANLibrary.JNA_NATIVE_LIB);
//}
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_LIMIT_REV = 0x02;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_CFG_MAX_VOUT = ((0x00020000 | 0x02000000 | 0x00001c00) | (7 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_CANERR_B0 = 30;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD_DIS = ((0x00020000 | 0x02000000 | 0x00000400) | (1 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_ACCEL = 0x05000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_FAULT = ((0x00020000 | 0x02000000 | 0x00001400) | (7 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_FIRMVER = 0x00000200;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ICTRL_EN = ((0x00020000 | 0x02000000 | 0x00001000) | (0 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_ENUMERATE = 0x00000240;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD_EN = ((0x00020000 | 0x02000000 | 0x00000400) | (0 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_CFG_LIMIT_REV = ((0x00020000 | 0x02000000 | 0x00001c00) | (6 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_POS_B2 = 11;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_POS_B3 = 12;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VCOMP_EN = ((0x00020000 | 0x02000000 | 0x00000800) | (0 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_POS_B0 = 9;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_POS_B1 = 10;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_HWVER = ((0x00020000 | 0x1f000000) | (5 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_FAULT_ILIMIT = 0x01;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ICTRL_DC = ((0x00020000 | 0x02000000 | 0x00001000) | (5 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VOLT = (0x00020000 | 0x02000000 | 0x00000000);
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_API_MC_VCOMP = 0x00000800;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_END = 0;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_CFG_LIMIT_FWD = ((0x00020000 | 0x02000000 | 0x00001c00) | (5 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_M = 0x1f000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_API_MC_ICTRL = 0x00001000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_API_MC_CFG = 0x00001c00;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_MFR_DEKA = 0x00030000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_SYSRST = 0x00000040;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_REF_QUAD_ENCODER = 0x03;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SYNC_PEND_NOW = 0;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_CMODE_CURRENT = 0x01;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_TEMP = ((0x00020000 | 0x02000000 | 0x00001400) | (3 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD_DC = ((0x00020000 | 0x02000000 | 0x00000400) | (5 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_API_MC_POS = 0x00000c00;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_LIMIT_SFWD = 0x04;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ICTRL_DIS = ((0x00020000 | 0x02000000 | 0x00001000) | (1 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VOLT_SET = ((0x00020000 | 0x02000000 | 0x00000000) | (2 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_HEARTBEAT = 0x00000140;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_FAULT_CURRENT = 0x01;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_GYRO = 0x04000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_FAULT_TLIMIT = 0x02;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_MFR_S = 16;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD_T_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000400) | (10 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_MFR_M = 0x00ff0000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_CMODE_POS = 0x03;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_REF_POT = 0x01;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_HWVER_UNKNOWN = 0x00;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_CFG_BRAKE_COAST = ((0x00020000 | 0x02000000 | 0x00001c00) | (3 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_HWVER_JAG_1_0 = 0x01;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DEVNO_BCAST = 0x00000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VOLT_T_SET = ((0x00020000 | 0x02000000 | 0x00000000) | (5 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_LIMIT_STKY_SREV = 0x80;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ICTRL_IC = ((0x00020000 | 0x02000000 | 0x00001000) | (4 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_FAULT_COMM = 0x10;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ICTRL_T_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00001000) | (9 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_SPD_B2 = 15;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_SPD_B1 = 14;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_STKY_FLT_CLR = 21;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_SPD_B3 = 16;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_STATUS_MFG_S = 16;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000400) | (11 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_LIMIT = ((0x00020000 | 0x02000000 | 0x00001400) | (6 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VOLT_EN = ((0x00020000 | 0x02000000 | 0x00000000) | (0 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VOLT_RAMP_DIS = 0;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_TEMP_B0 = 7;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_TEMP_B1 = 8;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS_IC = ((0x00020000 | 0x02000000 | 0x00000c00) | (4 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_MOTOR = 0x02000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD_T_EN = ((0x00020000 | 0x02000000 | 0x00000400) | (7 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DEVNO_M = 0x0000003f;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_VOLTBUS_B1 = 4;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_UPD_PING = ((0x00020000 | 0x1f000000) | (0 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS_T_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000c00) | (10 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DEVNO_S = 0;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_TRUST_HEARTBEAT = ((0x00020000 | 0x1f000000) | (13 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_VOLTBUS_B0 = 3;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_SPD_B0 = 13;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_CFG = (0x00020000 | 0x02000000 | 0x00001c00);
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_FLT_COUNT_COMM = 28;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_SYSHALT = 0x00000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_UPD_DOWNLOAD = ((0x00020000 | 0x1f000000) | (1 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_CMODE = ((0x00020000 | 0x02000000 | 0x00001400) | (9 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VCOMP_IN_RAMP = ((0x00020000 | 0x02000000 | 0x00000800) | (3 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_FAULT_VLIMIT = 0x04;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_LIMIT_SREV = 0x08;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_S = 24;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_FLT_COUNT_VOLTBUS = 26;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_API_MC_STATUS = 0x00001400;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VOLT_T_EN = ((0x00020000 | 0x02000000 | 0x00000000) | (4 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_VOLTBUS = ((0x00020000 | 0x02000000 | 0x00001400) | (1 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_UPD = (0x00020000 | 0x1f000000);
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_UPD_REQUEST = ((0x00020000 | 0x1f000000) | (6 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_API_MC_VOLTAGE = 0x00000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_PER_EN_S3 = ((0x00020000 | 0x02000000 | 0x00001800) | (3 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_PER_EN_S2 = ((0x00020000 | 0x02000000 | 0x00001800) | (2 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_API_MC_PSTAT = 0x00001800;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_CANERR_B1 = 31;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_PER_EN_S1 = ((0x00020000 | 0x02000000 | 0x00001800) | (1 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_REF_ENCODER = 0x00;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_PER_EN_S0 = ((0x00020000 | 0x02000000 | 0x00001800) | (0 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_CURRENT = ((0x00020000 | 0x02000000 | 0x00001400) | (2 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS_SET = ((0x00020000 | 0x02000000 | 0x00000c00) | (2 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_LIMIT_STKY_FWD = 0x10;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ICTRL = (0x00020000 | 0x02000000 | 0x00001000);
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_HWVER_JAG_2_0 = 0x02;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_STATUS_MFG_M = 0x00ff0000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_LIMIT_CLR = 18;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_CFG_POT_TURNS = ((0x00020000 | 0x02000000 | 0x00001c00) | (2 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS_REF = ((0x00020000 | 0x02000000 | 0x00000c00) | (6 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD_PC = ((0x00020000 | 0x02000000 | 0x00000400) | (3 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_VOUT = ((0x00020000 | 0x02000000 | 0x00001400) | (10 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_SYSRESUME = 0x00000280;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_UNTRUST_EN = ((0x00020000 | 0x1f000000) | (11 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_CANSTS = 29;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS_DC = ((0x00020000 | 0x02000000 | 0x00000c00) | (5 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_POS = ((0x00020000 | 0x02000000 | 0x00001400) | (4 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD_SET = ((0x00020000 | 0x02000000 | 0x00000400) | (2 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_FULL_M = 0x1fffffff;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_SPD = ((0x00020000 | 0x02000000 | 0x00001400) | (5 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_STKY_FLT_NCLR = 20;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS = (0x00020000 | 0x02000000 | 0x00001400);
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_TRUST_EN = ((0x00020000 | 0x1f000000) | (12 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ICTRL_T_SET = ((0x00020000 | 0x02000000 | 0x00001000) | (7 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_STATUS_CODE_M = 0x0000ffff;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_STATUS_CODE_S = 0;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS_T_EN = ((0x00020000 | 0x02000000 | 0x00000c00) | (7 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT = (0x00020000 | 0x02000000 | 0x00001800);
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_FAULT = 19;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_FLT_COUNT_GATE = 27;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ICTRL_T_EN = ((0x00020000 | 0x02000000 | 0x00001000) | (6 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_DEVQUERY = 0x000000c0;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_USONIC = 0x06000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_CMODE_VCOMP = 0x04;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD_T_SET = ((0x00020000 | 0x02000000 | 0x00000400) | (8 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS_EN = ((0x00020000 | 0x02000000 | 0x00000c00) | (0 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VOLT_DIS = ((0x00020000 | 0x02000000 | 0x00000000) | (1 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_LIMIT_FWD = 0x01;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VCOMP_DIS = ((0x00020000 | 0x02000000 | 0x00000800) | (1 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_REF_INV_ENCODER = 0x02;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_CFG_NUM_BRUSHES = ((0x00020000 | 0x02000000 | 0x00001c00) | (0 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_RELAY = 0x03000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_DEVASSIGN = 0x00000080;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VOLT_T_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000000) | (7 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_API_MC_SPD = 0x00000400;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_CFG_ENC_LINES = ((0x00020000 | 0x02000000 | 0x00001c00) | (1 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_REF_NONE = 0xff;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_FAULT_VBUS = 0x04;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VOLT_SET_RAMP = ((0x00020000 | 0x02000000 | 0x00000000) | (3 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD_REF = ((0x00020000 | 0x02000000 | 0x00000400) | (6 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_POWER = ((0x00020000 | 0x02000000 | 0x00001400) | (8 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_VOLTOUT_B1 = 2;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VCOMP_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000800) | (9 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_VOLTOUT_B0 = 1;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_CFG_LIMIT_MODE = ((0x00020000 | 0x02000000 | 0x00001c00) | (4 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_VOUT_B1 = 23;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_UPD_SEND_DATA = ((0x00020000 | 0x1f000000) | (2 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_FLT_COUNT_CURRENT = 24;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_VOUT_B0 = 22;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_CFG_S0 = ((0x00020000 | 0x02000000 | 0x00001800) | (4 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_LIMIT_NCLR = 17;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_CFG_S1 = ((0x00020000 | 0x02000000 | 0x00001800) | (5 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_CFG_S2 = ((0x00020000 | 0x02000000 | 0x00001800) | (6 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_CFG_S3 = ((0x00020000 | 0x02000000 | 0x00001800) | (7 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VCOMP_SET = ((0x00020000 | 0x02000000 | 0x00000800) | (2 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_UPDATE = 0x000001c0;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_CFG_FAULT_TIME = ((0x00020000 | 0x02000000 | 0x00001c00) | (8 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_VOLTOUT = ((0x00020000 | 0x02000000 | 0x00001400) | (0 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ICTRL_SET = ((0x00020000 | 0x02000000 | 0x00001000) | (2 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_M = 0x0000ffc0;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_CMODE_SPEED = 0x02;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_CLASS_M = 0x0000fc00;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_DATA_S3 = ((0x00020000 | 0x02000000 | 0x00001800) | (11 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_S = 6;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_FLT_COUNT = ((0x00020000 | 0x02000000 | 0x00001400) | (12 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_DATA_S2 = ((0x00020000 | 0x02000000 | 0x00001800) | (10 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_DATA_S1 = ((0x00020000 | 0x02000000 | 0x00001800) | (9 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_PSTAT_DATA_S0 = ((0x00020000 | 0x02000000 | 0x00001800) | (8 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ICTRL_PC = ((0x00020000 | 0x02000000 | 0x00001000) | (3 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS_PC = ((0x00020000 | 0x02000000 | 0x00000c00) | (3 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_MFR_LM = 0x00020000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS_DIS = ((0x00020000 | 0x02000000 | 0x00000c00) | (1 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_BCAST = 0x00000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_CMODE_VOLT = 0x00;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_STATUS_DTYPE_S = 24;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000c00) | (11 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_FAULT_GATE_DRIVE = 0x08;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_STATUS_DTYPE_M = 0x1f000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_LIMIT_STKY_REV = 0x20;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_ROBOT = 0x01000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_API_MC_ACK = 0x00002000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VCOMP = (0x00020000 | 0x02000000 | 0x00000800);
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_UPD_ACK = ((0x00020000 | 0x1f000000) | (4 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VCOMP_COMP_RAMP = ((0x00020000 | 0x02000000 | 0x00000800) | (4 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VCOMP_T_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000800) | (8 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS = (0x00020000 | 0x02000000 | 0x00000c00);
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_SYNC = 0x00000180;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ICTRL_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00001000) | (10 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_CURRENT_B1 = 6;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD = (0x00020000 | 0x02000000 | 0x00000400);
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_CURRENT_B0 = 5;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_UPDATE = 0x1f000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_SPD_IC = ((0x00020000 | 0x02000000 | 0x00000400) | (4 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_ACK = (0x00020000 | 0x02000000 | 0x00002000);
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_FAULT_TEMP = 0x02;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VCOMP_T_SET = ((0x00020000 | 0x02000000 | 0x00000800) | (6 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_PSTAT_FLT_COUNT_TEMP = 25;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VOLT_SET_NO_ACK = ((0x00020000 | 0x02000000 | 0x00000000) | (8 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_DTYPE_GEART = 0x07000000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_MFR_NI = 0x00010000;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_POS_T_SET = ((0x00020000 | 0x02000000 | 0x00000c00) | (8 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_STATUS_STKY_FLT = ((0x00020000 | 0x02000000 | 0x00001400) | (11 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_UPD_RESET = ((0x00020000 | 0x1f000000) | (3 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int CAN_MSGID_API_ID_M = 0x000003c0;
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_API_VCOMP_T_EN = ((0x00020000 | 0x02000000 | 0x00000800) | (5 << 6));
/** <i>native declaration : src\main\include\CAN\can_proto.h</i> */
public static final int LM_STATUS_LIMIT_STKY_SFWD = 0x40;
public static native void FRCNetworkCommunicationJaguarCANDriverSendMessage(int messageID, ByteBuffer data, IntBuffer status);
public static native ByteBuffer FRCNetworkCommunicationJaguarCANDriverReceiveMessage(IntBuffer messageID, int timeoutMs, IntBuffer status);
}

Some files were not shown because too many files have changed in this diff Show More