fit::FieldDescriptionMesg fieldDescFrontGearShiftCount;
fieldDescFrontGearShiftCount.SetDeveloperDataIndex(0);
fieldDescFrontGearShiftCount.SetFieldDefinitionNumber(1);
fieldDescFrontGearShiftCount.SetFitBaseTypeId(FIT_BASE_TYPE_UINT16);
fieldDescFrontGearShiftCount.SetFieldName(0, L"front_gear_shift_count");
fieldDescFrontGearShiftCount.SetUnits(0, L"count");
...
[super.fe Open:file];
[super.fe WriteMesg:fileId];
[super.fe WriteMesg:devId];
[super.fe WriteMesg:fieldDesc];
[super.fe WriteMesg:fieldDescFrontGearShiftCount];
...
// Write LapMessage
fit::LapMesg lap;
lap.SetTimestamp(1);
lap.SetEvent(FIT_EVENT_LAP);
lap.SetEventType(FIT_EVENT_TYPE_STOP);
fit::DeveloperField lapFrontGearShiftCountField(fieldDescFrontGearShiftCount, devId);
lapFrontGearShiftCountField.SetUINT16Value(1);
lap.AddDeveloperField(lapFrontGearShiftCountField);
[super.fe WriteMesg:lap];
// Write SessionMessage
fit::SessionMesg session;
session.SetTimestamp(1);
session.SetStartTime(1);
session.SetTotalElapsedTime(1);
session.SetSport(FIT_SPORT_CYCLING);
fit::DeveloperField sessionFrontGearShiftCountField(fieldDescFrontGearShiftCount, devId);
sessionFrontGearShiftCountField.SetUINT16Value(1);
lap.AddDeveloperField(sessionFrontGearShiftCountField);
[super.fe WriteMesg:session];
// Write ActivityMessage
fit::ActivityMesg activity;
activity.SetTimestamp(1);
activity.SetLocalTimestamp(1);
activity.SetNumSessions(1);
activity.SetType(FIT_ACTIVITY_MANUAL);
activity.SetEvent(FIT_EVENT_ACTIVITY);
activity.SetEventType(FIT_EVENT_TYPE_STOP);
[super.fe WriteMesg:activity];
if (![super.fe Close])
{
NSLog(@"Error closing file %@", super.fileName);
return -1;
}
fclose(file);
Any help with a workaround would be appreciated!