Running Manager  1.7
API for Running Manager (https://github.com/HWiman-ICONIC/running-manager)
Public Member Functions | Public Attributes | List of all members
Plan Struct Reference

A training plan. More...

#include <Plan.h>

Public Member Functions

 Plan ()
 Default constructor. More...
 
 Plan (PTDistance distance, PTLevel level, wxDateTime date, wxArrayInt weekDayOrder)
 Constructor. More...
 
void CreateTraining (wxString const &sTraining, wxString const &sIntensity, wxDateTime const &day, Training &training)
 Create training/activity from string. More...
 
std::list< Training * > GetTraining (wxDateTime const &day)
 Get training for this day. More...
 
wxString ToString ()
 Convert this plan to a string. More...
 
void CreateProgram (PTUnit const &unit)
 Create training program from given settings. More...
 
void Print ()
 Helper printing the training program to current log output. More...
 
bool SaveCsv (wxString const &filename)
 Save training program in Comma Separated Value file. More...
 
std::vector< std::vector< int > > GetTrainingTypePerWeekDay ()
 Get number of instances for each training type for each weekday. More...
 

Public Attributes

std::vector< Weekweeks
 
PTDistance distance
 
PTLevel level
 
PTUnit outUnit
 
wxDateTime date
 
wxDateSpan programLength
 
wxDateTime startTime
 
std::map< int, wxString > distanceString
 
wxTextFile textFile
 
wxArrayInt weekDayOrder
 

Detailed Description

A training plan.

Constructor & Destructor Documentation

◆ Plan() [1/2]

Plan::Plan ( )

Default constructor.

◆ Plan() [2/2]

Plan::Plan ( PTDistance  distance,
PTLevel  level,
wxDateTime  date,
wxArrayInt  weekDayOrder 
)

Constructor.

Parameters
distanceCompetition distance
levelTraing plan level
dateCompetition date
weekDayOrderWhich weekdays to have long runs, rest, intervals etc.

Member Function Documentation

◆ CreateProgram()

void Plan::CreateProgram ( PTUnit const &  unit)

Create training program from given settings.

Internally calls CreatePlan, which calls SetPlan.

Parameters
unitUnit of distance (km|miles)

◆ CreateTraining()

void Plan::CreateTraining ( wxString const &  sTraining,
wxString const &  sIntensity,
wxDateTime const &  day,
Training training 
)

Create training/activity from string.

Parameters
sTrainingInput string
sIntensityOutput intensity
dayDay
trainingTraining/activity

◆ GetTraining()

std::list<Training*> Plan::GetTraining ( wxDateTime const &  day)

Get training for this day.

Possibly two trainings so a list is returned

Parameters
dayInput day
Returns
Training(s) for this day

◆ GetTrainingTypePerWeekDay()

std::vector<std::vector<int> > Plan::GetTrainingTypePerWeekDay ( )

Get number of instances for each training type for each weekday.

Returns
Vector with seven entries, one per weekday starting with Monday. The entries are vectors with number of instances for each of the training types

◆ Print()

void Plan::Print ( )

Helper printing the training program to current log output.

◆ SaveCsv()

bool Plan::SaveCsv ( wxString const &  filename)

Save training program in Comma Separated Value file.

This file can be imported in e.g. Google Calendar.

Parameters
filenameOutput file name
Returns
True on success

◆ ToString()

wxString Plan::ToString ( )

Convert this plan to a string.

Returns
plan as a string

Member Data Documentation

◆ date

wxDateTime Plan::date

◆ distance

PTDistance Plan::distance

◆ distanceString

std::map<int, wxString> Plan::distanceString

◆ level

PTLevel Plan::level

◆ outUnit

PTUnit Plan::outUnit

◆ programLength

wxDateSpan Plan::programLength

◆ startTime

wxDateTime Plan::startTime

◆ textFile

wxTextFile Plan::textFile

◆ weekDayOrder

wxArrayInt Plan::weekDayOrder

◆ weeks

std::vector<Week> Plan::weeks

The documentation for this struct was generated from the following file: