CharacteristicGymConnectMeasurement

@available(swift 3.1)
@available(iOS 10.0, tvOS 10.0, watchOS 3.0, macOS 10.12, *)
final public class CharacteristicGymConnectMeasurement : Characteristic
extension CharacteristicGymConnectMeasurement: Hashable
extension CharacteristicGymConnectMeasurement: Equatable

GymConnect Equipment Data Measurement Characteristic

  • Characteristic Name

    Declaration

    Swift

    public static var name: String { get }
  • Characteristic UUID

    Declaration

    Swift

    public static var uuidString: String { get }
  • Name of the Characteristic

    Declaration

    Swift

    public var name: String { get }
  • Characteristic UUID String

    Declaration

    Swift

    public var uuidString: String { get }
  • First Packet of Logical Update

    Measurement data can come from multiple notify events this indicates if it is the first event. All Updates until the final event can be considered one logical update

    Declaration

    Swift

    private(set) public var firstUpdatePacket: Bool { get }
  • Final Packet of Logical Update

    Indicates the last packet of the Logical Update

    Declaration

    Swift

    private(set) public var finalUpdatePacket: Bool { get }
  • Time Information

    Declaration

    Swift

    private(set) public var time: FitnessMachineTime { get }
  • Heart Rate

    Declaration

    Swift

    private(set) public var heartRate: Measurement<UnitCadence>? { get }
  • Intensity / Level

    This can mean Intesity or Level based on the equipment type

    Declaration

    Swift

    private(set) public var intensity: UInt8? { get }
  • Resistance

    Declaration

    Swift

    private(set) public var resistnace: Double? { get }
  • Current Speed

    Declaration

    Swift

    private(set) public var speed: FitnessMachineSpeedType? { get }
  • Cadence

    Each equpment type will determine how this should be displayed.

    Examples:

    • Bike: RPM (revolutions per minute)
    • StairClimber: steps/min
    • Rower: strokes/min
    • CrosTrainer: strides/min

    Declaration

    Swift

    private(set) public var cadence: Double? { get }
  • Total Movements

    Total Count of Movements (Steps, strokes, etc..)

    Declaration

    Swift

    private(set) public var totalMovements: Double? { get }
  • Total Horizontal Distance

    Declaration

    Swift

    private(set) public var totalHorizontalDistance: Measurement<UnitLength>? { get }
  • Total Vertical Distance

    If totalNegitiveVerticalDistance is present then this should be interpreted as Positive Vertical Distance

    Declaration

    Swift

    private(set) public var totalVerticalDistance: Measurement<UnitLength>? { get }
  • Total Negitive Vertical Distance

    Declaration

    Swift

    private(set) public var totalNegitiveVerticalDistance: Measurement<UnitLength>? { get }
  • Total Energy

    Declaration

    Swift

    private(set) public var totalEnergy: Measurement<UnitEnergy>? { get }
  • Energy Per Hour

    Declaration

    Swift

    private(set) public var energyPerHour: Measurement<UnitEnergy>? { get }
  • Metabolic Equivalent (METs)

    Declaration

    Swift

    private(set) public var metabolicEquivalent: Double? { get }
  • Instantaneous Power

    Declaration

    Swift

    private(set) public var power: FitnessMachinePowerType? { get }
  • Torque

    Declaration

    Swift

    private(set) public var torque: Measurement<UnitTorque>? { get }
  • Current Gear

    Declaration

    Swift

    private(set) public var currentGear: UInt8? { get }
  • Current Grade

    • 100%: 45 degrees uphill
    • -100%: 45 degress downhill

    Declaration

    Swift

    private(set) public var grade: Measurement<UnitPercent>? { get }
  • Ramp Angle

    • 0 degrees: Flat
    • 90 degrees: Straight Up
    • -90 degrees: Straight Down

    Declaration

    Swift

    private(set) public var rampAngle: Measurement<UnitAngle>? { get }
  • Current Floor Rate

    Declaration

    Swift

    private(set) public var floorRate: Measurement<UnitCadence>? { get }
  • Total Floors

    Count of Floors

    Declaration

    Swift

    private(set) public var totalFloors: Double? { get }
  • Total Laps

    Declaration

    Swift

    private(set) public var totalLaps: Double? { get }
  • Current Movement Length

    Movement Length describes the movement length. For example step length, stroke length. This coincides with Cadence

    Declaration

    Swift

    private(set) public var movementLength: Measurement<UnitLength>? { get }
  • Decodes Characteristic Data into Characteristic

    Declaration

    Swift

    public class func decode<C>(with data: Data) -> Result<C, BluetoothDecodeError> where C : Characteristic

    Parameters

    data

    Characteristic Data

    Return Value

    Characteristic Result

  • Encodes the Characteristic into Data

    Declaration

    Swift

    public func encode() -> Result<Data, BluetoothEncodeError>

    Return Value

    Characteristic Data Result

  • Hashes the essential components of this value by feeding them into the given hasher.

    Implement this method to conform to the Hashable protocol. The components used for hashing must be the same as the components compared in your type’s == operator implementation. Call hasher.combine(_:) with each of these components.

    Important

    Never call finalize() on hasher. Doing so may become a compile-time error in the future.

    Declaration

    Swift

    public func hash(into hasher: inout Hasher)

    Parameters

    hasher

    The hasher to use when combining the components of this instance.

  • Returns a Boolean value indicating whether two values are equal.

    Equality is the inverse of inequality. For any values a and b, a == b implies that a != b is false.

    Declaration

    Swift

    public static func == (lhs: CharacteristicGymConnectMeasurement, rhs: CharacteristicGymConnectMeasurement) -> Bool

    Parameters

    lhs

    A value to compare.

    rhs

    Another value to compare.