package Ġorg . team 5 4 1 9 . fault Ċ Ċ import Ġedu . wpi . first . hal . FR C Net Comm Ċ import Ġedu . wpi . first . hal . HAL Ċ import Ġedu . wpi . first . wp ilib j . Robot Base Ċ import Ġedu . wpi . first . wp ilib j . Timed Robot Ċ import Ġorg . team 5 4 1 9 . fault . math . units . SI Unit Ċ import Ġorg . team 5 4 1 9 . fault . math . units . Second Ċ import Ġorg . team 5 4 1 9 . fault . sub systems . Subsystem Ċ import Ġorg . team 5 4 1 9 . fault . sub systems . Subsystem Manager Ċ Ċ @ Suppress (" Too Many Functions ") Ċ abstract Ġclass ĠBer kel ium Robot ( period : ĠSI Unit < Second > Ġ= ĠSI Unit < Second >( 0 . 0 5 )) Ġ{ ĊĊĠĠĠ Ġprotected Ġval Ġwrapped Value Ġ= ĠW pi Timed Robot ( period . value ) ĊĊĠĠĠ Ġprotected Ġinner Ġclass ĠW pi Timed Robot ( period : ĠDouble Ġ= Ġ 0 . 0 5 ) Ġ: ĠTime d Robot ( period ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġk Language Kotlin Ġ= Ġ 6 ĊĊĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHAL . report ( FR C Net Comm . t ResourceType . k ResourceType _ Language , Ġk Language Kotlin ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġrobot Init () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Ber kel ium Robot . robot Init () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSub system Manager . init () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġaut onomous Init () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSub system Manager . auto Reset () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Ber kel ium Robot . aut onomous Init () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġtele op Init () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSub system Manager . tele op Reset () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Ber kel ium Robot . tele op Init () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġdisabled Init () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSub system Manager . zero Outputs () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Ber kel ium Robot . disabled Init () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġtest Init () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Ber kel ium Robot . test Init () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġrobot Periodic () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Ber kel ium Robot . robot Periodic () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Disabled ) ĠSub system Manager . periodic () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġaut onomous Periodic () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Ber kel ium Robot . aut onomous Periodic () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġtele op Periodic () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Ber kel ium Robot . tele op Periodic () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġdisabled Periodic () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Ber kel ium Robot . disabled Periodic () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġtest Periodic () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Ber kel ium Robot . test Periodic () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġrobot Init () Ġ{} ĊĠĠĠ Ġprotected Ġopen Ġfun Ġaut onomous Init () Ġ{} ĊĠĠĠ Ġprotected Ġopen Ġfun Ġtele op Init () Ġ{} ĊĠĠĠ Ġprotected Ġopen Ġfun Ġdisabled Init () Ġ{} ĊĠĠĠ Ġprotected Ġopen Ġfun Ġtest Init () Ġ{} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġrobot Periodic () Ġ{} ĊĠĠĠ Ġprotected Ġopen Ġfun Ġaut onomous Periodic () Ġ{} ĊĠĠĠ Ġprotected Ġopen Ġfun Ġtele op Periodic () Ġ{} ĊĠĠĠ Ġprotected Ġopen Ġfun Ġdisabled Periodic () Ġ{} ĊĠĠĠ Ġprotected Ġopen Ġfun Ġtest Periodic () Ġ{} ĊĊĠĠĠ Ġopen Ġoperator Ġfun ĠSub system . unary Plus () Ġ{ ĊĠĠĠĠĠĠĠ ĠSub system Manager . add Subsystem ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġstart () Ġ{ ĊĠĠĠĠĠĠĠ ĠRobot Base . start Robot Ġ{ Ġwrapped Value Ġ} ĊĠĠĠ Ġ} Ċ } Ċ