/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 1 8 , ĠCh is wick ĠForest Ċ Ġ* Ċ Ġ* Ġ ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġ Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* Ġ ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* Ġ ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* Ġ ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* Ġ ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . pi j . z work out . uc Ċ Ċ import Ġcom . pi j . z work out . persistence . api .* Ċ Ċ /** Ċ Ġ* Ċ Ġ* ĠCreated Ġon Ġ 1 3 / 0 3 / 2 0 1 8 . Ċ Ġ* Ċ Ġ* Ġ@ author ĠP ier re jean Ċ Ġ*/ Ċ Ċ internal Ġclass ĠPers ist able Work out Converter Ġ{ ĊĊĠĠĠ Ġfun Ġconvert ( input : ĠWork out ): ĠPers ist able Work out Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠPers ist able Work out ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= ĠEmpty String ( input . name ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġinput . description , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġs port Type Ġ= ĠS port Type . BI KE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġefforts Ġ= ĠPers ist able Eff ort s ( input . eff ort s . map Ġ{ Ġconvert ( it ) Ġ}) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġconvert ( input : ĠE ff ort ): ĠPers ist able Eff ort Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwith ( input ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠSte ady State Ġ-> ĠPers ist able St eady State ( duration , Ġpower . relative , Ġcad ence ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠR amp Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( up ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPers ist able R amp ( duration , Ġstart Power . relative , Ġend Power . relative , Ġstart Cad ence , Ġend Cad ence ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĠPers ist able Cool Down ( duration , Ġstart Power . relative , Ġend Power . relative , Ġstart Cad ence , Ġend Cad ence ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġconvert ( input : ĠPers ist able Work out ): ĠWork out Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwith ( input ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠWork out ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġname . value Ġ?: Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġdescription Ġ?: Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġefforts Ġ= Ġefforts ?. eff ort s ?. map Ġ{ Ġconvert ( it ) Ġ} Ġ?: ĠlistOf () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġconvert ( input : ĠPers ist able Eff ort ): ĠE ff ort Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwith ( input ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠPers ist able St eady State Ġ-> ĠSte ady State ( duration , ĠRelative Power ( power ), Ġcad ence ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠPers ist able R amp Ġ-> ĠR amp ( duration , ĠRelative Power ( start Power ), ĠRelative Power ( end Power ), Ġstart Cad ence , Ġend Cad ence ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠPers ist able Cool Down Ġ-> ĠR amp ( duration , ĠRelative Power ( start Power ), ĠRelative Power ( end Power ), Ġstart Cad ence , Ġend Cad ence ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠTODO (" not Ġimplemented ") Ġ// To Ġchange Ġbody Ġof Ġcreated Ġfunctions Ġuse ĠFile Ġ| ĠSettings Ġ| ĠFile ĠTemplates . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊ Ċ }