// // JSRunModel.h // JSRun Import Framework // // Created by Jonathan on 8/29/06. // Copyright 2006 Jonathan Saggau. All rights reserved. // /////////////////////////////////////////////////////////// // NOTE: All distances in kilometers ////////////////////////////////////////////////////////// #import @class JSRunGoal, JSRunDistanceHistory; @interface JSRunModel : NSObject { NSString *name; NSString *templateName; NSDate *start; NSNumber *duration; //it's a double NSNumber *distance; //kilometers NSNumber *calories; JSRunGoal *goal; NSNumber *weight; NSMutableArray *runEvents; NSNumber *XMLVersion; NSString *userID; JSRunDistanceHistory *runDistanceHistory; } #pragma mark - #pragma mark derived On The Fly // derived from runEvents array // uses NSPredicates from runEvent class to filter the events - (NSArray *) splits; - (NSArray *) kmSplits; - (NSArray *) miSplits; - (NSArray *) pauses; - (NSArray *) reportsToUser; - (NSArray *) powerSongs; #pragma mark - #pragma mark accessors - (NSString *)name; - (void)setName:(NSString *)aName; - (NSString *)templateName; - (void)setTemplateName:(NSString *)aTemplateName; - (NSDate *)start; - (void)setStart:(NSDate *)aStart; - (NSNumber *)duration; - (void)setDuration:(NSNumber *)aDuration; - (NSNumber *)distance; - (void)setDistance:(NSNumber *)aDistance; - (NSNumber *)calories; - (void)setCalories:(NSNumber *)aCalories; - (JSRunGoal *)goal; - (void)setGoal:(JSRunGoal *)aGoal; - (NSNumber *)weight; - (void)setWeight:(NSNumber *)aWeight; - (NSMutableArray *)runEvents; - (void)setRunEvents:(NSMutableArray *)aRunEvents; - (void)addRunEvent:(id)aRunEvent; - (void)removeRunEvent:(id)aRunEvent; - (NSNumber *)XMLVersion; - (void)setXMLVersion:(NSNumber *)anXMLVersion; - (NSString *)userID; - (void)setUserID:(NSString *)anUserID; - (JSRunDistanceHistory *)runDistanceHistory; - (void)setJSRunDistanceHistory:(JSRunDistanceHistory *)aJSRunDistanceHistory; @end