Wahoo Fitness API  3.6.1
Documentation for the iPhone version of the Wahoo Fitness API.
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Pages
fit.h File Reference
#include "fit_config.h"
#include <stdint.h>
+ Include dependency graph for fit.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  FIT_FIELD_DEF
 
struct  FIT_FILE_HDR
 
struct  FIT_MESG_DEF
 

Macros

#define FIT_ANTFS_FILE_DATA_TYPE
 
#define FIT_ARCH_ENDIAN_BIG
 
#define FIT_ARCH_ENDIAN_LITTLE
 
#define FIT_ARCH_ENDIAN_MASK
 
#define FIT_BASE_TYPE_BYTE
 
#define FIT_BASE_TYPE_ENDIAN_FLAG
 
#define FIT_BASE_TYPE_ENUM
 
#define FIT_BASE_TYPE_FLOAT32
 
#define FIT_BASE_TYPE_FLOAT64
 
#define FIT_BASE_TYPE_NUM_MASK
 
#define FIT_BASE_TYPE_RESERVED
 
#define FIT_BASE_TYPE_SINT16
 
#define FIT_BASE_TYPE_SINT32
 
#define FIT_BASE_TYPE_SINT8
 
#define FIT_BASE_TYPE_STRING
 
#define FIT_BASE_TYPE_UINT16
 
#define FIT_BASE_TYPE_UINT16Z
 
#define FIT_BASE_TYPE_UINT32
 
#define FIT_BASE_TYPE_UINT32Z
 
#define FIT_BASE_TYPE_UINT8
 
#define FIT_BASE_TYPE_UINT8Z
 
#define FIT_BASE_TYPES
 
#define FIT_BOOL_FALSE
 
#define FIT_BOOL_INVALID
 
#define FIT_BOOL_TRUE
 
#define FIT_BYTE_INVALID
 
#define FIT_CHECKSUM_FIELD_NUM
 
#define FIT_ENUM_INVALID
 
#define FIT_FALSE
 
#define FIT_FIELD_DEF_SIZE
 
#define FIT_FIELD_NUM_CHECKSUM
 
#define FIT_FIELD_NUM_INVALID
 
#define FIT_FIELD_NUM_MESSAGE_INDEX
 
#define FIT_FIELD_NUM_PAD
 
#define FIT_FIELD_NUM_TIMESTAMP
 
#define FIT_FILE_HDR_SIZE
 
#define FIT_FILE_MESG_DEF_FIELD_OFFSET(FIELD_MEMBER, FIELD_INDEX)
 
#define FIT_FILE_MESG_DEF_OFFSET(MESG_DEF_MEMBER, FILE)
 
#define FIT_FILE_MESG_OFFSET(MESG_MEMBER, MESG_INDEX, MESG_SIZE, FILE)
 
#define FIT_FLOAT32_INVALID
 
#define FIT_FLOAT64_INVALID
 
#define FIT_HDR_SIZE
 
#define FIT_HDR_TIME_OFFSET_MASK
 
#define FIT_HDR_TIME_REC_BIT
 
#define FIT_HDR_TIME_TYPE_MASK
 
#define FIT_HDR_TIME_TYPE_SHIFT
 
#define FIT_HDR_TYPE_DEF_BIT
 
#define FIT_HDR_TYPE_MASK
 
#define FIT_MAX_FIELD_SIZE
 
#define FIT_MAX_LOCAL_MESGS
 
#define FIT_MAX_MESG_SIZE
 
#define FIT_MESG_DEF_FIELD_OFFSET(FIELD_MEMBER, FIELD_INDEX)
 
#define FIT_MESG_DEF_HEADER_SIZE
 
#define FIT_MESG_DEF_OFFSET(MESG_DEF_MEMBER, FILE)
 
#define FIT_MESG_OFFSET(MESG_MEMBER, MESG_INDEX, MESG_SIZE, FILE)
 
