Versatile data structure for workout session templates and workout sessions
AssigneeMyFitnessPal, Inc.
InventorsBen Hamill, Dory Glauberman, James Lyke, Jacob Peace, Luis Valerio, Carl Youngblood
Life of this patent
Estimating the term…
Abstract
A fitness tracking system and methods collecting fitness data for a user during a workout session are disclosed. The fitness tracking system utilizes a versatile data structure for robustly representing complex workout session templates and recording fitness data associated with individual workout sessions. The versatile data structure enables detailed fitness data to be recorded in association with complex workout session templates in a manner that enables detailed analysis and a less cumbersome user experience.
Claims20
A method of collecting fitness data for a user during a workout session, the method comprising:
- storing, in a memory, a first data structure defining a workout session template formed by a first plurality of exercises, the first data structure having a first tree structure that depends upon and represents an organization of the first plurality of exercises in the workout session template;
- presenting, with a display screen, a graphical depiction of the workout session template to the user in response to receiving a request from the user to begin a workout;
- receiving, with a user interface, first inputs defining at least one change to the first data structure;
- generating, with the processor, a second data structure defining the workout session formed by a second plurality of exercises, the second data structure having a second tree structure that depends upon and represents an organization of the second plurality of exercises in the workout session, the second data structure being derived from and storing data of the first data structure and representing the change to the first data structure;
- and
- storing, in the memory, the second data structure.
A method of collecting fitness data for a user during a workout session, the method comprising:
- storing, in a memory, a plurality of first data structures each defining a respective workout session template formed by a respective first plurality of exercises, each data structure in the plurality of first data structures having a respective first tree structure that depends upon and represents an organization of the respective first plurality of exercises in the respective workout session template;
- presenting, with a display screen, a list of the respective workout session templates defined in the plurality of first data structures;
- presenting, with a display screen, a graphical depiction of a first workout session template to the user in response to receiving a selection of the first workout session template from the list of templates;
- receiving, with a user interface, inputs defining an actual value for at least one performance metric for at least one exercise in the respective first plurality of exercises that form the first workout session template;
- generating, with the processor, a second data structure defining the workout session formed by a second plurality of exercises, the second data structure having a second tree structure that depends upon and represents an organization of the second plurality of exercises in the workout session, the second data structure being derived from and storing data of the respective first data structure that defines the first workout session template, the second tree structure storing the actual value for the at least one performance metric for the at least one exercise;
- and
- storing, in the memory, the second data structure.
An electronic device for collecting fitness data for a user during a workout session comprising:
- a display screen configured to display a graphical user interface to a user;
- a user interface configured to receive inputs from the user;
- a memory configured to store a first data structure defining a workout session template formed by a first plurality of exercises, the first data structure having a first tree structure that depends upon and represents an organization of the first plurality of exercises in the workout session template;
- and
- a processor operably connected to the display screen, the user interface, and the memory, the processor configured to execute program instructions to:
- operate the display screen to present a graphical depiction of the workout session template to the user in response to receiving a request from the user to begin a workout;
- operate the user interface to receive first inputs defining at least one change to the first data structure, the at least one change to the first data structure including at least one of (i) an actual value for at least one performance metric for at least one exercise in the first plurality of exercises, (ii) a change to the exercises in the first plurality of exercises, and (iii) a change to the organization of the first plurality of exercises in the workout session template;
- generate a second data structure defining the workout session formed by a second plurality of exercises, the second data structure having a second tree structure that depends upon and represents an organization of the second plurality of exercises in the workout session, the second data structure being derived from and storing data of the first data structure and representing the change to the first data structure;
- and
- operate the memory store the second data structure.
Dependencies are inferred from the claim text.