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
WFDeviceInformation.h
Go to the documentation of this file.
1 //
2 // WFDeviceInformation.h
3 // DiscoveryDemo
4 //
5 // Created by Murray Hughes on 26/11/2013.
6 // Copyright (c) 2013 Wahoo Fitness. All rights reserved.
7 //
8 
9 #import <Foundation/Foundation.h>
10 #import <WFConnector/hardware_connector_types.h>
11 
12 @class WFConnectionParams;
13 
21 @interface WFDeviceInformation : NSObject
22 {
23  NSDate* _lastUpdate;
24  NSUUID* UUID;
25  NSString* deviceIdentifier;
26  NSString* name;
27  NSString* manufacturer;
29  NSString* firmwareVersion;
30  NSString* hardwareVersion;
31  NSString* serialNumber;
32  NSString* productKey;
33  double batteryLevel; // -1 or [0...1]
37 
38 
39  NSDate* lastlastUpdate;
40  NSString* rawName;
41  NSMutableArray* updateDeltas;
43 }
44 
48 @property (nonatomic, retain, readonly) NSUUID* UUID;
49 
53 @property (nonatomic, copy, readonly) NSString* deviceIdentifier;
54 
58 @property (atomic, assign, readonly) double signalStrength;
59 
63 @property (nonatomic, assign, readonly) WFNetworkType_t networkType;
64 
68 @property (nonatomic, assign, readonly) BOOL connected;
69 
73 @property (nonatomic, copy, readonly) NSString* name;
74 
78 @property (nonatomic, copy, readonly) NSString* manufacturer;
79 
83 @property (atomic, copy, readonly) NSDate* lastUpdate;
84 
90 @property (nonatomic, retain, readonly) NSArray* supportedSensorTypes;
91 
96 @property (nonatomic, assign, readonly) double batteryLevel; // -1 or [0...1]
97 
102 @property (nonatomic, copy, readonly) NSString* firmwareVersion;
103 
108 @property (nonatomic, copy, readonly) NSString* hardwareVersion;
109 
114 @property (nonatomic, copy, readonly) NSString* serialNumber;
115 
122 @property (nonatomic, copy, readonly) NSString* productKey;
123 
127 @property (nonatomic, copy, readonly) NSString* rawName;
128 
133 - (BOOL)isBatteryLevelSupported;
134 
139 - (WFConnectionParams*)connectionParamsForSensorType:(WFSensorType_t)sensorType;
140 
146 - (NSArray*)connecitonParamsForAllSupportSensorTypes;
147 
151 @property (atomic, assign, readonly) double signalStrenth UNAVAILABLE_ATTRIBUTE;
152 
153 
154 @end
155 
156 
161 extern NSString * const WFProductKeyWahooFitnessBlueHR;
162 extern NSString * const WFProductKeyWahooFitnessBlueSC;
163 extern NSString * const WFProductKeyWahooFitnessTICKR;
164 extern NSString * const WFProductKeyWahooFitnessTICKRRun;
165 extern NSString * const WFProductKeyWahooFitnessTICKRX;
166 extern NSString * const WFProductKeyWahooFitnessKICKR;
167 extern NSString * const WFProductKeyWahooFitnessKICKRSnap;
168 extern NSString * const WFProductKeyWahooFitnessRPM;
169 extern NSString * const WFProductKeyWahooFitnessRPMSpeed;
170 extern NSString * const WFProductKeyWahooFitnessRFLKT;
171 extern NSString * const WFProductKeyWahooFitnessRFLKTPlus;
172 extern NSString * const WFProductKeyWahooFitnessCasioSTB1000;
173 extern NSString * const WFProductKeyWahooFitnessBalanceScale;
174 extern NSString * const WFProductKeyWahooFitnessPROTKT;
175 extern NSString * const WFProductKeyWahooFitnessANTKey;
176 extern NSString * const WFProductKeyMagellanEcho;
177 extern NSString * const WFProductKeyMagellanEchoFit;
178 extern NSString * const WFProductKeyTimexM054;
179 extern NSString * const WFProductKeyStagesPower;
180 extern NSString * const WFProductKeyKineticInRide;
181 extern NSString * const WFProductKeyMIOGlobalAlpha;
182 extern NSString * const WFProductKeyPolarRUN;
183 extern NSString * const WFProductKeyBeetsBLU;
184 extern NSString * const WFProductKeyCateyeHR;
185 extern NSString * const WFProductKeyCateyeCSC;
186 extern NSString * const WFProductKeyMiCoachHRM;
187 extern NSString * const WFProductKeyPowerBeamProBT;
188 extern NSString * const WFProductKeyPowerCalBT;
189 extern NSString * const WFProductKeyPowerTapBT;
190 extern NSString * const WFProductKeyPEARHRM;
191 extern NSString * const WFProductKey4iiiiViiiiva;
192 extern NSString * const WFProductKeyScoscheSpeedCadence;
193 extern NSString * const WFProductKeyScoscheHRM;
194 extern NSString * const WFProductKeySleepRateHR;
195 extern NSString * const WFProductKeySmartEaseHR;
196 extern NSString * const WFProductKeySpreeFitnessMonitor;
197 extern NSString * const WFProductKeyLookPolarKeoPower;
198 
NSString *const WFProductKeyWahooFitnessPROTKT
NSString *const WFProductKeyWahooFitnessTICKRX
NSString *const WFProductKeyCateyeHR
NSString *const WFProductKeyWahooFitnessTICKR
NSString *const WFProductKeyStagesPower
NSString *const WFProductKeySmartEaseHR
NSString * manufacturer
Manufacturer's name if known.
Definition: WFDeviceInformation.h:27
NSString *const WFProductKeyScoscheSpeedCadence
NSString *const WFProductKeyPEARHRM
NSString *const WFProductKeyWahooFitnessRFLKT
NSString *const WFProductKeyWahooFitnessRPMSpeed
NSString * serialNumber
Gets serial number if known.
Definition: WFDeviceInformation.h:31
NSString * hardwareVersion
Gets hardware version if known.
Definition: WFDeviceInformation.h:30
NSString * firmwareVersion
Gets firmware version if known.
Definition: WFDeviceInformation.h:29
This class represents a collection of general information about a device.
Definition: WFDeviceInformation.h:21
BOOL dummyDevice
Definition: WFDeviceInformation.h:42
NSString * deviceIdentifier
BTLE UUID or ANT+ Device ID.
Definition: WFDeviceInformation.h:25
Represents the connection parameters used to establish a connection to an ANT device.
Definition: WFConnectionParams.h:23
NSString * productKey
Unque product key for known devices.
Definition: WFDeviceInformation.h:32
NSString *const WFProductKeyWahooFitnessTICKRRun
NSString *const WFProductKeyKineticInRide
NSString *const WFProductKeyPolarRUN
NSString *const WFProductKeyWahooFitnessANTKey
NSDate * lastlastUpdate
Definition: WFDeviceInformation.h:39
NSString *const WFProductKeyPowerTapBT
NSString *const WFProductKeyMagellanEcho
NSString *const WFProductKeyPowerBeamProBT
NSString * name
Name of the device.
Definition: WFDeviceInformation.h:26
NSArray * supportedSensorTypes
Array of WFSensorType_t wrapped in NSNumbers that are supported by this device.
Definition: WFDeviceInformation.h:28
signed char BOOL
Definition: types.h:110
NSString *const WFProductKeyMIOGlobalAlpha
NSString *const WFProductKeyMagellanEchoFit
NSString *const WFProductKeySpreeFitnessMonitor
NSString *const WFProductKeyTimexM054
WFNetworkType_t networkType
Gets the network type of the devie, BTLE or ANT.
Definition: WFDeviceInformation.h:35
NSString *const WFProductKeyWahooFitnessBlueSC
NSString *const WFProductKeyWahooFitnessBlueHR
Defined contants of known products.
NSString *const WFProductKeyPowerCalBT
NSString *const WFProductKeyWahooFitnessBalanceScale
double signalStrength
Gets the last known signal strength.
Definition: WFDeviceInformation.h:34
NSString *const WFProductKeyLookPolarKeoPower
NSString *const WFProductKeyBeetsBLU
NSString *const WFProductKey4iiiiViiiiva
NSString *const WFProductKeyWahooFitnessRFLKTPlus
NSString *const WFProductKeyScoscheHRM
NSString *const WFProductKeyWahooFitnessKICKR
NSString *const WFProductKeyMiCoachHRM
NSString *const WFProductKeyWahooFitnessCasioSTB1000
NSUUID * UUID
Unquie ID for this device, BTL devices use the UUID, ANT+ use a 128.
Definition: WFDeviceInformation.h:24
NSString *const WFProductKeyWahooFitnessKICKRSnap
NSString * rawName
Raw Bluetooth advertising name.
Definition: WFDeviceInformation.h:40
WFSensorType_t
Describes a type of hardware sensor device.
Definition: hardware_connector_types.h:52
NSDate * _lastUpdate
Definition: WFDeviceInformation.h:23
NSMutableArray * updateDeltas
Definition: WFDeviceInformation.h:41
BOOL connected
TRUE if the sensor is currently connected, otherwise FALSE.
Definition: WFDeviceInformation.h:36
double batteryLevel
Gets the last known battery level.
Definition: WFDeviceInformation.h:33
NSString *const WFProductKeySleepRateHR
NSString *const WFProductKeyWahooFitnessRPM
NSString *const WFProductKeyCateyeCSC
WFNetworkType_t
Describes a type of hardware sensor device.
Definition: hardware_connector_types.h:146