Skip to content

Commit 19e6cde

Browse files
committed
Add csvString format in sensor data
1 parent 353f2ac commit 19e6cde

18 files changed

+207
-0
lines changed

SensingKit/SKAccelerometerData.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,6 @@
3131

3232
- (instancetype)initWithAcceleration:(CMAcceleration)acceleration;
3333

34+
- (NSString *)csvString;
35+
3436
@end

SensingKit/SKAccelerometerData.m

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,13 @@ - (instancetype)initWithAcceleration:(CMAcceleration)acceleration
3535
return self;
3636
}
3737

38+
- (NSString *)csvString
39+
{
40+
return [NSString stringWithFormat:@"%f, %f, %f, %f",
41+
[self timestampEpoch],
42+
_acceleration.x,
43+
_acceleration.y,
44+
_acceleration.z];
45+
}
46+
3847
@end

SensingKit/SKActivityData.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,6 @@
3131

3232
- (instancetype)initWithActivity:(CMMotionActivity *)activity;
3333

34+
- (NSString *)csvString;
35+
3436
@end

SensingKit/SKActivityData.m

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,35 @@ - (instancetype)initWithActivity:(CMMotionActivity *)activity
3535
return self;
3636
}
3737

38+
- (NSString *)confidenceString
39+
{
40+
switch (_activity.confidence) {
41+
case CMMotionActivityConfidenceHigh:
42+
return @"High";
43+
44+
case CMMotionActivityConfidenceMedium:
45+
return @"Medium";
46+
47+
case CMMotionActivityConfidenceLow:
48+
return @"Low";
49+
50+
default:
51+
NSLog(@"Warning: Unknown confidence: %d", (int)_activity.confidence);
52+
return @"Unknown";
53+
}
54+
}
55+
56+
- (NSString *)csvString
57+
{
58+
return [NSString stringWithFormat:@"%f, %f, %d, %d, %d, %d, %d, %@",
59+
[self timestampEpoch],
60+
_activity.timestamp,
61+
_activity.stationary,
62+
_activity.walking,
63+
_activity.running,
64+
_activity.automotive,
65+
_activity.unknown,
66+
[self confidenceString]];
67+
}
68+
3869
@end

SensingKit/SKBatteryData.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,8 @@
3131
@property (nonatomic, readonly) CGFloat level;
3232
@property (nonatomic, readonly) UIDeviceBatteryState state;
3333

34+
- (NSString *)stateString;
35+
36+
- (NSString *)csvString;
37+
3438
@end

SensingKit/SKBatteryData.m

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,33 @@ - (instancetype)initWithLevel:(CGFloat)level withState:(UIDeviceBatteryState)sta
3636
return self;
3737
}
3838

39+
- (NSString *)stateString
40+
{
41+
switch (_state) {
42+
case UIDeviceBatteryStateCharging:
43+
return @"Charging";
44+
45+
case UIDeviceBatteryStateFull:
46+
return @"Full";
47+
48+
case UIDeviceBatteryStateUnplugged:
49+
return @"Unplugged";
50+
51+
case UIDeviceBatteryStateUnknown:
52+
return @"Unknown";
53+
54+
default:
55+
NSLog(@"Warning: Unknown state: %d", (int)_state);
56+
return @"Unknown";
57+
}
58+
}
59+
60+
- (NSString *)csvString
61+
{
62+
return [NSString stringWithFormat:@"%f, %@, %f",
63+
[self timestampEpoch],
64+
[self stateString],
65+
_level];
66+
}
67+
3968
@end

SensingKit/SKDeviceMotionData.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,4 +39,6 @@
3939
withRotationRate:(CMRotationRate)rotationRate
4040
withUserAcceleration:(CMAcceleration)userAcceleration;
4141

42+
- (NSString *)csvString;
43+
4244
@end

SensingKit/SKDeviceMotionData.m

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,26 @@ - (instancetype)initWithAattitude:(CMAttitude *)attitude
4343
return self;
4444
}
4545

46+
- (NSString *)csvString
47+
{
48+
return [NSString stringWithFormat:@"%f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %d, %f, %f, %f, %f, %f, %f",
49+
[self timestampEpoch],
50+
_attitude.roll,
51+
_attitude.pitch,
52+
_attitude.yaw,
53+
_gravity.x,
54+
_gravity.y,
55+
_gravity.z,
56+
_magneticField.field.x,
57+
_magneticField.field.y,
58+
_magneticField.field.z,
59+
_magneticField.accuracy,
60+
_rotationRate.x,
61+
_rotationRate.y,
62+
_rotationRate.z,
63+
_userAcceleration.x,
64+
_userAcceleration.y,
65+
_userAcceleration.z];
66+
}
67+
4668
@end

SensingKit/SKGyroscopeData.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,6 @@
3131

3232
- (instancetype)initWithRotationRate:(CMRotationRate)rotationRate;
3333

34+
- (NSString *)csvString;
35+
3436
@end

SensingKit/SKGyroscopeData.m

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,13 @@ - (instancetype)initWithRotationRate:(CMRotationRate)rotationRate
3535
return self;
3636
}
3737

38+
- (NSString *)csvString
39+
{
40+
return [NSString stringWithFormat:@"%f, %f, %f, %f",
41+
[self timestampEpoch],
42+
_rotationRate.x,
43+
_rotationRate.y,
44+
_rotationRate.z];
45+
}
46+
3847
@end

0 commit comments

Comments
 (0)