#define FIT_MESSAGE_INDEX_FIELD_NUM
 
#define FIT_NULL
 
#define FIT_PROFILE_VERSION
 
#define FIT_PROFILE_VERSION_MAJOR
 
#define FIT_PROFILE_VERSION_MINOR
 
#define FIT_PROFILE_VERSION_SCALE
 
#define FIT_PROTOCOL_VERSION
 
#define FIT_PROTOCOL_VERSION_MAJOR
 
#define FIT_PROTOCOL_VERSION_MAJOR_MASK
 
#define FIT_PROTOCOL_VERSION_MAJOR_SHIFT
 
#define FIT_PROTOCOL_VERSION_MINOR
 
#define FIT_PROTOCOL_VERSION_MINOR_MASK
 
#define FIT_SINT16_INVALID
 
#define FIT_SINT32_INVALID
 
#define FIT_SINT8_INVALID
 
#define FIT_STRING_INVALID
 
#define FIT_STRUCT_OFFSET(MEMBER, STRUCT_TYPE)
 
#define FIT_TIMESTAMP_FIELD_NUM
 
#define FIT_TRUE
 
#define FIT_UINT16_INVALID
 
#define FIT_UINT16Z_INVALID
 
#define FIT_UINT32_INVALID
 
#define FIT_UINT32Z_INVALID
 
#define FIT_UINT8_INVALID
 
#define FIT_UINT8Z_INVALID
 

Typedefs

typedef FIT_ENUM FIT_BOOL
 
typedef uint8_t FIT_BYTE
 
typedef const FIT_BYTEFIT_CONST_BYTE_PTR
 
typedef const FIT_ENUMFIT_CONST_ENUM_PTR
 
typedef const FIT_FLOAT32FIT_CONST_FLOAT32_PTR
 
typedef const FIT_FLOAT64FIT_CONST_FLOAT64_PTR
 
typedef const FIT_SINT16FIT_CONST_SINT16_PTR
 
typedef const FIT_SINT32FIT_CONST_SINT32_PTR
 
typedef const FIT_SINT8FIT_CONST_SINT8_PTR
 
typedef const FIT_STRINGFIT_CONST_STRING_PTR
 
typedef const FIT_UINT16FIT_CONST_UINT16_PTR
 
typedef const FIT_UINT16ZFIT_CONST_UINT16Z_PTR
 
typedef const FIT_UINT32FIT_CONST_UINT32_PTR
 
typedef const FIT_UINT32ZFIT_CONST_UINT32Z_PTR
 
typedef const FIT_UINT8FIT_CONST_UINT8_PTR
 
typedef const FIT_UINT8ZFIT_CONST_UINT8Z_PTR
 
typedef uint8_t FIT_ENUM
 
typedef float FIT_FLOAT32
 
typedef double FIT_FLOAT64
 
typedef FIT_UINT32(* FIT_READ_BYTES_FUNC )(void *, FIT_UINT32, FIT_UINT32)
 
typedef int16_t FIT_SINT16
 
typedef int32_t FIT_SINT32
 
typedef int8_t FIT_SINT8
 
typedef char FIT_STRING
 
typedef uint16_t FIT_UINT16
 
typedef uint16_t FIT_UINT16Z
 
typedef uint32_t FIT_UINT32
 
typedef uint32_t FIT_UINT32Z
 
typedef uint8_t FIT_UINT8
 
typedef uint8_t FIT_UINT8Z
 

Functions

FIT_UINT8 Fit_GetArch (void)
 
FIT_FIELD_DEF Fit_GetFieldDef (const FIT_MESG_DEF *mesg_def, FIT_UINT8 field_def_num)
 
FIT_UINT8 Fit_GetFieldOffset (const FIT_MESG_DEF *mesg_def, FIT_UINT8 field_def_num)
 
const FIT_MESG_DEFFit_GetMesgDef (FIT_UINT16 global_mesg_num)
 
FIT_UINT16 Fit_GetMesgDefSize (const FIT_MESG_DEF *mesg_def)
 
FIT_UINT8 Fit_GetMesgSize (FIT_UINT16 global_mesg_num)
 
FIT_BOOL Fit_InitMesg (const FIT_MESG_DEF *mesg_def, void *mesg)
 
FIT_UINT8 Fit_LookupMessage (FIT_UINT16 global_mesg_num, FIT_UINT16 message_index, FIT_UINT32 *offset, FIT_READ_BYTES_FUNC read_bytes_func, FIT_BOOL read_header)
 

Variables

const FIT_CONST_UINT8_PTR fit_base_type_invalids [FIT_BASE_TYPES]
 
const FIT_UINT8 fit_base_type_sizes [FIT_BASE_TYPES]
 

Macro Definition Documentation

#define FIT_ANTFS_FILE_DATA_TYPE
#define FIT_ARCH_ENDIAN_BIG
#define FIT_ARCH_ENDIAN_LITTLE
#define FIT_ARCH_ENDIAN_MASK
#define FIT_BASE_TYPE_BYTE
#define FIT_BASE_TYPE_ENDIAN_FLAG
#define FIT_BASE_TYPE_ENUM
#define FIT_BASE_TYPE_FLOAT32
#define FIT_BASE_TYPE_FLOAT64
#define FIT_BASE_TYPE_NUM_MASK
#define FIT_BASE_TYPE_RESERVED
#define FIT_BASE_TYPE_SINT16
#define FIT_BASE_TYPE_SINT32
#define FIT_BASE_TYPE_SINT8
#define FIT_BASE_TYPE_STRING
#define FIT_BASE_TYPE_UINT16
#define FIT_BASE_TYPE_UINT16Z
#define FIT_BASE_TYPE_UINT32
#define FIT_BASE_TYPE_UINT32Z
#define FIT_BASE_TYPE_UINT8
#define FIT_BASE_TYPE_UINT8Z
#define FIT_BASE_TYPES
#define FIT_BOOL_FALSE
#define FIT_BOOL_INVALID
#define FIT_BOOL_TRUE
#define FIT_BYTE_INVALID
#define FIT_CHECKSUM_FIELD_NUM
#define FIT_ENUM_INVALID
#define FIT_FALSE
#define FIT_FIELD_DEF_SIZE
#define FIT_FIELD_NUM_CHECKSUM
#define FIT_FIELD_NUM_INVALID
#define FIT_FIELD_NUM_MESSAGE_INDEX
#define FIT_FIELD_NUM_PAD
#define FIT_FIELD_NUM_TIMESTAMP
#define FIT_FILE_HDR_SIZE
#define FIT_FILE_MESG_DEF_FIELD_OFFSET (   FIELD_MEMBER,
  FIELD_INDEX 
)
#define FIT_FILE_MESG_DEF_OFFSET (   MESG_DEF_MEMBER,
  FILE 
)
#define FIT_FILE_MESG_OFFSET (   MESG_MEMBER,
  MESG_INDEX,
  MESG_SIZE,
  FILE 
)
#define FIT_FLOAT32_INVALID
#define FIT_FLOAT64_INVALID
#define FIT_HDR_SIZE
#define FIT_HDR_TIME_OFFSET_MASK
#define FIT_HDR_TIME_REC_BIT
#define FIT_HDR_TIME_TYPE_MASK
#define FIT_HDR_TIME_TYPE_SHIFT
#define FIT_HDR_TYPE_DEF_BIT
#define FIT_HDR_TYPE_MASK
#define FIT_MAX_FIELD_SIZE
#define FIT_MAX_LOCAL_MESGS
#define FIT_MAX_MESG_SIZE
#define FIT_MESG_DEF_FIELD_OFFSET (   FIELD_MEMBER,
  FIELD_INDEX 
)
#define FIT_MESG_DEF_HEADER_SIZE
#define FIT_MESG_DEF_OFFSET (   MESG_DEF_MEMBER,
  FILE 
)
#define FIT_MESG_OFFSET (   MESG_MEMBER,
  MESG_INDEX,
  MESG_SIZE,
  FILE 
)
#define FIT_MESSAGE_INDEX_FIELD_NUM
#define FIT_NULL
#define FIT_PROFILE_VERSION
#define FIT_PROFILE_VERSION_MAJOR
#define FIT_PROFILE_VERSION_MINOR
#define FIT_PROFILE_VERSION_SCALE
#define FIT_PROTOCOL_VERSION
#define FIT_PROTOCOL_VERSION_MAJOR
#define FIT_PROTOCOL_VERSION_MAJOR_MASK
#define FIT_PROTOCOL_VERSION_MAJOR_SHIFT
#define FIT_PROTOCOL_VERSION_MINOR
#define FIT_PROTOCOL_VERSION_MINOR_MASK
#define FIT_SINT16_INVALID
#define FIT_SINT32_INVALID
#define FIT_SINT8_INVALID
#define FIT_STRING_INVALID
#define FIT_STRUCT_OFFSET (   MEMBER,
  STRUCT_TYPE 
)
#define FIT_TIMESTAMP_FIELD_NUM
#define FIT_TRUE
#define FIT_UINT16_INVALID
#define FIT_UINT16Z_INVALID
#define FIT_UINT32_INVALID
#define FIT_UINT32Z_INVALID
#define FIT_UINT8_INVALID
#define FIT_UINT8Z_INVALID

Typedef Documentation

typedef FIT_ENUM FIT_BOOL
typedef uint8_t FIT_BYTE
typedef const FIT_BYTE* FIT_CONST_BYTE_PTR
typedef const FIT_ENUM* FIT_CONST_ENUM_PTR
typedef uint8_t FIT_ENUM
typedef float FIT_FLOAT32
typedef double FIT_FLOAT64
typedef FIT_UINT32(* FIT_READ_BYTES_FUNC)(void *, FIT_UINT32, FIT_UINT32)
typedef int16_t FIT_SINT16
typedef int32_t FIT_SINT32
typedef int8_t FIT_SINT8
typedef char FIT_STRING
typedef uint16_t FIT_UINT16
typedef uint16_t FIT_UINT16Z
typedef uint32_t FIT_UINT32
typedef uint32_t FIT_UINT32Z
typedef uint8_t FIT_UINT8
typedef uint8_t FIT_UINT8Z

Function Documentation

FIT_UINT8 Fit_GetArch ( void  )
FIT_FIELD_DEF Fit_GetFieldDef ( const FIT_MESG_DEF mesg_def,
FIT_UINT8  field_def_num 
)
FIT_UINT8 Fit_GetFieldOffset ( const FIT_MESG_DEF mesg_def,
FIT_UINT8  field_def_num 
)
const FIT_MESG_DEF* Fit_GetMesgDef ( FIT_UINT16  global_mesg_num)
FIT_UINT16 Fit_GetMesgDefSize ( const FIT_MESG_DEF mesg_def)
FIT_UINT8 Fit_GetMesgSize ( FIT_UINT16  global_mesg_num)
FIT_BOOL Fit_InitMesg ( const FIT_MESG_DEF mesg_def,
void *  mesg 
)
FIT_UINT8 Fit_LookupMessage ( FIT_UINT16  global_mesg_num,
FIT_UINT16  message_index,
FIT_UINT32 offset,
FIT_READ_BYTES_FUNC  read_bytes_func,
FIT_BOOL  read_header 
)

Variable Documentation

const FIT_CONST_UINT8_PTR fit_base_type_invalids[FIT_BASE_TYPES]
const FIT_UINT8 fit_base_type_sizes[FIT_BASE_TYPES]