From 4362eb56c393b22e0c58c923701ca7356f4a4352 Mon Sep 17 00:00:00 2001 From: GitHub Actions Bot <> Date: Thu, 26 Sep 2024 04:17:40 +0000 Subject: [PATCH] Generated documentation --- docs/__404error.html | 100 + .../RoverControlDashboard-class-sidebar.html | 40 + docs/app/RoverControlDashboard-class.html | 410 ++ .../RoverControlDashboard.html | 111 + docs/app/RoverControlDashboard/build.html | 149 + docs/app/app-library-sidebar.html | 15 + docs/app/app-library.html | 158 + docs/app/binghamtonGreen-constant.html | 113 + docs/categories.json | 1 + docs/data/ArmCommand-class-sidebar.html | 111 + docs/data/ArmCommand-class.html | 1303 +++++ .../ArmCommand/ArmCommand.fromBuffer.html | 110 + docs/data/ArmCommand/ArmCommand.fromJson.html | 110 + docs/data/ArmCommand/ArmCommand.html | 167 + docs/data/ArmCommand/calibrate.html | 150 + docs/data/ArmCommand/clearCalibrate.html | 118 + docs/data/ArmCommand/clearElbow.html | 118 + docs/data/ArmCommand/clearGripperLift.html | 118 + docs/data/ArmCommand/clearIkX.html | 118 + docs/data/ArmCommand/clearIkY.html | 118 + docs/data/ArmCommand/clearIkZ.html | 118 + docs/data/ArmCommand/clearJab.html | 118 + docs/data/ArmCommand/clearShoulder.html | 118 + docs/data/ArmCommand/clearStop.html | 118 + docs/data/ArmCommand/clearSwivel.html | 118 + docs/data/ArmCommand/clearVersion.html | 118 + docs/data/ArmCommand/clone.html | 125 + docs/data/ArmCommand/copyWith.html | 128 + docs/data/ArmCommand/create.html | 113 + docs/data/ArmCommand/createEmptyInstance.html | 120 + docs/data/ArmCommand/createRepeated.html | 112 + docs/data/ArmCommand/elbow.html | 150 + docs/data/ArmCommand/ensureElbow.html | 118 + docs/data/ArmCommand/ensureGripperLift.html | 118 + docs/data/ArmCommand/ensureShoulder.html | 118 + docs/data/ArmCommand/ensureSwivel.html | 118 + docs/data/ArmCommand/ensureVersion.html | 118 + docs/data/ArmCommand/getDefault.html | 113 + docs/data/ArmCommand/gripperLift.html | 154 + docs/data/ArmCommand/hasCalibrate.html | 118 + docs/data/ArmCommand/hasElbow.html | 118 + docs/data/ArmCommand/hasGripperLift.html | 118 + docs/data/ArmCommand/hasIkX.html | 118 + docs/data/ArmCommand/hasIkY.html | 118 + docs/data/ArmCommand/hasIkZ.html | 118 + docs/data/ArmCommand/hasJab.html | 118 + docs/data/ArmCommand/hasShoulder.html | 118 + docs/data/ArmCommand/hasStop.html | 118 + docs/data/ArmCommand/hasSwivel.html | 118 + docs/data/ArmCommand/hasVersion.html | 118 + docs/data/ArmCommand/ikX.html | 153 + docs/data/ArmCommand/ikY.html | 150 + docs/data/ArmCommand/ikZ.html | 150 + docs/data/ArmCommand/info_.html | 118 + docs/data/ArmCommand/jab.html | 153 + docs/data/ArmCommand/shoulder.html | 150 + docs/data/ArmCommand/stop.html | 153 + docs/data/ArmCommand/swivel.html | 153 + docs/data/ArmCommand/version.html | 150 + docs/data/ArmData-class-sidebar.html | 97 + docs/data/ArmData-class.html | 1125 ++++ docs/data/ArmData/ArmData.fromBuffer.html | 110 + docs/data/ArmData/ArmData.fromJson.html | 110 + docs/data/ArmData/ArmData.html | 142 + docs/data/ArmData/base.html | 150 + docs/data/ArmData/clearBase.html | 118 + docs/data/ArmData/clearCurrentPosition.html | 118 + docs/data/ArmData/clearElbow.html | 118 + docs/data/ArmData/clearShoulder.html | 118 + docs/data/ArmData/clearTargetPosition.html | 118 + docs/data/ArmData/clearVersion.html | 118 + docs/data/ArmData/clone.html | 125 + docs/data/ArmData/copyWith.html | 128 + docs/data/ArmData/create.html | 113 + docs/data/ArmData/createEmptyInstance.html | 120 + docs/data/ArmData/createRepeated.html | 112 + docs/data/ArmData/currentPosition.html | 150 + docs/data/ArmData/elbow.html | 150 + docs/data/ArmData/ensureBase.html | 118 + docs/data/ArmData/ensureCurrentPosition.html | 118 + docs/data/ArmData/ensureElbow.html | 118 + docs/data/ArmData/ensureShoulder.html | 118 + docs/data/ArmData/ensureTargetPosition.html | 118 + docs/data/ArmData/ensureVersion.html | 118 + docs/data/ArmData/getDefault.html | 113 + docs/data/ArmData/hasBase.html | 118 + docs/data/ArmData/hasCurrentPosition.html | 118 + docs/data/ArmData/hasElbow.html | 118 + docs/data/ArmData/hasShoulder.html | 118 + docs/data/ArmData/hasTargetPosition.html | 118 + docs/data/ArmData/hasVersion.html | 118 + docs/data/ArmData/info_.html | 118 + docs/data/ArmData/shoulder.html | 150 + docs/data/ArmData/targetPosition.html | 150 + docs/data/ArmData/version.html | 150 + docs/data/ArmMetrics-class-sidebar.html | 43 + docs/data/ArmMetrics-class.html | 440 ++ docs/data/ArmMetrics/ArmMetrics.html | 111 + docs/data/ArmMetrics/allMetrics.html | 142 + docs/data/ArmMetrics/getMotorData.html | 122 + docs/data/ArmMetrics/name.html | 127 + docs/data/ArmMetrics/parseVersion.html | 122 + docs/data/ArmMetrics/supportedVersion.html | 127 + docs/data/ArmMetrics/versionCommand.html | 127 + docs/data/ArmSettings-class-sidebar.html | 36 + docs/data/ArmSettings-class.html | 319 ++ .../ArmSettings/ArmSettings.fromJson.html | 120 + docs/data/ArmSettings/ArmSettings.html | 128 + docs/data/ArmSettings/elbow.html | 115 + docs/data/ArmSettings/hashCode.html | 145 + docs/data/ArmSettings/ikIncrement.html | 115 + docs/data/ArmSettings/lift.html | 115 + docs/data/ArmSettings/noSuchMethod.html | 151 + docs/data/ArmSettings/operator_equals.html | 141 + docs/data/ArmSettings/pinch.html | 115 + docs/data/ArmSettings/rotate.html | 115 + docs/data/ArmSettings/runtimeType.html | 120 + docs/data/ArmSettings/shoulder.html | 115 + docs/data/ArmSettings/swivel.html | 115 + docs/data/ArmSettings/toJson.html | 124 + docs/data/ArmSettings/toString.html | 123 + docs/data/ArmSettings/useIK.html | 115 + docs/data/AutonomyCommand-class-sidebar.html | 90 + docs/data/AutonomyCommand-class.html | 1035 ++++ .../AutonomyCommand.fromBuffer.html | 110 + .../AutonomyCommand.fromJson.html | 110 + .../data/AutonomyCommand/AutonomyCommand.html | 137 + docs/data/AutonomyCommand/abort.html | 150 + docs/data/AutonomyCommand/arucoId.html | 150 + docs/data/AutonomyCommand/clearAbort.html | 118 + docs/data/AutonomyCommand/clearArucoId.html | 118 + .../AutonomyCommand/clearDestination.html | 118 + docs/data/AutonomyCommand/clearTask.html | 118 + docs/data/AutonomyCommand/clearVersion.html | 118 + docs/data/AutonomyCommand/clone.html | 125 + docs/data/AutonomyCommand/copyWith.html | 128 + docs/data/AutonomyCommand/create.html | 113 + .../AutonomyCommand/createEmptyInstance.html | 120 + docs/data/AutonomyCommand/createRepeated.html | 112 + docs/data/AutonomyCommand/destination.html | 150 + .../AutonomyCommand/ensureDestination.html | 118 + docs/data/AutonomyCommand/ensureVersion.html | 118 + docs/data/AutonomyCommand/getDefault.html | 113 + docs/data/AutonomyCommand/hasAbort.html | 118 + docs/data/AutonomyCommand/hasArucoId.html | 118 + docs/data/AutonomyCommand/hasDestination.html | 118 + docs/data/AutonomyCommand/hasTask.html | 118 + docs/data/AutonomyCommand/hasVersion.html | 118 + docs/data/AutonomyCommand/info_.html | 118 + docs/data/AutonomyCommand/task.html | 150 + docs/data/AutonomyCommand/version.html | 150 + docs/data/AutonomyData-class-sidebar.html | 92 + docs/data/AutonomyData-class.html | 1059 ++++ .../AutonomyData/AutonomyData.fromBuffer.html | 110 + .../AutonomyData/AutonomyData.fromJson.html | 110 + docs/data/AutonomyData/AutonomyData.html | 147 + docs/data/AutonomyData/clearCrash.html | 118 + docs/data/AutonomyData/clearDestination.html | 118 + docs/data/AutonomyData/clearState.html | 118 + docs/data/AutonomyData/clearTask.html | 118 + docs/data/AutonomyData/clearVersion.html | 118 + docs/data/AutonomyData/clone.html | 125 + docs/data/AutonomyData/copyWith.html | 128 + docs/data/AutonomyData/crash.html | 150 + docs/data/AutonomyData/create.html | 113 + .../AutonomyData/createEmptyInstance.html | 120 + docs/data/AutonomyData/createRepeated.html | 112 + docs/data/AutonomyData/destination.html | 150 + docs/data/AutonomyData/ensureDestination.html | 118 + docs/data/AutonomyData/ensureVersion.html | 118 + docs/data/AutonomyData/getDefault.html | 113 + docs/data/AutonomyData/hasCrash.html | 118 + docs/data/AutonomyData/hasDestination.html | 118 + docs/data/AutonomyData/hasState.html | 118 + docs/data/AutonomyData/hasTask.html | 118 + docs/data/AutonomyData/hasVersion.html | 118 + docs/data/AutonomyData/info_.html | 118 + docs/data/AutonomyData/obstacles.html | 124 + docs/data/AutonomyData/path.html | 124 + docs/data/AutonomyData/state.html | 150 + docs/data/AutonomyData/task.html | 150 + docs/data/AutonomyData/version.html | 150 + docs/data/AutonomyState-class-sidebar.html | 38 + docs/data/AutonomyState-class.html | 370 ++ .../data/AutonomyState/ABORTING-constant.html | 112 + .../AutonomyState/APPROACHING-constant.html | 112 + .../AT_DESTINATION-constant.html | 112 + .../AUTONOMY_STATE_UNDEFINED-constant.html | 112 + docs/data/AutonomyState/DRIVING-constant.html | 112 + .../AutonomyState/NO_SOLUTION-constant.html | 112 + docs/data/AutonomyState/PATHING-constant.html | 112 + .../AutonomyState/SEARCHING-constant.html | 112 + docs/data/AutonomyState/valueOf.html | 113 + docs/data/AutonomyState/values-constant.html | 121 + .../AutonomyStateUtils-extension-sidebar.html | 16 + docs/data/AutonomyStateUtils.html | 139 + docs/data/AutonomyStateUtils/humanName.html | 134 + docs/data/AutonomyTask-class-sidebar.html | 34 + docs/data/AutonomyTask-class.html | 322 ++ .../AUTONOMY_TASK_UNDEFINED-constant.html | 112 + .../AutonomyTask/BETWEEN_GATES-constant.html | 112 + docs/data/AutonomyTask/GPS_ONLY-constant.html | 112 + .../AutonomyTask/VISUAL_MARKER-constant.html | 112 + docs/data/AutonomyTask/valueOf.html | 113 + docs/data/AutonomyTask/values-constant.html | 117 + .../AutonomyTaskUtils-extension-sidebar.html | 16 + docs/data/AutonomyTaskUtils.html | 139 + docs/data/AutonomyTaskUtils/humanName.html | 130 + docs/data/BoolState-class-sidebar.html | 37 + docs/data/BoolState-class.html | 358 ++ .../BoolState/BOOL_UNDEFINED-constant.html | 112 + docs/data/BoolState/CLOSE-constant.html | 112 + docs/data/BoolState/NO-constant.html | 112 + docs/data/BoolState/OFF-constant.html | 112 + docs/data/BoolState/ON-constant.html | 112 + docs/data/BoolState/OPEN-constant.html | 112 + docs/data/BoolState/YES-constant.html | 112 + docs/data/BoolState/valueOf.html | 113 + docs/data/BoolState/values-constant.html | 116 + docs/data/BoolUtils-extension-sidebar.html | 18 + docs/data/BoolUtils.html | 159 + docs/data/BoolUtils/displayName.html | 126 + docs/data/BoolUtils/toBool.html | 120 + docs/data/BurtLog-class-sidebar.html | 85 + docs/data/BurtLog-class.html | 972 ++++ docs/data/BurtLog/BurtLog.fromBuffer.html | 110 + docs/data/BurtLog/BurtLog.fromJson.html | 110 + docs/data/BurtLog/BurtLog.html | 132 + docs/data/BurtLog/body.html | 150 + docs/data/BurtLog/clearBody.html | 118 + docs/data/BurtLog/clearDevice.html | 118 + docs/data/BurtLog/clearLevel.html | 118 + docs/data/BurtLog/clearTitle.html | 118 + docs/data/BurtLog/clone.html | 125 + docs/data/BurtLog/copyWith.html | 128 + docs/data/BurtLog/create.html | 113 + docs/data/BurtLog/createEmptyInstance.html | 120 + docs/data/BurtLog/createRepeated.html | 112 + docs/data/BurtLog/device.html | 150 + docs/data/BurtLog/getDefault.html | 113 + docs/data/BurtLog/hasBody.html | 118 + docs/data/BurtLog/hasDevice.html | 118 + docs/data/BurtLog/hasLevel.html | 118 + docs/data/BurtLog/hasTitle.html | 118 + docs/data/BurtLog/info_.html | 118 + docs/data/BurtLog/level.html | 150 + docs/data/BurtLog/title.html | 150 + docs/data/BurtLogLevel-class-sidebar.html | 37 + docs/data/BurtLogLevel-class.html | 358 ++ .../BURT_LOG_LEVEL_UNDEFINED-constant.html | 112 + docs/data/BurtLogLevel/critical-constant.html | 112 + docs/data/BurtLogLevel/debug-constant.html | 112 + docs/data/BurtLogLevel/error-constant.html | 112 + docs/data/BurtLogLevel/info-constant.html | 112 + docs/data/BurtLogLevel/trace-constant.html | 112 + docs/data/BurtLogLevel/valueOf.html | 113 + docs/data/BurtLogLevel/values-constant.html | 120 + docs/data/BurtLogLevel/warning-constant.html | 112 + docs/data/CameraDetails-class-sidebar.html | 106 + docs/data/CameraDetails-class.html | 1240 +++++ .../CameraDetails.fromBuffer.html | 110 + .../CameraDetails/CameraDetails.fromJson.html | 110 + docs/data/CameraDetails/CameraDetails.html | 167 + docs/data/CameraDetails/autofocus.html | 150 + docs/data/CameraDetails/clearAutofocus.html | 118 + docs/data/CameraDetails/clearFocus.html | 118 + docs/data/CameraDetails/clearFps.html | 118 + docs/data/CameraDetails/clearName.html | 118 + docs/data/CameraDetails/clearPan.html | 118 + docs/data/CameraDetails/clearQuality.html | 118 + .../CameraDetails/clearResolutionHeight.html | 118 + .../CameraDetails/clearResolutionWidth.html | 118 + docs/data/CameraDetails/clearStatus.html | 118 + docs/data/CameraDetails/clearTilt.html | 118 + docs/data/CameraDetails/clearZoom.html | 118 + docs/data/CameraDetails/clone.html | 125 + docs/data/CameraDetails/copyWith.html | 128 + docs/data/CameraDetails/create.html | 113 + .../CameraDetails/createEmptyInstance.html | 120 + docs/data/CameraDetails/createRepeated.html | 112 + docs/data/CameraDetails/focus.html | 150 + docs/data/CameraDetails/fps.html | 153 + docs/data/CameraDetails/getDefault.html | 113 + docs/data/CameraDetails/hasAutofocus.html | 118 + docs/data/CameraDetails/hasFocus.html | 118 + docs/data/CameraDetails/hasFps.html | 118 + docs/data/CameraDetails/hasName.html | 118 + docs/data/CameraDetails/hasPan.html | 118 + docs/data/CameraDetails/hasQuality.html | 118 + .../CameraDetails/hasResolutionHeight.html | 118 + .../CameraDetails/hasResolutionWidth.html | 118 + docs/data/CameraDetails/hasStatus.html | 118 + docs/data/CameraDetails/hasTilt.html | 118 + docs/data/CameraDetails/hasZoom.html | 118 + docs/data/CameraDetails/info_.html | 118 + docs/data/CameraDetails/name.html | 153 + docs/data/CameraDetails/pan.html | 150 + docs/data/CameraDetails/quality.html | 153 + docs/data/CameraDetails/resolutionHeight.html | 150 + docs/data/CameraDetails/resolutionWidth.html | 153 + docs/data/CameraDetails/status.html | 153 + docs/data/CameraDetails/tilt.html | 150 + docs/data/CameraDetails/zoom.html | 150 + docs/data/CameraName-class-sidebar.html | 39 + docs/data/CameraName-class.html | 382 ++ .../CameraName/AUTONOMY_DEPTH-constant.html | 112 + .../data/CameraName/BOTTOM_LEFT-constant.html | 112 + .../CameraName/BOTTOM_RIGHT-constant.html | 112 + .../CAMERA_NAME_UNDEFINED-constant.html | 112 + .../data/CameraName/ROVER_FRONT-constant.html | 112 + docs/data/CameraName/ROVER_REAR-constant.html | 112 + docs/data/CameraName/SUBSYSTEM1-constant.html | 112 + docs/data/CameraName/SUBSYSTEM2-constant.html | 112 + docs/data/CameraName/SUBSYSTEM3-constant.html | 112 + docs/data/CameraName/valueOf.html | 113 + docs/data/CameraName/values-constant.html | 122 + .../CameraNameUtils-extension-sidebar.html | 16 + docs/data/CameraNameUtils.html | 139 + docs/data/CameraNameUtils/humanName.html | 135 + docs/data/CameraStatus-class-sidebar.html | 38 + docs/data/CameraStatus-class.html | 370 ++ .../CAMERA_DISABLED-constant.html | 112 + .../CAMERA_DISCONNECTED-constant.html | 112 + .../CameraStatus/CAMERA_ENABLED-constant.html | 112 + .../CAMERA_HAS_NO_NAME-constant.html | 112 + .../CameraStatus/CAMERA_LOADING-constant.html | 112 + .../CAMERA_NOT_RESPONDING-constant.html | 112 + .../CAMERA_STATUS_UNDEFINED-constant.html | 112 + .../FRAME_TOO_LARGE-constant.html | 112 + docs/data/CameraStatus/valueOf.html | 113 + docs/data/CameraStatus/values-constant.html | 121 + .../CameraStatusUtils-extension-sidebar.html | 16 + docs/data/CameraStatusUtils.html | 139 + docs/data/CameraStatusUtils/humanName.html | 134 + docs/data/CarouselCommand-class-sidebar.html | 37 + docs/data/CarouselCommand-class.html | 357 ++ .../CAROUSEL_COMMAND_UNDEFINED-constant.html | 112 + .../FILL_SECTION-constant.html | 112 + .../CarouselCommand/FILL_TUBE-constant.html | 112 + .../NEXT_SECTION-constant.html | 112 + .../CarouselCommand/NEXT_TUBE-constant.html | 112 + .../PREV_SECTION-constant.html | 112 + .../CarouselCommand/PREV_TUBE-constant.html | 112 + docs/data/CarouselCommand/valueOf.html | 113 + .../data/CarouselCommand/values-constant.html | 120 + docs/data/Connect-class-sidebar.html | 79 + docs/data/Connect-class.html | 898 ++++ docs/data/Connect/Connect.fromBuffer.html | 110 + docs/data/Connect/Connect.fromJson.html | 110 + docs/data/Connect/Connect.html | 122 + docs/data/Connect/clearReceiver.html | 118 + docs/data/Connect/clearSender.html | 118 + docs/data/Connect/clone.html | 125 + docs/data/Connect/copyWith.html | 128 + docs/data/Connect/create.html | 113 + docs/data/Connect/createEmptyInstance.html | 120 + docs/data/Connect/createRepeated.html | 112 + docs/data/Connect/getDefault.html | 113 + docs/data/Connect/hasReceiver.html | 118 + docs/data/Connect/hasSender.html | 118 + docs/data/Connect/info_.html | 118 + docs/data/Connect/receiver.html | 150 + docs/data/Connect/sender.html | 150 + docs/data/Coordinates-class-sidebar.html | 82 + docs/data/Coordinates-class.html | 934 ++++ .../Coordinates/Coordinates.fromBuffer.html | 110 + .../Coordinates/Coordinates.fromJson.html | 110 + docs/data/Coordinates/Coordinates.html | 127 + docs/data/Coordinates/clearX.html | 118 + docs/data/Coordinates/clearY.html | 118 + docs/data/Coordinates/clearZ.html | 118 + docs/data/Coordinates/clone.html | 125 + docs/data/Coordinates/copyWith.html | 128 + docs/data/Coordinates/create.html | 113 + .../data/Coordinates/createEmptyInstance.html | 120 + docs/data/Coordinates/createRepeated.html | 112 + docs/data/Coordinates/getDefault.html | 113 + docs/data/Coordinates/hasX.html | 118 + docs/data/Coordinates/hasY.html | 118 + docs/data/Coordinates/hasZ.html | 118 + docs/data/Coordinates/info_.html | 118 + docs/data/Coordinates/x.html | 150 + docs/data/Coordinates/y.html | 150 + docs/data/Coordinates/z.html | 150 + .../CoordinatesUtils-extension-sidebar.html | 18 + docs/data/CoordinatesUtils.html | 159 + docs/data/CoordinatesUtils/operator_plus.html | 117 + docs/data/CoordinatesUtils/prettyPrint.html | 121 + .../data/DashboardSettings-class-sidebar.html | 35 + docs/data/DashboardSettings-class.html | 307 ++ .../DashboardSettings.fromJson.html | 119 + .../DashboardSettings/DashboardSettings.html | 126 + docs/data/DashboardSettings/hashCode.html | 145 + docs/data/DashboardSettings/mapBlockSize.html | 119 + docs/data/DashboardSettings/maxFps.html | 116 + docs/data/DashboardSettings/noSuchMethod.html | 151 + .../DashboardSettings/operator_equals.html | 141 + .../DashboardSettings/preferTankControls.html | 116 + docs/data/DashboardSettings/runtimeType.html | 120 + docs/data/DashboardSettings/splitCameras.html | 117 + docs/data/DashboardSettings/splitMode.html | 115 + docs/data/DashboardSettings/themeMode.html | 115 + docs/data/DashboardSettings/toJson.html | 123 + docs/data/DashboardSettings/toString.html | 123 + .../DashboardSettings/versionChecking.html | 115 + .../DateTimeTimestamp-extension-sidebar.html | 16 + docs/data/DateTimeTimestamp.html | 139 + docs/data/DateTimeTimestamp/timeStamp.html | 121 + docs/data/Device-class-sidebar.html | 40 + docs/data/Device-class.html | 394 ++ docs/data/Device/ARM-constant.html | 112 + docs/data/Device/AUTONOMY-constant.html | 112 + docs/data/Device/DASHBOARD-constant.html | 112 + .../Device/DEVICE_UNDEFINED-constant.html | 112 + docs/data/Device/DRIVE-constant.html | 112 + docs/data/Device/FIRMWARE-constant.html | 112 + docs/data/Device/GRIPPER-constant.html | 112 + docs/data/Device/SCIENCE-constant.html | 112 + docs/data/Device/SUBSYSTEMS-constant.html | 112 + docs/data/Device/VIDEO-constant.html | 112 + docs/data/Device/valueOf.html | 113 + docs/data/Device/values-constant.html | 123 + docs/data/DeviceUtils-extension-sidebar.html | 16 + docs/data/DeviceUtils.html | 139 + docs/data/DeviceUtils/humanName.html | 136 + docs/data/Disconnect-class-sidebar.html | 76 + docs/data/Disconnect-class.html | 860 +++ .../Disconnect/Disconnect.fromBuffer.html | 110 + docs/data/Disconnect/Disconnect.fromJson.html | 110 + docs/data/Disconnect/Disconnect.html | 117 + docs/data/Disconnect/clearSender.html | 118 + docs/data/Disconnect/clone.html | 125 + docs/data/Disconnect/copyWith.html | 128 + docs/data/Disconnect/create.html | 113 + docs/data/Disconnect/createEmptyInstance.html | 120 + docs/data/Disconnect/createRepeated.html | 112 + docs/data/Disconnect/getDefault.html | 113 + docs/data/Disconnect/hasSender.html | 118 + docs/data/Disconnect/info_.html | 118 + docs/data/Disconnect/sender.html | 150 + docs/data/DriveCommand-class-sidebar.html | 116 + docs/data/DriveCommand-class.html | 1364 +++++ .../DriveCommand/DriveCommand.fromBuffer.html | 110 + .../DriveCommand/DriveCommand.fromJson.html | 110 + docs/data/DriveCommand/DriveCommand.html | 182 + docs/data/DriveCommand/blink.html | 150 + docs/data/DriveCommand/clearBlink.html | 118 + docs/data/DriveCommand/clearColor.html | 118 + docs/data/DriveCommand/clearFrontSwivel.html | 118 + docs/data/DriveCommand/clearFrontTilt.html | 118 + docs/data/DriveCommand/clearLeft.html | 118 + docs/data/DriveCommand/clearRearSwivel.html | 118 + docs/data/DriveCommand/clearRearTilt.html | 118 + docs/data/DriveCommand/clearRight.html | 118 + docs/data/DriveCommand/clearSetLeft.html | 118 + docs/data/DriveCommand/clearSetRight.html | 118 + docs/data/DriveCommand/clearSetThrottle.html | 118 + docs/data/DriveCommand/clearStatus.html | 118 + docs/data/DriveCommand/clearThrottle.html | 118 + docs/data/DriveCommand/clearVersion.html | 118 + docs/data/DriveCommand/clone.html | 125 + docs/data/DriveCommand/color.html | 150 + docs/data/DriveCommand/copyWith.html | 128 + docs/data/DriveCommand/create.html | 113 + .../DriveCommand/createEmptyInstance.html | 120 + docs/data/DriveCommand/createRepeated.html | 112 + docs/data/DriveCommand/ensureVersion.html | 118 + docs/data/DriveCommand/frontSwivel.html | 150 + docs/data/DriveCommand/frontTilt.html | 150 + docs/data/DriveCommand/getDefault.html | 113 + docs/data/DriveCommand/hasBlink.html | 118 + docs/data/DriveCommand/hasColor.html | 118 + docs/data/DriveCommand/hasFrontSwivel.html | 118 + docs/data/DriveCommand/hasFrontTilt.html | 118 + docs/data/DriveCommand/hasLeft.html | 118 + docs/data/DriveCommand/hasRearSwivel.html | 118 + docs/data/DriveCommand/hasRearTilt.html | 118 + docs/data/DriveCommand/hasRight.html | 118 + docs/data/DriveCommand/hasSetLeft.html | 118 + docs/data/DriveCommand/hasSetRight.html | 118 + docs/data/DriveCommand/hasSetThrottle.html | 118 + docs/data/DriveCommand/hasStatus.html | 118 + docs/data/DriveCommand/hasThrottle.html | 118 + docs/data/DriveCommand/hasVersion.html | 118 + docs/data/DriveCommand/info_.html | 118 + docs/data/DriveCommand/left.html | 153 + docs/data/DriveCommand/rearSwivel.html | 150 + docs/data/DriveCommand/rearTilt.html | 150 + docs/data/DriveCommand/right.html | 153 + docs/data/DriveCommand/setLeft.html | 153 + docs/data/DriveCommand/setRight.html | 153 + docs/data/DriveCommand/setThrottle.html | 153 + docs/data/DriveCommand/status.html | 150 + docs/data/DriveCommand/throttle.html | 153 + docs/data/DriveCommand/version.html | 150 + docs/data/DriveData-class-sidebar.html | 140 + docs/data/DriveData-class.html | 1668 ++++++ docs/data/DriveData/DriveData.fromBuffer.html | 110 + docs/data/DriveData/DriveData.fromJson.html | 110 + docs/data/DriveData/DriveData.html | 222 + docs/data/DriveData/backLeft.html | 153 + docs/data/DriveData/backRight.html | 150 + docs/data/DriveData/batteryCurrent.html | 150 + docs/data/DriveData/batteryTemperature.html | 150 + docs/data/DriveData/batteryVoltage.html | 153 + docs/data/DriveData/clearBackLeft.html | 118 + docs/data/DriveData/clearBackRight.html | 118 + docs/data/DriveData/clearBatteryCurrent.html | 118 + .../DriveData/clearBatteryTemperature.html | 118 + docs/data/DriveData/clearBatteryVoltage.html | 118 + docs/data/DriveData/clearColor.html | 118 + docs/data/DriveData/clearFrontLeft.html | 118 + docs/data/DriveData/clearFrontRight.html | 118 + docs/data/DriveData/clearFrontSwivel.html | 118 + docs/data/DriveData/clearFrontTilt.html | 118 + docs/data/DriveData/clearLeft.html | 118 + docs/data/DriveData/clearMiddleLeft.html | 118 + docs/data/DriveData/clearMiddleRight.html | 118 + docs/data/DriveData/clearRearSwivel.html | 118 + docs/data/DriveData/clearRearTilt.html | 118 + docs/data/DriveData/clearRight.html | 118 + docs/data/DriveData/clearSetLeft.html | 118 + docs/data/DriveData/clearSetRight.html | 118 + docs/data/DriveData/clearSetThrottle.html | 118 + docs/data/DriveData/clearStatus.html | 118 + docs/data/DriveData/clearThrottle.html | 118 + docs/data/DriveData/clearVersion.html | 118 + docs/data/DriveData/clone.html | 125 + docs/data/DriveData/color.html | 150 + docs/data/DriveData/copyWith.html | 128 + docs/data/DriveData/create.html | 113 + docs/data/DriveData/createEmptyInstance.html | 120 + docs/data/DriveData/createRepeated.html | 112 + docs/data/DriveData/ensureVersion.html | 118 + docs/data/DriveData/frontLeft.html | 150 + docs/data/DriveData/frontRight.html | 150 + docs/data/DriveData/frontSwivel.html | 150 + docs/data/DriveData/frontTilt.html | 150 + docs/data/DriveData/getDefault.html | 113 + docs/data/DriveData/hasBackLeft.html | 118 + docs/data/DriveData/hasBackRight.html | 118 + docs/data/DriveData/hasBatteryCurrent.html | 118 + .../data/DriveData/hasBatteryTemperature.html | 118 + docs/data/DriveData/hasBatteryVoltage.html | 118 + docs/data/DriveData/hasColor.html | 118 + docs/data/DriveData/hasFrontLeft.html | 118 + docs/data/DriveData/hasFrontRight.html | 118 + docs/data/DriveData/hasFrontSwivel.html | 118 + docs/data/DriveData/hasFrontTilt.html | 118 + docs/data/DriveData/hasLeft.html | 118 + docs/data/DriveData/hasMiddleLeft.html | 118 + docs/data/DriveData/hasMiddleRight.html | 118 + docs/data/DriveData/hasRearSwivel.html | 118 + docs/data/DriveData/hasRearTilt.html | 118 + docs/data/DriveData/hasRight.html | 118 + docs/data/DriveData/hasSetLeft.html | 118 + docs/data/DriveData/hasSetRight.html | 118 + docs/data/DriveData/hasSetThrottle.html | 118 + docs/data/DriveData/hasStatus.html | 118 + docs/data/DriveData/hasThrottle.html | 118 + docs/data/DriveData/hasVersion.html | 118 + docs/data/DriveData/info_.html | 118 + docs/data/DriveData/left.html | 153 + docs/data/DriveData/middleLeft.html | 150 + docs/data/DriveData/middleRight.html | 150 + docs/data/DriveData/rearSwivel.html | 150 + docs/data/DriveData/rearTilt.html | 150 + docs/data/DriveData/right.html | 153 + docs/data/DriveData/setLeft.html | 153 + docs/data/DriveData/setRight.html | 153 + docs/data/DriveData/setThrottle.html | 153 + docs/data/DriveData/status.html | 150 + docs/data/DriveData/throttle.html | 153 + docs/data/DriveData/version.html | 150 + docs/data/DriveMetrics-class-sidebar.html | 46 + docs/data/DriveMetrics-class.html | 475 ++ docs/data/DriveMetrics/DriveMetrics.html | 111 + docs/data/DriveMetrics/allMetrics.html | 135 + docs/data/DriveMetrics/batteryPercentage.html | 121 + docs/data/DriveMetrics/batteryVoltage.html | 121 + .../data/DriveMetrics/electricalSeverity.html | 130 + docs/data/DriveMetrics/name.html | 127 + docs/data/DriveMetrics/parseVersion.html | 122 + docs/data/DriveMetrics/supportedVersion.html | 127 + docs/data/DriveMetrics/throttleSeverity.html | 131 + docs/data/DriveMetrics/update.html | 151 + docs/data/DriveMetrics/versionCommand.html | 127 + .../EasterEggsSettings-class-sidebar.html | 32 + docs/data/EasterEggsSettings-class.html | 272 + .../EasterEggsSettings.fromJson.html | 116 + .../EasterEggsSettings.html | 120 + docs/data/EasterEggsSettings/badApple.html | 115 + .../data/EasterEggsSettings/enableClippy.html | 115 + docs/data/EasterEggsSettings/hashCode.html | 145 + .../data/EasterEggsSettings/noSuchMethod.html | 151 + .../EasterEggsSettings/operator_equals.html | 141 + docs/data/EasterEggsSettings/runtimeType.html | 120 + docs/data/EasterEggsSettings/segaIntro.html | 115 + docs/data/EasterEggsSettings/segaSound.html | 115 + docs/data/EasterEggsSettings/toJson.html | 120 + docs/data/EasterEggsSettings/toString.html | 123 + docs/data/GpsCoordinates-class-sidebar.html | 82 + docs/data/GpsCoordinates-class.html | 934 ++++ .../GpsCoordinates.fromBuffer.html | 110 + .../GpsCoordinates.fromJson.html | 110 + docs/data/GpsCoordinates/GpsCoordinates.html | 127 + docs/data/GpsCoordinates/altitude.html | 150 + docs/data/GpsCoordinates/clearAltitude.html | 118 + docs/data/GpsCoordinates/clearLatitude.html | 118 + docs/data/GpsCoordinates/clearLongitude.html | 118 + docs/data/GpsCoordinates/clone.html | 125 + docs/data/GpsCoordinates/copyWith.html | 128 + docs/data/GpsCoordinates/create.html | 113 + .../GpsCoordinates/createEmptyInstance.html | 120 + docs/data/GpsCoordinates/createRepeated.html | 112 + docs/data/GpsCoordinates/getDefault.html | 113 + docs/data/GpsCoordinates/hasAltitude.html | 118 + docs/data/GpsCoordinates/hasLatitude.html | 118 + docs/data/GpsCoordinates/hasLongitude.html | 118 + docs/data/GpsCoordinates/info_.html | 118 + docs/data/GpsCoordinates/latitude.html | 150 + docs/data/GpsCoordinates/longitude.html | 150 + docs/data/GpsUtils-extension-sidebar.html | 16 + docs/data/GpsUtils.html | 140 + docs/data/GpsUtils/distanceTo.html | 127 + docs/data/GripperCommand-class-sidebar.html | 110 + docs/data/GripperCommand-class.html | 1289 +++++ .../GripperCommand.fromBuffer.html | 110 + .../GripperCommand.fromJson.html | 110 + docs/data/GripperCommand/GripperCommand.html | 167 + docs/data/GripperCommand/calibrate.html | 150 + docs/data/GripperCommand/clearCalibrate.html | 118 + docs/data/GripperCommand/clearClose.html | 118 + docs/data/GripperCommand/clearLaserState.html | 118 + docs/data/GripperCommand/clearLift.html | 118 + docs/data/GripperCommand/clearOpen.html | 118 + docs/data/GripperCommand/clearPinch.html | 118 + docs/data/GripperCommand/clearRotate.html | 118 + docs/data/GripperCommand/clearServoAngle.html | 118 + docs/data/GripperCommand/clearSpin.html | 118 + docs/data/GripperCommand/clearStop.html | 118 + docs/data/GripperCommand/clearVersion.html | 118 + docs/data/GripperCommand/clone.html | 125 + docs/data/GripperCommand/close.html | 150 + docs/data/GripperCommand/copyWith.html | 128 + docs/data/GripperCommand/create.html | 113 + .../GripperCommand/createEmptyInstance.html | 120 + docs/data/GripperCommand/createRepeated.html | 112 + docs/data/GripperCommand/ensureLift.html | 118 + docs/data/GripperCommand/ensurePinch.html | 118 + docs/data/GripperCommand/ensureRotate.html | 118 + docs/data/GripperCommand/ensureVersion.html | 118 + docs/data/GripperCommand/getDefault.html | 113 + docs/data/GripperCommand/hasCalibrate.html | 118 + docs/data/GripperCommand/hasClose.html | 118 + docs/data/GripperCommand/hasLaserState.html | 118 + docs/data/GripperCommand/hasLift.html | 118 + docs/data/GripperCommand/hasOpen.html | 118 + docs/data/GripperCommand/hasPinch.html | 118 + docs/data/GripperCommand/hasRotate.html | 118 + docs/data/GripperCommand/hasServoAngle.html | 118 + docs/data/GripperCommand/hasSpin.html | 118 + docs/data/GripperCommand/hasStop.html | 118 + docs/data/GripperCommand/hasVersion.html | 118 + docs/data/GripperCommand/info_.html | 118 + docs/data/GripperCommand/laserState.html | 150 + docs/data/GripperCommand/lift.html | 153 + docs/data/GripperCommand/open.html | 153 + docs/data/GripperCommand/pinch.html | 150 + docs/data/GripperCommand/rotate.html | 150 + docs/data/GripperCommand/servoAngle.html | 150 + docs/data/GripperCommand/spin.html | 150 + docs/data/GripperCommand/stop.html | 153 + docs/data/GripperCommand/version.html | 150 + docs/data/GripperData-class-sidebar.html | 95 + docs/data/GripperData-class.html | 1099 ++++ .../GripperData/GripperData.fromBuffer.html | 110 + .../GripperData/GripperData.fromJson.html | 110 + docs/data/GripperData/GripperData.html | 142 + docs/data/GripperData/clearLaserState.html | 118 + docs/data/GripperData/clearLift.html | 118 + docs/data/GripperData/clearPinch.html | 118 + docs/data/GripperData/clearRotate.html | 118 + docs/data/GripperData/clearServoAngle.html | 118 + docs/data/GripperData/clearVersion.html | 118 + docs/data/GripperData/clone.html | 125 + docs/data/GripperData/copyWith.html | 128 + docs/data/GripperData/create.html | 113 + .../data/GripperData/createEmptyInstance.html | 120 + docs/data/GripperData/createRepeated.html | 112 + docs/data/GripperData/ensureLift.html | 118 + docs/data/GripperData/ensurePinch.html | 118 + docs/data/GripperData/ensureRotate.html | 118 + docs/data/GripperData/ensureVersion.html | 118 + docs/data/GripperData/getDefault.html | 113 + docs/data/GripperData/hasLaserState.html | 118 + docs/data/GripperData/hasLift.html | 118 + docs/data/GripperData/hasPinch.html | 118 + docs/data/GripperData/hasRotate.html | 118 + docs/data/GripperData/hasServoAngle.html | 118 + docs/data/GripperData/hasVersion.html | 118 + docs/data/GripperData/info_.html | 118 + docs/data/GripperData/laserState.html | 150 + docs/data/GripperData/lift.html | 150 + docs/data/GripperData/pinch.html | 150 + docs/data/GripperData/rotate.html | 150 + docs/data/GripperData/servoAngle.html | 150 + docs/data/GripperData/version.html | 150 + docs/data/GripperMetrics-class-sidebar.html | 43 + docs/data/GripperMetrics-class.html | 440 ++ docs/data/GripperMetrics/GripperMetrics.html | 111 + docs/data/GripperMetrics/allMetrics.html | 141 + docs/data/GripperMetrics/getMotorData.html | 122 + docs/data/GripperMetrics/name.html | 127 + docs/data/GripperMetrics/parseVersion.html | 122 + .../data/GripperMetrics/supportedVersion.html | 127 + docs/data/GripperMetrics/versionCommand.html | 127 + docs/data/Json.html | 111 + docs/data/LimitedList-extension-sidebar.html | 16 + docs/data/LimitedList.html | 140 + docs/data/LimitedList/pushWithLimit.html | 120 + docs/data/LogFormat-extension-sidebar.html | 16 + docs/data/LogFormat.html | 140 + docs/data/LogFormat/format.html | 124 + .../data/LogLevelUtils-extension-sidebar.html | 20 + docs/data/LogLevelUtils.html | 184 + docs/data/LogLevelUtils/humanName.html | 129 + docs/data/LogLevelUtils/isAtLeast.html | 117 + docs/data/LogLevelUtils/isMoreSevereThan.html | 117 + docs/data/LogLevelUtils/label.html | 129 + docs/data/MapRecords-extension-sidebar.html | 16 + docs/data/MapRecords.html | 139 + docs/data/MapRecords/records.html | 125 + docs/data/MarsCommand-class-sidebar.html | 87 + docs/data/MarsCommand-class.html | 997 ++++ .../MarsCommand/MarsCommand.fromBuffer.html | 110 + .../MarsCommand/MarsCommand.fromJson.html | 110 + docs/data/MarsCommand/MarsCommand.html | 132 + .../data/MarsCommand/baseStationOverride.html | 150 + .../MarsCommand/clearBaseStationOverride.html | 118 + docs/data/MarsCommand/clearRover.html | 118 + docs/data/MarsCommand/clearSwivel.html | 118 + docs/data/MarsCommand/clearTilt.html | 118 + docs/data/MarsCommand/clone.html | 125 + docs/data/MarsCommand/copyWith.html | 128 + docs/data/MarsCommand/create.html | 113 + .../data/MarsCommand/createEmptyInstance.html | 120 + docs/data/MarsCommand/createRepeated.html | 112 + .../ensureBaseStationOverride.html | 118 + docs/data/MarsCommand/ensureRover.html | 118 + docs/data/MarsCommand/getDefault.html | 113 + .../MarsCommand/hasBaseStationOverride.html | 118 + docs/data/MarsCommand/hasRover.html | 118 + docs/data/MarsCommand/hasSwivel.html | 118 + docs/data/MarsCommand/hasTilt.html | 118 + docs/data/MarsCommand/info_.html | 118 + docs/data/MarsCommand/rover.html | 153 + docs/data/MarsCommand/swivel.html | 153 + docs/data/MarsCommand/tilt.html | 150 + docs/data/MarsData-class-sidebar.html | 86 + docs/data/MarsData-class.html | 984 ++++ docs/data/MarsData/MarsData.fromBuffer.html | 110 + docs/data/MarsData/MarsData.fromJson.html | 110 + docs/data/MarsData/MarsData.html | 132 + docs/data/MarsData/clearCoordinates.html | 118 + docs/data/MarsData/clearStatus.html | 118 + docs/data/MarsData/clearSwivel.html | 118 + docs/data/MarsData/clearTilt.html | 118 + docs/data/MarsData/clone.html | 125 + docs/data/MarsData/coordinates.html | 150 + docs/data/MarsData/copyWith.html | 128 + docs/data/MarsData/create.html | 113 + docs/data/MarsData/createEmptyInstance.html | 120 + docs/data/MarsData/createRepeated.html | 112 + docs/data/MarsData/ensureCoordinates.html | 118 + docs/data/MarsData/getDefault.html | 113 + docs/data/MarsData/hasCoordinates.html | 118 + docs/data/MarsData/hasStatus.html | 118 + docs/data/MarsData/hasSwivel.html | 118 + docs/data/MarsData/hasTilt.html | 118 + docs/data/MarsData/info_.html | 118 + docs/data/MarsData/status.html | 150 + docs/data/MarsData/swivel.html | 150 + docs/data/MarsData/tilt.html | 150 + docs/data/MarsStatus-class-sidebar.html | 35 + docs/data/MarsStatus-class.html | 330 ++ .../MarsStatus/FAILED_HANDSHAKE-constant.html | 112 + .../MARS_STATUS_UNDEFINED-constant.html | 112 + .../MarsStatus/PORT_NOT_FOUND-constant.html | 112 + .../MarsStatus/TEENSY_CONNECTED-constant.html | 112 + .../TEENSY_UNRESPONSIVE-constant.html | 112 + docs/data/MarsStatus/valueOf.html | 113 + docs/data/MarsStatus/values-constant.html | 118 + docs/data/Message.html | 111 + docs/data/MessageDecoder.html | 110 + docs/data/MessageHandler.html | 109 + docs/data/MessageUtils-extension-sidebar.html | 18 + docs/data/MessageUtils.html | 159 + docs/data/MessageUtils/messageName.html | 121 + docs/data/MessageUtils/wrap.html | 120 + docs/data/MetricLine-class-sidebar.html | 28 + docs/data/MetricLine-class.html | 227 + docs/data/MetricLine/MetricLine.html | 113 + docs/data/MetricLine/hashCode.html | 145 + docs/data/MetricLine/noSuchMethod.html | 151 + docs/data/MetricLine/operator_equals.html | 141 + docs/data/MetricLine/runtimeType.html | 120 + docs/data/MetricLine/severity.html | 115 + docs/data/MetricLine/text.html | 115 + docs/data/MetricLine/toString.html | 123 + docs/data/Metrics-class-sidebar.html | 42 + docs/data/Metrics-class.html | 439 ++ docs/data/Metrics/Metrics.html | 112 + docs/data/Metrics/allMetrics.html | 123 + docs/data/Metrics/checkVersion.html | 125 + docs/data/Metrics/data.html | 115 + docs/data/Metrics/matchesVersion.html | 121 + docs/data/Metrics/name.html | 121 + docs/data/Metrics/overallSeverity.html | 126 + docs/data/Metrics/parseVersion.html | 116 + docs/data/Metrics/supportedVersion.html | 121 + docs/data/Metrics/update.html | 121 + docs/data/Metrics/version.html | 115 + docs/data/Metrics/versionCommand.html | 121 + docs/data/MotorCommand-class-sidebar.html | 82 + docs/data/MotorCommand-class.html | 933 ++++ .../MotorCommand/MotorCommand.fromBuffer.html | 110 + .../MotorCommand/MotorCommand.fromJson.html | 110 + docs/data/MotorCommand/MotorCommand.html | 127 + docs/data/MotorCommand/angle.html | 153 + docs/data/MotorCommand/clearAngle.html | 118 + docs/data/MotorCommand/clearMoveRadians.html | 118 + docs/data/MotorCommand/clearMoveSteps.html | 118 + docs/data/MotorCommand/clone.html | 125 + docs/data/MotorCommand/copyWith.html | 128 + docs/data/MotorCommand/create.html | 113 + .../MotorCommand/createEmptyInstance.html | 120 + docs/data/MotorCommand/createRepeated.html | 112 + docs/data/MotorCommand/getDefault.html | 113 + docs/data/MotorCommand/hasAngle.html | 118 + docs/data/MotorCommand/hasMoveRadians.html | 118 + docs/data/MotorCommand/hasMoveSteps.html | 118 + docs/data/MotorCommand/info_.html | 118 + docs/data/MotorCommand/moveRadians.html | 153 + docs/data/MotorCommand/moveSteps.html | 153 + docs/data/MotorData-class-sidebar.html | 91 + docs/data/MotorData-class.html | 1047 ++++ docs/data/MotorData/MotorData.fromBuffer.html | 110 + docs/data/MotorData/MotorData.fromJson.html | 110 + docs/data/MotorData/MotorData.html | 142 + docs/data/MotorData/angle.html | 150 + docs/data/MotorData/clearAngle.html | 118 + docs/data/MotorData/clearCurrentStep.html | 118 + docs/data/MotorData/clearDirection.html | 118 + .../MotorData/clearIsLimitSwitchPressed.html | 118 + docs/data/MotorData/clearIsMoving.html | 118 + docs/data/MotorData/clearTargetStep.html | 118 + docs/data/MotorData/clone.html | 125 + docs/data/MotorData/copyWith.html | 128 + docs/data/MotorData/create.html | 113 + docs/data/MotorData/createEmptyInstance.html | 120 + docs/data/MotorData/createRepeated.html | 112 + docs/data/MotorData/currentStep.html | 150 + docs/data/MotorData/direction.html | 150 + docs/data/MotorData/getDefault.html | 113 + docs/data/MotorData/hasAngle.html | 118 + docs/data/MotorData/hasCurrentStep.html | 118 + docs/data/MotorData/hasDirection.html | 118 + .../MotorData/hasIsLimitSwitchPressed.html | 118 + docs/data/MotorData/hasIsMoving.html | 118 + docs/data/MotorData/hasTargetStep.html | 118 + docs/data/MotorData/info_.html | 118 + docs/data/MotorData/isLimitSwitchPressed.html | 150 + docs/data/MotorData/isMoving.html | 150 + docs/data/MotorData/targetStep.html | 150 + docs/data/MotorDirection-class-sidebar.html | 40 + docs/data/MotorDirection-class.html | 394 ++ .../MotorDirection/CLOCKWISE-constant.html | 112 + .../data/MotorDirection/CLOSING-constant.html | 112 + .../COUNTER_CLOCKWISE-constant.html | 112 + docs/data/MotorDirection/DOWN-constant.html | 112 + docs/data/MotorDirection/LEFT-constant.html | 112 + .../MOTOR_DIRECTION_UNDEFINED-constant.html | 112 + .../MotorDirection/NOT_MOVING-constant.html | 112 + .../data/MotorDirection/OPENING-constant.html | 112 + docs/data/MotorDirection/RIGHT-constant.html | 112 + docs/data/MotorDirection/UP-constant.html | 112 + docs/data/MotorDirection/valueOf.html | 113 + docs/data/MotorDirection/values-constant.html | 123 + ...MotorDirectionUtils-extension-sidebar.html | 16 + docs/data/MotorDirectionUtils.html | 139 + docs/data/MotorDirectionUtils/humanName.html | 136 + docs/data/NetworkSettings-class-sidebar.html | 33 + docs/data/NetworkSettings-class.html | 284 + .../NetworkSettings.fromJson.html | 117 + .../data/NetworkSettings/NetworkSettings.html | 122 + docs/data/NetworkSettings/autonomySocket.html | 115 + .../NetworkSettings/connectionTimeout.html | 117 + docs/data/NetworkSettings/hashCode.html | 145 + docs/data/NetworkSettings/noSuchMethod.html | 151 + .../data/NetworkSettings/operator_equals.html | 141 + docs/data/NetworkSettings/runtimeType.html | 120 + .../NetworkSettings/subsystemsSocket.html | 115 + docs/data/NetworkSettings/tankSocket.html | 119 + docs/data/NetworkSettings/toJson.html | 121 + docs/data/NetworkSettings/toString.html | 123 + docs/data/NetworkSettings/videoSocket.html | 115 + docs/data/NumUtils-extension-sidebar.html | 17 + docs/data/NumUtils.html | 153 + docs/data/NumUtils/format.html | 115 + docs/data/NumUtils/toDegrees.html | 115 + docs/data/OperatingMode-enum-sidebar.html | 35 + docs/data/OperatingMode.html | 344 ++ docs/data/OperatingMode/hashCode.html | 145 + docs/data/OperatingMode/index.html | 125 + docs/data/OperatingMode/name.html | 116 + docs/data/OperatingMode/noSuchMethod.html | 151 + docs/data/OperatingMode/operator_equals.html | 141 + docs/data/OperatingMode/runtimeType.html | 120 + docs/data/OperatingMode/toString.html | 123 + docs/data/OperatingMode/values-constant.html | 111 + docs/data/Orientation-class-sidebar.html | 82 + docs/data/Orientation-class.html | 933 ++++ .../Orientation/Orientation.fromBuffer.html | 110 + .../Orientation/Orientation.fromJson.html | 110 + docs/data/Orientation/Orientation.html | 127 + docs/data/Orientation/clearX.html | 118 + docs/data/Orientation/clearY.html | 118 + docs/data/Orientation/clearZ.html | 118 + docs/data/Orientation/clone.html | 125 + docs/data/Orientation/copyWith.html | 128 + docs/data/Orientation/create.html | 113 + .../data/Orientation/createEmptyInstance.html | 120 + docs/data/Orientation/createRepeated.html | 112 + docs/data/Orientation/getDefault.html | 113 + docs/data/Orientation/hasX.html | 118 + docs/data/Orientation/hasY.html | 118 + docs/data/Orientation/hasZ.html | 118 + docs/data/Orientation/info_.html | 118 + docs/data/Orientation/x.html | 150 + docs/data/Orientation/y.html | 150 + docs/data/Orientation/z.html | 150 + docs/data/PositionMetrics-class-sidebar.html | 47 + docs/data/PositionMetrics-class.html | 489 ++ .../data/PositionMetrics/PositionMetrics.html | 111 + docs/data/PositionMetrics/allMetrics.html | 139 + docs/data/PositionMetrics/angle.html | 121 + docs/data/PositionMetrics/baseStation.html | 144 + .../PositionMetrics/getRotationSeverity.html | 127 + docs/data/PositionMetrics/name.html | 127 + docs/data/PositionMetrics/parseVersion.html | 122 + docs/data/PositionMetrics/pitch.html | 121 + docs/data/PositionMetrics/roll.html | 121 + .../PositionMetrics/supportedVersion.html | 127 + docs/data/PositionMetrics/versionCommand.html | 127 + docs/data/ProtoColor-class-sidebar.html | 35 + docs/data/ProtoColor-class.html | 330 ++ docs/data/ProtoColor/BLUE-constant.html | 112 + docs/data/ProtoColor/GREEN-constant.html | 112 + .../PROTO_COLOR_UNDEFINED-constant.html | 112 + docs/data/ProtoColor/RED-constant.html | 112 + docs/data/ProtoColor/UNLIT-constant.html | 112 + docs/data/ProtoColor/valueOf.html | 113 + docs/data/ProtoColor/values-constant.html | 118 + docs/data/PumpState-class-sidebar.html | 34 + docs/data/PumpState-class.html | 321 ++ docs/data/PumpState/FILL-constant.html | 112 + docs/data/PumpState/PUMP_OFF-constant.html | 112 + docs/data/PumpState/PUMP_ON-constant.html | 112 + .../PUMP_STATE_UNDEFINED-constant.html | 112 + docs/data/PumpState/valueOf.html | 113 + docs/data/PumpState/values-constant.html | 117 + docs/data/RawDataHandler.html | 109 + docs/data/RoverPosition-class-sidebar.html | 85 + docs/data/RoverPosition-class.html | 972 ++++ .../RoverPosition.fromBuffer.html | 110 + .../RoverPosition/RoverPosition.fromJson.html | 110 + docs/data/RoverPosition/RoverPosition.html | 127 + docs/data/RoverPosition/clearGps.html | 118 + docs/data/RoverPosition/clearOrientation.html | 118 + docs/data/RoverPosition/clearVersion.html | 118 + docs/data/RoverPosition/clone.html | 125 + docs/data/RoverPosition/copyWith.html | 128 + docs/data/RoverPosition/create.html | 113 + .../RoverPosition/createEmptyInstance.html | 120 + docs/data/RoverPosition/createRepeated.html | 112 + docs/data/RoverPosition/ensureGps.html | 118 + .../data/RoverPosition/ensureOrientation.html | 118 + docs/data/RoverPosition/ensureVersion.html | 118 + docs/data/RoverPosition/getDefault.html | 113 + docs/data/RoverPosition/gps.html | 150 + docs/data/RoverPosition/hasGps.html | 118 + docs/data/RoverPosition/hasOrientation.html | 118 + docs/data/RoverPosition/hasVersion.html | 118 + docs/data/RoverPosition/info_.html | 118 + docs/data/RoverPosition/orientation.html | 150 + docs/data/RoverPosition/version.html | 150 + docs/data/RoverStatus-class-sidebar.html | 36 + docs/data/RoverStatus-class.html | 353 ++ .../data/RoverStatus/AUTONOMOUS-constant.html | 112 + .../RoverStatus/DISCONNECTED-constant.html | 112 + docs/data/RoverStatus/IDLE-constant.html | 112 + docs/data/RoverStatus/MANUAL-constant.html | 112 + docs/data/RoverStatus/POWER_OFF-constant.html | 112 + docs/data/RoverStatus/RESTART-constant.html | 112 + docs/data/RoverStatus/valueOf.html | 113 + docs/data/RoverStatus/values-constant.html | 119 + ...overStatusHumanName-extension-sidebar.html | 16 + docs/data/RoverStatusHumanName.html | 139 + docs/data/RoverStatusHumanName/humanName.html | 132 + docs/data/RoverType-enum-sidebar.html | 32 + docs/data/RoverType.html | 283 + docs/data/RoverType/hashCode.html | 145 + docs/data/RoverType/humanName.html | 127 + docs/data/RoverType/index.html | 125 + docs/data/RoverType/noSuchMethod.html | 151 + docs/data/RoverType/operator_equals.html | 141 + docs/data/RoverType/runtimeType.html | 120 + docs/data/RoverType/toString.html | 123 + docs/data/RoverType/values-constant.html | 111 + docs/data/SampleData-class-sidebar.html | 34 + docs/data/SampleData-class.html | 301 ++ docs/data/SampleData/SampleData.html | 104 + docs/data/SampleData/addReading.html | 125 + docs/data/SampleData/average.html | 116 + docs/data/SampleData/clear.html | 120 + docs/data/SampleData/firstTimestamp.html | 116 + docs/data/SampleData/hashCode.html | 145 + docs/data/SampleData/max.html | 115 + docs/data/SampleData/min.html | 115 + docs/data/SampleData/noSuchMethod.html | 151 + docs/data/SampleData/operator_equals.html | 141 + docs/data/SampleData/readings.html | 115 + docs/data/SampleData/runtimeType.html | 120 + docs/data/SampleData/sum.html | 115 + docs/data/SampleData/toString.html | 123 + docs/data/ScienceCommand-class-sidebar.html | 110 + docs/data/ScienceCommand-class.html | 1291 +++++ .../ScienceCommand.fromBuffer.html | 110 + .../ScienceCommand.fromJson.html | 110 + docs/data/ScienceCommand/ScienceCommand.html | 172 + docs/data/ScienceCommand/calibrate.html | 153 + docs/data/ScienceCommand/carousel.html | 150 + docs/data/ScienceCommand/carouselMotor.html | 153 + docs/data/ScienceCommand/clearCalibrate.html | 118 + docs/data/ScienceCommand/clearCarousel.html | 118 + .../ScienceCommand/clearCarouselMotor.html | 118 + docs/data/ScienceCommand/clearFunnel.html | 118 + docs/data/ScienceCommand/clearPumps.html | 118 + docs/data/ScienceCommand/clearSample.html | 118 + docs/data/ScienceCommand/clearScoop.html | 118 + docs/data/ScienceCommand/clearScoopMotor.html | 118 + docs/data/ScienceCommand/clearState.html | 118 + docs/data/ScienceCommand/clearStop.html | 118 + .../ScienceCommand/clearSubsurfaceMotor.html | 118 + docs/data/ScienceCommand/clearVersion.html | 118 + docs/data/ScienceCommand/clone.html | 125 + docs/data/ScienceCommand/copyWith.html | 128 + docs/data/ScienceCommand/create.html | 113 + .../ScienceCommand/createEmptyInstance.html | 120 + docs/data/ScienceCommand/createRepeated.html | 112 + docs/data/ScienceCommand/ensureVersion.html | 118 + docs/data/ScienceCommand/funnel.html | 150 + docs/data/ScienceCommand/getDefault.html | 113 + docs/data/ScienceCommand/hasCalibrate.html | 118 + docs/data/ScienceCommand/hasCarousel.html | 118 + .../data/ScienceCommand/hasCarouselMotor.html | 118 + docs/data/ScienceCommand/hasFunnel.html | 118 + docs/data/ScienceCommand/hasPumps.html | 118 + docs/data/ScienceCommand/hasSample.html | 118 + docs/data/ScienceCommand/hasScoop.html | 118 + docs/data/ScienceCommand/hasScoopMotor.html | 118 + docs/data/ScienceCommand/hasState.html | 118 + docs/data/ScienceCommand/hasStop.html | 118 + .../ScienceCommand/hasSubsurfaceMotor.html | 118 + docs/data/ScienceCommand/hasVersion.html | 118 + docs/data/ScienceCommand/info_.html | 118 + docs/data/ScienceCommand/pumps.html | 153 + docs/data/ScienceCommand/sample.html | 150 + docs/data/ScienceCommand/scoop.html | 150 + docs/data/ScienceCommand/scoopMotor.html | 150 + docs/data/ScienceCommand/state.html | 150 + docs/data/ScienceCommand/stop.html | 150 + docs/data/ScienceCommand/subsurfaceMotor.html | 150 + docs/data/ScienceCommand/version.html | 150 + docs/data/ScienceData-class-sidebar.html | 92 + docs/data/ScienceData-class.html | 1063 ++++ .../ScienceData/ScienceData.fromBuffer.html | 110 + .../ScienceData/ScienceData.fromJson.html | 110 + docs/data/ScienceData/ScienceData.html | 142 + docs/data/ScienceData/clearCo2.html | 118 + docs/data/ScienceData/clearHumidity.html | 118 + docs/data/ScienceData/clearSample.html | 118 + docs/data/ScienceData/clearState.html | 118 + docs/data/ScienceData/clearTemperature.html | 118 + docs/data/ScienceData/clearVersion.html | 118 + docs/data/ScienceData/clone.html | 125 + docs/data/ScienceData/co2.html | 153 + docs/data/ScienceData/copyWith.html | 128 + docs/data/ScienceData/create.html | 113 + .../data/ScienceData/createEmptyInstance.html | 120 + docs/data/ScienceData/createRepeated.html | 112 + docs/data/ScienceData/ensureVersion.html | 118 + docs/data/ScienceData/getDefault.html | 113 + docs/data/ScienceData/hasCo2.html | 118 + docs/data/ScienceData/hasHumidity.html | 118 + docs/data/ScienceData/hasSample.html | 118 + docs/data/ScienceData/hasState.html | 118 + docs/data/ScienceData/hasTemperature.html | 118 + docs/data/ScienceData/hasVersion.html | 118 + docs/data/ScienceData/humidity.html | 150 + docs/data/ScienceData/info_.html | 118 + docs/data/ScienceData/sample.html | 153 + docs/data/ScienceData/state.html | 150 + docs/data/ScienceData/temperature.html | 150 + docs/data/ScienceData/version.html | 150 + docs/data/ScienceMetrics-class-sidebar.html | 42 + docs/data/ScienceMetrics-class.html | 429 ++ docs/data/ScienceMetrics/ScienceMetrics.html | 111 + docs/data/ScienceMetrics/allMetrics.html | 133 + docs/data/ScienceMetrics/name.html | 127 + docs/data/ScienceMetrics/parseVersion.html | 122 + .../data/ScienceMetrics/supportedVersion.html | 127 + docs/data/ScienceMetrics/update.html | 126 + docs/data/ScienceMetrics/versionCommand.html | 127 + docs/data/ScienceResult-enum-sidebar.html | 33 + docs/data/ScienceResult.html | 291 ++ docs/data/ScienceResult/hashCode.html | 145 + docs/data/ScienceResult/index.html | 125 + docs/data/ScienceResult/noSuchMethod.html | 151 + docs/data/ScienceResult/operator_equals.html | 141 + docs/data/ScienceResult/runtimeType.html | 120 + docs/data/ScienceResult/toString.html | 123 + docs/data/ScienceResult/values-constant.html | 111 + docs/data/ScienceSensor-class-sidebar.html | 29 + docs/data/ScienceSensor-class.html | 240 + docs/data/ScienceSensor/ScienceSensor.html | 118 + docs/data/ScienceSensor/hashCode.html | 145 + docs/data/ScienceSensor/name.html | 115 + docs/data/ScienceSensor/noSuchMethod.html | 151 + docs/data/ScienceSensor/operator_equals.html | 141 + docs/data/ScienceSensor/runtimeType.html | 120 + docs/data/ScienceSensor/test.html | 115 + docs/data/ScienceSensor/testDescription.html | 115 + docs/data/ScienceSensor/toString.html | 123 + docs/data/ScienceSettings-class-sidebar.html | 30 + docs/data/ScienceSettings-class.html | 247 + .../ScienceSettings.fromJson.html | 114 + .../data/ScienceSettings/ScienceSettings.html | 113 + docs/data/ScienceSettings/hashCode.html | 145 + docs/data/ScienceSettings/noSuchMethod.html | 151 + docs/data/ScienceSettings/numSamples.html | 115 + .../data/ScienceSettings/operator_equals.html | 141 + docs/data/ScienceSettings/runtimeType.html | 120 + .../ScienceSettings/scrollableGraphs.html | 116 + docs/data/ScienceSettings/toJson.html | 118 + docs/data/ScienceSettings/toString.html | 123 + docs/data/ScienceState-class-sidebar.html | 33 + docs/data/ScienceState-class.html | 313 ++ .../ScienceState/COLLECT_DATA-constant.html | 112 + .../SCIENCE_STATE_UNDEFINED-constant.html | 112 + .../STOP_COLLECTING-constant.html | 112 + docs/data/ScienceState/valueOf.html | 113 + docs/data/ScienceState/values-constant.html | 116 + .../ScienceStateUtils-extension-sidebar.html | 16 + docs/data/ScienceStateUtils.html | 139 + docs/data/ScienceStateUtils/humanName.html | 129 + docs/data/ScienceTest.html | 109 + docs/data/SensorReading-class-sidebar.html | 28 + docs/data/SensorReading-class.html | 228 + docs/data/SensorReading/SensorReading.html | 113 + docs/data/SensorReading/hashCode.html | 145 + docs/data/SensorReading/noSuchMethod.html | 151 + docs/data/SensorReading/operator_equals.html | 141 + docs/data/SensorReading/runtimeType.html | 120 + docs/data/SensorReading/time.html | 115 + docs/data/SensorReading/toString.html | 123 + docs/data/SensorReading/value.html | 115 + docs/data/ServoState-class-sidebar.html | 33 + docs/data/ServoState-class.html | 309 ++ .../data/ServoState/SERVO_CLOSE-constant.html | 112 + docs/data/ServoState/SERVO_OPEN-constant.html | 112 + .../SERVO_STATE_UNDEFINED-constant.html | 112 + docs/data/ServoState/valueOf.html | 113 + docs/data/ServoState/values-constant.html | 116 + docs/data/Settings-class-sidebar.html | 33 + docs/data/Settings-class.html | 283 + docs/data/Settings/Settings.fromJson.html | 117 + docs/data/Settings/Settings.html | 122 + docs/data/Settings/arm.html | 115 + docs/data/Settings/dashboard.html | 115 + docs/data/Settings/easterEggs.html | 116 + docs/data/Settings/hashCode.html | 145 + docs/data/Settings/network.html | 115 + docs/data/Settings/noSuchMethod.html | 151 + docs/data/Settings/operator_equals.html | 141 + docs/data/Settings/runtimeType.html | 120 + docs/data/Settings/science.html | 115 + docs/data/Settings/toJson.html | 121 + docs/data/Settings/toString.html | 123 + .../SettingsParser-extension-sidebar.html | 16 + docs/data/SettingsParser.html | 140 + docs/data/SettingsParser/getSocket.html | 120 + docs/data/Severity-enum-sidebar.html | 32 + docs/data/Severity.html | 296 ++ docs/data/Severity/hashCode.html | 145 + docs/data/Severity/index.html | 125 + docs/data/Severity/noSuchMethod.html | 151 + docs/data/Severity/operator_equals.html | 141 + docs/data/Severity/runtimeType.html | 120 + docs/data/Severity/toString.html | 123 + docs/data/Severity/values-constant.html | 111 + docs/data/SocketInfo-class-sidebar.html | 32 + docs/data/SocketInfo-class.html | 286 + docs/data/SocketInfo/SocketInfo.fromJson.html | 114 + docs/data/SocketInfo/SocketInfo.html | 113 + docs/data/SocketInfo/SocketInfo.raw.html | 113 + docs/data/SocketInfo/address.html | 115 + docs/data/SocketInfo/copyWith.html | 120 + docs/data/SocketInfo/hashCode.html | 152 + docs/data/SocketInfo/noSuchMethod.html | 151 + docs/data/SocketInfo/operator_equals.html | 150 + docs/data/SocketInfo/port.html | 115 + docs/data/SocketInfo/runtimeType.html | 120 + docs/data/SocketInfo/toJson.html | 118 + docs/data/SocketInfo/toString.html | 130 + docs/data/SplitMode-enum-sidebar.html | 31 + docs/data/SplitMode.html | 273 + docs/data/SplitMode/hashCode.html | 145 + docs/data/SplitMode/humanName.html | 115 + docs/data/SplitMode/index.html | 125 + docs/data/SplitMode/noSuchMethod.html | 151 + docs/data/SplitMode/operator_equals.html | 141 + docs/data/SplitMode/runtimeType.html | 120 + docs/data/SplitMode/toString.html | 123 + docs/data/SplitMode/values-constant.html | 111 + docs/data/TaskbarMessage-class-sidebar.html | 28 + docs/data/TaskbarMessage-class.html | 227 + docs/data/TaskbarMessage/TaskbarMessage.html | 116 + docs/data/TaskbarMessage/hashCode.html | 145 + docs/data/TaskbarMessage/noSuchMethod.html | 151 + docs/data/TaskbarMessage/operator_equals.html | 141 + docs/data/TaskbarMessage/runtimeType.html | 120 + docs/data/TaskbarMessage/severity.html | 115 + docs/data/TaskbarMessage/text.html | 115 + docs/data/TaskbarMessage/toString.html | 123 + .../ThemeModeUtils-extension-sidebar.html | 16 + docs/data/ThemeModeUtils.html | 139 + docs/data/ThemeModeUtils/humanName.html | 125 + docs/data/Timestamp-class-sidebar.html | 81 + docs/data/Timestamp-class.html | 1003 ++++ docs/data/Timestamp/Timestamp.fromBuffer.html | 110 + docs/data/Timestamp/Timestamp.fromJson.html | 110 + docs/data/Timestamp/Timestamp.html | 122 + docs/data/Timestamp/clearNanos.html | 118 + docs/data/Timestamp/clearSeconds.html | 118 + docs/data/Timestamp/clone.html | 125 + docs/data/Timestamp/copyWith.html | 128 + docs/data/Timestamp/create.html | 113 + docs/data/Timestamp/createEmptyInstance.html | 120 + docs/data/Timestamp/createRepeated.html | 112 + docs/data/Timestamp/fromDateTime.html | 121 + docs/data/Timestamp/getDefault.html | 113 + docs/data/Timestamp/hasNanos.html | 118 + docs/data/Timestamp/hasSeconds.html | 118 + docs/data/Timestamp/info_.html | 118 + docs/data/Timestamp/nanos.html | 156 + docs/data/Timestamp/seconds.html | 155 + docs/data/Timestamp/toDateTime.html | 121 + .../TimestampUtils-extension-sidebar.html | 19 + docs/data/TimestampUtils.html | 173 + docs/data/TimestampUtils/now.html | 115 + docs/data/TimestampUtils/operator_minus.html | 116 + docs/data/TimestampUtils/operator_plus.html | 116 + .../UndefinedFilter-extension-sidebar.html | 16 + docs/data/UndefinedFilter.html | 139 + docs/data/UndefinedFilter/filtered.html | 125 + docs/data/Unwrapper-extension-sidebar.html | 16 + docs/data/Unwrapper.html | 140 + docs/data/Unwrapper/decode.html | 116 + docs/data/UpdateSetting-class-sidebar.html | 76 + docs/data/UpdateSetting-class.html | 863 +++ .../UpdateSetting.fromBuffer.html | 110 + .../UpdateSetting/UpdateSetting.fromJson.html | 110 + docs/data/UpdateSetting/UpdateSetting.html | 117 + docs/data/UpdateSetting/clearStatus.html | 118 + docs/data/UpdateSetting/clone.html | 125 + docs/data/UpdateSetting/copyWith.html | 128 + docs/data/UpdateSetting/create.html | 113 + .../UpdateSetting/createEmptyInstance.html | 120 + docs/data/UpdateSetting/createRepeated.html | 112 + docs/data/UpdateSetting/getDefault.html | 113 + docs/data/UpdateSetting/hasStatus.html | 118 + docs/data/UpdateSetting/info_.html | 118 + docs/data/UpdateSetting/status.html | 150 + docs/data/Version-class-sidebar.html | 79 + docs/data/Version-class.html | 896 ++++ docs/data/Version/Version.fromBuffer.html | 110 + docs/data/Version/Version.fromJson.html | 110 + docs/data/Version/Version.html | 122 + docs/data/Version/clearMajor.html | 118 + docs/data/Version/clearMinor.html | 118 + docs/data/Version/clone.html | 125 + docs/data/Version/copyWith.html | 128 + docs/data/Version/create.html | 113 + docs/data/Version/createEmptyInstance.html | 120 + docs/data/Version/createRepeated.html | 112 + docs/data/Version/getDefault.html | 113 + docs/data/Version/hasMajor.html | 118 + docs/data/Version/hasMinor.html | 118 + docs/data/Version/info_.html | 118 + docs/data/Version/major.html | 150 + docs/data/Version/minor.html | 150 + docs/data/VersionUtils-extension-sidebar.html | 17 + docs/data/VersionUtils.html | 153 + docs/data/VersionUtils/format.html | 115 + docs/data/VersionUtils/isCompatible.html | 116 + docs/data/VideoCommand-class-sidebar.html | 87 + docs/data/VideoCommand-class.html | 1002 ++++ .../VideoCommand/VideoCommand.fromBuffer.html | 110 + .../VideoCommand/VideoCommand.fromJson.html | 110 + docs/data/VideoCommand/VideoCommand.html | 132 + docs/data/VideoCommand/clearDetails.html | 118 + docs/data/VideoCommand/clearId.html | 118 + docs/data/VideoCommand/clearTakeSnapshot.html | 118 + docs/data/VideoCommand/clearVersion.html | 118 + docs/data/VideoCommand/clone.html | 125 + docs/data/VideoCommand/copyWith.html | 128 + docs/data/VideoCommand/create.html | 113 + .../VideoCommand/createEmptyInstance.html | 120 + docs/data/VideoCommand/createRepeated.html | 112 + docs/data/VideoCommand/details.html | 155 + docs/data/VideoCommand/ensureDetails.html | 118 + docs/data/VideoCommand/ensureVersion.html | 118 + docs/data/VideoCommand/getDefault.html | 113 + docs/data/VideoCommand/hasDetails.html | 118 + docs/data/VideoCommand/hasId.html | 118 + docs/data/VideoCommand/hasTakeSnapshot.html | 118 + docs/data/VideoCommand/hasVersion.html | 118 + docs/data/VideoCommand/id.html | 153 + docs/data/VideoCommand/info_.html | 118 + docs/data/VideoCommand/takeSnapshot.html | 150 + docs/data/VideoCommand/version.html | 150 + docs/data/VideoData-class-sidebar.html | 90 + docs/data/VideoData-class.html | 1039 ++++ docs/data/VideoData/VideoData.fromBuffer.html | 110 + docs/data/VideoData/VideoData.fromJson.html | 110 + docs/data/VideoData/VideoData.html | 137 + docs/data/VideoData/clearDetails.html | 118 + docs/data/VideoData/clearFrame.html | 118 + docs/data/VideoData/clearId.html | 118 + docs/data/VideoData/clearImagePath.html | 118 + docs/data/VideoData/clearVersion.html | 118 + docs/data/VideoData/clone.html | 125 + docs/data/VideoData/copyWith.html | 128 + docs/data/VideoData/create.html | 113 + docs/data/VideoData/createEmptyInstance.html | 120 + docs/data/VideoData/createRepeated.html | 112 + docs/data/VideoData/details.html | 153 + docs/data/VideoData/ensureDetails.html | 118 + docs/data/VideoData/ensureVersion.html | 118 + docs/data/VideoData/frame.html | 153 + docs/data/VideoData/getDefault.html | 113 + docs/data/VideoData/hasDetails.html | 118 + docs/data/VideoData/hasFrame.html | 118 + docs/data/VideoData/hasId.html | 118 + docs/data/VideoData/hasImagePath.html | 118 + docs/data/VideoData/hasVersion.html | 118 + docs/data/VideoData/id.html | 153 + docs/data/VideoData/imagePath.html | 150 + docs/data/VideoData/info_.html | 118 + docs/data/VideoData/version.html | 150 + .../VideoDataUtils-extension-sidebar.html | 16 + docs/data/VideoDataUtils.html | 139 + docs/data/VideoDataUtils/hasFrame.html | 122 + docs/data/VitalsMetrics-class-sidebar.html | 45 + docs/data/VitalsMetrics-class.html | 463 ++ docs/data/VitalsMetrics/VitalsMetrics.html | 111 + docs/data/VitalsMetrics/allMetrics.html | 133 + docs/data/VitalsMetrics/drive.html | 121 + docs/data/VitalsMetrics/name.html | 127 + docs/data/VitalsMetrics/parseVersion.html | 122 + docs/data/VitalsMetrics/supportedVersion.html | 127 + .../VitalsMetrics/temperatureSeverity.html | 131 + docs/data/VitalsMetrics/versionCommand.html | 127 + docs/data/VitalsMetrics/voltageSeverity.html | 130 + docs/data/WrappedMessage-class-sidebar.html | 83 + docs/data/WrappedMessage-class.html | 947 ++++ .../WrappedMessage.fromBuffer.html | 110 + .../WrappedMessage.fromJson.html | 110 + docs/data/WrappedMessage/WrappedMessage.html | 127 + docs/data/WrappedMessage/clearData.html | 118 + docs/data/WrappedMessage/clearName.html | 118 + docs/data/WrappedMessage/clearTimestamp.html | 118 + docs/data/WrappedMessage/clone.html | 125 + docs/data/WrappedMessage/copyWith.html | 128 + docs/data/WrappedMessage/create.html | 113 + .../WrappedMessage/createEmptyInstance.html | 120 + docs/data/WrappedMessage/createRepeated.html | 112 + docs/data/WrappedMessage/data.html | 150 + docs/data/WrappedMessage/ensureTimestamp.html | 118 + docs/data/WrappedMessage/getDefault.html | 113 + docs/data/WrappedMessage/hasData.html | 118 + docs/data/WrappedMessage/hasName.html | 118 + docs/data/WrappedMessage/hasTimestamp.html | 118 + docs/data/WrappedMessage/info_.html | 118 + docs/data/WrappedMessage/name.html | 150 + docs/data/WrappedMessage/timestamp.html | 150 + docs/data/WrappedMessageHandler.html | 109 + docs/data/co2-constant.html | 117 + docs/data/co2Test.html | 117 + docs/data/data-library-sidebar.html | 126 + docs/data/data-library.html | 1181 +++++ docs/data/getCommandName.html | 121 + docs/data/getDataName.html | 121 + docs/data/humidity-constant.html | 117 + docs/data/humidityTest.html | 116 + docs/data/sensors-constant.html | 113 + docs/data/temperature-constant.html | 117 + docs/data/temperatureTest.html | 116 + .../DashboardException-class-sidebar.html | 26 + docs/errors/DashboardException-class.html | 232 + .../DashboardException.html | 111 + docs/errors/DashboardException/hashCode.html | 145 + .../DashboardException/noSuchMethod.html | 151 + .../DashboardException/operator_equals.html | 141 + .../DashboardException/runtimeType.html | 120 + docs/errors/DashboardException/toString.html | 123 + docs/errors/errors-library-sidebar.html | 13 + docs/errors/errors-library.html | 135 + docs/index.html | 204 + docs/index.json | 1 + docs/main/main-library-sidebar.html | 15 + docs/main/main-library.html | 165 + docs/main/main.html | 124 + docs/main/networkErrors-constant.html | 113 + docs/models/AddressBuilder-class-sidebar.html | 39 + docs/models/AddressBuilder-class.html | 383 ++ .../models/AddressBuilder/AddressBuilder.html | 112 + docs/models/AddressBuilder/regex.html | 115 + docs/models/AddressBuilder/update.html | 136 + docs/models/ArmControls-class-sidebar.html | 37 + docs/models/ArmControls-class.html | 359 ++ docs/models/ArmControls/ArmControls.html | 104 + docs/models/ArmControls/buttonMapping.html | 149 + docs/models/ArmControls/ik.html | 116 + docs/models/ArmControls/isAPressed.html | 115 + docs/models/ArmControls/isBPressed.html | 115 + docs/models/ArmControls/isXPressed.html | 115 + docs/models/ArmControls/isYPressed.html | 115 + docs/models/ArmControls/mode.html | 127 + docs/models/ArmControls/onDispose.html | 128 + docs/models/ArmControls/parseInputs.html | 149 + docs/models/ArmControls/settings.html | 121 + docs/models/ArmControls/updateState.html | 127 + .../ArmSettingsBuilder-class-sidebar.html | 43 + docs/models/ArmSettingsBuilder-class.html | 437 ++ .../ArmSettingsBuilder.html | 129 + docs/models/ArmSettingsBuilder/elbow.html | 115 + docs/models/ArmSettingsBuilder/ik.html | 115 + docs/models/ArmSettingsBuilder/isValid.html | 134 + docs/models/ArmSettingsBuilder/lift.html | 115 + docs/models/ArmSettingsBuilder/pinch.html | 115 + docs/models/ArmSettingsBuilder/rotate.html | 115 + docs/models/ArmSettingsBuilder/shoulder.html | 115 + docs/models/ArmSettingsBuilder/swivel.html | 115 + docs/models/ArmSettingsBuilder/updateIK.html | 119 + docs/models/ArmSettingsBuilder/useIK.html | 115 + docs/models/ArmSettingsBuilder/value.html | 136 + docs/models/AutonomyCell-enum-sidebar.html | 34 + docs/models/AutonomyCell.html | 303 ++ docs/models/AutonomyCell/hashCode.html | 145 + docs/models/AutonomyCell/index.html | 125 + docs/models/AutonomyCell/noSuchMethod.html | 151 + docs/models/AutonomyCell/operator_equals.html | 141 + docs/models/AutonomyCell/runtimeType.html | 120 + docs/models/AutonomyCell/toString.html | 123 + docs/models/AutonomyCell/values-constant.html | 111 + .../AutonomyCommandBuilder-class-sidebar.html | 41 + docs/models/AutonomyCommandBuilder-class.html | 416 ++ .../AutonomyCommandBuilder.html | 111 + docs/models/AutonomyCommandBuilder/abort.html | 133 + .../AutonomyCommandBuilder/dispose.html | 130 + docs/models/AutonomyCommandBuilder/gps.html | 115 + docs/models/AutonomyCommandBuilder/init.html | 122 + .../AutonomyCommandBuilder/isLoading.html | 115 + .../AutonomyCommandBuilder/isValid.html | 128 + .../AutonomyCommandBuilder/otherBuilders.html | 127 + .../models/AutonomyCommandBuilder/submit.html | 129 + docs/models/AutonomyCommandBuilder/task.html | 115 + .../AutonomyCommandBuilder/updateTask.html | 119 + docs/models/AutonomyCommandBuilder/value.html | 130 + docs/models/AutonomyModel-class-sidebar.html | 59 + docs/models/AutonomyModel-class.html | 635 +++ docs/models/AutonomyModel/AutonomyModel.html | 111 + .../AutonomyModel/badAppleAudioPlayer.html | 115 + .../AutonomyModel/badAppleFps-constant.html | 115 + docs/models/AutonomyModel/badAppleFrame.html | 115 + .../badAppleLastFrame-constant.html | 115 + docs/models/AutonomyModel/badAppleTimer.html | 115 + docs/models/AutonomyModel/clearMarkers.html | 119 + docs/models/AutonomyModel/data.html | 115 + docs/models/AutonomyModel/dispose.html | 133 + docs/models/AutonomyModel/empty.html | 126 + docs/models/AutonomyModel/gpsToBlock.html | 116 + docs/models/AutonomyModel/grid.html | 137 + docs/models/AutonomyModel/gridSize.html | 116 + docs/models/AutonomyModel/init.html | 128 + .../AutonomyModel/isPlayingBadApple.html | 115 + docs/models/AutonomyModel/markCell.html | 130 + docs/models/AutonomyModel/markerBuilder.html | 115 + docs/models/AutonomyModel/markers.html | 115 + docs/models/AutonomyModel/offset.html | 115 + docs/models/AutonomyModel/onNewData.html | 120 + docs/models/AutonomyModel/placeMarker.html | 119 + .../AutonomyModel/placeMarkerOnRover.html | 118 + docs/models/AutonomyModel/recenterRover.html | 130 + docs/models/AutonomyModel/roverHeading.html | 121 + docs/models/AutonomyModel/roverPosition.html | 121 + docs/models/AutonomyModel/startBadApple.html | 123 + docs/models/AutonomyModel/stopBadApple.html | 122 + docs/models/AutonomyModel/updateMarker.html | 122 + docs/models/AutonomyModel/zoom.html | 119 + docs/models/CameraControls-class-sidebar.html | 39 + docs/models/CameraControls-class.html | 376 ++ .../models/CameraControls/CameraControls.html | 104 + docs/models/CameraControls/armTilt.html | 115 + docs/models/CameraControls/buttonMapping.html | 131 + .../cameraSwivelIncrement-constant.html | 115 + .../cameraTiltIncrement-constant.html | 115 + docs/models/CameraControls/frontSwivel.html | 115 + docs/models/CameraControls/frontTilt.html | 115 + docs/models/CameraControls/mode.html | 127 + docs/models/CameraControls/onDispose.html | 128 + docs/models/CameraControls/parseInputs.html | 128 + docs/models/CameraControls/rearSwivel.html | 115 + docs/models/CameraControls/rearTilt.html | 115 + docs/models/CameraControls/updateState.html | 149 + .../CameraDetailsBuilder-class-sidebar.html | 47 + docs/models/CameraDetailsBuilder-class.html | 479 ++ .../CameraDetailsBuilder.html | 119 + .../CameraDetailsBuilder/autofocus.html | 115 + docs/models/CameraDetailsBuilder/error.html | 115 + docs/models/CameraDetailsBuilder/fps.html | 115 + .../CameraDetailsBuilder/isLoading.html | 115 + docs/models/CameraDetailsBuilder/isValid.html | 132 + docs/models/CameraDetailsBuilder/name.html | 117 + .../okStatuses-constant.html | 115 + .../CameraDetailsBuilder/otherBuilders.html | 127 + docs/models/CameraDetailsBuilder/quality.html | 115 + .../resolutionHeight.html | 115 + .../CameraDetailsBuilder/resolutionWidth.html | 115 + .../CameraDetailsBuilder/saveSettings.html | 128 + docs/models/CameraDetailsBuilder/status.html | 116 + .../CameraDetailsBuilder/updateStatus.html | 127 + docs/models/CameraDetailsBuilder/value.html | 139 + docs/models/ColorBuilder-class-sidebar.html | 38 + docs/models/ColorBuilder-class.html | 377 ++ docs/models/ColorBuilder/ColorBuilder.html | 112 + docs/models/ColorBuilder/blink.html | 115 + docs/models/ColorBuilder/color.html | 115 + docs/models/ColorBuilder/errorText.html | 115 + docs/models/ColorBuilder/isLoading.html | 115 + docs/models/ColorBuilder/setColor.html | 123 + docs/models/ColorBuilder/updateBlink.html | 121 + docs/models/ColorBuilder/updateColor.html | 120 + docs/models/Controller-class-sidebar.html | 42 + docs/models/Controller-class.html | 434 ++ docs/models/Controller/Controller.html | 113 + docs/models/Controller/connect.html | 123 + docs/models/Controller/controls.html | 115 + docs/models/Controller/dispose.html | 132 + docs/models/Controller/gamepad.html | 121 + docs/models/Controller/gamepadTimer.html | 115 + docs/models/Controller/index.html | 115 + docs/models/Controller/init.html | 124 + docs/models/Controller/isConnected.html | 121 + docs/models/Controller/mode.html | 121 + docs/models/Controller/otherControllerIs.html | 117 + docs/models/Controller/setMode.html | 135 + docs/models/Controller/setModeIndex.html | 116 + ...ashboardSettingsBuilder-class-sidebar.html | 46 + .../DashboardSettingsBuilder-class.html | 477 ++ .../DashboardSettingsBuilder.html | 119 + .../DashboardSettingsBuilder/blockSize.html | 115 + docs/models/DashboardSettingsBuilder/fps.html | 115 + .../DashboardSettingsBuilder/isValid.html | 128 + .../preferTankControls.html | 115 + .../splitCameras.html | 115 + .../DashboardSettingsBuilder/splitMode.html | 115 + .../DashboardSettingsBuilder/themeMode.html | 115 + .../updateCameras.html | 120 + .../updateSplitMode.html | 120 + .../DashboardSettingsBuilder/updateTank.html | 120 + .../updateThemeMode.html | 120 + .../updateVersionChecking.html | 120 + .../DashboardSettingsBuilder/value.html | 135 + .../versionChecking.html | 115 + docs/models/DriveControls-class-sidebar.html | 34 + docs/models/DriveControls-class.html | 323 ++ docs/models/DriveControls/DriveControls.html | 104 + docs/models/DriveControls/buttonMapping.html | 133 + .../DriveControls/leftShoulderFlag.html | 115 + docs/models/DriveControls/mode.html | 127 + docs/models/DriveControls/onDispose.html | 132 + docs/models/DriveControls/parseInputs.html | 126 + .../DriveControls/rightShoulderFlag.html | 115 + docs/models/DriveControls/throttle.html | 115 + docs/models/DriveControls/updateState.html | 128 + ...sterEggsSettingsBuilder-class-sidebar.html | 42 + .../EasterEggsSettingsBuilder-class.html | 428 ++ .../EasterEggsSettingsBuilder.html | 116 + .../EasterEggsSettingsBuilder/badApple.html | 115 + .../enableClippy.html | 115 + .../EasterEggsSettingsBuilder/isValid.html | 128 + .../EasterEggsSettingsBuilder/segaIntro.html | 115 + .../EasterEggsSettingsBuilder/segaSound.html | 115 + .../updateBadApple.html | 119 + .../updateClippy.html | 119 + .../updateSegaIntro.html | 119 + .../updateSegaSound.html | 119 + .../EasterEggsSettingsBuilder/value.html | 132 + .../models/ElectricalModel-class-sidebar.html | 43 + docs/models/ElectricalModel-class.html | 429 ++ .../ElectricalModel/ElectricalModel.html | 114 + docs/models/ElectricalModel/axis.html | 115 + .../ElectricalModel/changeDirection.html | 118 + docs/models/ElectricalModel/clear.html | 122 + .../ElectricalModel/currentReadings.html | 115 + docs/models/ElectricalModel/dispose.html | 131 + .../ElectricalModel/firstTimestamp.html | 115 + docs/models/ElectricalModel/leftSpeeds.html | 115 + .../ElectricalModel/maxReadings-constant.html | 115 + docs/models/ElectricalModel/metrics.html | 121 + docs/models/ElectricalModel/rightSpeeds.html | 115 + docs/models/ElectricalModel/timer.html | 115 + .../ElectricalModel/voltageReadings.html | 115 + docs/models/GpsBuilder-class-sidebar.html | 45 + docs/models/GpsBuilder-class.html | 462 ++ docs/models/GpsBuilder/GpsBuilder.html | 104 + docs/models/GpsBuilder/clear.html | 126 + docs/models/GpsBuilder/isValid.html | 130 + docs/models/GpsBuilder/latDecimal.html | 115 + docs/models/GpsBuilder/latDegrees.html | 115 + docs/models/GpsBuilder/latMinutes.html | 115 + docs/models/GpsBuilder/latSeconds.html | 115 + docs/models/GpsBuilder/longDecimal.html | 115 + docs/models/GpsBuilder/longDegrees.html | 115 + docs/models/GpsBuilder/longMinutes.html | 115 + docs/models/GpsBuilder/longSeconds.html | 115 + docs/models/GpsBuilder/otherBuilders.html | 131 + docs/models/GpsBuilder/type.html | 115 + docs/models/GpsBuilder/updateType.html | 119 + docs/models/GpsBuilder/value.html | 133 + docs/models/GpsType-enum-sidebar.html | 31 + docs/models/GpsType.html | 268 + docs/models/GpsType/hashCode.html | 145 + docs/models/GpsType/humanName.html | 124 + docs/models/GpsType/index.html | 125 + docs/models/GpsType/noSuchMethod.html | 151 + docs/models/GpsType/operator_equals.html | 141 + docs/models/GpsType/runtimeType.html | 120 + docs/models/GpsType/toString.html | 123 + docs/models/GpsType/values-constant.html | 111 + docs/models/GridOffset-class-sidebar.html | 28 + docs/models/GridOffset-class.html | 231 + docs/models/GridOffset/GridOffset.html | 113 + docs/models/GridOffset/hashCode.html | 145 + docs/models/GridOffset/noSuchMethod.html | 151 + docs/models/GridOffset/operator_equals.html | 141 + docs/models/GridOffset/runtimeType.html | 120 + docs/models/GridOffset/toString.html | 123 + docs/models/GridOffset/x.html | 115 + docs/models/GridOffset/y.html | 115 + docs/models/HomeModel-class-sidebar.html | 37 + docs/models/HomeModel-class.html | 367 ++ docs/models/HomeModel/HomeModel.html | 104 + docs/models/HomeModel/clear.html | 121 + docs/models/HomeModel/dispose.html | 132 + docs/models/HomeModel/init.html | 126 + docs/models/HomeModel/message.html | 115 + docs/models/HomeModel/mission.html | 115 + docs/models/HomeModel/setMessage.html | 125 + docs/models/HomeModel/version.html | 115 + docs/models/LogsModel-class-sidebar.html | 45 + docs/models/LogsModel-class.html | 461 ++ docs/models/LogsModel/LogsModel.html | 104 + docs/models/LogsModel/allLogs.html | 115 + docs/models/LogsModel/autonomyLogs.html | 115 + docs/models/LogsModel/clear.html | 122 + docs/models/LogsModel/handleLog.html | 134 + docs/models/LogsModel/init.html | 124 + docs/models/LogsModel/logsForDevice.html | 122 + docs/models/LogsModel/saveToFile.html | 122 + docs/models/LogsModel/saveToFileBuffer.html | 115 + .../saveToFileInterval-constant.html | 115 + docs/models/LogsModel/saveToFileTimer.html | 115 + docs/models/LogsModel/stream.html | 121 + docs/models/LogsModel/subsystemLogs.html | 115 + docs/models/LogsModel/videoLogs.html | 115 + .../LogsOptionsViewModel-class-sidebar.html | 45 + docs/models/LogsOptionsViewModel-class.html | 469 ++ .../LogsOptionsViewModel.html | 104 + .../LogsOptionsViewModel/autoscroll.html | 116 + .../LogsOptionsViewModel/deviceFilter.html | 115 + .../LogsOptionsViewModel/deviceSeverity.html | 115 + .../LogsOptionsViewModel/getSeverity.html | 116 + .../LogsOptionsViewModel/levelFilter.html | 115 + .../models/LogsOptionsViewModel/onNewLog.html | 122 + docs/models/LogsOptionsViewModel/openSsh.html | 133 + docs/models/LogsOptionsViewModel/paused.html | 116 + docs/models/LogsOptionsViewModel/ping.html | 128 + .../LogsOptionsViewModel/resetDevice.html | 128 + .../LogsOptionsViewModel/setAutoscroll.html | 121 + .../LogsOptionsViewModel/setDeviceFilter.html | 119 + .../LogsOptionsViewModel/setLevelFilter.html | 120 + .../LogsOptionsViewModel/togglePause.html | 118 + docs/models/LogsViewModel-class-sidebar.html | 37 + docs/models/LogsViewModel-class.html | 365 ++ docs/models/LogsViewModel/LogsViewModel.html | 119 + docs/models/LogsViewModel/dispose.html | 130 + docs/models/LogsViewModel/jumpToBottom.html | 118 + docs/models/LogsViewModel/logs.html | 127 + docs/models/LogsViewModel/onNewLog.html | 120 + docs/models/LogsViewModel/onScroll.html | 120 + docs/models/LogsViewModel/options.html | 115 + .../LogsViewModel/scrollController.html | 115 + docs/models/MessagesModel-class-sidebar.html | 32 + docs/models/MessagesModel-class.html | 277 + docs/models/MessagesModel/MessagesModel.html | 104 + .../allowedFallthrough-constant.html | 115 + docs/models/MessagesModel/hashCode.html | 145 + docs/models/MessagesModel/noSuchMethod.html | 151 + docs/models/MessagesModel/onMessage.html | 127 + .../models/MessagesModel/operator_equals.html | 141 + .../models/MessagesModel/registerHandler.html | 138 + docs/models/MessagesModel/removeHandler.html | 117 + docs/models/MessagesModel/runtimeType.html | 120 + docs/models/MessagesModel/sendMessage.html | 127 + docs/models/MessagesModel/toString.html | 123 + docs/models/MissionTimer-class-sidebar.html | 39 + docs/models/MissionTimer-class.html | 391 ++ docs/models/MissionTimer/MissionTimer.html | 104 + docs/models/MissionTimer/cancel.html | 119 + docs/models/MissionTimer/isPaused.html | 115 + docs/models/MissionTimer/pause.html | 119 + docs/models/MissionTimer/resume.html | 118 + docs/models/MissionTimer/start.html | 124 + docs/models/MissionTimer/timeLeft.html | 115 + docs/models/MissionTimer/title.html | 115 + docs/models/MissionTimer/underMin.html | 121 + docs/models/Model-class-sidebar.html | 32 + docs/models/Model-class.html | 318 ++ docs/models/Model/Model.html | 104 + docs/models/Model/init.html | 115 + docs/models/Models-class-sidebar.html | 42 + docs/models/Models-class.html | 434 ++ docs/models/Models/Models.html | 104 + docs/models/Models/dispose.html | 137 + docs/models/Models/home.html | 115 + docs/models/Models/init.html | 134 + docs/models/Models/isReady.html | 115 + docs/models/Models/logs.html | 115 + docs/models/Models/messages.html | 115 + docs/models/Models/rover.html | 115 + docs/models/Models/serial.html | 115 + docs/models/Models/settings.html | 115 + docs/models/Models/sockets.html | 115 + docs/models/Models/video.html | 115 + docs/models/Models/views.html | 115 + .../ModernDriveControls-class-sidebar.html | 46 + docs/models/ModernDriveControls-class.html | 467 ++ .../ModernDriveControls.html | 104 + .../ModernDriveControls/buttonMapping.html | 136 + .../cameraSwivelIncrement-constant.html | 115 + .../cameraTiltIncrement-constant.html | 115 + .../ModernDriveControls/frontSwivel.html | 115 + .../models/ModernDriveControls/frontTilt.html | 115 + .../getCameraCommands.html | 121 + .../ModernDriveControls/getWheelCommands.html | 134 + .../ModernDriveControls/getWheelSpeeds.html | 126 + .../ModernDriveControls/leftShoulderFlag.html | 115 + docs/models/ModernDriveControls/mode.html | 127 + .../models/ModernDriveControls/onDispose.html | 132 + .../ModernDriveControls/parseInputs.html | 126 + .../ModernDriveControls/rearSwivel.html | 115 + docs/models/ModernDriveControls/rearTilt.html | 115 + .../rightShoulderFlag.html | 115 + docs/models/ModernDriveControls/throttle.html | 115 + .../ModernDriveControls/updateCameras.html | 141 + .../ModernDriveControls/updateState.html | 125 + .../ModernDriveControls/updateThrottle.html | 122 + .../NetworkSettingsBuilder-class-sidebar.html | 39 + docs/models/NetworkSettingsBuilder-class.html | 388 ++ .../NetworkSettingsBuilder.html | 117 + .../autonomySocket.html | 115 + .../connectionTimeout.html | 115 + .../NetworkSettingsBuilder/dataSocket.html | 115 + .../NetworkSettingsBuilder/isValid.html | 131 + .../NetworkSettingsBuilder/otherBuilders.html | 127 + .../NetworkSettingsBuilder/tankSocket.html | 116 + docs/models/NetworkSettingsBuilder/value.html | 133 + .../NetworkSettingsBuilder/videoSocket.html | 115 + docs/models/NoControls-class-sidebar.html | 31 + docs/models/NoControls-class.html | 287 + docs/models/NoControls/NoControls.html | 104 + docs/models/NoControls/buttonMapping.html | 128 + docs/models/NoControls/mode.html | 127 + docs/models/NoControls/onDispose.html | 128 + docs/models/NoControls/parseInputs.html | 122 + docs/models/NumberBuilder-class-sidebar.html | 41 + docs/models/NumberBuilder-class.html | 416 ++ docs/models/NumberBuilder/NumberBuilder.html | 114 + docs/models/NumberBuilder/clear.html | 120 + docs/models/NumberBuilder/isInteger.html | 121 + docs/models/NumberBuilder/max.html | 115 + docs/models/NumberBuilder/min.html | 115 + docs/models/NumberBuilder/update.html | 139 + docs/models/PositionModel-class-sidebar.html | 38 + docs/models/PositionModel-class.html | 376 ++ docs/models/PositionModel/PositionModel.html | 114 + docs/models/PositionModel/dispose.html | 131 + docs/models/PositionModel/drive.html | 121 + docs/models/PositionModel/leftWheels.html | 115 + docs/models/PositionModel/position.html | 121 + docs/models/PositionModel/rightWheels.html | 115 + docs/models/PositionModel/throttle.html | 115 + docs/models/PositionModel/wheelColors.html | 116 + docs/models/PositionModel/wheelsRPM.html | 116 + .../RequestNotAccepted-class-sidebar.html | 26 + docs/models/RequestNotAccepted-class.html | 206 + .../RequestNotAccepted.html | 104 + docs/models/RequestNotAccepted/hashCode.html | 145 + .../RequestNotAccepted/noSuchMethod.html | 151 + .../RequestNotAccepted/operator_equals.html | 141 + .../RequestNotAccepted/runtimeType.html | 120 + docs/models/RequestNotAccepted/toString.html | 123 + docs/models/Rover-class-sidebar.html | 41 + docs/models/Rover-class.html | 415 ++ docs/models/Rover/Rover.html | 104 + docs/models/Rover/controller1.html | 115 + docs/models/Rover/controller2.html | 115 + docs/models/Rover/controller3.html | 115 + docs/models/Rover/controllers.html | 121 + docs/models/Rover/dispose.html | 137 + docs/models/Rover/init.html | 131 + docs/models/Rover/isConnected.html | 121 + docs/models/Rover/metrics.html | 115 + docs/models/Rover/setDefaultControls.html | 124 + docs/models/Rover/settings.html | 115 + docs/models/Rover/status.html | 115 + docs/models/RoverControls-class-sidebar.html | 32 + docs/models/RoverControls-class.html | 299 ++ .../RoverControls/RoverControls.forMode.html | 119 + docs/models/RoverControls/RoverControls.html | 111 + docs/models/RoverControls/buttonMapping.html | 122 + docs/models/RoverControls/hashCode.html | 145 + docs/models/RoverControls/mode.html | 121 + docs/models/RoverControls/noSuchMethod.html | 151 + docs/models/RoverControls/onDispose.html | 122 + .../models/RoverControls/operator_equals.html | 141 + docs/models/RoverControls/parseInputs.html | 116 + docs/models/RoverControls/runtimeType.html | 120 + docs/models/RoverControls/toString.html | 123 + docs/models/RoverControls/updateState.html | 116 + docs/models/RoverMetrics-class-sidebar.html | 41 + docs/models/RoverMetrics-class.html | 414 ++ docs/models/RoverMetrics/RoverMetrics.html | 104 + docs/models/RoverMetrics/allMetrics.html | 123 + docs/models/RoverMetrics/arm.html | 115 + docs/models/RoverMetrics/drive.html | 115 + docs/models/RoverMetrics/gripper.html | 115 + docs/models/RoverMetrics/init.html | 148 + .../RoverMetrics/isSupportedVersion.html | 119 + .../RoverMetrics/metricsByCommandName.html | 126 + docs/models/RoverMetrics/position.html | 115 + docs/models/RoverMetrics/science.html | 115 + docs/models/RoverMetrics/vitals.html | 115 + .../models/ScienceAnalysis-class-sidebar.html | 32 + docs/models/ScienceAnalysis-class.html | 277 + .../ScienceAnalysis/ScienceAnalysis.html | 112 + docs/models/ScienceAnalysis/addReading.html | 120 + docs/models/ScienceAnalysis/clear.html | 118 + docs/models/ScienceAnalysis/data.html | 115 + docs/models/ScienceAnalysis/hashCode.html | 145 + docs/models/ScienceAnalysis/noSuchMethod.html | 151 + .../ScienceAnalysis/operator_equals.html | 141 + docs/models/ScienceAnalysis/runtimeType.html | 120 + docs/models/ScienceAnalysis/sensor.html | 115 + docs/models/ScienceAnalysis/testBuilder.html | 115 + docs/models/ScienceAnalysis/testResult.html | 126 + docs/models/ScienceAnalysis/toString.html | 123 + .../ScienceCommandBuilder-class-sidebar.html | 38 + docs/models/ScienceCommandBuilder-class.html | 378 ++ .../ScienceCommandBuilder.html | 104 + .../models/ScienceCommandBuilder/isValid.html | 128 + .../ScienceCommandBuilder/otherBuilders.html | 127 + docs/models/ScienceCommandBuilder/sample.html | 115 + docs/models/ScienceCommandBuilder/send.html | 118 + docs/models/ScienceCommandBuilder/state.html | 115 + .../ScienceCommandBuilder/updateState.html | 119 + docs/models/ScienceCommandBuilder/value.html | 130 + .../models/ScienceControls-class-sidebar.html | 38 + docs/models/ScienceControls-class.html | 371 ++ .../ScienceControls/ScienceControls.html | 104 + docs/models/ScienceControls/bumperFlag.html | 115 + .../models/ScienceControls/buttonMapping.html | 138 + .../ScienceControls/carouselIncrement.html | 115 + docs/models/ScienceControls/leftBumper.html | 115 + docs/models/ScienceControls/mode.html | 127 + docs/models/ScienceControls/onDispose.html | 128 + docs/models/ScienceControls/parseInputs.html | 144 + docs/models/ScienceControls/rightBumper.html | 115 + .../ScienceControls/scoopIncrement.html | 115 + .../ScienceControls/subsurfaceIncrement.html | 115 + docs/models/ScienceControls/tubeMode.html | 115 + docs/models/ScienceControls/updateState.html | 128 + docs/models/ScienceModel-class-sidebar.html | 45 + docs/models/ScienceModel-class.html | 464 ++ docs/models/ScienceModel/ScienceModel.html | 116 + docs/models/ScienceModel/addMessage.html | 125 + docs/models/ScienceModel/addReading.html | 120 + docs/models/ScienceModel/allSamples.html | 120 + .../ScienceModel/analysesForSample.html | 123 + docs/models/ScienceModel/clear.html | 123 + docs/models/ScienceModel/dispose.html | 133 + docs/models/ScienceModel/errorText.html | 115 + docs/models/ScienceModel/isListening.html | 115 + docs/models/ScienceModel/isLoading.html | 115 + docs/models/ScienceModel/loadFile.html | 146 + docs/models/ScienceModel/metrics.html | 121 + docs/models/ScienceModel/numSamples.html | 121 + docs/models/ScienceModel/sample.html | 115 + docs/models/ScienceModel/updateData.html | 119 + docs/models/ScienceModel/updateSample.html | 120 + .../ScienceSettingsBuilder-class-sidebar.html | 37 + docs/models/ScienceSettingsBuilder-class.html | 365 ++ .../ScienceSettingsBuilder.html | 114 + .../ScienceSettingsBuilder/isValid.html | 128 + .../ScienceSettingsBuilder/numSamples.html | 115 + .../scrollableGraphs.html | 115 + .../updateScrollableGraphs.html | 119 + docs/models/ScienceSettingsBuilder/value.html | 130 + .../ScienceTestBuilder-class-sidebar.html | 35 + docs/models/ScienceTestBuilder-class.html | 339 ++ .../ScienceTestBuilder.html | 115 + docs/models/ScienceTestBuilder/average.html | 115 + docs/models/ScienceTestBuilder/dispose.html | 132 + docs/models/ScienceTestBuilder/max.html | 115 + docs/models/ScienceTestBuilder/min.html | 115 + docs/models/ScienceTestBuilder/update.html | 124 + docs/models/SerialModel-class-sidebar.html | 39 + docs/models/SerialModel-class.html | 399 ++ docs/models/SerialModel/SerialModel.html | 104 + docs/models/SerialModel/connect.html | 131 + docs/models/SerialModel/devices.html | 116 + docs/models/SerialModel/disconnect.html | 123 + docs/models/SerialModel/hasDevice.html | 121 + docs/models/SerialModel/init.html | 121 + docs/models/SerialModel/isConnected.html | 116 + docs/models/SerialModel/sendMessage.html | 121 + docs/models/SerialModel/toggle.html | 116 + .../models/SettingsBuilder-class-sidebar.html | 41 + docs/models/SettingsBuilder-class.html | 413 ++ .../SettingsBuilder/SettingsBuilder.html | 123 + docs/models/SettingsBuilder/arm.html | 115 + docs/models/SettingsBuilder/dashboard.html | 115 + docs/models/SettingsBuilder/easterEggs.html | 115 + docs/models/SettingsBuilder/isLoading.html | 115 + docs/models/SettingsBuilder/isValid.html | 132 + docs/models/SettingsBuilder/network.html | 115 + docs/models/SettingsBuilder/save.html | 127 + docs/models/SettingsBuilder/science.html | 115 + docs/models/SettingsBuilder/value.html | 133 + docs/models/SettingsModel-class-sidebar.html | 39 + docs/models/SettingsModel-class.html | 390 ++ docs/models/SettingsModel/SettingsModel.html | 104 + docs/models/SettingsModel/all.html | 115 + docs/models/SettingsModel/arm.html | 121 + docs/models/SettingsModel/dashboard.html | 121 + docs/models/SettingsModel/easterEggs.html | 121 + docs/models/SettingsModel/init.html | 124 + docs/models/SettingsModel/network.html | 121 + docs/models/SettingsModel/science.html | 121 + docs/models/SettingsModel/update.html | 124 + docs/models/SocketBuilder-class-sidebar.html | 36 + docs/models/SocketBuilder-class.html | 352 ++ docs/models/SocketBuilder/SocketBuilder.html | 118 + docs/models/SocketBuilder/address.html | 115 + docs/models/SocketBuilder/isValid.html | 128 + docs/models/SocketBuilder/port.html | 115 + docs/models/SocketBuilder/value.html | 127 + docs/models/Sockets-class-sidebar.html | 45 + docs/models/Sockets-class.html | 467 ++ docs/models/Sockets/Sockets.html | 104 + docs/models/Sockets/addressOverride.html | 125 + docs/models/Sockets/autonomy.html | 120 + docs/models/Sockets/connectionSummary.html | 127 + docs/models/Sockets/data.html | 120 + docs/models/Sockets/dispose.html | 132 + docs/models/Sockets/init.html | 129 + docs/models/Sockets/onConnect.html | 125 + docs/models/Sockets/onDisconnect.html | 121 + docs/models/Sockets/reset.html | 124 + docs/models/Sockets/rover.html | 115 + docs/models/Sockets/setRover.html | 122 + docs/models/Sockets/socketForDevice.html | 122 + docs/models/Sockets/sockets.html | 121 + docs/models/Sockets/updateSockets.html | 120 + docs/models/Sockets/video.html | 120 + docs/models/TextBuilder-class-sidebar.html | 37 + docs/models/TextBuilder-class.html | 371 ++ docs/models/TextBuilder/TextBuilder.html | 115 + docs/models/TextBuilder/controller.html | 116 + docs/models/TextBuilder/error.html | 115 + docs/models/TextBuilder/isValid.html | 128 + docs/models/TextBuilder/update.html | 118 + docs/models/TextBuilder/value.html | 121 + .../models/ThrottleBuilder-class-sidebar.html | 36 + docs/models/ThrottleBuilder-class.html | 351 ++ .../ThrottleBuilder/ThrottleBuilder.html | 104 + docs/models/ThrottleBuilder/controller.html | 115 + docs/models/ThrottleBuilder/errorText.html | 115 + docs/models/ThrottleBuilder/isLoading.html | 115 + docs/models/ThrottleBuilder/isValid.html | 121 + docs/models/ThrottleBuilder/save.html | 124 + docs/models/TimerBuilder-class-sidebar.html | 38 + docs/models/TimerBuilder-class.html | 378 ++ docs/models/TimerBuilder/TimerBuilder.html | 104 + docs/models/TimerBuilder/duration.html | 115 + docs/models/TimerBuilder/isValid.html | 128 + docs/models/TimerBuilder/nameController.html | 115 + docs/models/TimerBuilder/otherBuilders.html | 127 + docs/models/TimerBuilder/start.html | 117 + docs/models/TimerBuilder/update.html | 116 + docs/models/TimerBuilder/value.html | 127 + docs/models/ValueBuilder-class-sidebar.html | 34 + docs/models/ValueBuilder-class.html | 345 ++ docs/models/ValueBuilder/ValueBuilder.html | 115 + docs/models/ValueBuilder/dispose.html | 132 + docs/models/ValueBuilder/isValid.html | 122 + docs/models/ValueBuilder/otherBuilders.html | 121 + docs/models/ValueBuilder/value.html | 121 + docs/models/VideoModel-class-sidebar.html | 43 + docs/models/VideoModel-class.html | 443 ++ docs/models/VideoModel/VideoModel.html | 104 + docs/models/VideoModel/dispose.html | 131 + docs/models/VideoModel/feeds.html | 122 + docs/models/VideoModel/fpsTimer.html | 115 + docs/models/VideoModel/frameUpdater.html | 116 + docs/models/VideoModel/framesThisSecond.html | 119 + docs/models/VideoModel/handleData.html | 135 + docs/models/VideoModel/init.html | 134 + docs/models/VideoModel/networkFps.html | 115 + docs/models/VideoModel/reset.html | 126 + docs/models/VideoModel/resetNetworkFps.html | 123 + docs/models/VideoModel/saveFrame.html | 121 + docs/models/VideoModel/toggleCamera.html | 135 + docs/models/VideoModel/updateCamera.html | 125 + docs/models/ViewsModel-class-sidebar.html | 42 + docs/models/ViewsModel-class.html | 428 ++ docs/models/ViewsModel/ViewsModel.html | 104 + docs/models/ViewsModel/dispose.html | 136 + .../ViewsModel/horizontalController1.html | 115 + .../ViewsModel/horizontalController2.html | 115 + .../ViewsModel/horizontalController3.html | 115 + .../ViewsModel/horizontalController4.html | 115 + docs/models/ViewsModel/init.html | 123 + docs/models/ViewsModel/replaceView.html | 127 + docs/models/ViewsModel/resetSizes.html | 136 + docs/models/ViewsModel/setNumViews.html | 128 + .../models/ViewsModel/verticalController.html | 115 + .../ViewsModel/verticalController2.html | 115 + docs/models/ViewsModel/views.html | 117 + docs/models/gamepadDelay-constant.html | 113 + docs/models/maxLogCount-constant.html | 113 + docs/models/models-library-sidebar.html | 70 + docs/models/models-library.html | 598 +++ docs/models/models.html | 116 + docs/pages/ArmPage-class-sidebar.html | 40 + docs/pages/ArmPage-class.html | 411 ++ docs/pages/ArmPage/ArmPage.html | 112 + docs/pages/ArmPage/build.html | 206 + docs/pages/ArmPage/createModel.html | 121 + docs/pages/ArmPage/index.html | 115 + docs/pages/ArmPainterSide-class-sidebar.html | 46 + docs/pages/ArmPainterSide-class.html | 485 ++ docs/pages/ArmPainterSide/ArmPainterSide.html | 113 + .../ArmPainterSide/elbowLength-constant.html | 115 + .../ArmPainterSide/getArmCoordinates.html | 141 + .../ArmPainterSide/getRelativeOffset.html | 123 + .../gripperLength-constant.html | 115 + docs/pages/ArmPainterSide/ik.html | 135 + docs/pages/ArmPainterSide/model.html | 115 + docs/pages/ArmPainterSide/paint.html | 180 + docs/pages/ArmPainterSide/paintArm.html | 154 + docs/pages/ArmPainterSide/radiusColor.html | 115 + docs/pages/ArmPainterSide/screen.html | 115 + docs/pages/ArmPainterSide/shouldRepaint.html | 141 + .../shoulderLength-constant.html | 115 + docs/pages/ArmPainterSide/toAbsolute.html | 116 + .../totalArmLength-constant.html | 115 + docs/pages/ArmPainterTop-class-sidebar.html | 38 + docs/pages/ArmPainterTop-class.html | 394 ++ docs/pages/ArmPainterTop/ArmPainterTop.html | 112 + docs/pages/ArmPainterTop/getElbow.html | 120 + docs/pages/ArmPainterTop/getShoulder.html | 120 + docs/pages/ArmPainterTop/paint.html | 166 + docs/pages/ArmPainterTop/screen.html | 115 + docs/pages/ArmPainterTop/shouldRepaint.html | 141 + docs/pages/ArmPainterTop/swivelAngle.html | 115 + docs/pages/ArmPainterTop/toAbsolute.html | 116 + docs/pages/ChartsRow-class-sidebar.html | 39 + docs/pages/ChartsRow-class.html | 394 ++ docs/pages/ChartsRow/ChartsRow.html | 121 + docs/pages/ChartsRow/analyses.html | 115 + docs/pages/ChartsRow/build.html | 165 + docs/pages/ChartsRow/builder.html | 115 + docs/pages/ChartsRow/height.html | 115 + docs/pages/ChartsRow/title.html | 115 + docs/pages/DashboardView-class-sidebar.html | 38 + docs/pages/DashboardView-class.html | 335 ++ docs/pages/DashboardView/DashboardView.html | 116 + docs/pages/DashboardView/blank.html | 133 + docs/pages/DashboardView/builder.html | 115 + docs/pages/DashboardView/cameraViews.html | 124 + docs/pages/DashboardView/flutterKey.html | 115 + docs/pages/DashboardView/getCameraStatus.html | 141 + docs/pages/DashboardView/hashCode.html | 145 + docs/pages/DashboardView/icon.html | 121 + docs/pages/DashboardView/iconFunc.html | 115 + docs/pages/DashboardView/key.html | 115 + docs/pages/DashboardView/name.html | 115 + docs/pages/DashboardView/noSuchMethod.html | 151 + docs/pages/DashboardView/operator_equals.html | 141 + docs/pages/DashboardView/runtimeType.html | 120 + docs/pages/DashboardView/toString.html | 123 + docs/pages/DashboardView/uiViews.html | 146 + .../DesktopScrollBehavior-class-sidebar.html | 36 + docs/pages/DesktopScrollBehavior-class.html | 361 ++ .../DesktopScrollBehavior.html | 104 + .../DesktopScrollBehavior/dragDevices.html | 136 + docs/pages/DrivePage-class-sidebar.html | 40 + docs/pages/DrivePage-class.html | 411 ++ docs/pages/DrivePage/DrivePage.html | 112 + docs/pages/DrivePage/build.html | 179 + docs/pages/DrivePage/createModel.html | 121 + docs/pages/DrivePage/index.html | 115 + docs/pages/ElectricalPage-class-sidebar.html | 40 + docs/pages/ElectricalPage-class.html | 411 ++ docs/pages/ElectricalPage/ElectricalPage.html | 112 + docs/pages/ElectricalPage/build.html | 153 + docs/pages/ElectricalPage/createModel.html | 121 + docs/pages/ElectricalPage/index.html | 115 + docs/pages/HomePage-class-sidebar.html | 35 + docs/pages/HomePage-class.html | 346 ++ docs/pages/HomePage/HomePage.html | 104 + docs/pages/HomePage/createState.html | 133 + docs/pages/HomePageState-class-sidebar.html | 42 + docs/pages/HomePageState-class.html | 433 ++ docs/pages/HomePageState/HomePageState.html | 104 + docs/pages/HomePageState/build.html | 253 + docs/pages/HomePageState/showSidebar.html | 115 + docs/pages/LogWidget-class-sidebar.html | 37 + docs/pages/LogWidget-class.html | 370 ++ docs/pages/LogWidget/LogWidget.html | 112 + docs/pages/LogWidget/build.html | 158 + docs/pages/LogWidget/icon.html | 129 + docs/pages/LogWidget/log.html | 115 + docs/pages/LogsBody-class-sidebar.html | 40 + docs/pages/LogsBody-class.html | 412 ++ docs/pages/LogsBody/LogsBody.html | 112 + docs/pages/LogsBody/build.html | 130 + docs/pages/LogsOptions-class-sidebar.html | 42 + docs/pages/LogsOptions-class.html | 438 ++ docs/pages/LogsOptions/LogsOptions.html | 112 + docs/pages/LogsOptions/build.html | 200 + docs/pages/LogsOptions/getStatusColor.html | 127 + docs/pages/LogsOptions/sshButton.html | 124 + docs/pages/LogsPage-class-sidebar.html | 35 + docs/pages/LogsPage-class.html | 347 ++ docs/pages/LogsPage/LogsPage.html | 104 + docs/pages/LogsPage/createState.html | 133 + docs/pages/LogsState-class-sidebar.html | 42 + docs/pages/LogsState-class.html | 433 ++ docs/pages/LogsState/LogsState.html | 104 + docs/pages/LogsState/build.html | 271 + docs/pages/LogsState/model.html | 115 + docs/pages/MapPage-class-sidebar.html | 42 + docs/pages/MapPage-class.html | 438 ++ docs/pages/MapPage/MapPage.html | 112 + docs/pages/MapPage/build.html | 228 + docs/pages/MapPage/createModel.html | 121 + docs/pages/MapPage/getColor.html | 123 + docs/pages/MapPage/index.html | 115 + docs/pages/MapPage/placeMarker.html | 133 + docs/pages/ResultsBox-class-sidebar.html | 38 + docs/pages/ResultsBox-class.html | 382 ++ docs/pages/ResultsBox/ResultsBox.html | 112 + docs/pages/ResultsBox/analysis.html | 115 + docs/pages/ResultsBox/build.html | 182 + docs/pages/ResultsBox/color.html | 129 + docs/pages/ResultsBox/text.html | 129 + docs/pages/Rock-class-sidebar.html | 29 + docs/pages/Rock-class.html | 240 + docs/pages/Rock/Rock.html | 114 + docs/pages/Rock/description.html | 115 + docs/pages/Rock/hashCode.html | 145 + docs/pages/Rock/image.html | 115 + docs/pages/Rock/name.html | 115 + docs/pages/Rock/noSuchMethod.html | 151 + docs/pages/Rock/operator_equals.html | 141 + docs/pages/Rock/runtimeType.html | 120 + docs/pages/Rock/toString.html | 123 + docs/pages/RockModel-class-sidebar.html | 37 + docs/pages/RockModel-class.html | 364 ++ docs/pages/RockModel/RockModel.html | 104 + docs/pages/RockModel/controller.html | 115 + docs/pages/RockModel/filter.html | 117 + docs/pages/RockModel/filteredRocks.html | 121 + docs/pages/RockModel/query.html | 121 + docs/pages/RockModel/rocks.html | 186 + docs/pages/RockModel/search.html | 116 + docs/pages/RockWidget-class-sidebar.html | 36 + docs/pages/RockWidget-class.html | 358 ++ docs/pages/RockWidget/RockWidget.html | 112 + docs/pages/RockWidget/build.html | 191 + docs/pages/RockWidget/rock.html | 115 + docs/pages/RocksPage-class-sidebar.html | 40 + docs/pages/RocksPage-class.html | 411 ++ docs/pages/RocksPage/RocksPage.html | 112 + docs/pages/RocksPage/build.html | 148 + docs/pages/RocksPage/createModel.html | 121 + docs/pages/RocksPage/index.html | 115 + docs/pages/Routes-class-sidebar.html | 37 + docs/pages/Routes-class.html | 329 ++ docs/pages/Routes/Routes.html | 104 + docs/pages/Routes/arm-constant.html | 115 + docs/pages/Routes/autonomy-constant.html | 115 + docs/pages/Routes/blank-constant.html | 115 + docs/pages/Routes/drive-constant.html | 115 + docs/pages/Routes/electrical-constant.html | 115 + docs/pages/Routes/hashCode.html | 145 + docs/pages/Routes/home-constant.html | 115 + docs/pages/Routes/logs-constant.html | 115 + docs/pages/Routes/noSuchMethod.html | 151 + docs/pages/Routes/operator_equals.html | 141 + docs/pages/Routes/rocks-constant.html | 115 + docs/pages/Routes/runtimeType.html | 120 + docs/pages/Routes/science-constant.html | 115 + docs/pages/Routes/settings-constant.html | 115 + docs/pages/Routes/toString.html | 123 + docs/pages/SciencePage-class-sidebar.html | 46 + docs/pages/SciencePage-class.html | 479 ++ docs/pages/SciencePage/SciencePage.html | 112 + docs/pages/SciencePage/build.html | 181 + docs/pages/SciencePage/createModel.html | 121 + docs/pages/SciencePage/getBarChartData.html | 137 + docs/pages/SciencePage/getColor.html | 117 + docs/pages/SciencePage/getDetailsData.html | 146 + docs/pages/SciencePage/index.html | 115 + docs/pages/SciencePage/purple.html | 115 + docs/pages/SciencePage/red.html | 115 + docs/pages/ScrollingRow-class-sidebar.html | 42 + docs/pages/ScrollingRow-class.html | 434 ++ docs/pages/ScrollingRow/ScrollingRow.html | 113 + docs/pages/ScrollingRow/build.html | 136 + docs/pages/ScrollingRow/children.html | 115 + docs/pages/ScrollingRow/height.html | 115 + docs/pages/SegaState-enum-sidebar.html | 31 + docs/pages/SegaState.html | 267 + docs/pages/SegaState/hashCode.html | 145 + docs/pages/SegaState/index.html | 125 + docs/pages/SegaState/noSuchMethod.html | 151 + docs/pages/SegaState/operator_equals.html | 141 + docs/pages/SegaState/runtimeType.html | 120 + docs/pages/SegaState/toString.html | 123 + docs/pages/SegaState/values-constant.html | 111 + docs/pages/SettingsPage-class-sidebar.html | 39 + docs/pages/SettingsPage-class.html | 398 ++ docs/pages/SettingsPage/SettingsPage.html | 104 + docs/pages/SettingsPage/build.html | 362 ++ docs/pages/SettingsPage/createModel.html | 121 + docs/pages/SocketSwitcher-class-sidebar.html | 40 + docs/pages/SocketSwitcher-class.html | 410 ++ docs/pages/SocketSwitcher/SocketSwitcher.html | 111 + docs/pages/SocketSwitcher/build.html | 133 + docs/pages/SplashPage-class-sidebar.html | 35 + docs/pages/SplashPage-class.html | 345 ++ docs/pages/SplashPage/SplashPage.html | 104 + docs/pages/SplashPage/createState.html | 133 + docs/pages/SplashPageState-class-sidebar.html | 47 + docs/pages/SplashPageState-class.html | 495 ++ .../SplashPageState/SplashPageState.html | 104 + docs/pages/SplashPageState/audioPlayer.html | 115 + docs/pages/SplashPageState/build.html | 271 + docs/pages/SplashPageState/current.html | 115 + docs/pages/SplashPageState/dispose.html | 173 + docs/pages/SplashPageState/errorText.html | 115 + docs/pages/SplashPageState/init.html | 134 + docs/pages/SplashPageState/initAnimation.html | 126 + docs/pages/SplashPageState/initState.html | 147 + docs/pages/SplashPageState/state.html | 115 + docs/pages/ValueEditor-class-sidebar.html | 37 + docs/pages/ValueEditor-class.html | 372 ++ docs/pages/ValueEditor/ValueEditor.html | 113 + docs/pages/ValueEditor/build.html | 169 + docs/pages/ValueEditor/children.html | 115 + docs/pages/ValueEditor/name.html | 115 + docs/pages/ViewBuilder.html | 109 + docs/pages/criticalWidget.html | 113 + docs/pages/debugWidget-constant.html | 113 + docs/pages/errorWidget-constant.html | 113 + docs/pages/getTitles.html | 119 + docs/pages/infoWidget.html | 113 + docs/pages/pages-library-sidebar.html | 55 + docs/pages/pages-library.html | 497 ++ docs/pages/traceWidget-constant.html | 113 + docs/pages/warningWidget-constant.html | 113 + docs/search.html | 92 + .../DashboardSocket-class-sidebar.html | 51 + docs/services/DashboardSocket-class.html | 524 ++ .../DashboardSocket/DashboardSocket.html | 125 + .../DashboardSocket/checkHeartbeats.html | 142 + .../DashboardSocket/connectionIncrement.html | 121 + .../DashboardSocket/connectionStrength.html | 115 + .../services/DashboardSocket/destination.html | 116 + docs/services/DashboardSocket/device.html | 114 + docs/services/DashboardSocket/dispose.html | 123 + docs/services/DashboardSocket/frequency.html | 121 + docs/services/DashboardSocket/hashCode.html | 145 + .../DashboardSocket/heartbeatInterval.html | 127 + .../DashboardSocket/heartbeatTimer.html | 114 + .../DashboardSocket/heartbeatWaitDelay.html | 121 + docs/services/DashboardSocket/init.html | 123 + .../services/DashboardSocket/isConnected.html | 127 + docs/services/DashboardSocket/logger.html | 114 + .../DashboardSocket/messageHandler.html | 115 + .../DashboardSocket/noSuchMethod.html | 151 + docs/services/DashboardSocket/onConnect.html | 115 + docs/services/DashboardSocket/onData.html | 125 + .../DashboardSocket/onDisconnect.html | 115 + .../services/DashboardSocket/onHeartbeat.html | 123 + docs/services/DashboardSocket/onMessage.html | 122 + docs/services/DashboardSocket/onWrapper.html | 131 + .../DashboardSocket/operator_equals.html | 141 + docs/services/DashboardSocket/port.html | 114 + docs/services/DashboardSocket/quiet.html | 114 + .../services/DashboardSocket/runtimeType.html | 120 + docs/services/DashboardSocket/sendData.html | 123 + .../services/DashboardSocket/sendMessage.html | 117 + .../services/DashboardSocket/sendWrapper.html | 118 + docs/services/DashboardSocket/toString.html | 123 + .../DeviceNotConnected-class-sidebar.html | 26 + docs/services/DeviceNotConnected-class.html | 226 + .../DeviceNotConnected.html | 104 + .../services/DeviceNotConnected/toString.html | 130 + docs/services/FilesService-class-sidebar.html | 43 + docs/services/FilesService-class.html | 419 ++ docs/services/FilesService/FilesService.html | 104 + docs/services/FilesService/batchedLogs.html | 118 + docs/services/FilesService/dataLogger.html | 115 + docs/services/FilesService/dispose.html | 123 + docs/services/FilesService/hashCode.html | 145 + docs/services/FilesService/init.html | 128 + docs/services/FilesService/jsonEncoder.html | 115 + docs/services/FilesService/logAllData.html | 127 + docs/services/FilesService/logData.html | 119 + docs/services/FilesService/logError.html | 120 + docs/services/FilesService/logMessage.html | 119 + docs/services/FilesService/loggingDir.html | 116 + docs/services/FilesService/noSuchMethod.html | 151 + .../FilesService/operator_equals.html | 141 + docs/services/FilesService/outputDir.html | 118 + docs/services/FilesService/readLogs.html | 119 + docs/services/FilesService/readSettings.html | 131 + docs/services/FilesService/runtimeType.html | 120 + .../services/FilesService/screenshotsDir.html | 122 + docs/services/FilesService/settingsFile.html | 123 + docs/services/FilesService/toString.html | 123 + docs/services/FilesService/writeImage.html | 122 + docs/services/FilesService/writeSettings.html | 119 + docs/services/Gamepad-class-sidebar.html | 36 + docs/services/Gamepad-class.html | 329 ++ .../services/Gamepad/Gamepad.forPlatform.html | 112 + docs/services/Gamepad/Gamepad.html | 112 + docs/services/Gamepad/batteryLevel.html | 121 + docs/services/Gamepad/controllerIndex.html | 115 + docs/services/Gamepad/dispose.html | 115 + docs/services/Gamepad/getState.html | 115 + docs/services/Gamepad/hashCode.html | 145 + docs/services/Gamepad/init.html | 115 + docs/services/Gamepad/isConnected.html | 124 + docs/services/Gamepad/noSuchMethod.html | 151 + docs/services/Gamepad/operator_equals.html | 141 + docs/services/Gamepad/pulse.html | 125 + docs/services/Gamepad/runtimeType.html | 120 + docs/services/Gamepad/stopVibrating.html | 115 + docs/services/Gamepad/toString.html | 123 + docs/services/Gamepad/vibrate.html | 117 + .../GamepadBatteryLevel-enum-sidebar.html | 34 + docs/services/GamepadBatteryLevel.html | 299 ++ .../GamepadBatteryLevel/fromPercent.html | 121 + .../GamepadBatteryLevel/hashCode.html | 145 + docs/services/GamepadBatteryLevel/index.html | 125 + .../GamepadBatteryLevel/noSuchMethod.html | 151 + .../GamepadBatteryLevel/operator_equals.html | 141 + .../GamepadBatteryLevel/runtimeType.html | 120 + .../GamepadBatteryLevel/toString.html | 123 + .../GamepadBatteryLevel/values-constant.html | 111 + .../GamepadService-class-sidebar.html | 33 + docs/services/GamepadService-class.html | 295 ++ .../GamepadService/GamepadService.html | 104 + docs/services/GamepadService/connect.html | 140 + docs/services/GamepadService/dispose.html | 125 + docs/services/GamepadService/gamepads.html | 118 + docs/services/GamepadService/hashCode.html | 145 + docs/services/GamepadService/init.html | 127 + .../GamepadService/maxGamepads-constant.html | 115 + .../services/GamepadService/noSuchMethod.html | 151 + .../GamepadService/operator_equals.html | 141 + docs/services/GamepadService/osIndexes.html | 129 + docs/services/GamepadService/runtimeType.html | 120 + docs/services/GamepadService/toString.html | 123 + docs/services/GamepadState-class-sidebar.html | 44 + docs/services/GamepadState-class.html | 427 ++ docs/services/GamepadState/GamepadState.html | 140 + docs/services/GamepadState/buttonA.html | 115 + docs/services/GamepadState/buttonB.html | 115 + docs/services/GamepadState/buttonBack.html | 115 + docs/services/GamepadState/buttonStart.html | 115 + docs/services/GamepadState/buttonX.html | 115 + docs/services/GamepadState/buttonY.html | 115 + docs/services/GamepadState/dpadDown.html | 121 + docs/services/GamepadState/dpadUp.html | 121 + docs/services/GamepadState/hashCode.html | 145 + docs/services/GamepadState/leftShoulder.html | 121 + docs/services/GamepadState/noSuchMethod.html | 151 + docs/services/GamepadState/normalDpadX.html | 115 + docs/services/GamepadState/normalDpadY.html | 115 + docs/services/GamepadState/normalLeftX.html | 115 + docs/services/GamepadState/normalLeftY.html | 115 + docs/services/GamepadState/normalRightX.html | 115 + docs/services/GamepadState/normalRightY.html | 115 + .../services/GamepadState/normalShoulder.html | 115 + docs/services/GamepadState/normalTrigger.html | 115 + .../GamepadState/operator_equals.html | 141 + docs/services/GamepadState/rightShoulder.html | 121 + docs/services/GamepadState/runtimeType.html | 120 + docs/services/GamepadState/toString.html | 123 + .../MalformedSerialPacket-class-sidebar.html | 27 + .../services/MalformedSerialPacket-class.html | 241 + .../MalformedSerialPacket.html | 112 + .../MalformedSerialPacket/packet.html | 115 + .../MalformedSerialPacket/toString.html | 130 + .../MultipleDevicesFound-class-sidebar.html | 27 + docs/services/MultipleDevicesFound-class.html | 239 + .../MultipleDevicesFound.html | 112 + .../MultipleDevicesFound/devices.html | 115 + .../MultipleDevicesFound/toString.html | 130 + .../services/NoDeviceFound-class-sidebar.html | 26 + docs/services/NoDeviceFound-class.html | 226 + .../services/NoDeviceFound/NoDeviceFound.html | 104 + docs/services/NoDeviceFound/toString.html | 130 + .../SerialCannotOpen-class-sidebar.html | 27 + docs/services/SerialCannotOpen-class.html | 240 + .../SerialCannotOpen/SerialCannotOpen.html | 112 + docs/services/SerialCannotOpen/port.html | 115 + docs/services/SerialCannotOpen/toString.html | 130 + docs/services/SerialDevice-class-sidebar.html | 36 + docs/services/SerialDevice-class.html | 315 ++ docs/services/SerialDevice/SerialDevice.html | 113 + .../services/SerialDevice/availablePorts.html | 121 + docs/services/SerialDevice/connect.html | 119 + docs/services/SerialDevice/device.html | 117 + docs/services/SerialDevice/dispose.html | 118 + docs/services/SerialDevice/hashCode.html | 145 + docs/services/SerialDevice/noSuchMethod.html | 151 + docs/services/SerialDevice/onMessage.html | 115 + .../SerialDevice/operator_equals.html | 141 + docs/services/SerialDevice/port.html | 115 + .../SerialDevice/resetCode-constant.html | 115 + docs/services/SerialDevice/runtimeType.html | 120 + docs/services/SerialDevice/sendMessage.html | 123 + docs/services/SerialDevice/toString.html | 123 + .../SerialException-class-sidebar.html | 26 + docs/services/SerialException-class.html | 236 + .../SerialException/SerialException.html | 111 + .../SerialHandshakeFailed-class-sidebar.html | 26 + .../services/SerialHandshakeFailed-class.html | 228 + .../SerialHandshakeFailed.html | 104 + .../SerialHandshakeFailed/toString.html | 130 + .../services/SerialIOError-class-sidebar.html | 27 + docs/services/SerialIOError-class.html | 240 + .../services/SerialIOError/SerialIOError.html | 112 + docs/services/SerialIOError/error.html | 115 + docs/services/SerialIOError/toString.html | 130 + docs/services/Services-class-sidebar.html | 31 + docs/services/Services-class.html | 270 + docs/services/Services/Services.html | 104 + docs/services/Services/dispose.html | 124 + docs/services/Services/error.html | 115 + docs/services/Services/files.html | 115 + docs/services/Services/gamepad.html | 115 + docs/services/Services/hashCode.html | 145 + docs/services/Services/init.html | 124 + docs/services/Services/noSuchMethod.html | 151 + docs/services/Services/operator_equals.html | 141 + docs/services/Services/runtimeType.html | 120 + docs/services/Services/toString.html | 123 + docs/services/services-library-sidebar.html | 32 + docs/services/services-library.html | 294 ++ docs/services/services.html | 114 + docs/static-assets/docs.dart.js | 4655 +++++++++++++++++ docs/static-assets/docs.dart.js.map | 16 + docs/static-assets/favicon.png | Bin 0 -> 1767 bytes docs/static-assets/github.css | 99 + docs/static-assets/highlight.pack.js | 780 +++ docs/static-assets/play_button.svg | 1 + docs/static-assets/readme.md | 36 + docs/static-assets/search.svg | 1 + docs/static-assets/styles.css | 1315 +++++ .../AutonomyCommandEditor-class-sidebar.html | 41 + docs/widgets/AutonomyCommandEditor-class.html | 424 ++ .../AutonomyCommandEditor.html | 112 + docs/widgets/AutonomyCommandEditor/build.html | 151 + .../AutonomyCommandEditor/createModel.html | 121 + .../AutonomyCommandEditor/createTask.html | 145 + .../AutonomyCommandEditor/dataModel.html | 115 + .../BuildContextUtils-extension-sidebar.html | 17 + docs/widgets/BuildContextUtils.html | 151 + .../BuildContextUtils/colorScheme.html | 121 + docs/widgets/BuildContextUtils/textTheme.html | 121 + .../CameraDetailsEditor-class-sidebar.html | 40 + docs/widgets/CameraDetailsEditor-class.html | 411 ++ .../CameraDetailsEditor.html | 112 + docs/widgets/CameraDetailsEditor/build.html | 177 + .../CameraDetailsEditor/createModel.html | 121 + docs/widgets/CameraDetailsEditor/data.html | 116 + docs/widgets/ColorEditor-class-sidebar.html | 40 + docs/widgets/ColorEditor-class.html | 411 ++ docs/widgets/ColorEditor/ColorEditor.html | 112 + docs/widgets/ColorEditor/build.html | 169 + .../ControlsDisplay-class-sidebar.html | 41 + docs/widgets/ControlsDisplay-class.html | 423 ++ .../ControlsDisplay/ControlsDisplay.html | 116 + docs/widgets/ControlsDisplay/build.html | 144 + docs/widgets/ControlsDisplay/gamepadNum.html | 115 + .../widgets/DropdownEditor-class-sidebar.html | 40 + docs/widgets/DropdownEditor-class.html | 406 ++ .../DropdownEditor/DropdownEditor.html | 123 + docs/widgets/DropdownEditor/build.html | 173 + docs/widgets/DropdownEditor/humanName.html | 115 + docs/widgets/DropdownEditor/items.html | 115 + docs/widgets/DropdownEditor/name.html | 115 + docs/widgets/DropdownEditor/onChanged.html | 115 + docs/widgets/DropdownEditor/value.html | 115 + docs/widgets/Footer-class-sidebar.html | 36 + docs/widgets/Footer-class.html | 358 ++ docs/widgets/Footer/Footer.html | 112 + docs/widgets/Footer/build.html | 174 + docs/widgets/Footer/showLogs.html | 115 + docs/widgets/GamepadButton-class-sidebar.html | 42 + docs/widgets/GamepadButton-class.html | 442 ++ docs/widgets/GamepadButton/GamepadButton.html | 112 + docs/widgets/GamepadButton/build.html | 158 + docs/widgets/GamepadButton/getColor.html | 123 + docs/widgets/GamepadButton/isDisabled.html | 116 + docs/widgets/GpsEditor-class-sidebar.html | 40 + docs/widgets/GpsEditor-class.html | 411 ++ docs/widgets/GpsEditor/GpsEditor.html | 112 + docs/widgets/GpsEditor/build.html | 148 + docs/widgets/ImageLoader-class-sidebar.html | 32 + docs/widgets/ImageLoader-class.html | 285 + docs/widgets/ImageLoader/ImageLoader.html | 104 + docs/widgets/ImageLoader/codec.html | 115 + docs/widgets/ImageLoader/dispose.html | 119 + docs/widgets/ImageLoader/hasImage.html | 121 + docs/widgets/ImageLoader/hashCode.html | 145 + docs/widgets/ImageLoader/image.html | 115 + docs/widgets/ImageLoader/isLoading.html | 115 + docs/widgets/ImageLoader/load.html | 123 + docs/widgets/ImageLoader/noSuchMethod.html | 151 + docs/widgets/ImageLoader/operator_equals.html | 141 + docs/widgets/ImageLoader/runtimeType.html | 120 + docs/widgets/ImageLoader/toString.html | 123 + .../widgets/MessageDisplay-class-sidebar.html | 43 + docs/widgets/MessageDisplay-class.html | 448 ++ .../MessageDisplay/MessageDisplay.html | 112 + docs/widgets/MessageDisplay/build.html | 155 + docs/widgets/MessageDisplay/getColor.html | 124 + docs/widgets/MessageDisplay/getIcon.html | 124 + docs/widgets/MessageDisplay/showLogs.html | 115 + docs/widgets/MetricsList-class-sidebar.html | 40 + docs/widgets/MetricsList-class.html | 411 ++ docs/widgets/MetricsList/MetricsList.html | 112 + docs/widgets/MetricsList/build.html | 139 + .../widgets/MobileControls-class-sidebar.html | 39 + docs/widgets/MobileControls-class.html | 398 ++ .../MobileControls/MobileControls.html | 104 + docs/widgets/MobileControls/build.html | 161 + docs/widgets/MobileControls/createModel.html | 121 + .../MobileControlsModel-class-sidebar.html | 35 + docs/widgets/MobileControlsModel-class.html | 340 ++ .../MobileControlsModel.html | 113 + docs/widgets/MobileControlsModel/dispose.html | 130 + docs/widgets/MobileControlsModel/left.html | 115 + docs/widgets/MobileControlsModel/right.html | 115 + .../MobileControlsModel/updateLeft.html | 119 + .../MobileControlsModel/updateRight.html | 119 + .../NetworkStatusIcon-class-sidebar.html | 38 + docs/widgets/NetworkStatusIcon-class.html | 382 ++ .../NetworkStatusIcon/NetworkStatusIcon.html | 118 + docs/widgets/NetworkStatusIcon/build.html | 164 + docs/widgets/NetworkStatusIcon/device.html | 115 + docs/widgets/NetworkStatusIcon/onPressed.html | 115 + docs/widgets/NetworkStatusIcon/tooltip.html | 115 + docs/widgets/NumberEditor-class-sidebar.html | 44 + docs/widgets/NumberEditor-class.html | 459 ++ docs/widgets/NumberEditor/NumberEditor.html | 122 + docs/widgets/NumberEditor/build.html | 142 + docs/widgets/NumberEditor/name.html | 115 + docs/widgets/NumberEditor/subtitle.html | 115 + docs/widgets/NumberEditor/titleFlex.html | 115 + docs/widgets/NumberEditor/width.html | 115 + .../widgets/ReactiveWidget-class-sidebar.html | 39 + docs/widgets/ReactiveWidget-class.html | 415 ++ .../ReactiveWidget/ReactiveWidget.html | 112 + docs/widgets/ReactiveWidget/createModel.html | 121 + .../widgets/ReactiveWidget/shouldDispose.html | 131 + ...ReactiveWidgetInterface-class-sidebar.html | 39 + .../ReactiveWidgetInterface-class.html | 407 ++ .../ReactiveWidgetInterface.html | 112 + .../ReactiveWidgetInterface/build.html | 117 + .../ReactiveWidgetInterface/createModel.html | 115 + .../ReactiveWidgetInterface/createState.html | 133 + .../didUpdateWidget.html | 124 + .../shouldDispose.html | 125 + .../ReactiveWidgetState-class-sidebar.html | 43 + docs/widgets/ReactiveWidgetState-class.html | 446 ++ .../ReactiveWidgetState.html | 104 + docs/widgets/ReactiveWidgetState/build.html | 221 + .../ReactiveWidgetState/didUpdateWidget.html | 150 + docs/widgets/ReactiveWidgetState/dispose.html | 174 + .../ReactiveWidgetState/initState.html | 148 + .../widgets/ReactiveWidgetState/listener.html | 115 + docs/widgets/ReactiveWidgetState/model.html | 115 + .../ReusableReactiveWidget-class-sidebar.html | 40 + .../widgets/ReusableReactiveWidget-class.html | 432 ++ .../ReusableReactiveWidget.html | 112 + .../ReusableReactiveWidget/createModel.html | 121 + .../widgets/ReusableReactiveWidget/model.html | 115 + .../ReusableReactiveWidget/shouldDispose.html | 131 + .../ScienceCommandEditor-class-sidebar.html | 39 + docs/widgets/ScienceCommandEditor-class.html | 398 ++ .../ScienceCommandEditor.html | 104 + docs/widgets/ScienceCommandEditor/build.html | 153 + .../ScienceCommandEditor/createModel.html | 121 + docs/widgets/SerialButton-class-sidebar.html | 40 + docs/widgets/SerialButton-class.html | 411 ++ docs/widgets/SerialButton/SerialButton.html | 111 + docs/widgets/SerialButton/build.html | 139 + .../SeverityUtil-extension-sidebar.html | 16 + docs/widgets/SeverityUtil.html | 139 + docs/widgets/SeverityUtil/color.html | 126 + docs/widgets/Sidebar-class-sidebar.html | 35 + docs/widgets/Sidebar-class.html | 346 ++ docs/widgets/Sidebar/Sidebar.html | 111 + docs/widgets/Sidebar/build.html | 226 + .../widgets/SliderSettings-class-sidebar.html | 40 + docs/widgets/SliderSettings-class.html | 406 ++ .../SliderSettings/SliderSettings.html | 122 + docs/widgets/SliderSettings/build.html | 164 + docs/widgets/SliderSettings/label.html | 115 + docs/widgets/SliderSettings/max.html | 115 + docs/widgets/SliderSettings/min.html | 115 + docs/widgets/SliderSettings/onChanged.html | 115 + docs/widgets/SliderSettings/value.html | 115 + docs/widgets/SocketEditor-class-sidebar.html | 42 + docs/widgets/SocketEditor-class.html | 435 ++ docs/widgets/SocketEditor/SocketEditor.html | 118 + docs/widgets/SocketEditor/build.html | 144 + docs/widgets/SocketEditor/editPort.html | 115 + docs/widgets/SocketEditor/name.html | 115 + docs/widgets/StatusIcons-class-sidebar.html | 41 + docs/widgets/StatusIcons-class.html | 416 ++ docs/widgets/StatusIcons/StatusIcons.html | 111 + docs/widgets/StatusIcons/build.html | 230 + docs/widgets/StatusIcons/getBatteryIcon.html | 125 + docs/widgets/StatusIcons/getColor.html | 121 + docs/widgets/StatusIcons/getLedColor.html | 122 + docs/widgets/StatusIcons/getStatusColor.html | 126 + docs/widgets/StatusIcons/getStatusIcon.html | 126 + .../widgets/ThrottleEditor-class-sidebar.html | 39 + docs/widgets/ThrottleEditor-class.html | 398 ++ .../ThrottleEditor/ThrottleEditor.html | 104 + docs/widgets/ThrottleEditor/build.html | 151 + docs/widgets/ThrottleEditor/createModel.html | 121 + docs/widgets/TimerEditor-class-sidebar.html | 39 + docs/widgets/TimerEditor-class.html | 398 ++ docs/widgets/TimerEditor/TimerEditor.html | 104 + docs/widgets/TimerEditor/build.html | 155 + docs/widgets/TimerEditor/createModel.html | 121 + docs/widgets/TimerWidget-class-sidebar.html | 41 + docs/widgets/TimerWidget-class.html | 424 ++ docs/widgets/TimerWidget/TimerWidget.html | 111 + docs/widgets/TimerWidget/build.html | 151 + docs/widgets/TimerWidget/getStyle.html | 122 + docs/widgets/VideoFeed-class-sidebar.html | 37 + docs/widgets/VideoFeed-class.html | 370 ++ docs/widgets/VideoFeed/VideoFeed.html | 113 + docs/widgets/VideoFeed/createState.html | 133 + docs/widgets/VideoFeed/index.html | 115 + docs/widgets/VideoFeed/name.html | 115 + .../widgets/VideoFeedState-class-sidebar.html | 53 + docs/widgets/VideoFeedState-class.html | 573 ++ .../VideoFeedState/VideoFeedState.html | 104 + docs/widgets/VideoFeedState/brightness.html | 115 + docs/widgets/VideoFeedState/build.html | 254 + docs/widgets/VideoFeedState/buildChild.html | 131 + docs/widgets/VideoFeedState/data.html | 115 + docs/widgets/VideoFeedState/dispose.html | 174 + docs/widgets/VideoFeedState/errorMessage.html | 146 + docs/widgets/VideoFeedState/focus.html | 115 + docs/widgets/VideoFeedState/imageLoader.html | 115 + docs/widgets/VideoFeedState/initState.html | 148 + docs/widgets/VideoFeedState/isOpened.html | 115 + docs/widgets/VideoFeedState/isReady.html | 123 + docs/widgets/VideoFeedState/pan.html | 115 + .../VideoFeedState/toggleSettings.html | 115 + docs/widgets/VideoFeedState/updateImage.html | 124 + docs/widgets/VideoFeedState/zoom.html | 115 + .../VideoSettingsState-class-sidebar.html | 46 + docs/widgets/VideoSettingsState-class.html | 481 ++ .../VideoSettingsState.html | 104 + .../widgets/VideoSettingsState/autofocus.html | 115 + docs/widgets/VideoSettingsState/build.html | 292 ++ docs/widgets/VideoSettingsState/focus.html | 115 + docs/widgets/VideoSettingsState/pan.html | 115 + docs/widgets/VideoSettingsState/tilt.html | 115 + docs/widgets/VideoSettingsState/zoom.html | 115 + .../VideoSettingsWidget-class-sidebar.html | 37 + docs/widgets/VideoSettingsWidget-class.html | 370 ++ .../VideoSettingsWidget.html | 116 + .../VideoSettingsWidget/createState.html | 133 + docs/widgets/VideoSettingsWidget/details.html | 115 + docs/widgets/VideoSettingsWidget/id.html | 115 + docs/widgets/ViewsCounter-class-sidebar.html | 40 + docs/widgets/ViewsCounter-class.html | 410 ++ docs/widgets/ViewsCounter/ViewsCounter.html | 111 + docs/widgets/ViewsCounter/build.html | 139 + docs/widgets/ViewsList-class-sidebar.html | 42 + docs/widgets/ViewsList-class.html | 427 ++ docs/widgets/ViewsList/ViewsList.html | 111 + docs/widgets/ViewsList/build.html | 141 + .../ViewsList/draggingIconSize-constant.html | 115 + docs/widgets/ViewsSelector-class-sidebar.html | 36 + docs/widgets/ViewsSelector-class.html | 358 ++ docs/widgets/ViewsSelector/ViewsSelector.html | 112 + docs/widgets/ViewsSelector/build.html | 167 + docs/widgets/ViewsSelector/index.html | 115 + docs/widgets/ViewsWidget-class-sidebar.html | 40 + docs/widgets/ViewsWidget-class.html | 410 ++ docs/widgets/ViewsWidget/ViewsWidget.html | 111 + docs/widgets/ViewsWidget/build.html | 260 + docs/widgets/widgets-library-sidebar.html | 51 + docs/widgets/widgets-library.html | 457 ++ 2767 files changed, 401350 insertions(+) create mode 100644 docs/__404error.html create mode 100644 docs/app/RoverControlDashboard-class-sidebar.html create mode 100644 docs/app/RoverControlDashboard-class.html create mode 100644 docs/app/RoverControlDashboard/RoverControlDashboard.html create mode 100644 docs/app/RoverControlDashboard/build.html create mode 100644 docs/app/app-library-sidebar.html create mode 100644 docs/app/app-library.html create mode 100644 docs/app/binghamtonGreen-constant.html create mode 100644 docs/categories.json create mode 100644 docs/data/ArmCommand-class-sidebar.html create mode 100644 docs/data/ArmCommand-class.html create mode 100644 docs/data/ArmCommand/ArmCommand.fromBuffer.html create mode 100644 docs/data/ArmCommand/ArmCommand.fromJson.html create mode 100644 docs/data/ArmCommand/ArmCommand.html create mode 100644 docs/data/ArmCommand/calibrate.html create mode 100644 docs/data/ArmCommand/clearCalibrate.html create mode 100644 docs/data/ArmCommand/clearElbow.html create mode 100644 docs/data/ArmCommand/clearGripperLift.html create mode 100644 docs/data/ArmCommand/clearIkX.html create mode 100644 docs/data/ArmCommand/clearIkY.html create mode 100644 docs/data/ArmCommand/clearIkZ.html create mode 100644 docs/data/ArmCommand/clearJab.html create mode 100644 docs/data/ArmCommand/clearShoulder.html create mode 100644 docs/data/ArmCommand/clearStop.html create mode 100644 docs/data/ArmCommand/clearSwivel.html create mode 100644 docs/data/ArmCommand/clearVersion.html create mode 100644 docs/data/ArmCommand/clone.html create mode 100644 docs/data/ArmCommand/copyWith.html create mode 100644 docs/data/ArmCommand/create.html create mode 100644 docs/data/ArmCommand/createEmptyInstance.html create mode 100644 docs/data/ArmCommand/createRepeated.html create mode 100644 docs/data/ArmCommand/elbow.html create mode 100644 docs/data/ArmCommand/ensureElbow.html create mode 100644 docs/data/ArmCommand/ensureGripperLift.html create mode 100644 docs/data/ArmCommand/ensureShoulder.html create mode 100644 docs/data/ArmCommand/ensureSwivel.html create mode 100644 docs/data/ArmCommand/ensureVersion.html create mode 100644 docs/data/ArmCommand/getDefault.html create mode 100644 docs/data/ArmCommand/gripperLift.html create mode 100644 docs/data/ArmCommand/hasCalibrate.html create mode 100644 docs/data/ArmCommand/hasElbow.html create mode 100644 docs/data/ArmCommand/hasGripperLift.html create mode 100644 docs/data/ArmCommand/hasIkX.html create mode 100644 docs/data/ArmCommand/hasIkY.html create mode 100644 docs/data/ArmCommand/hasIkZ.html create mode 100644 docs/data/ArmCommand/hasJab.html create mode 100644 docs/data/ArmCommand/hasShoulder.html create mode 100644 docs/data/ArmCommand/hasStop.html create mode 100644 docs/data/ArmCommand/hasSwivel.html create mode 100644 docs/data/ArmCommand/hasVersion.html create mode 100644 docs/data/ArmCommand/ikX.html create mode 100644 docs/data/ArmCommand/ikY.html create mode 100644 docs/data/ArmCommand/ikZ.html create mode 100644 docs/data/ArmCommand/info_.html create mode 100644 docs/data/ArmCommand/jab.html create mode 100644 docs/data/ArmCommand/shoulder.html create mode 100644 docs/data/ArmCommand/stop.html create mode 100644 docs/data/ArmCommand/swivel.html create mode 100644 docs/data/ArmCommand/version.html create mode 100644 docs/data/ArmData-class-sidebar.html create mode 100644 docs/data/ArmData-class.html create mode 100644 docs/data/ArmData/ArmData.fromBuffer.html create mode 100644 docs/data/ArmData/ArmData.fromJson.html create mode 100644 docs/data/ArmData/ArmData.html create mode 100644 docs/data/ArmData/base.html create mode 100644 docs/data/ArmData/clearBase.html create mode 100644 docs/data/ArmData/clearCurrentPosition.html create mode 100644 docs/data/ArmData/clearElbow.html create mode 100644 docs/data/ArmData/clearShoulder.html create mode 100644 docs/data/ArmData/clearTargetPosition.html create mode 100644 docs/data/ArmData/clearVersion.html create mode 100644 docs/data/ArmData/clone.html create mode 100644 docs/data/ArmData/copyWith.html create mode 100644 docs/data/ArmData/create.html create mode 100644 docs/data/ArmData/createEmptyInstance.html create mode 100644 docs/data/ArmData/createRepeated.html create mode 100644 docs/data/ArmData/currentPosition.html create mode 100644 docs/data/ArmData/elbow.html create mode 100644 docs/data/ArmData/ensureBase.html create mode 100644 docs/data/ArmData/ensureCurrentPosition.html create mode 100644 docs/data/ArmData/ensureElbow.html create mode 100644 docs/data/ArmData/ensureShoulder.html create mode 100644 docs/data/ArmData/ensureTargetPosition.html create mode 100644 docs/data/ArmData/ensureVersion.html create mode 100644 docs/data/ArmData/getDefault.html create mode 100644 docs/data/ArmData/hasBase.html create mode 100644 docs/data/ArmData/hasCurrentPosition.html create mode 100644 docs/data/ArmData/hasElbow.html create mode 100644 docs/data/ArmData/hasShoulder.html create mode 100644 docs/data/ArmData/hasTargetPosition.html create mode 100644 docs/data/ArmData/hasVersion.html create mode 100644 docs/data/ArmData/info_.html create mode 100644 docs/data/ArmData/shoulder.html create mode 100644 docs/data/ArmData/targetPosition.html create mode 100644 docs/data/ArmData/version.html create mode 100644 docs/data/ArmMetrics-class-sidebar.html create mode 100644 docs/data/ArmMetrics-class.html create mode 100644 docs/data/ArmMetrics/ArmMetrics.html create mode 100644 docs/data/ArmMetrics/allMetrics.html create mode 100644 docs/data/ArmMetrics/getMotorData.html create mode 100644 docs/data/ArmMetrics/name.html create mode 100644 docs/data/ArmMetrics/parseVersion.html create mode 100644 docs/data/ArmMetrics/supportedVersion.html create mode 100644 docs/data/ArmMetrics/versionCommand.html create mode 100644 docs/data/ArmSettings-class-sidebar.html create mode 100644 docs/data/ArmSettings-class.html create mode 100644 docs/data/ArmSettings/ArmSettings.fromJson.html create mode 100644 docs/data/ArmSettings/ArmSettings.html create mode 100644 docs/data/ArmSettings/elbow.html create mode 100644 docs/data/ArmSettings/hashCode.html create mode 100644 docs/data/ArmSettings/ikIncrement.html create mode 100644 docs/data/ArmSettings/lift.html create mode 100644 docs/data/ArmSettings/noSuchMethod.html create mode 100644 docs/data/ArmSettings/operator_equals.html create mode 100644 docs/data/ArmSettings/pinch.html create mode 100644 docs/data/ArmSettings/rotate.html create mode 100644 docs/data/ArmSettings/runtimeType.html create mode 100644 docs/data/ArmSettings/shoulder.html create mode 100644 docs/data/ArmSettings/swivel.html create mode 100644 docs/data/ArmSettings/toJson.html create mode 100644 docs/data/ArmSettings/toString.html create mode 100644 docs/data/ArmSettings/useIK.html create mode 100644 docs/data/AutonomyCommand-class-sidebar.html create mode 100644 docs/data/AutonomyCommand-class.html create mode 100644 docs/data/AutonomyCommand/AutonomyCommand.fromBuffer.html create mode 100644 docs/data/AutonomyCommand/AutonomyCommand.fromJson.html create mode 100644 docs/data/AutonomyCommand/AutonomyCommand.html create mode 100644 docs/data/AutonomyCommand/abort.html create mode 100644 docs/data/AutonomyCommand/arucoId.html create mode 100644 docs/data/AutonomyCommand/clearAbort.html create mode 100644 docs/data/AutonomyCommand/clearArucoId.html create mode 100644 docs/data/AutonomyCommand/clearDestination.html create mode 100644 docs/data/AutonomyCommand/clearTask.html create mode 100644 docs/data/AutonomyCommand/clearVersion.html create mode 100644 docs/data/AutonomyCommand/clone.html create mode 100644 docs/data/AutonomyCommand/copyWith.html create mode 100644 docs/data/AutonomyCommand/create.html create mode 100644 docs/data/AutonomyCommand/createEmptyInstance.html create mode 100644 docs/data/AutonomyCommand/createRepeated.html create mode 100644 docs/data/AutonomyCommand/destination.html create mode 100644 docs/data/AutonomyCommand/ensureDestination.html create mode 100644 docs/data/AutonomyCommand/ensureVersion.html create mode 100644 docs/data/AutonomyCommand/getDefault.html create mode 100644 docs/data/AutonomyCommand/hasAbort.html create mode 100644 docs/data/AutonomyCommand/hasArucoId.html create mode 100644 docs/data/AutonomyCommand/hasDestination.html create mode 100644 docs/data/AutonomyCommand/hasTask.html create mode 100644 docs/data/AutonomyCommand/hasVersion.html create mode 100644 docs/data/AutonomyCommand/info_.html create mode 100644 docs/data/AutonomyCommand/task.html create mode 100644 docs/data/AutonomyCommand/version.html create mode 100644 docs/data/AutonomyData-class-sidebar.html create mode 100644 docs/data/AutonomyData-class.html create mode 100644 docs/data/AutonomyData/AutonomyData.fromBuffer.html create mode 100644 docs/data/AutonomyData/AutonomyData.fromJson.html create mode 100644 docs/data/AutonomyData/AutonomyData.html create mode 100644 docs/data/AutonomyData/clearCrash.html create mode 100644 docs/data/AutonomyData/clearDestination.html create mode 100644 docs/data/AutonomyData/clearState.html create mode 100644 docs/data/AutonomyData/clearTask.html create mode 100644 docs/data/AutonomyData/clearVersion.html create mode 100644 docs/data/AutonomyData/clone.html create mode 100644 docs/data/AutonomyData/copyWith.html create mode 100644 docs/data/AutonomyData/crash.html create mode 100644 docs/data/AutonomyData/create.html create mode 100644 docs/data/AutonomyData/createEmptyInstance.html create mode 100644 docs/data/AutonomyData/createRepeated.html create mode 100644 docs/data/AutonomyData/destination.html create mode 100644 docs/data/AutonomyData/ensureDestination.html create mode 100644 docs/data/AutonomyData/ensureVersion.html create mode 100644 docs/data/AutonomyData/getDefault.html create mode 100644 docs/data/AutonomyData/hasCrash.html create mode 100644 docs/data/AutonomyData/hasDestination.html create mode 100644 docs/data/AutonomyData/hasState.html create mode 100644 docs/data/AutonomyData/hasTask.html create mode 100644 docs/data/AutonomyData/hasVersion.html create mode 100644 docs/data/AutonomyData/info_.html create mode 100644 docs/data/AutonomyData/obstacles.html create mode 100644 docs/data/AutonomyData/path.html create mode 100644 docs/data/AutonomyData/state.html create mode 100644 docs/data/AutonomyData/task.html create mode 100644 docs/data/AutonomyData/version.html create mode 100644 docs/data/AutonomyState-class-sidebar.html create mode 100644 docs/data/AutonomyState-class.html create mode 100644 docs/data/AutonomyState/ABORTING-constant.html create mode 100644 docs/data/AutonomyState/APPROACHING-constant.html create mode 100644 docs/data/AutonomyState/AT_DESTINATION-constant.html create mode 100644 docs/data/AutonomyState/AUTONOMY_STATE_UNDEFINED-constant.html create mode 100644 docs/data/AutonomyState/DRIVING-constant.html create mode 100644 docs/data/AutonomyState/NO_SOLUTION-constant.html create mode 100644 docs/data/AutonomyState/PATHING-constant.html create mode 100644 docs/data/AutonomyState/SEARCHING-constant.html create mode 100644 docs/data/AutonomyState/valueOf.html create mode 100644 docs/data/AutonomyState/values-constant.html create mode 100644 docs/data/AutonomyStateUtils-extension-sidebar.html create mode 100644 docs/data/AutonomyStateUtils.html create mode 100644 docs/data/AutonomyStateUtils/humanName.html create mode 100644 docs/data/AutonomyTask-class-sidebar.html create mode 100644 docs/data/AutonomyTask-class.html create mode 100644 docs/data/AutonomyTask/AUTONOMY_TASK_UNDEFINED-constant.html create mode 100644 docs/data/AutonomyTask/BETWEEN_GATES-constant.html create mode 100644 docs/data/AutonomyTask/GPS_ONLY-constant.html create mode 100644 docs/data/AutonomyTask/VISUAL_MARKER-constant.html create mode 100644 docs/data/AutonomyTask/valueOf.html create mode 100644 docs/data/AutonomyTask/values-constant.html create mode 100644 docs/data/AutonomyTaskUtils-extension-sidebar.html create mode 100644 docs/data/AutonomyTaskUtils.html create mode 100644 docs/data/AutonomyTaskUtils/humanName.html create mode 100644 docs/data/BoolState-class-sidebar.html create mode 100644 docs/data/BoolState-class.html create mode 100644 docs/data/BoolState/BOOL_UNDEFINED-constant.html create mode 100644 docs/data/BoolState/CLOSE-constant.html create mode 100644 docs/data/BoolState/NO-constant.html create mode 100644 docs/data/BoolState/OFF-constant.html create mode 100644 docs/data/BoolState/ON-constant.html create mode 100644 docs/data/BoolState/OPEN-constant.html create mode 100644 docs/data/BoolState/YES-constant.html create mode 100644 docs/data/BoolState/valueOf.html create mode 100644 docs/data/BoolState/values-constant.html create mode 100644 docs/data/BoolUtils-extension-sidebar.html create mode 100644 docs/data/BoolUtils.html create mode 100644 docs/data/BoolUtils/displayName.html create mode 100644 docs/data/BoolUtils/toBool.html create mode 100644 docs/data/BurtLog-class-sidebar.html create mode 100644 docs/data/BurtLog-class.html create mode 100644 docs/data/BurtLog/BurtLog.fromBuffer.html create mode 100644 docs/data/BurtLog/BurtLog.fromJson.html create mode 100644 docs/data/BurtLog/BurtLog.html create mode 100644 docs/data/BurtLog/body.html create mode 100644 docs/data/BurtLog/clearBody.html create mode 100644 docs/data/BurtLog/clearDevice.html create mode 100644 docs/data/BurtLog/clearLevel.html create mode 100644 docs/data/BurtLog/clearTitle.html create mode 100644 docs/data/BurtLog/clone.html create mode 100644 docs/data/BurtLog/copyWith.html create mode 100644 docs/data/BurtLog/create.html create mode 100644 docs/data/BurtLog/createEmptyInstance.html create mode 100644 docs/data/BurtLog/createRepeated.html create mode 100644 docs/data/BurtLog/device.html create mode 100644 docs/data/BurtLog/getDefault.html create mode 100644 docs/data/BurtLog/hasBody.html create mode 100644 docs/data/BurtLog/hasDevice.html create mode 100644 docs/data/BurtLog/hasLevel.html create mode 100644 docs/data/BurtLog/hasTitle.html create mode 100644 docs/data/BurtLog/info_.html create mode 100644 docs/data/BurtLog/level.html create mode 100644 docs/data/BurtLog/title.html create mode 100644 docs/data/BurtLogLevel-class-sidebar.html create mode 100644 docs/data/BurtLogLevel-class.html create mode 100644 docs/data/BurtLogLevel/BURT_LOG_LEVEL_UNDEFINED-constant.html create mode 100644 docs/data/BurtLogLevel/critical-constant.html create mode 100644 docs/data/BurtLogLevel/debug-constant.html create mode 100644 docs/data/BurtLogLevel/error-constant.html create mode 100644 docs/data/BurtLogLevel/info-constant.html create mode 100644 docs/data/BurtLogLevel/trace-constant.html create mode 100644 docs/data/BurtLogLevel/valueOf.html create mode 100644 docs/data/BurtLogLevel/values-constant.html create mode 100644 docs/data/BurtLogLevel/warning-constant.html create mode 100644 docs/data/CameraDetails-class-sidebar.html create mode 100644 docs/data/CameraDetails-class.html create mode 100644 docs/data/CameraDetails/CameraDetails.fromBuffer.html create mode 100644 docs/data/CameraDetails/CameraDetails.fromJson.html create mode 100644 docs/data/CameraDetails/CameraDetails.html create mode 100644 docs/data/CameraDetails/autofocus.html create mode 100644 docs/data/CameraDetails/clearAutofocus.html create mode 100644 docs/data/CameraDetails/clearFocus.html create mode 100644 docs/data/CameraDetails/clearFps.html create mode 100644 docs/data/CameraDetails/clearName.html create mode 100644 docs/data/CameraDetails/clearPan.html create mode 100644 docs/data/CameraDetails/clearQuality.html create mode 100644 docs/data/CameraDetails/clearResolutionHeight.html create mode 100644 docs/data/CameraDetails/clearResolutionWidth.html create mode 100644 docs/data/CameraDetails/clearStatus.html create mode 100644 docs/data/CameraDetails/clearTilt.html create mode 100644 docs/data/CameraDetails/clearZoom.html create mode 100644 docs/data/CameraDetails/clone.html create mode 100644 docs/data/CameraDetails/copyWith.html create mode 100644 docs/data/CameraDetails/create.html create mode 100644 docs/data/CameraDetails/createEmptyInstance.html create mode 100644 docs/data/CameraDetails/createRepeated.html create mode 100644 docs/data/CameraDetails/focus.html create mode 100644 docs/data/CameraDetails/fps.html create mode 100644 docs/data/CameraDetails/getDefault.html create mode 100644 docs/data/CameraDetails/hasAutofocus.html create mode 100644 docs/data/CameraDetails/hasFocus.html create mode 100644 docs/data/CameraDetails/hasFps.html create mode 100644 docs/data/CameraDetails/hasName.html create mode 100644 docs/data/CameraDetails/hasPan.html create mode 100644 docs/data/CameraDetails/hasQuality.html create mode 100644 docs/data/CameraDetails/hasResolutionHeight.html create mode 100644 docs/data/CameraDetails/hasResolutionWidth.html create mode 100644 docs/data/CameraDetails/hasStatus.html create mode 100644 docs/data/CameraDetails/hasTilt.html create mode 100644 docs/data/CameraDetails/hasZoom.html create mode 100644 docs/data/CameraDetails/info_.html create mode 100644 docs/data/CameraDetails/name.html create mode 100644 docs/data/CameraDetails/pan.html create mode 100644 docs/data/CameraDetails/quality.html create mode 100644 docs/data/CameraDetails/resolutionHeight.html create mode 100644 docs/data/CameraDetails/resolutionWidth.html create mode 100644 docs/data/CameraDetails/status.html create mode 100644 docs/data/CameraDetails/tilt.html create mode 100644 docs/data/CameraDetails/zoom.html create mode 100644 docs/data/CameraName-class-sidebar.html create mode 100644 docs/data/CameraName-class.html create mode 100644 docs/data/CameraName/AUTONOMY_DEPTH-constant.html create mode 100644 docs/data/CameraName/BOTTOM_LEFT-constant.html create mode 100644 docs/data/CameraName/BOTTOM_RIGHT-constant.html create mode 100644 docs/data/CameraName/CAMERA_NAME_UNDEFINED-constant.html create mode 100644 docs/data/CameraName/ROVER_FRONT-constant.html create mode 100644 docs/data/CameraName/ROVER_REAR-constant.html create mode 100644 docs/data/CameraName/SUBSYSTEM1-constant.html create mode 100644 docs/data/CameraName/SUBSYSTEM2-constant.html create mode 100644 docs/data/CameraName/SUBSYSTEM3-constant.html create mode 100644 docs/data/CameraName/valueOf.html create mode 100644 docs/data/CameraName/values-constant.html create mode 100644 docs/data/CameraNameUtils-extension-sidebar.html create mode 100644 docs/data/CameraNameUtils.html create mode 100644 docs/data/CameraNameUtils/humanName.html create mode 100644 docs/data/CameraStatus-class-sidebar.html create mode 100644 docs/data/CameraStatus-class.html create mode 100644 docs/data/CameraStatus/CAMERA_DISABLED-constant.html create mode 100644 docs/data/CameraStatus/CAMERA_DISCONNECTED-constant.html create mode 100644 docs/data/CameraStatus/CAMERA_ENABLED-constant.html create mode 100644 docs/data/CameraStatus/CAMERA_HAS_NO_NAME-constant.html create mode 100644 docs/data/CameraStatus/CAMERA_LOADING-constant.html create mode 100644 docs/data/CameraStatus/CAMERA_NOT_RESPONDING-constant.html create mode 100644 docs/data/CameraStatus/CAMERA_STATUS_UNDEFINED-constant.html create mode 100644 docs/data/CameraStatus/FRAME_TOO_LARGE-constant.html create mode 100644 docs/data/CameraStatus/valueOf.html create mode 100644 docs/data/CameraStatus/values-constant.html create mode 100644 docs/data/CameraStatusUtils-extension-sidebar.html create mode 100644 docs/data/CameraStatusUtils.html create mode 100644 docs/data/CameraStatusUtils/humanName.html create mode 100644 docs/data/CarouselCommand-class-sidebar.html create mode 100644 docs/data/CarouselCommand-class.html create mode 100644 docs/data/CarouselCommand/CAROUSEL_COMMAND_UNDEFINED-constant.html create mode 100644 docs/data/CarouselCommand/FILL_SECTION-constant.html create mode 100644 docs/data/CarouselCommand/FILL_TUBE-constant.html create mode 100644 docs/data/CarouselCommand/NEXT_SECTION-constant.html create mode 100644 docs/data/CarouselCommand/NEXT_TUBE-constant.html create mode 100644 docs/data/CarouselCommand/PREV_SECTION-constant.html create mode 100644 docs/data/CarouselCommand/PREV_TUBE-constant.html create mode 100644 docs/data/CarouselCommand/valueOf.html create mode 100644 docs/data/CarouselCommand/values-constant.html create mode 100644 docs/data/Connect-class-sidebar.html create mode 100644 docs/data/Connect-class.html create mode 100644 docs/data/Connect/Connect.fromBuffer.html create mode 100644 docs/data/Connect/Connect.fromJson.html create mode 100644 docs/data/Connect/Connect.html create mode 100644 docs/data/Connect/clearReceiver.html create mode 100644 docs/data/Connect/clearSender.html create mode 100644 docs/data/Connect/clone.html create mode 100644 docs/data/Connect/copyWith.html create mode 100644 docs/data/Connect/create.html create mode 100644 docs/data/Connect/createEmptyInstance.html create mode 100644 docs/data/Connect/createRepeated.html create mode 100644 docs/data/Connect/getDefault.html create mode 100644 docs/data/Connect/hasReceiver.html create mode 100644 docs/data/Connect/hasSender.html create mode 100644 docs/data/Connect/info_.html create mode 100644 docs/data/Connect/receiver.html create mode 100644 docs/data/Connect/sender.html create mode 100644 docs/data/Coordinates-class-sidebar.html create mode 100644 docs/data/Coordinates-class.html create mode 100644 docs/data/Coordinates/Coordinates.fromBuffer.html create mode 100644 docs/data/Coordinates/Coordinates.fromJson.html create mode 100644 docs/data/Coordinates/Coordinates.html create mode 100644 docs/data/Coordinates/clearX.html create mode 100644 docs/data/Coordinates/clearY.html create mode 100644 docs/data/Coordinates/clearZ.html create mode 100644 docs/data/Coordinates/clone.html create mode 100644 docs/data/Coordinates/copyWith.html create mode 100644 docs/data/Coordinates/create.html create mode 100644 docs/data/Coordinates/createEmptyInstance.html create mode 100644 docs/data/Coordinates/createRepeated.html create mode 100644 docs/data/Coordinates/getDefault.html create mode 100644 docs/data/Coordinates/hasX.html create mode 100644 docs/data/Coordinates/hasY.html create mode 100644 docs/data/Coordinates/hasZ.html create mode 100644 docs/data/Coordinates/info_.html create mode 100644 docs/data/Coordinates/x.html create mode 100644 docs/data/Coordinates/y.html create mode 100644 docs/data/Coordinates/z.html create mode 100644 docs/data/CoordinatesUtils-extension-sidebar.html create mode 100644 docs/data/CoordinatesUtils.html create mode 100644 docs/data/CoordinatesUtils/operator_plus.html create mode 100644 docs/data/CoordinatesUtils/prettyPrint.html create mode 100644 docs/data/DashboardSettings-class-sidebar.html create mode 100644 docs/data/DashboardSettings-class.html create mode 100644 docs/data/DashboardSettings/DashboardSettings.fromJson.html create mode 100644 docs/data/DashboardSettings/DashboardSettings.html create mode 100644 docs/data/DashboardSettings/hashCode.html create mode 100644 docs/data/DashboardSettings/mapBlockSize.html create mode 100644 docs/data/DashboardSettings/maxFps.html create mode 100644 docs/data/DashboardSettings/noSuchMethod.html create mode 100644 docs/data/DashboardSettings/operator_equals.html create mode 100644 docs/data/DashboardSettings/preferTankControls.html create mode 100644 docs/data/DashboardSettings/runtimeType.html create mode 100644 docs/data/DashboardSettings/splitCameras.html create mode 100644 docs/data/DashboardSettings/splitMode.html create mode 100644 docs/data/DashboardSettings/themeMode.html create mode 100644 docs/data/DashboardSettings/toJson.html create mode 100644 docs/data/DashboardSettings/toString.html create mode 100644 docs/data/DashboardSettings/versionChecking.html create mode 100644 docs/data/DateTimeTimestamp-extension-sidebar.html create mode 100644 docs/data/DateTimeTimestamp.html create mode 100644 docs/data/DateTimeTimestamp/timeStamp.html create mode 100644 docs/data/Device-class-sidebar.html create mode 100644 docs/data/Device-class.html create mode 100644 docs/data/Device/ARM-constant.html create mode 100644 docs/data/Device/AUTONOMY-constant.html create mode 100644 docs/data/Device/DASHBOARD-constant.html create mode 100644 docs/data/Device/DEVICE_UNDEFINED-constant.html create mode 100644 docs/data/Device/DRIVE-constant.html create mode 100644 docs/data/Device/FIRMWARE-constant.html create mode 100644 docs/data/Device/GRIPPER-constant.html create mode 100644 docs/data/Device/SCIENCE-constant.html create mode 100644 docs/data/Device/SUBSYSTEMS-constant.html create mode 100644 docs/data/Device/VIDEO-constant.html create mode 100644 docs/data/Device/valueOf.html create mode 100644 docs/data/Device/values-constant.html create mode 100644 docs/data/DeviceUtils-extension-sidebar.html create mode 100644 docs/data/DeviceUtils.html create mode 100644 docs/data/DeviceUtils/humanName.html create mode 100644 docs/data/Disconnect-class-sidebar.html create mode 100644 docs/data/Disconnect-class.html create mode 100644 docs/data/Disconnect/Disconnect.fromBuffer.html create mode 100644 docs/data/Disconnect/Disconnect.fromJson.html create mode 100644 docs/data/Disconnect/Disconnect.html create mode 100644 docs/data/Disconnect/clearSender.html create mode 100644 docs/data/Disconnect/clone.html create mode 100644 docs/data/Disconnect/copyWith.html create mode 100644 docs/data/Disconnect/create.html create mode 100644 docs/data/Disconnect/createEmptyInstance.html create mode 100644 docs/data/Disconnect/createRepeated.html create mode 100644 docs/data/Disconnect/getDefault.html create mode 100644 docs/data/Disconnect/hasSender.html create mode 100644 docs/data/Disconnect/info_.html create mode 100644 docs/data/Disconnect/sender.html create mode 100644 docs/data/DriveCommand-class-sidebar.html create mode 100644 docs/data/DriveCommand-class.html create mode 100644 docs/data/DriveCommand/DriveCommand.fromBuffer.html create mode 100644 docs/data/DriveCommand/DriveCommand.fromJson.html create mode 100644 docs/data/DriveCommand/DriveCommand.html create mode 100644 docs/data/DriveCommand/blink.html create mode 100644 docs/data/DriveCommand/clearBlink.html create mode 100644 docs/data/DriveCommand/clearColor.html create mode 100644 docs/data/DriveCommand/clearFrontSwivel.html create mode 100644 docs/data/DriveCommand/clearFrontTilt.html create mode 100644 docs/data/DriveCommand/clearLeft.html create mode 100644 docs/data/DriveCommand/clearRearSwivel.html create mode 100644 docs/data/DriveCommand/clearRearTilt.html create mode 100644 docs/data/DriveCommand/clearRight.html create mode 100644 docs/data/DriveCommand/clearSetLeft.html create mode 100644 docs/data/DriveCommand/clearSetRight.html create mode 100644 docs/data/DriveCommand/clearSetThrottle.html create mode 100644 docs/data/DriveCommand/clearStatus.html create mode 100644 docs/data/DriveCommand/clearThrottle.html create mode 100644 docs/data/DriveCommand/clearVersion.html create mode 100644 docs/data/DriveCommand/clone.html create mode 100644 docs/data/DriveCommand/color.html create mode 100644 docs/data/DriveCommand/copyWith.html create mode 100644 docs/data/DriveCommand/create.html create mode 100644 docs/data/DriveCommand/createEmptyInstance.html create mode 100644 docs/data/DriveCommand/createRepeated.html create mode 100644 docs/data/DriveCommand/ensureVersion.html create mode 100644 docs/data/DriveCommand/frontSwivel.html create mode 100644 docs/data/DriveCommand/frontTilt.html create mode 100644 docs/data/DriveCommand/getDefault.html create mode 100644 docs/data/DriveCommand/hasBlink.html create mode 100644 docs/data/DriveCommand/hasColor.html create mode 100644 docs/data/DriveCommand/hasFrontSwivel.html create mode 100644 docs/data/DriveCommand/hasFrontTilt.html create mode 100644 docs/data/DriveCommand/hasLeft.html create mode 100644 docs/data/DriveCommand/hasRearSwivel.html create mode 100644 docs/data/DriveCommand/hasRearTilt.html create mode 100644 docs/data/DriveCommand/hasRight.html create mode 100644 docs/data/DriveCommand/hasSetLeft.html create mode 100644 docs/data/DriveCommand/hasSetRight.html create mode 100644 docs/data/DriveCommand/hasSetThrottle.html create mode 100644 docs/data/DriveCommand/hasStatus.html create mode 100644 docs/data/DriveCommand/hasThrottle.html create mode 100644 docs/data/DriveCommand/hasVersion.html create mode 100644 docs/data/DriveCommand/info_.html create mode 100644 docs/data/DriveCommand/left.html create mode 100644 docs/data/DriveCommand/rearSwivel.html create mode 100644 docs/data/DriveCommand/rearTilt.html create mode 100644 docs/data/DriveCommand/right.html create mode 100644 docs/data/DriveCommand/setLeft.html create mode 100644 docs/data/DriveCommand/setRight.html create mode 100644 docs/data/DriveCommand/setThrottle.html create mode 100644 docs/data/DriveCommand/status.html create mode 100644 docs/data/DriveCommand/throttle.html create mode 100644 docs/data/DriveCommand/version.html create mode 100644 docs/data/DriveData-class-sidebar.html create mode 100644 docs/data/DriveData-class.html create mode 100644 docs/data/DriveData/DriveData.fromBuffer.html create mode 100644 docs/data/DriveData/DriveData.fromJson.html create mode 100644 docs/data/DriveData/DriveData.html create mode 100644 docs/data/DriveData/backLeft.html create mode 100644 docs/data/DriveData/backRight.html create mode 100644 docs/data/DriveData/batteryCurrent.html create mode 100644 docs/data/DriveData/batteryTemperature.html create mode 100644 docs/data/DriveData/batteryVoltage.html create mode 100644 docs/data/DriveData/clearBackLeft.html create mode 100644 docs/data/DriveData/clearBackRight.html create mode 100644 docs/data/DriveData/clearBatteryCurrent.html create mode 100644 docs/data/DriveData/clearBatteryTemperature.html create mode 100644 docs/data/DriveData/clearBatteryVoltage.html create mode 100644 docs/data/DriveData/clearColor.html create mode 100644 docs/data/DriveData/clearFrontLeft.html create mode 100644 docs/data/DriveData/clearFrontRight.html create mode 100644 docs/data/DriveData/clearFrontSwivel.html create mode 100644 docs/data/DriveData/clearFrontTilt.html create mode 100644 docs/data/DriveData/clearLeft.html create mode 100644 docs/data/DriveData/clearMiddleLeft.html create mode 100644 docs/data/DriveData/clearMiddleRight.html create mode 100644 docs/data/DriveData/clearRearSwivel.html create mode 100644 docs/data/DriveData/clearRearTilt.html create mode 100644 docs/data/DriveData/clearRight.html create mode 100644 docs/data/DriveData/clearSetLeft.html create mode 100644 docs/data/DriveData/clearSetRight.html create mode 100644 docs/data/DriveData/clearSetThrottle.html create mode 100644 docs/data/DriveData/clearStatus.html create mode 100644 docs/data/DriveData/clearThrottle.html create mode 100644 docs/data/DriveData/clearVersion.html create mode 100644 docs/data/DriveData/clone.html create mode 100644 docs/data/DriveData/color.html create mode 100644 docs/data/DriveData/copyWith.html create mode 100644 docs/data/DriveData/create.html create mode 100644 docs/data/DriveData/createEmptyInstance.html create mode 100644 docs/data/DriveData/createRepeated.html create mode 100644 docs/data/DriveData/ensureVersion.html create mode 100644 docs/data/DriveData/frontLeft.html create mode 100644 docs/data/DriveData/frontRight.html create mode 100644 docs/data/DriveData/frontSwivel.html create mode 100644 docs/data/DriveData/frontTilt.html create mode 100644 docs/data/DriveData/getDefault.html create mode 100644 docs/data/DriveData/hasBackLeft.html create mode 100644 docs/data/DriveData/hasBackRight.html create mode 100644 docs/data/DriveData/hasBatteryCurrent.html create mode 100644 docs/data/DriveData/hasBatteryTemperature.html create mode 100644 docs/data/DriveData/hasBatteryVoltage.html create mode 100644 docs/data/DriveData/hasColor.html create mode 100644 docs/data/DriveData/hasFrontLeft.html create mode 100644 docs/data/DriveData/hasFrontRight.html create mode 100644 docs/data/DriveData/hasFrontSwivel.html create mode 100644 docs/data/DriveData/hasFrontTilt.html create mode 100644 docs/data/DriveData/hasLeft.html create mode 100644 docs/data/DriveData/hasMiddleLeft.html create mode 100644 docs/data/DriveData/hasMiddleRight.html create mode 100644 docs/data/DriveData/hasRearSwivel.html create mode 100644 docs/data/DriveData/hasRearTilt.html create mode 100644 docs/data/DriveData/hasRight.html create mode 100644 docs/data/DriveData/hasSetLeft.html create mode 100644 docs/data/DriveData/hasSetRight.html create mode 100644 docs/data/DriveData/hasSetThrottle.html create mode 100644 docs/data/DriveData/hasStatus.html create mode 100644 docs/data/DriveData/hasThrottle.html create mode 100644 docs/data/DriveData/hasVersion.html create mode 100644 docs/data/DriveData/info_.html create mode 100644 docs/data/DriveData/left.html create mode 100644 docs/data/DriveData/middleLeft.html create mode 100644 docs/data/DriveData/middleRight.html create mode 100644 docs/data/DriveData/rearSwivel.html create mode 100644 docs/data/DriveData/rearTilt.html create mode 100644 docs/data/DriveData/right.html create mode 100644 docs/data/DriveData/setLeft.html create mode 100644 docs/data/DriveData/setRight.html create mode 100644 docs/data/DriveData/setThrottle.html create mode 100644 docs/data/DriveData/status.html create mode 100644 docs/data/DriveData/throttle.html create mode 100644 docs/data/DriveData/version.html create mode 100644 docs/data/DriveMetrics-class-sidebar.html create mode 100644 docs/data/DriveMetrics-class.html create mode 100644 docs/data/DriveMetrics/DriveMetrics.html create mode 100644 docs/data/DriveMetrics/allMetrics.html create mode 100644 docs/data/DriveMetrics/batteryPercentage.html create mode 100644 docs/data/DriveMetrics/batteryVoltage.html create mode 100644 docs/data/DriveMetrics/electricalSeverity.html create mode 100644 docs/data/DriveMetrics/name.html create mode 100644 docs/data/DriveMetrics/parseVersion.html create mode 100644 docs/data/DriveMetrics/supportedVersion.html create mode 100644 docs/data/DriveMetrics/throttleSeverity.html create mode 100644 docs/data/DriveMetrics/update.html create mode 100644 docs/data/DriveMetrics/versionCommand.html create mode 100644 docs/data/EasterEggsSettings-class-sidebar.html create mode 100644 docs/data/EasterEggsSettings-class.html create mode 100644 docs/data/EasterEggsSettings/EasterEggsSettings.fromJson.html create mode 100644 docs/data/EasterEggsSettings/EasterEggsSettings.html create mode 100644 docs/data/EasterEggsSettings/badApple.html create mode 100644 docs/data/EasterEggsSettings/enableClippy.html create mode 100644 docs/data/EasterEggsSettings/hashCode.html create mode 100644 docs/data/EasterEggsSettings/noSuchMethod.html create mode 100644 docs/data/EasterEggsSettings/operator_equals.html create mode 100644 docs/data/EasterEggsSettings/runtimeType.html create mode 100644 docs/data/EasterEggsSettings/segaIntro.html create mode 100644 docs/data/EasterEggsSettings/segaSound.html create mode 100644 docs/data/EasterEggsSettings/toJson.html create mode 100644 docs/data/EasterEggsSettings/toString.html create mode 100644 docs/data/GpsCoordinates-class-sidebar.html create mode 100644 docs/data/GpsCoordinates-class.html create mode 100644 docs/data/GpsCoordinates/GpsCoordinates.fromBuffer.html create mode 100644 docs/data/GpsCoordinates/GpsCoordinates.fromJson.html create mode 100644 docs/data/GpsCoordinates/GpsCoordinates.html create mode 100644 docs/data/GpsCoordinates/altitude.html create mode 100644 docs/data/GpsCoordinates/clearAltitude.html create mode 100644 docs/data/GpsCoordinates/clearLatitude.html create mode 100644 docs/data/GpsCoordinates/clearLongitude.html create mode 100644 docs/data/GpsCoordinates/clone.html create mode 100644 docs/data/GpsCoordinates/copyWith.html create mode 100644 docs/data/GpsCoordinates/create.html create mode 100644 docs/data/GpsCoordinates/createEmptyInstance.html create mode 100644 docs/data/GpsCoordinates/createRepeated.html create mode 100644 docs/data/GpsCoordinates/getDefault.html create mode 100644 docs/data/GpsCoordinates/hasAltitude.html create mode 100644 docs/data/GpsCoordinates/hasLatitude.html create mode 100644 docs/data/GpsCoordinates/hasLongitude.html create mode 100644 docs/data/GpsCoordinates/info_.html create mode 100644 docs/data/GpsCoordinates/latitude.html create mode 100644 docs/data/GpsCoordinates/longitude.html create mode 100644 docs/data/GpsUtils-extension-sidebar.html create mode 100644 docs/data/GpsUtils.html create mode 100644 docs/data/GpsUtils/distanceTo.html create mode 100644 docs/data/GripperCommand-class-sidebar.html create mode 100644 docs/data/GripperCommand-class.html create mode 100644 docs/data/GripperCommand/GripperCommand.fromBuffer.html create mode 100644 docs/data/GripperCommand/GripperCommand.fromJson.html create mode 100644 docs/data/GripperCommand/GripperCommand.html create mode 100644 docs/data/GripperCommand/calibrate.html create mode 100644 docs/data/GripperCommand/clearCalibrate.html create mode 100644 docs/data/GripperCommand/clearClose.html create mode 100644 docs/data/GripperCommand/clearLaserState.html create mode 100644 docs/data/GripperCommand/clearLift.html create mode 100644 docs/data/GripperCommand/clearOpen.html create mode 100644 docs/data/GripperCommand/clearPinch.html create mode 100644 docs/data/GripperCommand/clearRotate.html create mode 100644 docs/data/GripperCommand/clearServoAngle.html create mode 100644 docs/data/GripperCommand/clearSpin.html create mode 100644 docs/data/GripperCommand/clearStop.html create mode 100644 docs/data/GripperCommand/clearVersion.html create mode 100644 docs/data/GripperCommand/clone.html create mode 100644 docs/data/GripperCommand/close.html create mode 100644 docs/data/GripperCommand/copyWith.html create mode 100644 docs/data/GripperCommand/create.html create mode 100644 docs/data/GripperCommand/createEmptyInstance.html create mode 100644 docs/data/GripperCommand/createRepeated.html create mode 100644 docs/data/GripperCommand/ensureLift.html create mode 100644 docs/data/GripperCommand/ensurePinch.html create mode 100644 docs/data/GripperCommand/ensureRotate.html create mode 100644 docs/data/GripperCommand/ensureVersion.html create mode 100644 docs/data/GripperCommand/getDefault.html create mode 100644 docs/data/GripperCommand/hasCalibrate.html create mode 100644 docs/data/GripperCommand/hasClose.html create mode 100644 docs/data/GripperCommand/hasLaserState.html create mode 100644 docs/data/GripperCommand/hasLift.html create mode 100644 docs/data/GripperCommand/hasOpen.html create mode 100644 docs/data/GripperCommand/hasPinch.html create mode 100644 docs/data/GripperCommand/hasRotate.html create mode 100644 docs/data/GripperCommand/hasServoAngle.html create mode 100644 docs/data/GripperCommand/hasSpin.html create mode 100644 docs/data/GripperCommand/hasStop.html create mode 100644 docs/data/GripperCommand/hasVersion.html create mode 100644 docs/data/GripperCommand/info_.html create mode 100644 docs/data/GripperCommand/laserState.html create mode 100644 docs/data/GripperCommand/lift.html create mode 100644 docs/data/GripperCommand/open.html create mode 100644 docs/data/GripperCommand/pinch.html create mode 100644 docs/data/GripperCommand/rotate.html create mode 100644 docs/data/GripperCommand/servoAngle.html create mode 100644 docs/data/GripperCommand/spin.html create mode 100644 docs/data/GripperCommand/stop.html create mode 100644 docs/data/GripperCommand/version.html create mode 100644 docs/data/GripperData-class-sidebar.html create mode 100644 docs/data/GripperData-class.html create mode 100644 docs/data/GripperData/GripperData.fromBuffer.html create mode 100644 docs/data/GripperData/GripperData.fromJson.html create mode 100644 docs/data/GripperData/GripperData.html create mode 100644 docs/data/GripperData/clearLaserState.html create mode 100644 docs/data/GripperData/clearLift.html create mode 100644 docs/data/GripperData/clearPinch.html create mode 100644 docs/data/GripperData/clearRotate.html create mode 100644 docs/data/GripperData/clearServoAngle.html create mode 100644 docs/data/GripperData/clearVersion.html create mode 100644 docs/data/GripperData/clone.html create mode 100644 docs/data/GripperData/copyWith.html create mode 100644 docs/data/GripperData/create.html create mode 100644 docs/data/GripperData/createEmptyInstance.html create mode 100644 docs/data/GripperData/createRepeated.html create mode 100644 docs/data/GripperData/ensureLift.html create mode 100644 docs/data/GripperData/ensurePinch.html create mode 100644 docs/data/GripperData/ensureRotate.html create mode 100644 docs/data/GripperData/ensureVersion.html create mode 100644 docs/data/GripperData/getDefault.html create mode 100644 docs/data/GripperData/hasLaserState.html create mode 100644 docs/data/GripperData/hasLift.html create mode 100644 docs/data/GripperData/hasPinch.html create mode 100644 docs/data/GripperData/hasRotate.html create mode 100644 docs/data/GripperData/hasServoAngle.html create mode 100644 docs/data/GripperData/hasVersion.html create mode 100644 docs/data/GripperData/info_.html create mode 100644 docs/data/GripperData/laserState.html create mode 100644 docs/data/GripperData/lift.html create mode 100644 docs/data/GripperData/pinch.html create mode 100644 docs/data/GripperData/rotate.html create mode 100644 docs/data/GripperData/servoAngle.html create mode 100644 docs/data/GripperData/version.html create mode 100644 docs/data/GripperMetrics-class-sidebar.html create mode 100644 docs/data/GripperMetrics-class.html create mode 100644 docs/data/GripperMetrics/GripperMetrics.html create mode 100644 docs/data/GripperMetrics/allMetrics.html create mode 100644 docs/data/GripperMetrics/getMotorData.html create mode 100644 docs/data/GripperMetrics/name.html create mode 100644 docs/data/GripperMetrics/parseVersion.html create mode 100644 docs/data/GripperMetrics/supportedVersion.html create mode 100644 docs/data/GripperMetrics/versionCommand.html create mode 100644 docs/data/Json.html create mode 100644 docs/data/LimitedList-extension-sidebar.html create mode 100644 docs/data/LimitedList.html create mode 100644 docs/data/LimitedList/pushWithLimit.html create mode 100644 docs/data/LogFormat-extension-sidebar.html create mode 100644 docs/data/LogFormat.html create mode 100644 docs/data/LogFormat/format.html create mode 100644 docs/data/LogLevelUtils-extension-sidebar.html create mode 100644 docs/data/LogLevelUtils.html create mode 100644 docs/data/LogLevelUtils/humanName.html create mode 100644 docs/data/LogLevelUtils/isAtLeast.html create mode 100644 docs/data/LogLevelUtils/isMoreSevereThan.html create mode 100644 docs/data/LogLevelUtils/label.html create mode 100644 docs/data/MapRecords-extension-sidebar.html create mode 100644 docs/data/MapRecords.html create mode 100644 docs/data/MapRecords/records.html create mode 100644 docs/data/MarsCommand-class-sidebar.html create mode 100644 docs/data/MarsCommand-class.html create mode 100644 docs/data/MarsCommand/MarsCommand.fromBuffer.html create mode 100644 docs/data/MarsCommand/MarsCommand.fromJson.html create mode 100644 docs/data/MarsCommand/MarsCommand.html create mode 100644 docs/data/MarsCommand/baseStationOverride.html create mode 100644 docs/data/MarsCommand/clearBaseStationOverride.html create mode 100644 docs/data/MarsCommand/clearRover.html create mode 100644 docs/data/MarsCommand/clearSwivel.html create mode 100644 docs/data/MarsCommand/clearTilt.html create mode 100644 docs/data/MarsCommand/clone.html create mode 100644 docs/data/MarsCommand/copyWith.html create mode 100644 docs/data/MarsCommand/create.html create mode 100644 docs/data/MarsCommand/createEmptyInstance.html create mode 100644 docs/data/MarsCommand/createRepeated.html create mode 100644 docs/data/MarsCommand/ensureBaseStationOverride.html create mode 100644 docs/data/MarsCommand/ensureRover.html create mode 100644 docs/data/MarsCommand/getDefault.html create mode 100644 docs/data/MarsCommand/hasBaseStationOverride.html create mode 100644 docs/data/MarsCommand/hasRover.html create mode 100644 docs/data/MarsCommand/hasSwivel.html create mode 100644 docs/data/MarsCommand/hasTilt.html create mode 100644 docs/data/MarsCommand/info_.html create mode 100644 docs/data/MarsCommand/rover.html create mode 100644 docs/data/MarsCommand/swivel.html create mode 100644 docs/data/MarsCommand/tilt.html create mode 100644 docs/data/MarsData-class-sidebar.html create mode 100644 docs/data/MarsData-class.html create mode 100644 docs/data/MarsData/MarsData.fromBuffer.html create mode 100644 docs/data/MarsData/MarsData.fromJson.html create mode 100644 docs/data/MarsData/MarsData.html create mode 100644 docs/data/MarsData/clearCoordinates.html create mode 100644 docs/data/MarsData/clearStatus.html create mode 100644 docs/data/MarsData/clearSwivel.html create mode 100644 docs/data/MarsData/clearTilt.html create mode 100644 docs/data/MarsData/clone.html create mode 100644 docs/data/MarsData/coordinates.html create mode 100644 docs/data/MarsData/copyWith.html create mode 100644 docs/data/MarsData/create.html create mode 100644 docs/data/MarsData/createEmptyInstance.html create mode 100644 docs/data/MarsData/createRepeated.html create mode 100644 docs/data/MarsData/ensureCoordinates.html create mode 100644 docs/data/MarsData/getDefault.html create mode 100644 docs/data/MarsData/hasCoordinates.html create mode 100644 docs/data/MarsData/hasStatus.html create mode 100644 docs/data/MarsData/hasSwivel.html create mode 100644 docs/data/MarsData/hasTilt.html create mode 100644 docs/data/MarsData/info_.html create mode 100644 docs/data/MarsData/status.html create mode 100644 docs/data/MarsData/swivel.html create mode 100644 docs/data/MarsData/tilt.html create mode 100644 docs/data/MarsStatus-class-sidebar.html create mode 100644 docs/data/MarsStatus-class.html create mode 100644 docs/data/MarsStatus/FAILED_HANDSHAKE-constant.html create mode 100644 docs/data/MarsStatus/MARS_STATUS_UNDEFINED-constant.html create mode 100644 docs/data/MarsStatus/PORT_NOT_FOUND-constant.html create mode 100644 docs/data/MarsStatus/TEENSY_CONNECTED-constant.html create mode 100644 docs/data/MarsStatus/TEENSY_UNRESPONSIVE-constant.html create mode 100644 docs/data/MarsStatus/valueOf.html create mode 100644 docs/data/MarsStatus/values-constant.html create mode 100644 docs/data/Message.html create mode 100644 docs/data/MessageDecoder.html create mode 100644 docs/data/MessageHandler.html create mode 100644 docs/data/MessageUtils-extension-sidebar.html create mode 100644 docs/data/MessageUtils.html create mode 100644 docs/data/MessageUtils/messageName.html create mode 100644 docs/data/MessageUtils/wrap.html create mode 100644 docs/data/MetricLine-class-sidebar.html create mode 100644 docs/data/MetricLine-class.html create mode 100644 docs/data/MetricLine/MetricLine.html create mode 100644 docs/data/MetricLine/hashCode.html create mode 100644 docs/data/MetricLine/noSuchMethod.html create mode 100644 docs/data/MetricLine/operator_equals.html create mode 100644 docs/data/MetricLine/runtimeType.html create mode 100644 docs/data/MetricLine/severity.html create mode 100644 docs/data/MetricLine/text.html create mode 100644 docs/data/MetricLine/toString.html create mode 100644 docs/data/Metrics-class-sidebar.html create mode 100644 docs/data/Metrics-class.html create mode 100644 docs/data/Metrics/Metrics.html create mode 100644 docs/data/Metrics/allMetrics.html create mode 100644 docs/data/Metrics/checkVersion.html create mode 100644 docs/data/Metrics/data.html create mode 100644 docs/data/Metrics/matchesVersion.html create mode 100644 docs/data/Metrics/name.html create mode 100644 docs/data/Metrics/overallSeverity.html create mode 100644 docs/data/Metrics/parseVersion.html create mode 100644 docs/data/Metrics/supportedVersion.html create mode 100644 docs/data/Metrics/update.html create mode 100644 docs/data/Metrics/version.html create mode 100644 docs/data/Metrics/versionCommand.html create mode 100644 docs/data/MotorCommand-class-sidebar.html create mode 100644 docs/data/MotorCommand-class.html create mode 100644 docs/data/MotorCommand/MotorCommand.fromBuffer.html create mode 100644 docs/data/MotorCommand/MotorCommand.fromJson.html create mode 100644 docs/data/MotorCommand/MotorCommand.html create mode 100644 docs/data/MotorCommand/angle.html create mode 100644 docs/data/MotorCommand/clearAngle.html create mode 100644 docs/data/MotorCommand/clearMoveRadians.html create mode 100644 docs/data/MotorCommand/clearMoveSteps.html create mode 100644 docs/data/MotorCommand/clone.html create mode 100644 docs/data/MotorCommand/copyWith.html create mode 100644 docs/data/MotorCommand/create.html create mode 100644 docs/data/MotorCommand/createEmptyInstance.html create mode 100644 docs/data/MotorCommand/createRepeated.html create mode 100644 docs/data/MotorCommand/getDefault.html create mode 100644 docs/data/MotorCommand/hasAngle.html create mode 100644 docs/data/MotorCommand/hasMoveRadians.html create mode 100644 docs/data/MotorCommand/hasMoveSteps.html create mode 100644 docs/data/MotorCommand/info_.html create mode 100644 docs/data/MotorCommand/moveRadians.html create mode 100644 docs/data/MotorCommand/moveSteps.html create mode 100644 docs/data/MotorData-class-sidebar.html create mode 100644 docs/data/MotorData-class.html create mode 100644 docs/data/MotorData/MotorData.fromBuffer.html create mode 100644 docs/data/MotorData/MotorData.fromJson.html create mode 100644 docs/data/MotorData/MotorData.html create mode 100644 docs/data/MotorData/angle.html create mode 100644 docs/data/MotorData/clearAngle.html create mode 100644 docs/data/MotorData/clearCurrentStep.html create mode 100644 docs/data/MotorData/clearDirection.html create mode 100644 docs/data/MotorData/clearIsLimitSwitchPressed.html create mode 100644 docs/data/MotorData/clearIsMoving.html create mode 100644 docs/data/MotorData/clearTargetStep.html create mode 100644 docs/data/MotorData/clone.html create mode 100644 docs/data/MotorData/copyWith.html create mode 100644 docs/data/MotorData/create.html create mode 100644 docs/data/MotorData/createEmptyInstance.html create mode 100644 docs/data/MotorData/createRepeated.html create mode 100644 docs/data/MotorData/currentStep.html create mode 100644 docs/data/MotorData/direction.html create mode 100644 docs/data/MotorData/getDefault.html create mode 100644 docs/data/MotorData/hasAngle.html create mode 100644 docs/data/MotorData/hasCurrentStep.html create mode 100644 docs/data/MotorData/hasDirection.html create mode 100644 docs/data/MotorData/hasIsLimitSwitchPressed.html create mode 100644 docs/data/MotorData/hasIsMoving.html create mode 100644 docs/data/MotorData/hasTargetStep.html create mode 100644 docs/data/MotorData/info_.html create mode 100644 docs/data/MotorData/isLimitSwitchPressed.html create mode 100644 docs/data/MotorData/isMoving.html create mode 100644 docs/data/MotorData/targetStep.html create mode 100644 docs/data/MotorDirection-class-sidebar.html create mode 100644 docs/data/MotorDirection-class.html create mode 100644 docs/data/MotorDirection/CLOCKWISE-constant.html create mode 100644 docs/data/MotorDirection/CLOSING-constant.html create mode 100644 docs/data/MotorDirection/COUNTER_CLOCKWISE-constant.html create mode 100644 docs/data/MotorDirection/DOWN-constant.html create mode 100644 docs/data/MotorDirection/LEFT-constant.html create mode 100644 docs/data/MotorDirection/MOTOR_DIRECTION_UNDEFINED-constant.html create mode 100644 docs/data/MotorDirection/NOT_MOVING-constant.html create mode 100644 docs/data/MotorDirection/OPENING-constant.html create mode 100644 docs/data/MotorDirection/RIGHT-constant.html create mode 100644 docs/data/MotorDirection/UP-constant.html create mode 100644 docs/data/MotorDirection/valueOf.html create mode 100644 docs/data/MotorDirection/values-constant.html create mode 100644 docs/data/MotorDirectionUtils-extension-sidebar.html create mode 100644 docs/data/MotorDirectionUtils.html create mode 100644 docs/data/MotorDirectionUtils/humanName.html create mode 100644 docs/data/NetworkSettings-class-sidebar.html create mode 100644 docs/data/NetworkSettings-class.html create mode 100644 docs/data/NetworkSettings/NetworkSettings.fromJson.html create mode 100644 docs/data/NetworkSettings/NetworkSettings.html create mode 100644 docs/data/NetworkSettings/autonomySocket.html create mode 100644 docs/data/NetworkSettings/connectionTimeout.html create mode 100644 docs/data/NetworkSettings/hashCode.html create mode 100644 docs/data/NetworkSettings/noSuchMethod.html create mode 100644 docs/data/NetworkSettings/operator_equals.html create mode 100644 docs/data/NetworkSettings/runtimeType.html create mode 100644 docs/data/NetworkSettings/subsystemsSocket.html create mode 100644 docs/data/NetworkSettings/tankSocket.html create mode 100644 docs/data/NetworkSettings/toJson.html create mode 100644 docs/data/NetworkSettings/toString.html create mode 100644 docs/data/NetworkSettings/videoSocket.html create mode 100644 docs/data/NumUtils-extension-sidebar.html create mode 100644 docs/data/NumUtils.html create mode 100644 docs/data/NumUtils/format.html create mode 100644 docs/data/NumUtils/toDegrees.html create mode 100644 docs/data/OperatingMode-enum-sidebar.html create mode 100644 docs/data/OperatingMode.html create mode 100644 docs/data/OperatingMode/hashCode.html create mode 100644 docs/data/OperatingMode/index.html create mode 100644 docs/data/OperatingMode/name.html create mode 100644 docs/data/OperatingMode/noSuchMethod.html create mode 100644 docs/data/OperatingMode/operator_equals.html create mode 100644 docs/data/OperatingMode/runtimeType.html create mode 100644 docs/data/OperatingMode/toString.html create mode 100644 docs/data/OperatingMode/values-constant.html create mode 100644 docs/data/Orientation-class-sidebar.html create mode 100644 docs/data/Orientation-class.html create mode 100644 docs/data/Orientation/Orientation.fromBuffer.html create mode 100644 docs/data/Orientation/Orientation.fromJson.html create mode 100644 docs/data/Orientation/Orientation.html create mode 100644 docs/data/Orientation/clearX.html create mode 100644 docs/data/Orientation/clearY.html create mode 100644 docs/data/Orientation/clearZ.html create mode 100644 docs/data/Orientation/clone.html create mode 100644 docs/data/Orientation/copyWith.html create mode 100644 docs/data/Orientation/create.html create mode 100644 docs/data/Orientation/createEmptyInstance.html create mode 100644 docs/data/Orientation/createRepeated.html create mode 100644 docs/data/Orientation/getDefault.html create mode 100644 docs/data/Orientation/hasX.html create mode 100644 docs/data/Orientation/hasY.html create mode 100644 docs/data/Orientation/hasZ.html create mode 100644 docs/data/Orientation/info_.html create mode 100644 docs/data/Orientation/x.html create mode 100644 docs/data/Orientation/y.html create mode 100644 docs/data/Orientation/z.html create mode 100644 docs/data/PositionMetrics-class-sidebar.html create mode 100644 docs/data/PositionMetrics-class.html create mode 100644 docs/data/PositionMetrics/PositionMetrics.html create mode 100644 docs/data/PositionMetrics/allMetrics.html create mode 100644 docs/data/PositionMetrics/angle.html create mode 100644 docs/data/PositionMetrics/baseStation.html create mode 100644 docs/data/PositionMetrics/getRotationSeverity.html create mode 100644 docs/data/PositionMetrics/name.html create mode 100644 docs/data/PositionMetrics/parseVersion.html create mode 100644 docs/data/PositionMetrics/pitch.html create mode 100644 docs/data/PositionMetrics/roll.html create mode 100644 docs/data/PositionMetrics/supportedVersion.html create mode 100644 docs/data/PositionMetrics/versionCommand.html create mode 100644 docs/data/ProtoColor-class-sidebar.html create mode 100644 docs/data/ProtoColor-class.html create mode 100644 docs/data/ProtoColor/BLUE-constant.html create mode 100644 docs/data/ProtoColor/GREEN-constant.html create mode 100644 docs/data/ProtoColor/PROTO_COLOR_UNDEFINED-constant.html create mode 100644 docs/data/ProtoColor/RED-constant.html create mode 100644 docs/data/ProtoColor/UNLIT-constant.html create mode 100644 docs/data/ProtoColor/valueOf.html create mode 100644 docs/data/ProtoColor/values-constant.html create mode 100644 docs/data/PumpState-class-sidebar.html create mode 100644 docs/data/PumpState-class.html create mode 100644 docs/data/PumpState/FILL-constant.html create mode 100644 docs/data/PumpState/PUMP_OFF-constant.html create mode 100644 docs/data/PumpState/PUMP_ON-constant.html create mode 100644 docs/data/PumpState/PUMP_STATE_UNDEFINED-constant.html create mode 100644 docs/data/PumpState/valueOf.html create mode 100644 docs/data/PumpState/values-constant.html create mode 100644 docs/data/RawDataHandler.html create mode 100644 docs/data/RoverPosition-class-sidebar.html create mode 100644 docs/data/RoverPosition-class.html create mode 100644 docs/data/RoverPosition/RoverPosition.fromBuffer.html create mode 100644 docs/data/RoverPosition/RoverPosition.fromJson.html create mode 100644 docs/data/RoverPosition/RoverPosition.html create mode 100644 docs/data/RoverPosition/clearGps.html create mode 100644 docs/data/RoverPosition/clearOrientation.html create mode 100644 docs/data/RoverPosition/clearVersion.html create mode 100644 docs/data/RoverPosition/clone.html create mode 100644 docs/data/RoverPosition/copyWith.html create mode 100644 docs/data/RoverPosition/create.html create mode 100644 docs/data/RoverPosition/createEmptyInstance.html create mode 100644 docs/data/RoverPosition/createRepeated.html create mode 100644 docs/data/RoverPosition/ensureGps.html create mode 100644 docs/data/RoverPosition/ensureOrientation.html create mode 100644 docs/data/RoverPosition/ensureVersion.html create mode 100644 docs/data/RoverPosition/getDefault.html create mode 100644 docs/data/RoverPosition/gps.html create mode 100644 docs/data/RoverPosition/hasGps.html create mode 100644 docs/data/RoverPosition/hasOrientation.html create mode 100644 docs/data/RoverPosition/hasVersion.html create mode 100644 docs/data/RoverPosition/info_.html create mode 100644 docs/data/RoverPosition/orientation.html create mode 100644 docs/data/RoverPosition/version.html create mode 100644 docs/data/RoverStatus-class-sidebar.html create mode 100644 docs/data/RoverStatus-class.html create mode 100644 docs/data/RoverStatus/AUTONOMOUS-constant.html create mode 100644 docs/data/RoverStatus/DISCONNECTED-constant.html create mode 100644 docs/data/RoverStatus/IDLE-constant.html create mode 100644 docs/data/RoverStatus/MANUAL-constant.html create mode 100644 docs/data/RoverStatus/POWER_OFF-constant.html create mode 100644 docs/data/RoverStatus/RESTART-constant.html create mode 100644 docs/data/RoverStatus/valueOf.html create mode 100644 docs/data/RoverStatus/values-constant.html create mode 100644 docs/data/RoverStatusHumanName-extension-sidebar.html create mode 100644 docs/data/RoverStatusHumanName.html create mode 100644 docs/data/RoverStatusHumanName/humanName.html create mode 100644 docs/data/RoverType-enum-sidebar.html create mode 100644 docs/data/RoverType.html create mode 100644 docs/data/RoverType/hashCode.html create mode 100644 docs/data/RoverType/humanName.html create mode 100644 docs/data/RoverType/index.html create mode 100644 docs/data/RoverType/noSuchMethod.html create mode 100644 docs/data/RoverType/operator_equals.html create mode 100644 docs/data/RoverType/runtimeType.html create mode 100644 docs/data/RoverType/toString.html create mode 100644 docs/data/RoverType/values-constant.html create mode 100644 docs/data/SampleData-class-sidebar.html create mode 100644 docs/data/SampleData-class.html create mode 100644 docs/data/SampleData/SampleData.html create mode 100644 docs/data/SampleData/addReading.html create mode 100644 docs/data/SampleData/average.html create mode 100644 docs/data/SampleData/clear.html create mode 100644 docs/data/SampleData/firstTimestamp.html create mode 100644 docs/data/SampleData/hashCode.html create mode 100644 docs/data/SampleData/max.html create mode 100644 docs/data/SampleData/min.html create mode 100644 docs/data/SampleData/noSuchMethod.html create mode 100644 docs/data/SampleData/operator_equals.html create mode 100644 docs/data/SampleData/readings.html create mode 100644 docs/data/SampleData/runtimeType.html create mode 100644 docs/data/SampleData/sum.html create mode 100644 docs/data/SampleData/toString.html create mode 100644 docs/data/ScienceCommand-class-sidebar.html create mode 100644 docs/data/ScienceCommand-class.html create mode 100644 docs/data/ScienceCommand/ScienceCommand.fromBuffer.html create mode 100644 docs/data/ScienceCommand/ScienceCommand.fromJson.html create mode 100644 docs/data/ScienceCommand/ScienceCommand.html create mode 100644 docs/data/ScienceCommand/calibrate.html create mode 100644 docs/data/ScienceCommand/carousel.html create mode 100644 docs/data/ScienceCommand/carouselMotor.html create mode 100644 docs/data/ScienceCommand/clearCalibrate.html create mode 100644 docs/data/ScienceCommand/clearCarousel.html create mode 100644 docs/data/ScienceCommand/clearCarouselMotor.html create mode 100644 docs/data/ScienceCommand/clearFunnel.html create mode 100644 docs/data/ScienceCommand/clearPumps.html create mode 100644 docs/data/ScienceCommand/clearSample.html create mode 100644 docs/data/ScienceCommand/clearScoop.html create mode 100644 docs/data/ScienceCommand/clearScoopMotor.html create mode 100644 docs/data/ScienceCommand/clearState.html create mode 100644 docs/data/ScienceCommand/clearStop.html create mode 100644 docs/data/ScienceCommand/clearSubsurfaceMotor.html create mode 100644 docs/data/ScienceCommand/clearVersion.html create mode 100644 docs/data/ScienceCommand/clone.html create mode 100644 docs/data/ScienceCommand/copyWith.html create mode 100644 docs/data/ScienceCommand/create.html create mode 100644 docs/data/ScienceCommand/createEmptyInstance.html create mode 100644 docs/data/ScienceCommand/createRepeated.html create mode 100644 docs/data/ScienceCommand/ensureVersion.html create mode 100644 docs/data/ScienceCommand/funnel.html create mode 100644 docs/data/ScienceCommand/getDefault.html create mode 100644 docs/data/ScienceCommand/hasCalibrate.html create mode 100644 docs/data/ScienceCommand/hasCarousel.html create mode 100644 docs/data/ScienceCommand/hasCarouselMotor.html create mode 100644 docs/data/ScienceCommand/hasFunnel.html create mode 100644 docs/data/ScienceCommand/hasPumps.html create mode 100644 docs/data/ScienceCommand/hasSample.html create mode 100644 docs/data/ScienceCommand/hasScoop.html create mode 100644 docs/data/ScienceCommand/hasScoopMotor.html create mode 100644 docs/data/ScienceCommand/hasState.html create mode 100644 docs/data/ScienceCommand/hasStop.html create mode 100644 docs/data/ScienceCommand/hasSubsurfaceMotor.html create mode 100644 docs/data/ScienceCommand/hasVersion.html create mode 100644 docs/data/ScienceCommand/info_.html create mode 100644 docs/data/ScienceCommand/pumps.html create mode 100644 docs/data/ScienceCommand/sample.html create mode 100644 docs/data/ScienceCommand/scoop.html create mode 100644 docs/data/ScienceCommand/scoopMotor.html create mode 100644 docs/data/ScienceCommand/state.html create mode 100644 docs/data/ScienceCommand/stop.html create mode 100644 docs/data/ScienceCommand/subsurfaceMotor.html create mode 100644 docs/data/ScienceCommand/version.html create mode 100644 docs/data/ScienceData-class-sidebar.html create mode 100644 docs/data/ScienceData-class.html create mode 100644 docs/data/ScienceData/ScienceData.fromBuffer.html create mode 100644 docs/data/ScienceData/ScienceData.fromJson.html create mode 100644 docs/data/ScienceData/ScienceData.html create mode 100644 docs/data/ScienceData/clearCo2.html create mode 100644 docs/data/ScienceData/clearHumidity.html create mode 100644 docs/data/ScienceData/clearSample.html create mode 100644 docs/data/ScienceData/clearState.html create mode 100644 docs/data/ScienceData/clearTemperature.html create mode 100644 docs/data/ScienceData/clearVersion.html create mode 100644 docs/data/ScienceData/clone.html create mode 100644 docs/data/ScienceData/co2.html create mode 100644 docs/data/ScienceData/copyWith.html create mode 100644 docs/data/ScienceData/create.html create mode 100644 docs/data/ScienceData/createEmptyInstance.html create mode 100644 docs/data/ScienceData/createRepeated.html create mode 100644 docs/data/ScienceData/ensureVersion.html create mode 100644 docs/data/ScienceData/getDefault.html create mode 100644 docs/data/ScienceData/hasCo2.html create mode 100644 docs/data/ScienceData/hasHumidity.html create mode 100644 docs/data/ScienceData/hasSample.html create mode 100644 docs/data/ScienceData/hasState.html create mode 100644 docs/data/ScienceData/hasTemperature.html create mode 100644 docs/data/ScienceData/hasVersion.html create mode 100644 docs/data/ScienceData/humidity.html create mode 100644 docs/data/ScienceData/info_.html create mode 100644 docs/data/ScienceData/sample.html create mode 100644 docs/data/ScienceData/state.html create mode 100644 docs/data/ScienceData/temperature.html create mode 100644 docs/data/ScienceData/version.html create mode 100644 docs/data/ScienceMetrics-class-sidebar.html create mode 100644 docs/data/ScienceMetrics-class.html create mode 100644 docs/data/ScienceMetrics/ScienceMetrics.html create mode 100644 docs/data/ScienceMetrics/allMetrics.html create mode 100644 docs/data/ScienceMetrics/name.html create mode 100644 docs/data/ScienceMetrics/parseVersion.html create mode 100644 docs/data/ScienceMetrics/supportedVersion.html create mode 100644 docs/data/ScienceMetrics/update.html create mode 100644 docs/data/ScienceMetrics/versionCommand.html create mode 100644 docs/data/ScienceResult-enum-sidebar.html create mode 100644 docs/data/ScienceResult.html create mode 100644 docs/data/ScienceResult/hashCode.html create mode 100644 docs/data/ScienceResult/index.html create mode 100644 docs/data/ScienceResult/noSuchMethod.html create mode 100644 docs/data/ScienceResult/operator_equals.html create mode 100644 docs/data/ScienceResult/runtimeType.html create mode 100644 docs/data/ScienceResult/toString.html create mode 100644 docs/data/ScienceResult/values-constant.html create mode 100644 docs/data/ScienceSensor-class-sidebar.html create mode 100644 docs/data/ScienceSensor-class.html create mode 100644 docs/data/ScienceSensor/ScienceSensor.html create mode 100644 docs/data/ScienceSensor/hashCode.html create mode 100644 docs/data/ScienceSensor/name.html create mode 100644 docs/data/ScienceSensor/noSuchMethod.html create mode 100644 docs/data/ScienceSensor/operator_equals.html create mode 100644 docs/data/ScienceSensor/runtimeType.html create mode 100644 docs/data/ScienceSensor/test.html create mode 100644 docs/data/ScienceSensor/testDescription.html create mode 100644 docs/data/ScienceSensor/toString.html create mode 100644 docs/data/ScienceSettings-class-sidebar.html create mode 100644 docs/data/ScienceSettings-class.html create mode 100644 docs/data/ScienceSettings/ScienceSettings.fromJson.html create mode 100644 docs/data/ScienceSettings/ScienceSettings.html create mode 100644 docs/data/ScienceSettings/hashCode.html create mode 100644 docs/data/ScienceSettings/noSuchMethod.html create mode 100644 docs/data/ScienceSettings/numSamples.html create mode 100644 docs/data/ScienceSettings/operator_equals.html create mode 100644 docs/data/ScienceSettings/runtimeType.html create mode 100644 docs/data/ScienceSettings/scrollableGraphs.html create mode 100644 docs/data/ScienceSettings/toJson.html create mode 100644 docs/data/ScienceSettings/toString.html create mode 100644 docs/data/ScienceState-class-sidebar.html create mode 100644 docs/data/ScienceState-class.html create mode 100644 docs/data/ScienceState/COLLECT_DATA-constant.html create mode 100644 docs/data/ScienceState/SCIENCE_STATE_UNDEFINED-constant.html create mode 100644 docs/data/ScienceState/STOP_COLLECTING-constant.html create mode 100644 docs/data/ScienceState/valueOf.html create mode 100644 docs/data/ScienceState/values-constant.html create mode 100644 docs/data/ScienceStateUtils-extension-sidebar.html create mode 100644 docs/data/ScienceStateUtils.html create mode 100644 docs/data/ScienceStateUtils/humanName.html create mode 100644 docs/data/ScienceTest.html create mode 100644 docs/data/SensorReading-class-sidebar.html create mode 100644 docs/data/SensorReading-class.html create mode 100644 docs/data/SensorReading/SensorReading.html create mode 100644 docs/data/SensorReading/hashCode.html create mode 100644 docs/data/SensorReading/noSuchMethod.html create mode 100644 docs/data/SensorReading/operator_equals.html create mode 100644 docs/data/SensorReading/runtimeType.html create mode 100644 docs/data/SensorReading/time.html create mode 100644 docs/data/SensorReading/toString.html create mode 100644 docs/data/SensorReading/value.html create mode 100644 docs/data/ServoState-class-sidebar.html create mode 100644 docs/data/ServoState-class.html create mode 100644 docs/data/ServoState/SERVO_CLOSE-constant.html create mode 100644 docs/data/ServoState/SERVO_OPEN-constant.html create mode 100644 docs/data/ServoState/SERVO_STATE_UNDEFINED-constant.html create mode 100644 docs/data/ServoState/valueOf.html create mode 100644 docs/data/ServoState/values-constant.html create mode 100644 docs/data/Settings-class-sidebar.html create mode 100644 docs/data/Settings-class.html create mode 100644 docs/data/Settings/Settings.fromJson.html create mode 100644 docs/data/Settings/Settings.html create mode 100644 docs/data/Settings/arm.html create mode 100644 docs/data/Settings/dashboard.html create mode 100644 docs/data/Settings/easterEggs.html create mode 100644 docs/data/Settings/hashCode.html create mode 100644 docs/data/Settings/network.html create mode 100644 docs/data/Settings/noSuchMethod.html create mode 100644 docs/data/Settings/operator_equals.html create mode 100644 docs/data/Settings/runtimeType.html create mode 100644 docs/data/Settings/science.html create mode 100644 docs/data/Settings/toJson.html create mode 100644 docs/data/Settings/toString.html create mode 100644 docs/data/SettingsParser-extension-sidebar.html create mode 100644 docs/data/SettingsParser.html create mode 100644 docs/data/SettingsParser/getSocket.html create mode 100644 docs/data/Severity-enum-sidebar.html create mode 100644 docs/data/Severity.html create mode 100644 docs/data/Severity/hashCode.html create mode 100644 docs/data/Severity/index.html create mode 100644 docs/data/Severity/noSuchMethod.html create mode 100644 docs/data/Severity/operator_equals.html create mode 100644 docs/data/Severity/runtimeType.html create mode 100644 docs/data/Severity/toString.html create mode 100644 docs/data/Severity/values-constant.html create mode 100644 docs/data/SocketInfo-class-sidebar.html create mode 100644 docs/data/SocketInfo-class.html create mode 100644 docs/data/SocketInfo/SocketInfo.fromJson.html create mode 100644 docs/data/SocketInfo/SocketInfo.html create mode 100644 docs/data/SocketInfo/SocketInfo.raw.html create mode 100644 docs/data/SocketInfo/address.html create mode 100644 docs/data/SocketInfo/copyWith.html create mode 100644 docs/data/SocketInfo/hashCode.html create mode 100644 docs/data/SocketInfo/noSuchMethod.html create mode 100644 docs/data/SocketInfo/operator_equals.html create mode 100644 docs/data/SocketInfo/port.html create mode 100644 docs/data/SocketInfo/runtimeType.html create mode 100644 docs/data/SocketInfo/toJson.html create mode 100644 docs/data/SocketInfo/toString.html create mode 100644 docs/data/SplitMode-enum-sidebar.html create mode 100644 docs/data/SplitMode.html create mode 100644 docs/data/SplitMode/hashCode.html create mode 100644 docs/data/SplitMode/humanName.html create mode 100644 docs/data/SplitMode/index.html create mode 100644 docs/data/SplitMode/noSuchMethod.html create mode 100644 docs/data/SplitMode/operator_equals.html create mode 100644 docs/data/SplitMode/runtimeType.html create mode 100644 docs/data/SplitMode/toString.html create mode 100644 docs/data/SplitMode/values-constant.html create mode 100644 docs/data/TaskbarMessage-class-sidebar.html create mode 100644 docs/data/TaskbarMessage-class.html create mode 100644 docs/data/TaskbarMessage/TaskbarMessage.html create mode 100644 docs/data/TaskbarMessage/hashCode.html create mode 100644 docs/data/TaskbarMessage/noSuchMethod.html create mode 100644 docs/data/TaskbarMessage/operator_equals.html create mode 100644 docs/data/TaskbarMessage/runtimeType.html create mode 100644 docs/data/TaskbarMessage/severity.html create mode 100644 docs/data/TaskbarMessage/text.html create mode 100644 docs/data/TaskbarMessage/toString.html create mode 100644 docs/data/ThemeModeUtils-extension-sidebar.html create mode 100644 docs/data/ThemeModeUtils.html create mode 100644 docs/data/ThemeModeUtils/humanName.html create mode 100644 docs/data/Timestamp-class-sidebar.html create mode 100644 docs/data/Timestamp-class.html create mode 100644 docs/data/Timestamp/Timestamp.fromBuffer.html create mode 100644 docs/data/Timestamp/Timestamp.fromJson.html create mode 100644 docs/data/Timestamp/Timestamp.html create mode 100644 docs/data/Timestamp/clearNanos.html create mode 100644 docs/data/Timestamp/clearSeconds.html create mode 100644 docs/data/Timestamp/clone.html create mode 100644 docs/data/Timestamp/copyWith.html create mode 100644 docs/data/Timestamp/create.html create mode 100644 docs/data/Timestamp/createEmptyInstance.html create mode 100644 docs/data/Timestamp/createRepeated.html create mode 100644 docs/data/Timestamp/fromDateTime.html create mode 100644 docs/data/Timestamp/getDefault.html create mode 100644 docs/data/Timestamp/hasNanos.html create mode 100644 docs/data/Timestamp/hasSeconds.html create mode 100644 docs/data/Timestamp/info_.html create mode 100644 docs/data/Timestamp/nanos.html create mode 100644 docs/data/Timestamp/seconds.html create mode 100644 docs/data/Timestamp/toDateTime.html create mode 100644 docs/data/TimestampUtils-extension-sidebar.html create mode 100644 docs/data/TimestampUtils.html create mode 100644 docs/data/TimestampUtils/now.html create mode 100644 docs/data/TimestampUtils/operator_minus.html create mode 100644 docs/data/TimestampUtils/operator_plus.html create mode 100644 docs/data/UndefinedFilter-extension-sidebar.html create mode 100644 docs/data/UndefinedFilter.html create mode 100644 docs/data/UndefinedFilter/filtered.html create mode 100644 docs/data/Unwrapper-extension-sidebar.html create mode 100644 docs/data/Unwrapper.html create mode 100644 docs/data/Unwrapper/decode.html create mode 100644 docs/data/UpdateSetting-class-sidebar.html create mode 100644 docs/data/UpdateSetting-class.html create mode 100644 docs/data/UpdateSetting/UpdateSetting.fromBuffer.html create mode 100644 docs/data/UpdateSetting/UpdateSetting.fromJson.html create mode 100644 docs/data/UpdateSetting/UpdateSetting.html create mode 100644 docs/data/UpdateSetting/clearStatus.html create mode 100644 docs/data/UpdateSetting/clone.html create mode 100644 docs/data/UpdateSetting/copyWith.html create mode 100644 docs/data/UpdateSetting/create.html create mode 100644 docs/data/UpdateSetting/createEmptyInstance.html create mode 100644 docs/data/UpdateSetting/createRepeated.html create mode 100644 docs/data/UpdateSetting/getDefault.html create mode 100644 docs/data/UpdateSetting/hasStatus.html create mode 100644 docs/data/UpdateSetting/info_.html create mode 100644 docs/data/UpdateSetting/status.html create mode 100644 docs/data/Version-class-sidebar.html create mode 100644 docs/data/Version-class.html create mode 100644 docs/data/Version/Version.fromBuffer.html create mode 100644 docs/data/Version/Version.fromJson.html create mode 100644 docs/data/Version/Version.html create mode 100644 docs/data/Version/clearMajor.html create mode 100644 docs/data/Version/clearMinor.html create mode 100644 docs/data/Version/clone.html create mode 100644 docs/data/Version/copyWith.html create mode 100644 docs/data/Version/create.html create mode 100644 docs/data/Version/createEmptyInstance.html create mode 100644 docs/data/Version/createRepeated.html create mode 100644 docs/data/Version/getDefault.html create mode 100644 docs/data/Version/hasMajor.html create mode 100644 docs/data/Version/hasMinor.html create mode 100644 docs/data/Version/info_.html create mode 100644 docs/data/Version/major.html create mode 100644 docs/data/Version/minor.html create mode 100644 docs/data/VersionUtils-extension-sidebar.html create mode 100644 docs/data/VersionUtils.html create mode 100644 docs/data/VersionUtils/format.html create mode 100644 docs/data/VersionUtils/isCompatible.html create mode 100644 docs/data/VideoCommand-class-sidebar.html create mode 100644 docs/data/VideoCommand-class.html create mode 100644 docs/data/VideoCommand/VideoCommand.fromBuffer.html create mode 100644 docs/data/VideoCommand/VideoCommand.fromJson.html create mode 100644 docs/data/VideoCommand/VideoCommand.html create mode 100644 docs/data/VideoCommand/clearDetails.html create mode 100644 docs/data/VideoCommand/clearId.html create mode 100644 docs/data/VideoCommand/clearTakeSnapshot.html create mode 100644 docs/data/VideoCommand/clearVersion.html create mode 100644 docs/data/VideoCommand/clone.html create mode 100644 docs/data/VideoCommand/copyWith.html create mode 100644 docs/data/VideoCommand/create.html create mode 100644 docs/data/VideoCommand/createEmptyInstance.html create mode 100644 docs/data/VideoCommand/createRepeated.html create mode 100644 docs/data/VideoCommand/details.html create mode 100644 docs/data/VideoCommand/ensureDetails.html create mode 100644 docs/data/VideoCommand/ensureVersion.html create mode 100644 docs/data/VideoCommand/getDefault.html create mode 100644 docs/data/VideoCommand/hasDetails.html create mode 100644 docs/data/VideoCommand/hasId.html create mode 100644 docs/data/VideoCommand/hasTakeSnapshot.html create mode 100644 docs/data/VideoCommand/hasVersion.html create mode 100644 docs/data/VideoCommand/id.html create mode 100644 docs/data/VideoCommand/info_.html create mode 100644 docs/data/VideoCommand/takeSnapshot.html create mode 100644 docs/data/VideoCommand/version.html create mode 100644 docs/data/VideoData-class-sidebar.html create mode 100644 docs/data/VideoData-class.html create mode 100644 docs/data/VideoData/VideoData.fromBuffer.html create mode 100644 docs/data/VideoData/VideoData.fromJson.html create mode 100644 docs/data/VideoData/VideoData.html create mode 100644 docs/data/VideoData/clearDetails.html create mode 100644 docs/data/VideoData/clearFrame.html create mode 100644 docs/data/VideoData/clearId.html create mode 100644 docs/data/VideoData/clearImagePath.html create mode 100644 docs/data/VideoData/clearVersion.html create mode 100644 docs/data/VideoData/clone.html create mode 100644 docs/data/VideoData/copyWith.html create mode 100644 docs/data/VideoData/create.html create mode 100644 docs/data/VideoData/createEmptyInstance.html create mode 100644 docs/data/VideoData/createRepeated.html create mode 100644 docs/data/VideoData/details.html create mode 100644 docs/data/VideoData/ensureDetails.html create mode 100644 docs/data/VideoData/ensureVersion.html create mode 100644 docs/data/VideoData/frame.html create mode 100644 docs/data/VideoData/getDefault.html create mode 100644 docs/data/VideoData/hasDetails.html create mode 100644 docs/data/VideoData/hasFrame.html create mode 100644 docs/data/VideoData/hasId.html create mode 100644 docs/data/VideoData/hasImagePath.html create mode 100644 docs/data/VideoData/hasVersion.html create mode 100644 docs/data/VideoData/id.html create mode 100644 docs/data/VideoData/imagePath.html create mode 100644 docs/data/VideoData/info_.html create mode 100644 docs/data/VideoData/version.html create mode 100644 docs/data/VideoDataUtils-extension-sidebar.html create mode 100644 docs/data/VideoDataUtils.html create mode 100644 docs/data/VideoDataUtils/hasFrame.html create mode 100644 docs/data/VitalsMetrics-class-sidebar.html create mode 100644 docs/data/VitalsMetrics-class.html create mode 100644 docs/data/VitalsMetrics/VitalsMetrics.html create mode 100644 docs/data/VitalsMetrics/allMetrics.html create mode 100644 docs/data/VitalsMetrics/drive.html create mode 100644 docs/data/VitalsMetrics/name.html create mode 100644 docs/data/VitalsMetrics/parseVersion.html create mode 100644 docs/data/VitalsMetrics/supportedVersion.html create mode 100644 docs/data/VitalsMetrics/temperatureSeverity.html create mode 100644 docs/data/VitalsMetrics/versionCommand.html create mode 100644 docs/data/VitalsMetrics/voltageSeverity.html create mode 100644 docs/data/WrappedMessage-class-sidebar.html create mode 100644 docs/data/WrappedMessage-class.html create mode 100644 docs/data/WrappedMessage/WrappedMessage.fromBuffer.html create mode 100644 docs/data/WrappedMessage/WrappedMessage.fromJson.html create mode 100644 docs/data/WrappedMessage/WrappedMessage.html create mode 100644 docs/data/WrappedMessage/clearData.html create mode 100644 docs/data/WrappedMessage/clearName.html create mode 100644 docs/data/WrappedMessage/clearTimestamp.html create mode 100644 docs/data/WrappedMessage/clone.html create mode 100644 docs/data/WrappedMessage/copyWith.html create mode 100644 docs/data/WrappedMessage/create.html create mode 100644 docs/data/WrappedMessage/createEmptyInstance.html create mode 100644 docs/data/WrappedMessage/createRepeated.html create mode 100644 docs/data/WrappedMessage/data.html create mode 100644 docs/data/WrappedMessage/ensureTimestamp.html create mode 100644 docs/data/WrappedMessage/getDefault.html create mode 100644 docs/data/WrappedMessage/hasData.html create mode 100644 docs/data/WrappedMessage/hasName.html create mode 100644 docs/data/WrappedMessage/hasTimestamp.html create mode 100644 docs/data/WrappedMessage/info_.html create mode 100644 docs/data/WrappedMessage/name.html create mode 100644 docs/data/WrappedMessage/timestamp.html create mode 100644 docs/data/WrappedMessageHandler.html create mode 100644 docs/data/co2-constant.html create mode 100644 docs/data/co2Test.html create mode 100644 docs/data/data-library-sidebar.html create mode 100644 docs/data/data-library.html create mode 100644 docs/data/getCommandName.html create mode 100644 docs/data/getDataName.html create mode 100644 docs/data/humidity-constant.html create mode 100644 docs/data/humidityTest.html create mode 100644 docs/data/sensors-constant.html create mode 100644 docs/data/temperature-constant.html create mode 100644 docs/data/temperatureTest.html create mode 100644 docs/errors/DashboardException-class-sidebar.html create mode 100644 docs/errors/DashboardException-class.html create mode 100644 docs/errors/DashboardException/DashboardException.html create mode 100644 docs/errors/DashboardException/hashCode.html create mode 100644 docs/errors/DashboardException/noSuchMethod.html create mode 100644 docs/errors/DashboardException/operator_equals.html create mode 100644 docs/errors/DashboardException/runtimeType.html create mode 100644 docs/errors/DashboardException/toString.html create mode 100644 docs/errors/errors-library-sidebar.html create mode 100644 docs/errors/errors-library.html create mode 100644 docs/index.html create mode 100644 docs/index.json create mode 100644 docs/main/main-library-sidebar.html create mode 100644 docs/main/main-library.html create mode 100644 docs/main/main.html create mode 100644 docs/main/networkErrors-constant.html create mode 100644 docs/models/AddressBuilder-class-sidebar.html create mode 100644 docs/models/AddressBuilder-class.html create mode 100644 docs/models/AddressBuilder/AddressBuilder.html create mode 100644 docs/models/AddressBuilder/regex.html create mode 100644 docs/models/AddressBuilder/update.html create mode 100644 docs/models/ArmControls-class-sidebar.html create mode 100644 docs/models/ArmControls-class.html create mode 100644 docs/models/ArmControls/ArmControls.html create mode 100644 docs/models/ArmControls/buttonMapping.html create mode 100644 docs/models/ArmControls/ik.html create mode 100644 docs/models/ArmControls/isAPressed.html create mode 100644 docs/models/ArmControls/isBPressed.html create mode 100644 docs/models/ArmControls/isXPressed.html create mode 100644 docs/models/ArmControls/isYPressed.html create mode 100644 docs/models/ArmControls/mode.html create mode 100644 docs/models/ArmControls/onDispose.html create mode 100644 docs/models/ArmControls/parseInputs.html create mode 100644 docs/models/ArmControls/settings.html create mode 100644 docs/models/ArmControls/updateState.html create mode 100644 docs/models/ArmSettingsBuilder-class-sidebar.html create mode 100644 docs/models/ArmSettingsBuilder-class.html create mode 100644 docs/models/ArmSettingsBuilder/ArmSettingsBuilder.html create mode 100644 docs/models/ArmSettingsBuilder/elbow.html create mode 100644 docs/models/ArmSettingsBuilder/ik.html create mode 100644 docs/models/ArmSettingsBuilder/isValid.html create mode 100644 docs/models/ArmSettingsBuilder/lift.html create mode 100644 docs/models/ArmSettingsBuilder/pinch.html create mode 100644 docs/models/ArmSettingsBuilder/rotate.html create mode 100644 docs/models/ArmSettingsBuilder/shoulder.html create mode 100644 docs/models/ArmSettingsBuilder/swivel.html create mode 100644 docs/models/ArmSettingsBuilder/updateIK.html create mode 100644 docs/models/ArmSettingsBuilder/useIK.html create mode 100644 docs/models/ArmSettingsBuilder/value.html create mode 100644 docs/models/AutonomyCell-enum-sidebar.html create mode 100644 docs/models/AutonomyCell.html create mode 100644 docs/models/AutonomyCell/hashCode.html create mode 100644 docs/models/AutonomyCell/index.html create mode 100644 docs/models/AutonomyCell/noSuchMethod.html create mode 100644 docs/models/AutonomyCell/operator_equals.html create mode 100644 docs/models/AutonomyCell/runtimeType.html create mode 100644 docs/models/AutonomyCell/toString.html create mode 100644 docs/models/AutonomyCell/values-constant.html create mode 100644 docs/models/AutonomyCommandBuilder-class-sidebar.html create mode 100644 docs/models/AutonomyCommandBuilder-class.html create mode 100644 docs/models/AutonomyCommandBuilder/AutonomyCommandBuilder.html create mode 100644 docs/models/AutonomyCommandBuilder/abort.html create mode 100644 docs/models/AutonomyCommandBuilder/dispose.html create mode 100644 docs/models/AutonomyCommandBuilder/gps.html create mode 100644 docs/models/AutonomyCommandBuilder/init.html create mode 100644 docs/models/AutonomyCommandBuilder/isLoading.html create mode 100644 docs/models/AutonomyCommandBuilder/isValid.html create mode 100644 docs/models/AutonomyCommandBuilder/otherBuilders.html create mode 100644 docs/models/AutonomyCommandBuilder/submit.html create mode 100644 docs/models/AutonomyCommandBuilder/task.html create mode 100644 docs/models/AutonomyCommandBuilder/updateTask.html create mode 100644 docs/models/AutonomyCommandBuilder/value.html create mode 100644 docs/models/AutonomyModel-class-sidebar.html create mode 100644 docs/models/AutonomyModel-class.html create mode 100644 docs/models/AutonomyModel/AutonomyModel.html create mode 100644 docs/models/AutonomyModel/badAppleAudioPlayer.html create mode 100644 docs/models/AutonomyModel/badAppleFps-constant.html create mode 100644 docs/models/AutonomyModel/badAppleFrame.html create mode 100644 docs/models/AutonomyModel/badAppleLastFrame-constant.html create mode 100644 docs/models/AutonomyModel/badAppleTimer.html create mode 100644 docs/models/AutonomyModel/clearMarkers.html create mode 100644 docs/models/AutonomyModel/data.html create mode 100644 docs/models/AutonomyModel/dispose.html create mode 100644 docs/models/AutonomyModel/empty.html create mode 100644 docs/models/AutonomyModel/gpsToBlock.html create mode 100644 docs/models/AutonomyModel/grid.html create mode 100644 docs/models/AutonomyModel/gridSize.html create mode 100644 docs/models/AutonomyModel/init.html create mode 100644 docs/models/AutonomyModel/isPlayingBadApple.html create mode 100644 docs/models/AutonomyModel/markCell.html create mode 100644 docs/models/AutonomyModel/markerBuilder.html create mode 100644 docs/models/AutonomyModel/markers.html create mode 100644 docs/models/AutonomyModel/offset.html create mode 100644 docs/models/AutonomyModel/onNewData.html create mode 100644 docs/models/AutonomyModel/placeMarker.html create mode 100644 docs/models/AutonomyModel/placeMarkerOnRover.html create mode 100644 docs/models/AutonomyModel/recenterRover.html create mode 100644 docs/models/AutonomyModel/roverHeading.html create mode 100644 docs/models/AutonomyModel/roverPosition.html create mode 100644 docs/models/AutonomyModel/startBadApple.html create mode 100644 docs/models/AutonomyModel/stopBadApple.html create mode 100644 docs/models/AutonomyModel/updateMarker.html create mode 100644 docs/models/AutonomyModel/zoom.html create mode 100644 docs/models/CameraControls-class-sidebar.html create mode 100644 docs/models/CameraControls-class.html create mode 100644 docs/models/CameraControls/CameraControls.html create mode 100644 docs/models/CameraControls/armTilt.html create mode 100644 docs/models/CameraControls/buttonMapping.html create mode 100644 docs/models/CameraControls/cameraSwivelIncrement-constant.html create mode 100644 docs/models/CameraControls/cameraTiltIncrement-constant.html create mode 100644 docs/models/CameraControls/frontSwivel.html create mode 100644 docs/models/CameraControls/frontTilt.html create mode 100644 docs/models/CameraControls/mode.html create mode 100644 docs/models/CameraControls/onDispose.html create mode 100644 docs/models/CameraControls/parseInputs.html create mode 100644 docs/models/CameraControls/rearSwivel.html create mode 100644 docs/models/CameraControls/rearTilt.html create mode 100644 docs/models/CameraControls/updateState.html create mode 100644 docs/models/CameraDetailsBuilder-class-sidebar.html create mode 100644 docs/models/CameraDetailsBuilder-class.html create mode 100644 docs/models/CameraDetailsBuilder/CameraDetailsBuilder.html create mode 100644 docs/models/CameraDetailsBuilder/autofocus.html create mode 100644 docs/models/CameraDetailsBuilder/error.html create mode 100644 docs/models/CameraDetailsBuilder/fps.html create mode 100644 docs/models/CameraDetailsBuilder/isLoading.html create mode 100644 docs/models/CameraDetailsBuilder/isValid.html create mode 100644 docs/models/CameraDetailsBuilder/name.html create mode 100644 docs/models/CameraDetailsBuilder/okStatuses-constant.html create mode 100644 docs/models/CameraDetailsBuilder/otherBuilders.html create mode 100644 docs/models/CameraDetailsBuilder/quality.html create mode 100644 docs/models/CameraDetailsBuilder/resolutionHeight.html create mode 100644 docs/models/CameraDetailsBuilder/resolutionWidth.html create mode 100644 docs/models/CameraDetailsBuilder/saveSettings.html create mode 100644 docs/models/CameraDetailsBuilder/status.html create mode 100644 docs/models/CameraDetailsBuilder/updateStatus.html create mode 100644 docs/models/CameraDetailsBuilder/value.html create mode 100644 docs/models/ColorBuilder-class-sidebar.html create mode 100644 docs/models/ColorBuilder-class.html create mode 100644 docs/models/ColorBuilder/ColorBuilder.html create mode 100644 docs/models/ColorBuilder/blink.html create mode 100644 docs/models/ColorBuilder/color.html create mode 100644 docs/models/ColorBuilder/errorText.html create mode 100644 docs/models/ColorBuilder/isLoading.html create mode 100644 docs/models/ColorBuilder/setColor.html create mode 100644 docs/models/ColorBuilder/updateBlink.html create mode 100644 docs/models/ColorBuilder/updateColor.html create mode 100644 docs/models/Controller-class-sidebar.html create mode 100644 docs/models/Controller-class.html create mode 100644 docs/models/Controller/Controller.html create mode 100644 docs/models/Controller/connect.html create mode 100644 docs/models/Controller/controls.html create mode 100644 docs/models/Controller/dispose.html create mode 100644 docs/models/Controller/gamepad.html create mode 100644 docs/models/Controller/gamepadTimer.html create mode 100644 docs/models/Controller/index.html create mode 100644 docs/models/Controller/init.html create mode 100644 docs/models/Controller/isConnected.html create mode 100644 docs/models/Controller/mode.html create mode 100644 docs/models/Controller/otherControllerIs.html create mode 100644 docs/models/Controller/setMode.html create mode 100644 docs/models/Controller/setModeIndex.html create mode 100644 docs/models/DashboardSettingsBuilder-class-sidebar.html create mode 100644 docs/models/DashboardSettingsBuilder-class.html create mode 100644 docs/models/DashboardSettingsBuilder/DashboardSettingsBuilder.html create mode 100644 docs/models/DashboardSettingsBuilder/blockSize.html create mode 100644 docs/models/DashboardSettingsBuilder/fps.html create mode 100644 docs/models/DashboardSettingsBuilder/isValid.html create mode 100644 docs/models/DashboardSettingsBuilder/preferTankControls.html create mode 100644 docs/models/DashboardSettingsBuilder/splitCameras.html create mode 100644 docs/models/DashboardSettingsBuilder/splitMode.html create mode 100644 docs/models/DashboardSettingsBuilder/themeMode.html create mode 100644 docs/models/DashboardSettingsBuilder/updateCameras.html create mode 100644 docs/models/DashboardSettingsBuilder/updateSplitMode.html create mode 100644 docs/models/DashboardSettingsBuilder/updateTank.html create mode 100644 docs/models/DashboardSettingsBuilder/updateThemeMode.html create mode 100644 docs/models/DashboardSettingsBuilder/updateVersionChecking.html create mode 100644 docs/models/DashboardSettingsBuilder/value.html create mode 100644 docs/models/DashboardSettingsBuilder/versionChecking.html create mode 100644 docs/models/DriveControls-class-sidebar.html create mode 100644 docs/models/DriveControls-class.html create mode 100644 docs/models/DriveControls/DriveControls.html create mode 100644 docs/models/DriveControls/buttonMapping.html create mode 100644 docs/models/DriveControls/leftShoulderFlag.html create mode 100644 docs/models/DriveControls/mode.html create mode 100644 docs/models/DriveControls/onDispose.html create mode 100644 docs/models/DriveControls/parseInputs.html create mode 100644 docs/models/DriveControls/rightShoulderFlag.html create mode 100644 docs/models/DriveControls/throttle.html create mode 100644 docs/models/DriveControls/updateState.html create mode 100644 docs/models/EasterEggsSettingsBuilder-class-sidebar.html create mode 100644 docs/models/EasterEggsSettingsBuilder-class.html create mode 100644 docs/models/EasterEggsSettingsBuilder/EasterEggsSettingsBuilder.html create mode 100644 docs/models/EasterEggsSettingsBuilder/badApple.html create mode 100644 docs/models/EasterEggsSettingsBuilder/enableClippy.html create mode 100644 docs/models/EasterEggsSettingsBuilder/isValid.html create mode 100644 docs/models/EasterEggsSettingsBuilder/segaIntro.html create mode 100644 docs/models/EasterEggsSettingsBuilder/segaSound.html create mode 100644 docs/models/EasterEggsSettingsBuilder/updateBadApple.html create mode 100644 docs/models/EasterEggsSettingsBuilder/updateClippy.html create mode 100644 docs/models/EasterEggsSettingsBuilder/updateSegaIntro.html create mode 100644 docs/models/EasterEggsSettingsBuilder/updateSegaSound.html create mode 100644 docs/models/EasterEggsSettingsBuilder/value.html create mode 100644 docs/models/ElectricalModel-class-sidebar.html create mode 100644 docs/models/ElectricalModel-class.html create mode 100644 docs/models/ElectricalModel/ElectricalModel.html create mode 100644 docs/models/ElectricalModel/axis.html create mode 100644 docs/models/ElectricalModel/changeDirection.html create mode 100644 docs/models/ElectricalModel/clear.html create mode 100644 docs/models/ElectricalModel/currentReadings.html create mode 100644 docs/models/ElectricalModel/dispose.html create mode 100644 docs/models/ElectricalModel/firstTimestamp.html create mode 100644 docs/models/ElectricalModel/leftSpeeds.html create mode 100644 docs/models/ElectricalModel/maxReadings-constant.html create mode 100644 docs/models/ElectricalModel/metrics.html create mode 100644 docs/models/ElectricalModel/rightSpeeds.html create mode 100644 docs/models/ElectricalModel/timer.html create mode 100644 docs/models/ElectricalModel/voltageReadings.html create mode 100644 docs/models/GpsBuilder-class-sidebar.html create mode 100644 docs/models/GpsBuilder-class.html create mode 100644 docs/models/GpsBuilder/GpsBuilder.html create mode 100644 docs/models/GpsBuilder/clear.html create mode 100644 docs/models/GpsBuilder/isValid.html create mode 100644 docs/models/GpsBuilder/latDecimal.html create mode 100644 docs/models/GpsBuilder/latDegrees.html create mode 100644 docs/models/GpsBuilder/latMinutes.html create mode 100644 docs/models/GpsBuilder/latSeconds.html create mode 100644 docs/models/GpsBuilder/longDecimal.html create mode 100644 docs/models/GpsBuilder/longDegrees.html create mode 100644 docs/models/GpsBuilder/longMinutes.html create mode 100644 docs/models/GpsBuilder/longSeconds.html create mode 100644 docs/models/GpsBuilder/otherBuilders.html create mode 100644 docs/models/GpsBuilder/type.html create mode 100644 docs/models/GpsBuilder/updateType.html create mode 100644 docs/models/GpsBuilder/value.html create mode 100644 docs/models/GpsType-enum-sidebar.html create mode 100644 docs/models/GpsType.html create mode 100644 docs/models/GpsType/hashCode.html create mode 100644 docs/models/GpsType/humanName.html create mode 100644 docs/models/GpsType/index.html create mode 100644 docs/models/GpsType/noSuchMethod.html create mode 100644 docs/models/GpsType/operator_equals.html create mode 100644 docs/models/GpsType/runtimeType.html create mode 100644 docs/models/GpsType/toString.html create mode 100644 docs/models/GpsType/values-constant.html create mode 100644 docs/models/GridOffset-class-sidebar.html create mode 100644 docs/models/GridOffset-class.html create mode 100644 docs/models/GridOffset/GridOffset.html create mode 100644 docs/models/GridOffset/hashCode.html create mode 100644 docs/models/GridOffset/noSuchMethod.html create mode 100644 docs/models/GridOffset/operator_equals.html create mode 100644 docs/models/GridOffset/runtimeType.html create mode 100644 docs/models/GridOffset/toString.html create mode 100644 docs/models/GridOffset/x.html create mode 100644 docs/models/GridOffset/y.html create mode 100644 docs/models/HomeModel-class-sidebar.html create mode 100644 docs/models/HomeModel-class.html create mode 100644 docs/models/HomeModel/HomeModel.html create mode 100644 docs/models/HomeModel/clear.html create mode 100644 docs/models/HomeModel/dispose.html create mode 100644 docs/models/HomeModel/init.html create mode 100644 docs/models/HomeModel/message.html create mode 100644 docs/models/HomeModel/mission.html create mode 100644 docs/models/HomeModel/setMessage.html create mode 100644 docs/models/HomeModel/version.html create mode 100644 docs/models/LogsModel-class-sidebar.html create mode 100644 docs/models/LogsModel-class.html create mode 100644 docs/models/LogsModel/LogsModel.html create mode 100644 docs/models/LogsModel/allLogs.html create mode 100644 docs/models/LogsModel/autonomyLogs.html create mode 100644 docs/models/LogsModel/clear.html create mode 100644 docs/models/LogsModel/handleLog.html create mode 100644 docs/models/LogsModel/init.html create mode 100644 docs/models/LogsModel/logsForDevice.html create mode 100644 docs/models/LogsModel/saveToFile.html create mode 100644 docs/models/LogsModel/saveToFileBuffer.html create mode 100644 docs/models/LogsModel/saveToFileInterval-constant.html create mode 100644 docs/models/LogsModel/saveToFileTimer.html create mode 100644 docs/models/LogsModel/stream.html create mode 100644 docs/models/LogsModel/subsystemLogs.html create mode 100644 docs/models/LogsModel/videoLogs.html create mode 100644 docs/models/LogsOptionsViewModel-class-sidebar.html create mode 100644 docs/models/LogsOptionsViewModel-class.html create mode 100644 docs/models/LogsOptionsViewModel/LogsOptionsViewModel.html create mode 100644 docs/models/LogsOptionsViewModel/autoscroll.html create mode 100644 docs/models/LogsOptionsViewModel/deviceFilter.html create mode 100644 docs/models/LogsOptionsViewModel/deviceSeverity.html create mode 100644 docs/models/LogsOptionsViewModel/getSeverity.html create mode 100644 docs/models/LogsOptionsViewModel/levelFilter.html create mode 100644 docs/models/LogsOptionsViewModel/onNewLog.html create mode 100644 docs/models/LogsOptionsViewModel/openSsh.html create mode 100644 docs/models/LogsOptionsViewModel/paused.html create mode 100644 docs/models/LogsOptionsViewModel/ping.html create mode 100644 docs/models/LogsOptionsViewModel/resetDevice.html create mode 100644 docs/models/LogsOptionsViewModel/setAutoscroll.html create mode 100644 docs/models/LogsOptionsViewModel/setDeviceFilter.html create mode 100644 docs/models/LogsOptionsViewModel/setLevelFilter.html create mode 100644 docs/models/LogsOptionsViewModel/togglePause.html create mode 100644 docs/models/LogsViewModel-class-sidebar.html create mode 100644 docs/models/LogsViewModel-class.html create mode 100644 docs/models/LogsViewModel/LogsViewModel.html create mode 100644 docs/models/LogsViewModel/dispose.html create mode 100644 docs/models/LogsViewModel/jumpToBottom.html create mode 100644 docs/models/LogsViewModel/logs.html create mode 100644 docs/models/LogsViewModel/onNewLog.html create mode 100644 docs/models/LogsViewModel/onScroll.html create mode 100644 docs/models/LogsViewModel/options.html create mode 100644 docs/models/LogsViewModel/scrollController.html create mode 100644 docs/models/MessagesModel-class-sidebar.html create mode 100644 docs/models/MessagesModel-class.html create mode 100644 docs/models/MessagesModel/MessagesModel.html create mode 100644 docs/models/MessagesModel/allowedFallthrough-constant.html create mode 100644 docs/models/MessagesModel/hashCode.html create mode 100644 docs/models/MessagesModel/noSuchMethod.html create mode 100644 docs/models/MessagesModel/onMessage.html create mode 100644 docs/models/MessagesModel/operator_equals.html create mode 100644 docs/models/MessagesModel/registerHandler.html create mode 100644 docs/models/MessagesModel/removeHandler.html create mode 100644 docs/models/MessagesModel/runtimeType.html create mode 100644 docs/models/MessagesModel/sendMessage.html create mode 100644 docs/models/MessagesModel/toString.html create mode 100644 docs/models/MissionTimer-class-sidebar.html create mode 100644 docs/models/MissionTimer-class.html create mode 100644 docs/models/MissionTimer/MissionTimer.html create mode 100644 docs/models/MissionTimer/cancel.html create mode 100644 docs/models/MissionTimer/isPaused.html create mode 100644 docs/models/MissionTimer/pause.html create mode 100644 docs/models/MissionTimer/resume.html create mode 100644 docs/models/MissionTimer/start.html create mode 100644 docs/models/MissionTimer/timeLeft.html create mode 100644 docs/models/MissionTimer/title.html create mode 100644 docs/models/MissionTimer/underMin.html create mode 100644 docs/models/Model-class-sidebar.html create mode 100644 docs/models/Model-class.html create mode 100644 docs/models/Model/Model.html create mode 100644 docs/models/Model/init.html create mode 100644 docs/models/Models-class-sidebar.html create mode 100644 docs/models/Models-class.html create mode 100644 docs/models/Models/Models.html create mode 100644 docs/models/Models/dispose.html create mode 100644 docs/models/Models/home.html create mode 100644 docs/models/Models/init.html create mode 100644 docs/models/Models/isReady.html create mode 100644 docs/models/Models/logs.html create mode 100644 docs/models/Models/messages.html create mode 100644 docs/models/Models/rover.html create mode 100644 docs/models/Models/serial.html create mode 100644 docs/models/Models/settings.html create mode 100644 docs/models/Models/sockets.html create mode 100644 docs/models/Models/video.html create mode 100644 docs/models/Models/views.html create mode 100644 docs/models/ModernDriveControls-class-sidebar.html create mode 100644 docs/models/ModernDriveControls-class.html create mode 100644 docs/models/ModernDriveControls/ModernDriveControls.html create mode 100644 docs/models/ModernDriveControls/buttonMapping.html create mode 100644 docs/models/ModernDriveControls/cameraSwivelIncrement-constant.html create mode 100644 docs/models/ModernDriveControls/cameraTiltIncrement-constant.html create mode 100644 docs/models/ModernDriveControls/frontSwivel.html create mode 100644 docs/models/ModernDriveControls/frontTilt.html create mode 100644 docs/models/ModernDriveControls/getCameraCommands.html create mode 100644 docs/models/ModernDriveControls/getWheelCommands.html create mode 100644 docs/models/ModernDriveControls/getWheelSpeeds.html create mode 100644 docs/models/ModernDriveControls/leftShoulderFlag.html create mode 100644 docs/models/ModernDriveControls/mode.html create mode 100644 docs/models/ModernDriveControls/onDispose.html create mode 100644 docs/models/ModernDriveControls/parseInputs.html create mode 100644 docs/models/ModernDriveControls/rearSwivel.html create mode 100644 docs/models/ModernDriveControls/rearTilt.html create mode 100644 docs/models/ModernDriveControls/rightShoulderFlag.html create mode 100644 docs/models/ModernDriveControls/throttle.html create mode 100644 docs/models/ModernDriveControls/updateCameras.html create mode 100644 docs/models/ModernDriveControls/updateState.html create mode 100644 docs/models/ModernDriveControls/updateThrottle.html create mode 100644 docs/models/NetworkSettingsBuilder-class-sidebar.html create mode 100644 docs/models/NetworkSettingsBuilder-class.html create mode 100644 docs/models/NetworkSettingsBuilder/NetworkSettingsBuilder.html create mode 100644 docs/models/NetworkSettingsBuilder/autonomySocket.html create mode 100644 docs/models/NetworkSettingsBuilder/connectionTimeout.html create mode 100644 docs/models/NetworkSettingsBuilder/dataSocket.html create mode 100644 docs/models/NetworkSettingsBuilder/isValid.html create mode 100644 docs/models/NetworkSettingsBuilder/otherBuilders.html create mode 100644 docs/models/NetworkSettingsBuilder/tankSocket.html create mode 100644 docs/models/NetworkSettingsBuilder/value.html create mode 100644 docs/models/NetworkSettingsBuilder/videoSocket.html create mode 100644 docs/models/NoControls-class-sidebar.html create mode 100644 docs/models/NoControls-class.html create mode 100644 docs/models/NoControls/NoControls.html create mode 100644 docs/models/NoControls/buttonMapping.html create mode 100644 docs/models/NoControls/mode.html create mode 100644 docs/models/NoControls/onDispose.html create mode 100644 docs/models/NoControls/parseInputs.html create mode 100644 docs/models/NumberBuilder-class-sidebar.html create mode 100644 docs/models/NumberBuilder-class.html create mode 100644 docs/models/NumberBuilder/NumberBuilder.html create mode 100644 docs/models/NumberBuilder/clear.html create mode 100644 docs/models/NumberBuilder/isInteger.html create mode 100644 docs/models/NumberBuilder/max.html create mode 100644 docs/models/NumberBuilder/min.html create mode 100644 docs/models/NumberBuilder/update.html create mode 100644 docs/models/PositionModel-class-sidebar.html create mode 100644 docs/models/PositionModel-class.html create mode 100644 docs/models/PositionModel/PositionModel.html create mode 100644 docs/models/PositionModel/dispose.html create mode 100644 docs/models/PositionModel/drive.html create mode 100644 docs/models/PositionModel/leftWheels.html create mode 100644 docs/models/PositionModel/position.html create mode 100644 docs/models/PositionModel/rightWheels.html create mode 100644 docs/models/PositionModel/throttle.html create mode 100644 docs/models/PositionModel/wheelColors.html create mode 100644 docs/models/PositionModel/wheelsRPM.html create mode 100644 docs/models/RequestNotAccepted-class-sidebar.html create mode 100644 docs/models/RequestNotAccepted-class.html create mode 100644 docs/models/RequestNotAccepted/RequestNotAccepted.html create mode 100644 docs/models/RequestNotAccepted/hashCode.html create mode 100644 docs/models/RequestNotAccepted/noSuchMethod.html create mode 100644 docs/models/RequestNotAccepted/operator_equals.html create mode 100644 docs/models/RequestNotAccepted/runtimeType.html create mode 100644 docs/models/RequestNotAccepted/toString.html create mode 100644 docs/models/Rover-class-sidebar.html create mode 100644 docs/models/Rover-class.html create mode 100644 docs/models/Rover/Rover.html create mode 100644 docs/models/Rover/controller1.html create mode 100644 docs/models/Rover/controller2.html create mode 100644 docs/models/Rover/controller3.html create mode 100644 docs/models/Rover/controllers.html create mode 100644 docs/models/Rover/dispose.html create mode 100644 docs/models/Rover/init.html create mode 100644 docs/models/Rover/isConnected.html create mode 100644 docs/models/Rover/metrics.html create mode 100644 docs/models/Rover/setDefaultControls.html create mode 100644 docs/models/Rover/settings.html create mode 100644 docs/models/Rover/status.html create mode 100644 docs/models/RoverControls-class-sidebar.html create mode 100644 docs/models/RoverControls-class.html create mode 100644 docs/models/RoverControls/RoverControls.forMode.html create mode 100644 docs/models/RoverControls/RoverControls.html create mode 100644 docs/models/RoverControls/buttonMapping.html create mode 100644 docs/models/RoverControls/hashCode.html create mode 100644 docs/models/RoverControls/mode.html create mode 100644 docs/models/RoverControls/noSuchMethod.html create mode 100644 docs/models/RoverControls/onDispose.html create mode 100644 docs/models/RoverControls/operator_equals.html create mode 100644 docs/models/RoverControls/parseInputs.html create mode 100644 docs/models/RoverControls/runtimeType.html create mode 100644 docs/models/RoverControls/toString.html create mode 100644 docs/models/RoverControls/updateState.html create mode 100644 docs/models/RoverMetrics-class-sidebar.html create mode 100644 docs/models/RoverMetrics-class.html create mode 100644 docs/models/RoverMetrics/RoverMetrics.html create mode 100644 docs/models/RoverMetrics/allMetrics.html create mode 100644 docs/models/RoverMetrics/arm.html create mode 100644 docs/models/RoverMetrics/drive.html create mode 100644 docs/models/RoverMetrics/gripper.html create mode 100644 docs/models/RoverMetrics/init.html create mode 100644 docs/models/RoverMetrics/isSupportedVersion.html create mode 100644 docs/models/RoverMetrics/metricsByCommandName.html create mode 100644 docs/models/RoverMetrics/position.html create mode 100644 docs/models/RoverMetrics/science.html create mode 100644 docs/models/RoverMetrics/vitals.html create mode 100644 docs/models/ScienceAnalysis-class-sidebar.html create mode 100644 docs/models/ScienceAnalysis-class.html create mode 100644 docs/models/ScienceAnalysis/ScienceAnalysis.html create mode 100644 docs/models/ScienceAnalysis/addReading.html create mode 100644 docs/models/ScienceAnalysis/clear.html create mode 100644 docs/models/ScienceAnalysis/data.html create mode 100644 docs/models/ScienceAnalysis/hashCode.html create mode 100644 docs/models/ScienceAnalysis/noSuchMethod.html create mode 100644 docs/models/ScienceAnalysis/operator_equals.html create mode 100644 docs/models/ScienceAnalysis/runtimeType.html create mode 100644 docs/models/ScienceAnalysis/sensor.html create mode 100644 docs/models/ScienceAnalysis/testBuilder.html create mode 100644 docs/models/ScienceAnalysis/testResult.html create mode 100644 docs/models/ScienceAnalysis/toString.html create mode 100644 docs/models/ScienceCommandBuilder-class-sidebar.html create mode 100644 docs/models/ScienceCommandBuilder-class.html create mode 100644 docs/models/ScienceCommandBuilder/ScienceCommandBuilder.html create mode 100644 docs/models/ScienceCommandBuilder/isValid.html create mode 100644 docs/models/ScienceCommandBuilder/otherBuilders.html create mode 100644 docs/models/ScienceCommandBuilder/sample.html create mode 100644 docs/models/ScienceCommandBuilder/send.html create mode 100644 docs/models/ScienceCommandBuilder/state.html create mode 100644 docs/models/ScienceCommandBuilder/updateState.html create mode 100644 docs/models/ScienceCommandBuilder/value.html create mode 100644 docs/models/ScienceControls-class-sidebar.html create mode 100644 docs/models/ScienceControls-class.html create mode 100644 docs/models/ScienceControls/ScienceControls.html create mode 100644 docs/models/ScienceControls/bumperFlag.html create mode 100644 docs/models/ScienceControls/buttonMapping.html create mode 100644 docs/models/ScienceControls/carouselIncrement.html create mode 100644 docs/models/ScienceControls/leftBumper.html create mode 100644 docs/models/ScienceControls/mode.html create mode 100644 docs/models/ScienceControls/onDispose.html create mode 100644 docs/models/ScienceControls/parseInputs.html create mode 100644 docs/models/ScienceControls/rightBumper.html create mode 100644 docs/models/ScienceControls/scoopIncrement.html create mode 100644 docs/models/ScienceControls/subsurfaceIncrement.html create mode 100644 docs/models/ScienceControls/tubeMode.html create mode 100644 docs/models/ScienceControls/updateState.html create mode 100644 docs/models/ScienceModel-class-sidebar.html create mode 100644 docs/models/ScienceModel-class.html create mode 100644 docs/models/ScienceModel/ScienceModel.html create mode 100644 docs/models/ScienceModel/addMessage.html create mode 100644 docs/models/ScienceModel/addReading.html create mode 100644 docs/models/ScienceModel/allSamples.html create mode 100644 docs/models/ScienceModel/analysesForSample.html create mode 100644 docs/models/ScienceModel/clear.html create mode 100644 docs/models/ScienceModel/dispose.html create mode 100644 docs/models/ScienceModel/errorText.html create mode 100644 docs/models/ScienceModel/isListening.html create mode 100644 docs/models/ScienceModel/isLoading.html create mode 100644 docs/models/ScienceModel/loadFile.html create mode 100644 docs/models/ScienceModel/metrics.html create mode 100644 docs/models/ScienceModel/numSamples.html create mode 100644 docs/models/ScienceModel/sample.html create mode 100644 docs/models/ScienceModel/updateData.html create mode 100644 docs/models/ScienceModel/updateSample.html create mode 100644 docs/models/ScienceSettingsBuilder-class-sidebar.html create mode 100644 docs/models/ScienceSettingsBuilder-class.html create mode 100644 docs/models/ScienceSettingsBuilder/ScienceSettingsBuilder.html create mode 100644 docs/models/ScienceSettingsBuilder/isValid.html create mode 100644 docs/models/ScienceSettingsBuilder/numSamples.html create mode 100644 docs/models/ScienceSettingsBuilder/scrollableGraphs.html create mode 100644 docs/models/ScienceSettingsBuilder/updateScrollableGraphs.html create mode 100644 docs/models/ScienceSettingsBuilder/value.html create mode 100644 docs/models/ScienceTestBuilder-class-sidebar.html create mode 100644 docs/models/ScienceTestBuilder-class.html create mode 100644 docs/models/ScienceTestBuilder/ScienceTestBuilder.html create mode 100644 docs/models/ScienceTestBuilder/average.html create mode 100644 docs/models/ScienceTestBuilder/dispose.html create mode 100644 docs/models/ScienceTestBuilder/max.html create mode 100644 docs/models/ScienceTestBuilder/min.html create mode 100644 docs/models/ScienceTestBuilder/update.html create mode 100644 docs/models/SerialModel-class-sidebar.html create mode 100644 docs/models/SerialModel-class.html create mode 100644 docs/models/SerialModel/SerialModel.html create mode 100644 docs/models/SerialModel/connect.html create mode 100644 docs/models/SerialModel/devices.html create mode 100644 docs/models/SerialModel/disconnect.html create mode 100644 docs/models/SerialModel/hasDevice.html create mode 100644 docs/models/SerialModel/init.html create mode 100644 docs/models/SerialModel/isConnected.html create mode 100644 docs/models/SerialModel/sendMessage.html create mode 100644 docs/models/SerialModel/toggle.html create mode 100644 docs/models/SettingsBuilder-class-sidebar.html create mode 100644 docs/models/SettingsBuilder-class.html create mode 100644 docs/models/SettingsBuilder/SettingsBuilder.html create mode 100644 docs/models/SettingsBuilder/arm.html create mode 100644 docs/models/SettingsBuilder/dashboard.html create mode 100644 docs/models/SettingsBuilder/easterEggs.html create mode 100644 docs/models/SettingsBuilder/isLoading.html create mode 100644 docs/models/SettingsBuilder/isValid.html create mode 100644 docs/models/SettingsBuilder/network.html create mode 100644 docs/models/SettingsBuilder/save.html create mode 100644 docs/models/SettingsBuilder/science.html create mode 100644 docs/models/SettingsBuilder/value.html create mode 100644 docs/models/SettingsModel-class-sidebar.html create mode 100644 docs/models/SettingsModel-class.html create mode 100644 docs/models/SettingsModel/SettingsModel.html create mode 100644 docs/models/SettingsModel/all.html create mode 100644 docs/models/SettingsModel/arm.html create mode 100644 docs/models/SettingsModel/dashboard.html create mode 100644 docs/models/SettingsModel/easterEggs.html create mode 100644 docs/models/SettingsModel/init.html create mode 100644 docs/models/SettingsModel/network.html create mode 100644 docs/models/SettingsModel/science.html create mode 100644 docs/models/SettingsModel/update.html create mode 100644 docs/models/SocketBuilder-class-sidebar.html create mode 100644 docs/models/SocketBuilder-class.html create mode 100644 docs/models/SocketBuilder/SocketBuilder.html create mode 100644 docs/models/SocketBuilder/address.html create mode 100644 docs/models/SocketBuilder/isValid.html create mode 100644 docs/models/SocketBuilder/port.html create mode 100644 docs/models/SocketBuilder/value.html create mode 100644 docs/models/Sockets-class-sidebar.html create mode 100644 docs/models/Sockets-class.html create mode 100644 docs/models/Sockets/Sockets.html create mode 100644 docs/models/Sockets/addressOverride.html create mode 100644 docs/models/Sockets/autonomy.html create mode 100644 docs/models/Sockets/connectionSummary.html create mode 100644 docs/models/Sockets/data.html create mode 100644 docs/models/Sockets/dispose.html create mode 100644 docs/models/Sockets/init.html create mode 100644 docs/models/Sockets/onConnect.html create mode 100644 docs/models/Sockets/onDisconnect.html create mode 100644 docs/models/Sockets/reset.html create mode 100644 docs/models/Sockets/rover.html create mode 100644 docs/models/Sockets/setRover.html create mode 100644 docs/models/Sockets/socketForDevice.html create mode 100644 docs/models/Sockets/sockets.html create mode 100644 docs/models/Sockets/updateSockets.html create mode 100644 docs/models/Sockets/video.html create mode 100644 docs/models/TextBuilder-class-sidebar.html create mode 100644 docs/models/TextBuilder-class.html create mode 100644 docs/models/TextBuilder/TextBuilder.html create mode 100644 docs/models/TextBuilder/controller.html create mode 100644 docs/models/TextBuilder/error.html create mode 100644 docs/models/TextBuilder/isValid.html create mode 100644 docs/models/TextBuilder/update.html create mode 100644 docs/models/TextBuilder/value.html create mode 100644 docs/models/ThrottleBuilder-class-sidebar.html create mode 100644 docs/models/ThrottleBuilder-class.html create mode 100644 docs/models/ThrottleBuilder/ThrottleBuilder.html create mode 100644 docs/models/ThrottleBuilder/controller.html create mode 100644 docs/models/ThrottleBuilder/errorText.html create mode 100644 docs/models/ThrottleBuilder/isLoading.html create mode 100644 docs/models/ThrottleBuilder/isValid.html create mode 100644 docs/models/ThrottleBuilder/save.html create mode 100644 docs/models/TimerBuilder-class-sidebar.html create mode 100644 docs/models/TimerBuilder-class.html create mode 100644 docs/models/TimerBuilder/TimerBuilder.html create mode 100644 docs/models/TimerBuilder/duration.html create mode 100644 docs/models/TimerBuilder/isValid.html create mode 100644 docs/models/TimerBuilder/nameController.html create mode 100644 docs/models/TimerBuilder/otherBuilders.html create mode 100644 docs/models/TimerBuilder/start.html create mode 100644 docs/models/TimerBuilder/update.html create mode 100644 docs/models/TimerBuilder/value.html create mode 100644 docs/models/ValueBuilder-class-sidebar.html create mode 100644 docs/models/ValueBuilder-class.html create mode 100644 docs/models/ValueBuilder/ValueBuilder.html create mode 100644 docs/models/ValueBuilder/dispose.html create mode 100644 docs/models/ValueBuilder/isValid.html create mode 100644 docs/models/ValueBuilder/otherBuilders.html create mode 100644 docs/models/ValueBuilder/value.html create mode 100644 docs/models/VideoModel-class-sidebar.html create mode 100644 docs/models/VideoModel-class.html create mode 100644 docs/models/VideoModel/VideoModel.html create mode 100644 docs/models/VideoModel/dispose.html create mode 100644 docs/models/VideoModel/feeds.html create mode 100644 docs/models/VideoModel/fpsTimer.html create mode 100644 docs/models/VideoModel/frameUpdater.html create mode 100644 docs/models/VideoModel/framesThisSecond.html create mode 100644 docs/models/VideoModel/handleData.html create mode 100644 docs/models/VideoModel/init.html create mode 100644 docs/models/VideoModel/networkFps.html create mode 100644 docs/models/VideoModel/reset.html create mode 100644 docs/models/VideoModel/resetNetworkFps.html create mode 100644 docs/models/VideoModel/saveFrame.html create mode 100644 docs/models/VideoModel/toggleCamera.html create mode 100644 docs/models/VideoModel/updateCamera.html create mode 100644 docs/models/ViewsModel-class-sidebar.html create mode 100644 docs/models/ViewsModel-class.html create mode 100644 docs/models/ViewsModel/ViewsModel.html create mode 100644 docs/models/ViewsModel/dispose.html create mode 100644 docs/models/ViewsModel/horizontalController1.html create mode 100644 docs/models/ViewsModel/horizontalController2.html create mode 100644 docs/models/ViewsModel/horizontalController3.html create mode 100644 docs/models/ViewsModel/horizontalController4.html create mode 100644 docs/models/ViewsModel/init.html create mode 100644 docs/models/ViewsModel/replaceView.html create mode 100644 docs/models/ViewsModel/resetSizes.html create mode 100644 docs/models/ViewsModel/setNumViews.html create mode 100644 docs/models/ViewsModel/verticalController.html create mode 100644 docs/models/ViewsModel/verticalController2.html create mode 100644 docs/models/ViewsModel/views.html create mode 100644 docs/models/gamepadDelay-constant.html create mode 100644 docs/models/maxLogCount-constant.html create mode 100644 docs/models/models-library-sidebar.html create mode 100644 docs/models/models-library.html create mode 100644 docs/models/models.html create mode 100644 docs/pages/ArmPage-class-sidebar.html create mode 100644 docs/pages/ArmPage-class.html create mode 100644 docs/pages/ArmPage/ArmPage.html create mode 100644 docs/pages/ArmPage/build.html create mode 100644 docs/pages/ArmPage/createModel.html create mode 100644 docs/pages/ArmPage/index.html create mode 100644 docs/pages/ArmPainterSide-class-sidebar.html create mode 100644 docs/pages/ArmPainterSide-class.html create mode 100644 docs/pages/ArmPainterSide/ArmPainterSide.html create mode 100644 docs/pages/ArmPainterSide/elbowLength-constant.html create mode 100644 docs/pages/ArmPainterSide/getArmCoordinates.html create mode 100644 docs/pages/ArmPainterSide/getRelativeOffset.html create mode 100644 docs/pages/ArmPainterSide/gripperLength-constant.html create mode 100644 docs/pages/ArmPainterSide/ik.html create mode 100644 docs/pages/ArmPainterSide/model.html create mode 100644 docs/pages/ArmPainterSide/paint.html create mode 100644 docs/pages/ArmPainterSide/paintArm.html create mode 100644 docs/pages/ArmPainterSide/radiusColor.html create mode 100644 docs/pages/ArmPainterSide/screen.html create mode 100644 docs/pages/ArmPainterSide/shouldRepaint.html create mode 100644 docs/pages/ArmPainterSide/shoulderLength-constant.html create mode 100644 docs/pages/ArmPainterSide/toAbsolute.html create mode 100644 docs/pages/ArmPainterSide/totalArmLength-constant.html create mode 100644 docs/pages/ArmPainterTop-class-sidebar.html create mode 100644 docs/pages/ArmPainterTop-class.html create mode 100644 docs/pages/ArmPainterTop/ArmPainterTop.html create mode 100644 docs/pages/ArmPainterTop/getElbow.html create mode 100644 docs/pages/ArmPainterTop/getShoulder.html create mode 100644 docs/pages/ArmPainterTop/paint.html create mode 100644 docs/pages/ArmPainterTop/screen.html create mode 100644 docs/pages/ArmPainterTop/shouldRepaint.html create mode 100644 docs/pages/ArmPainterTop/swivelAngle.html create mode 100644 docs/pages/ArmPainterTop/toAbsolute.html create mode 100644 docs/pages/ChartsRow-class-sidebar.html create mode 100644 docs/pages/ChartsRow-class.html create mode 100644 docs/pages/ChartsRow/ChartsRow.html create mode 100644 docs/pages/ChartsRow/analyses.html create mode 100644 docs/pages/ChartsRow/build.html create mode 100644 docs/pages/ChartsRow/builder.html create mode 100644 docs/pages/ChartsRow/height.html create mode 100644 docs/pages/ChartsRow/title.html create mode 100644 docs/pages/DashboardView-class-sidebar.html create mode 100644 docs/pages/DashboardView-class.html create mode 100644 docs/pages/DashboardView/DashboardView.html create mode 100644 docs/pages/DashboardView/blank.html create mode 100644 docs/pages/DashboardView/builder.html create mode 100644 docs/pages/DashboardView/cameraViews.html create mode 100644 docs/pages/DashboardView/flutterKey.html create mode 100644 docs/pages/DashboardView/getCameraStatus.html create mode 100644 docs/pages/DashboardView/hashCode.html create mode 100644 docs/pages/DashboardView/icon.html create mode 100644 docs/pages/DashboardView/iconFunc.html create mode 100644 docs/pages/DashboardView/key.html create mode 100644 docs/pages/DashboardView/name.html create mode 100644 docs/pages/DashboardView/noSuchMethod.html create mode 100644 docs/pages/DashboardView/operator_equals.html create mode 100644 docs/pages/DashboardView/runtimeType.html create mode 100644 docs/pages/DashboardView/toString.html create mode 100644 docs/pages/DashboardView/uiViews.html create mode 100644 docs/pages/DesktopScrollBehavior-class-sidebar.html create mode 100644 docs/pages/DesktopScrollBehavior-class.html create mode 100644 docs/pages/DesktopScrollBehavior/DesktopScrollBehavior.html create mode 100644 docs/pages/DesktopScrollBehavior/dragDevices.html create mode 100644 docs/pages/DrivePage-class-sidebar.html create mode 100644 docs/pages/DrivePage-class.html create mode 100644 docs/pages/DrivePage/DrivePage.html create mode 100644 docs/pages/DrivePage/build.html create mode 100644 docs/pages/DrivePage/createModel.html create mode 100644 docs/pages/DrivePage/index.html create mode 100644 docs/pages/ElectricalPage-class-sidebar.html create mode 100644 docs/pages/ElectricalPage-class.html create mode 100644 docs/pages/ElectricalPage/ElectricalPage.html create mode 100644 docs/pages/ElectricalPage/build.html create mode 100644 docs/pages/ElectricalPage/createModel.html create mode 100644 docs/pages/ElectricalPage/index.html create mode 100644 docs/pages/HomePage-class-sidebar.html create mode 100644 docs/pages/HomePage-class.html create mode 100644 docs/pages/HomePage/HomePage.html create mode 100644 docs/pages/HomePage/createState.html create mode 100644 docs/pages/HomePageState-class-sidebar.html create mode 100644 docs/pages/HomePageState-class.html create mode 100644 docs/pages/HomePageState/HomePageState.html create mode 100644 docs/pages/HomePageState/build.html create mode 100644 docs/pages/HomePageState/showSidebar.html create mode 100644 docs/pages/LogWidget-class-sidebar.html create mode 100644 docs/pages/LogWidget-class.html create mode 100644 docs/pages/LogWidget/LogWidget.html create mode 100644 docs/pages/LogWidget/build.html create mode 100644 docs/pages/LogWidget/icon.html create mode 100644 docs/pages/LogWidget/log.html create mode 100644 docs/pages/LogsBody-class-sidebar.html create mode 100644 docs/pages/LogsBody-class.html create mode 100644 docs/pages/LogsBody/LogsBody.html create mode 100644 docs/pages/LogsBody/build.html create mode 100644 docs/pages/LogsOptions-class-sidebar.html create mode 100644 docs/pages/LogsOptions-class.html create mode 100644 docs/pages/LogsOptions/LogsOptions.html create mode 100644 docs/pages/LogsOptions/build.html create mode 100644 docs/pages/LogsOptions/getStatusColor.html create mode 100644 docs/pages/LogsOptions/sshButton.html create mode 100644 docs/pages/LogsPage-class-sidebar.html create mode 100644 docs/pages/LogsPage-class.html create mode 100644 docs/pages/LogsPage/LogsPage.html create mode 100644 docs/pages/LogsPage/createState.html create mode 100644 docs/pages/LogsState-class-sidebar.html create mode 100644 docs/pages/LogsState-class.html create mode 100644 docs/pages/LogsState/LogsState.html create mode 100644 docs/pages/LogsState/build.html create mode 100644 docs/pages/LogsState/model.html create mode 100644 docs/pages/MapPage-class-sidebar.html create mode 100644 docs/pages/MapPage-class.html create mode 100644 docs/pages/MapPage/MapPage.html create mode 100644 docs/pages/MapPage/build.html create mode 100644 docs/pages/MapPage/createModel.html create mode 100644 docs/pages/MapPage/getColor.html create mode 100644 docs/pages/MapPage/index.html create mode 100644 docs/pages/MapPage/placeMarker.html create mode 100644 docs/pages/ResultsBox-class-sidebar.html create mode 100644 docs/pages/ResultsBox-class.html create mode 100644 docs/pages/ResultsBox/ResultsBox.html create mode 100644 docs/pages/ResultsBox/analysis.html create mode 100644 docs/pages/ResultsBox/build.html create mode 100644 docs/pages/ResultsBox/color.html create mode 100644 docs/pages/ResultsBox/text.html create mode 100644 docs/pages/Rock-class-sidebar.html create mode 100644 docs/pages/Rock-class.html create mode 100644 docs/pages/Rock/Rock.html create mode 100644 docs/pages/Rock/description.html create mode 100644 docs/pages/Rock/hashCode.html create mode 100644 docs/pages/Rock/image.html create mode 100644 docs/pages/Rock/name.html create mode 100644 docs/pages/Rock/noSuchMethod.html create mode 100644 docs/pages/Rock/operator_equals.html create mode 100644 docs/pages/Rock/runtimeType.html create mode 100644 docs/pages/Rock/toString.html create mode 100644 docs/pages/RockModel-class-sidebar.html create mode 100644 docs/pages/RockModel-class.html create mode 100644 docs/pages/RockModel/RockModel.html create mode 100644 docs/pages/RockModel/controller.html create mode 100644 docs/pages/RockModel/filter.html create mode 100644 docs/pages/RockModel/filteredRocks.html create mode 100644 docs/pages/RockModel/query.html create mode 100644 docs/pages/RockModel/rocks.html create mode 100644 docs/pages/RockModel/search.html create mode 100644 docs/pages/RockWidget-class-sidebar.html create mode 100644 docs/pages/RockWidget-class.html create mode 100644 docs/pages/RockWidget/RockWidget.html create mode 100644 docs/pages/RockWidget/build.html create mode 100644 docs/pages/RockWidget/rock.html create mode 100644 docs/pages/RocksPage-class-sidebar.html create mode 100644 docs/pages/RocksPage-class.html create mode 100644 docs/pages/RocksPage/RocksPage.html create mode 100644 docs/pages/RocksPage/build.html create mode 100644 docs/pages/RocksPage/createModel.html create mode 100644 docs/pages/RocksPage/index.html create mode 100644 docs/pages/Routes-class-sidebar.html create mode 100644 docs/pages/Routes-class.html create mode 100644 docs/pages/Routes/Routes.html create mode 100644 docs/pages/Routes/arm-constant.html create mode 100644 docs/pages/Routes/autonomy-constant.html create mode 100644 docs/pages/Routes/blank-constant.html create mode 100644 docs/pages/Routes/drive-constant.html create mode 100644 docs/pages/Routes/electrical-constant.html create mode 100644 docs/pages/Routes/hashCode.html create mode 100644 docs/pages/Routes/home-constant.html create mode 100644 docs/pages/Routes/logs-constant.html create mode 100644 docs/pages/Routes/noSuchMethod.html create mode 100644 docs/pages/Routes/operator_equals.html create mode 100644 docs/pages/Routes/rocks-constant.html create mode 100644 docs/pages/Routes/runtimeType.html create mode 100644 docs/pages/Routes/science-constant.html create mode 100644 docs/pages/Routes/settings-constant.html create mode 100644 docs/pages/Routes/toString.html create mode 100644 docs/pages/SciencePage-class-sidebar.html create mode 100644 docs/pages/SciencePage-class.html create mode 100644 docs/pages/SciencePage/SciencePage.html create mode 100644 docs/pages/SciencePage/build.html create mode 100644 docs/pages/SciencePage/createModel.html create mode 100644 docs/pages/SciencePage/getBarChartData.html create mode 100644 docs/pages/SciencePage/getColor.html create mode 100644 docs/pages/SciencePage/getDetailsData.html create mode 100644 docs/pages/SciencePage/index.html create mode 100644 docs/pages/SciencePage/purple.html create mode 100644 docs/pages/SciencePage/red.html create mode 100644 docs/pages/ScrollingRow-class-sidebar.html create mode 100644 docs/pages/ScrollingRow-class.html create mode 100644 docs/pages/ScrollingRow/ScrollingRow.html create mode 100644 docs/pages/ScrollingRow/build.html create mode 100644 docs/pages/ScrollingRow/children.html create mode 100644 docs/pages/ScrollingRow/height.html create mode 100644 docs/pages/SegaState-enum-sidebar.html create mode 100644 docs/pages/SegaState.html create mode 100644 docs/pages/SegaState/hashCode.html create mode 100644 docs/pages/SegaState/index.html create mode 100644 docs/pages/SegaState/noSuchMethod.html create mode 100644 docs/pages/SegaState/operator_equals.html create mode 100644 docs/pages/SegaState/runtimeType.html create mode 100644 docs/pages/SegaState/toString.html create mode 100644 docs/pages/SegaState/values-constant.html create mode 100644 docs/pages/SettingsPage-class-sidebar.html create mode 100644 docs/pages/SettingsPage-class.html create mode 100644 docs/pages/SettingsPage/SettingsPage.html create mode 100644 docs/pages/SettingsPage/build.html create mode 100644 docs/pages/SettingsPage/createModel.html create mode 100644 docs/pages/SocketSwitcher-class-sidebar.html create mode 100644 docs/pages/SocketSwitcher-class.html create mode 100644 docs/pages/SocketSwitcher/SocketSwitcher.html create mode 100644 docs/pages/SocketSwitcher/build.html create mode 100644 docs/pages/SplashPage-class-sidebar.html create mode 100644 docs/pages/SplashPage-class.html create mode 100644 docs/pages/SplashPage/SplashPage.html create mode 100644 docs/pages/SplashPage/createState.html create mode 100644 docs/pages/SplashPageState-class-sidebar.html create mode 100644 docs/pages/SplashPageState-class.html create mode 100644 docs/pages/SplashPageState/SplashPageState.html create mode 100644 docs/pages/SplashPageState/audioPlayer.html create mode 100644 docs/pages/SplashPageState/build.html create mode 100644 docs/pages/SplashPageState/current.html create mode 100644 docs/pages/SplashPageState/dispose.html create mode 100644 docs/pages/SplashPageState/errorText.html create mode 100644 docs/pages/SplashPageState/init.html create mode 100644 docs/pages/SplashPageState/initAnimation.html create mode 100644 docs/pages/SplashPageState/initState.html create mode 100644 docs/pages/SplashPageState/state.html create mode 100644 docs/pages/ValueEditor-class-sidebar.html create mode 100644 docs/pages/ValueEditor-class.html create mode 100644 docs/pages/ValueEditor/ValueEditor.html create mode 100644 docs/pages/ValueEditor/build.html create mode 100644 docs/pages/ValueEditor/children.html create mode 100644 docs/pages/ValueEditor/name.html create mode 100644 docs/pages/ViewBuilder.html create mode 100644 docs/pages/criticalWidget.html create mode 100644 docs/pages/debugWidget-constant.html create mode 100644 docs/pages/errorWidget-constant.html create mode 100644 docs/pages/getTitles.html create mode 100644 docs/pages/infoWidget.html create mode 100644 docs/pages/pages-library-sidebar.html create mode 100644 docs/pages/pages-library.html create mode 100644 docs/pages/traceWidget-constant.html create mode 100644 docs/pages/warningWidget-constant.html create mode 100644 docs/search.html create mode 100644 docs/services/DashboardSocket-class-sidebar.html create mode 100644 docs/services/DashboardSocket-class.html create mode 100644 docs/services/DashboardSocket/DashboardSocket.html create mode 100644 docs/services/DashboardSocket/checkHeartbeats.html create mode 100644 docs/services/DashboardSocket/connectionIncrement.html create mode 100644 docs/services/DashboardSocket/connectionStrength.html create mode 100644 docs/services/DashboardSocket/destination.html create mode 100644 docs/services/DashboardSocket/device.html create mode 100644 docs/services/DashboardSocket/dispose.html create mode 100644 docs/services/DashboardSocket/frequency.html create mode 100644 docs/services/DashboardSocket/hashCode.html create mode 100644 docs/services/DashboardSocket/heartbeatInterval.html create mode 100644 docs/services/DashboardSocket/heartbeatTimer.html create mode 100644 docs/services/DashboardSocket/heartbeatWaitDelay.html create mode 100644 docs/services/DashboardSocket/init.html create mode 100644 docs/services/DashboardSocket/isConnected.html create mode 100644 docs/services/DashboardSocket/logger.html create mode 100644 docs/services/DashboardSocket/messageHandler.html create mode 100644 docs/services/DashboardSocket/noSuchMethod.html create mode 100644 docs/services/DashboardSocket/onConnect.html create mode 100644 docs/services/DashboardSocket/onData.html create mode 100644 docs/services/DashboardSocket/onDisconnect.html create mode 100644 docs/services/DashboardSocket/onHeartbeat.html create mode 100644 docs/services/DashboardSocket/onMessage.html create mode 100644 docs/services/DashboardSocket/onWrapper.html create mode 100644 docs/services/DashboardSocket/operator_equals.html create mode 100644 docs/services/DashboardSocket/port.html create mode 100644 docs/services/DashboardSocket/quiet.html create mode 100644 docs/services/DashboardSocket/runtimeType.html create mode 100644 docs/services/DashboardSocket/sendData.html create mode 100644 docs/services/DashboardSocket/sendMessage.html create mode 100644 docs/services/DashboardSocket/sendWrapper.html create mode 100644 docs/services/DashboardSocket/toString.html create mode 100644 docs/services/DeviceNotConnected-class-sidebar.html create mode 100644 docs/services/DeviceNotConnected-class.html create mode 100644 docs/services/DeviceNotConnected/DeviceNotConnected.html create mode 100644 docs/services/DeviceNotConnected/toString.html create mode 100644 docs/services/FilesService-class-sidebar.html create mode 100644 docs/services/FilesService-class.html create mode 100644 docs/services/FilesService/FilesService.html create mode 100644 docs/services/FilesService/batchedLogs.html create mode 100644 docs/services/FilesService/dataLogger.html create mode 100644 docs/services/FilesService/dispose.html create mode 100644 docs/services/FilesService/hashCode.html create mode 100644 docs/services/FilesService/init.html create mode 100644 docs/services/FilesService/jsonEncoder.html create mode 100644 docs/services/FilesService/logAllData.html create mode 100644 docs/services/FilesService/logData.html create mode 100644 docs/services/FilesService/logError.html create mode 100644 docs/services/FilesService/logMessage.html create mode 100644 docs/services/FilesService/loggingDir.html create mode 100644 docs/services/FilesService/noSuchMethod.html create mode 100644 docs/services/FilesService/operator_equals.html create mode 100644 docs/services/FilesService/outputDir.html create mode 100644 docs/services/FilesService/readLogs.html create mode 100644 docs/services/FilesService/readSettings.html create mode 100644 docs/services/FilesService/runtimeType.html create mode 100644 docs/services/FilesService/screenshotsDir.html create mode 100644 docs/services/FilesService/settingsFile.html create mode 100644 docs/services/FilesService/toString.html create mode 100644 docs/services/FilesService/writeImage.html create mode 100644 docs/services/FilesService/writeSettings.html create mode 100644 docs/services/Gamepad-class-sidebar.html create mode 100644 docs/services/Gamepad-class.html create mode 100644 docs/services/Gamepad/Gamepad.forPlatform.html create mode 100644 docs/services/Gamepad/Gamepad.html create mode 100644 docs/services/Gamepad/batteryLevel.html create mode 100644 docs/services/Gamepad/controllerIndex.html create mode 100644 docs/services/Gamepad/dispose.html create mode 100644 docs/services/Gamepad/getState.html create mode 100644 docs/services/Gamepad/hashCode.html create mode 100644 docs/services/Gamepad/init.html create mode 100644 docs/services/Gamepad/isConnected.html create mode 100644 docs/services/Gamepad/noSuchMethod.html create mode 100644 docs/services/Gamepad/operator_equals.html create mode 100644 docs/services/Gamepad/pulse.html create mode 100644 docs/services/Gamepad/runtimeType.html create mode 100644 docs/services/Gamepad/stopVibrating.html create mode 100644 docs/services/Gamepad/toString.html create mode 100644 docs/services/Gamepad/vibrate.html create mode 100644 docs/services/GamepadBatteryLevel-enum-sidebar.html create mode 100644 docs/services/GamepadBatteryLevel.html create mode 100644 docs/services/GamepadBatteryLevel/fromPercent.html create mode 100644 docs/services/GamepadBatteryLevel/hashCode.html create mode 100644 docs/services/GamepadBatteryLevel/index.html create mode 100644 docs/services/GamepadBatteryLevel/noSuchMethod.html create mode 100644 docs/services/GamepadBatteryLevel/operator_equals.html create mode 100644 docs/services/GamepadBatteryLevel/runtimeType.html create mode 100644 docs/services/GamepadBatteryLevel/toString.html create mode 100644 docs/services/GamepadBatteryLevel/values-constant.html create mode 100644 docs/services/GamepadService-class-sidebar.html create mode 100644 docs/services/GamepadService-class.html create mode 100644 docs/services/GamepadService/GamepadService.html create mode 100644 docs/services/GamepadService/connect.html create mode 100644 docs/services/GamepadService/dispose.html create mode 100644 docs/services/GamepadService/gamepads.html create mode 100644 docs/services/GamepadService/hashCode.html create mode 100644 docs/services/GamepadService/init.html create mode 100644 docs/services/GamepadService/maxGamepads-constant.html create mode 100644 docs/services/GamepadService/noSuchMethod.html create mode 100644 docs/services/GamepadService/operator_equals.html create mode 100644 docs/services/GamepadService/osIndexes.html create mode 100644 docs/services/GamepadService/runtimeType.html create mode 100644 docs/services/GamepadService/toString.html create mode 100644 docs/services/GamepadState-class-sidebar.html create mode 100644 docs/services/GamepadState-class.html create mode 100644 docs/services/GamepadState/GamepadState.html create mode 100644 docs/services/GamepadState/buttonA.html create mode 100644 docs/services/GamepadState/buttonB.html create mode 100644 docs/services/GamepadState/buttonBack.html create mode 100644 docs/services/GamepadState/buttonStart.html create mode 100644 docs/services/GamepadState/buttonX.html create mode 100644 docs/services/GamepadState/buttonY.html create mode 100644 docs/services/GamepadState/dpadDown.html create mode 100644 docs/services/GamepadState/dpadUp.html create mode 100644 docs/services/GamepadState/hashCode.html create mode 100644 docs/services/GamepadState/leftShoulder.html create mode 100644 docs/services/GamepadState/noSuchMethod.html create mode 100644 docs/services/GamepadState/normalDpadX.html create mode 100644 docs/services/GamepadState/normalDpadY.html create mode 100644 docs/services/GamepadState/normalLeftX.html create mode 100644 docs/services/GamepadState/normalLeftY.html create mode 100644 docs/services/GamepadState/normalRightX.html create mode 100644 docs/services/GamepadState/normalRightY.html create mode 100644 docs/services/GamepadState/normalShoulder.html create mode 100644 docs/services/GamepadState/normalTrigger.html create mode 100644 docs/services/GamepadState/operator_equals.html create mode 100644 docs/services/GamepadState/rightShoulder.html create mode 100644 docs/services/GamepadState/runtimeType.html create mode 100644 docs/services/GamepadState/toString.html create mode 100644 docs/services/MalformedSerialPacket-class-sidebar.html create mode 100644 docs/services/MalformedSerialPacket-class.html create mode 100644 docs/services/MalformedSerialPacket/MalformedSerialPacket.html create mode 100644 docs/services/MalformedSerialPacket/packet.html create mode 100644 docs/services/MalformedSerialPacket/toString.html create mode 100644 docs/services/MultipleDevicesFound-class-sidebar.html create mode 100644 docs/services/MultipleDevicesFound-class.html create mode 100644 docs/services/MultipleDevicesFound/MultipleDevicesFound.html create mode 100644 docs/services/MultipleDevicesFound/devices.html create mode 100644 docs/services/MultipleDevicesFound/toString.html create mode 100644 docs/services/NoDeviceFound-class-sidebar.html create mode 100644 docs/services/NoDeviceFound-class.html create mode 100644 docs/services/NoDeviceFound/NoDeviceFound.html create mode 100644 docs/services/NoDeviceFound/toString.html create mode 100644 docs/services/SerialCannotOpen-class-sidebar.html create mode 100644 docs/services/SerialCannotOpen-class.html create mode 100644 docs/services/SerialCannotOpen/SerialCannotOpen.html create mode 100644 docs/services/SerialCannotOpen/port.html create mode 100644 docs/services/SerialCannotOpen/toString.html create mode 100644 docs/services/SerialDevice-class-sidebar.html create mode 100644 docs/services/SerialDevice-class.html create mode 100644 docs/services/SerialDevice/SerialDevice.html create mode 100644 docs/services/SerialDevice/availablePorts.html create mode 100644 docs/services/SerialDevice/connect.html create mode 100644 docs/services/SerialDevice/device.html create mode 100644 docs/services/SerialDevice/dispose.html create mode 100644 docs/services/SerialDevice/hashCode.html create mode 100644 docs/services/SerialDevice/noSuchMethod.html create mode 100644 docs/services/SerialDevice/onMessage.html create mode 100644 docs/services/SerialDevice/operator_equals.html create mode 100644 docs/services/SerialDevice/port.html create mode 100644 docs/services/SerialDevice/resetCode-constant.html create mode 100644 docs/services/SerialDevice/runtimeType.html create mode 100644 docs/services/SerialDevice/sendMessage.html create mode 100644 docs/services/SerialDevice/toString.html create mode 100644 docs/services/SerialException-class-sidebar.html create mode 100644 docs/services/SerialException-class.html create mode 100644 docs/services/SerialException/SerialException.html create mode 100644 docs/services/SerialHandshakeFailed-class-sidebar.html create mode 100644 docs/services/SerialHandshakeFailed-class.html create mode 100644 docs/services/SerialHandshakeFailed/SerialHandshakeFailed.html create mode 100644 docs/services/SerialHandshakeFailed/toString.html create mode 100644 docs/services/SerialIOError-class-sidebar.html create mode 100644 docs/services/SerialIOError-class.html create mode 100644 docs/services/SerialIOError/SerialIOError.html create mode 100644 docs/services/SerialIOError/error.html create mode 100644 docs/services/SerialIOError/toString.html create mode 100644 docs/services/Services-class-sidebar.html create mode 100644 docs/services/Services-class.html create mode 100644 docs/services/Services/Services.html create mode 100644 docs/services/Services/dispose.html create mode 100644 docs/services/Services/error.html create mode 100644 docs/services/Services/files.html create mode 100644 docs/services/Services/gamepad.html create mode 100644 docs/services/Services/hashCode.html create mode 100644 docs/services/Services/init.html create mode 100644 docs/services/Services/noSuchMethod.html create mode 100644 docs/services/Services/operator_equals.html create mode 100644 docs/services/Services/runtimeType.html create mode 100644 docs/services/Services/toString.html create mode 100644 docs/services/services-library-sidebar.html create mode 100644 docs/services/services-library.html create mode 100644 docs/services/services.html create mode 100644 docs/static-assets/docs.dart.js create mode 100644 docs/static-assets/docs.dart.js.map create mode 100644 docs/static-assets/favicon.png create mode 100644 docs/static-assets/github.css create mode 100644 docs/static-assets/highlight.pack.js create mode 100644 docs/static-assets/play_button.svg create mode 100644 docs/static-assets/readme.md create mode 100644 docs/static-assets/search.svg create mode 100644 docs/static-assets/styles.css create mode 100644 docs/widgets/AutonomyCommandEditor-class-sidebar.html create mode 100644 docs/widgets/AutonomyCommandEditor-class.html create mode 100644 docs/widgets/AutonomyCommandEditor/AutonomyCommandEditor.html create mode 100644 docs/widgets/AutonomyCommandEditor/build.html create mode 100644 docs/widgets/AutonomyCommandEditor/createModel.html create mode 100644 docs/widgets/AutonomyCommandEditor/createTask.html create mode 100644 docs/widgets/AutonomyCommandEditor/dataModel.html create mode 100644 docs/widgets/BuildContextUtils-extension-sidebar.html create mode 100644 docs/widgets/BuildContextUtils.html create mode 100644 docs/widgets/BuildContextUtils/colorScheme.html create mode 100644 docs/widgets/BuildContextUtils/textTheme.html create mode 100644 docs/widgets/CameraDetailsEditor-class-sidebar.html create mode 100644 docs/widgets/CameraDetailsEditor-class.html create mode 100644 docs/widgets/CameraDetailsEditor/CameraDetailsEditor.html create mode 100644 docs/widgets/CameraDetailsEditor/build.html create mode 100644 docs/widgets/CameraDetailsEditor/createModel.html create mode 100644 docs/widgets/CameraDetailsEditor/data.html create mode 100644 docs/widgets/ColorEditor-class-sidebar.html create mode 100644 docs/widgets/ColorEditor-class.html create mode 100644 docs/widgets/ColorEditor/ColorEditor.html create mode 100644 docs/widgets/ColorEditor/build.html create mode 100644 docs/widgets/ControlsDisplay-class-sidebar.html create mode 100644 docs/widgets/ControlsDisplay-class.html create mode 100644 docs/widgets/ControlsDisplay/ControlsDisplay.html create mode 100644 docs/widgets/ControlsDisplay/build.html create mode 100644 docs/widgets/ControlsDisplay/gamepadNum.html create mode 100644 docs/widgets/DropdownEditor-class-sidebar.html create mode 100644 docs/widgets/DropdownEditor-class.html create mode 100644 docs/widgets/DropdownEditor/DropdownEditor.html create mode 100644 docs/widgets/DropdownEditor/build.html create mode 100644 docs/widgets/DropdownEditor/humanName.html create mode 100644 docs/widgets/DropdownEditor/items.html create mode 100644 docs/widgets/DropdownEditor/name.html create mode 100644 docs/widgets/DropdownEditor/onChanged.html create mode 100644 docs/widgets/DropdownEditor/value.html create mode 100644 docs/widgets/Footer-class-sidebar.html create mode 100644 docs/widgets/Footer-class.html create mode 100644 docs/widgets/Footer/Footer.html create mode 100644 docs/widgets/Footer/build.html create mode 100644 docs/widgets/Footer/showLogs.html create mode 100644 docs/widgets/GamepadButton-class-sidebar.html create mode 100644 docs/widgets/GamepadButton-class.html create mode 100644 docs/widgets/GamepadButton/GamepadButton.html create mode 100644 docs/widgets/GamepadButton/build.html create mode 100644 docs/widgets/GamepadButton/getColor.html create mode 100644 docs/widgets/GamepadButton/isDisabled.html create mode 100644 docs/widgets/GpsEditor-class-sidebar.html create mode 100644 docs/widgets/GpsEditor-class.html create mode 100644 docs/widgets/GpsEditor/GpsEditor.html create mode 100644 docs/widgets/GpsEditor/build.html create mode 100644 docs/widgets/ImageLoader-class-sidebar.html create mode 100644 docs/widgets/ImageLoader-class.html create mode 100644 docs/widgets/ImageLoader/ImageLoader.html create mode 100644 docs/widgets/ImageLoader/codec.html create mode 100644 docs/widgets/ImageLoader/dispose.html create mode 100644 docs/widgets/ImageLoader/hasImage.html create mode 100644 docs/widgets/ImageLoader/hashCode.html create mode 100644 docs/widgets/ImageLoader/image.html create mode 100644 docs/widgets/ImageLoader/isLoading.html create mode 100644 docs/widgets/ImageLoader/load.html create mode 100644 docs/widgets/ImageLoader/noSuchMethod.html create mode 100644 docs/widgets/ImageLoader/operator_equals.html create mode 100644 docs/widgets/ImageLoader/runtimeType.html create mode 100644 docs/widgets/ImageLoader/toString.html create mode 100644 docs/widgets/MessageDisplay-class-sidebar.html create mode 100644 docs/widgets/MessageDisplay-class.html create mode 100644 docs/widgets/MessageDisplay/MessageDisplay.html create mode 100644 docs/widgets/MessageDisplay/build.html create mode 100644 docs/widgets/MessageDisplay/getColor.html create mode 100644 docs/widgets/MessageDisplay/getIcon.html create mode 100644 docs/widgets/MessageDisplay/showLogs.html create mode 100644 docs/widgets/MetricsList-class-sidebar.html create mode 100644 docs/widgets/MetricsList-class.html create mode 100644 docs/widgets/MetricsList/MetricsList.html create mode 100644 docs/widgets/MetricsList/build.html create mode 100644 docs/widgets/MobileControls-class-sidebar.html create mode 100644 docs/widgets/MobileControls-class.html create mode 100644 docs/widgets/MobileControls/MobileControls.html create mode 100644 docs/widgets/MobileControls/build.html create mode 100644 docs/widgets/MobileControls/createModel.html create mode 100644 docs/widgets/MobileControlsModel-class-sidebar.html create mode 100644 docs/widgets/MobileControlsModel-class.html create mode 100644 docs/widgets/MobileControlsModel/MobileControlsModel.html create mode 100644 docs/widgets/MobileControlsModel/dispose.html create mode 100644 docs/widgets/MobileControlsModel/left.html create mode 100644 docs/widgets/MobileControlsModel/right.html create mode 100644 docs/widgets/MobileControlsModel/updateLeft.html create mode 100644 docs/widgets/MobileControlsModel/updateRight.html create mode 100644 docs/widgets/NetworkStatusIcon-class-sidebar.html create mode 100644 docs/widgets/NetworkStatusIcon-class.html create mode 100644 docs/widgets/NetworkStatusIcon/NetworkStatusIcon.html create mode 100644 docs/widgets/NetworkStatusIcon/build.html create mode 100644 docs/widgets/NetworkStatusIcon/device.html create mode 100644 docs/widgets/NetworkStatusIcon/onPressed.html create mode 100644 docs/widgets/NetworkStatusIcon/tooltip.html create mode 100644 docs/widgets/NumberEditor-class-sidebar.html create mode 100644 docs/widgets/NumberEditor-class.html create mode 100644 docs/widgets/NumberEditor/NumberEditor.html create mode 100644 docs/widgets/NumberEditor/build.html create mode 100644 docs/widgets/NumberEditor/name.html create mode 100644 docs/widgets/NumberEditor/subtitle.html create mode 100644 docs/widgets/NumberEditor/titleFlex.html create mode 100644 docs/widgets/NumberEditor/width.html create mode 100644 docs/widgets/ReactiveWidget-class-sidebar.html create mode 100644 docs/widgets/ReactiveWidget-class.html create mode 100644 docs/widgets/ReactiveWidget/ReactiveWidget.html create mode 100644 docs/widgets/ReactiveWidget/createModel.html create mode 100644 docs/widgets/ReactiveWidget/shouldDispose.html create mode 100644 docs/widgets/ReactiveWidgetInterface-class-sidebar.html create mode 100644 docs/widgets/ReactiveWidgetInterface-class.html create mode 100644 docs/widgets/ReactiveWidgetInterface/ReactiveWidgetInterface.html create mode 100644 docs/widgets/ReactiveWidgetInterface/build.html create mode 100644 docs/widgets/ReactiveWidgetInterface/createModel.html create mode 100644 docs/widgets/ReactiveWidgetInterface/createState.html create mode 100644 docs/widgets/ReactiveWidgetInterface/didUpdateWidget.html create mode 100644 docs/widgets/ReactiveWidgetInterface/shouldDispose.html create mode 100644 docs/widgets/ReactiveWidgetState-class-sidebar.html create mode 100644 docs/widgets/ReactiveWidgetState-class.html create mode 100644 docs/widgets/ReactiveWidgetState/ReactiveWidgetState.html create mode 100644 docs/widgets/ReactiveWidgetState/build.html create mode 100644 docs/widgets/ReactiveWidgetState/didUpdateWidget.html create mode 100644 docs/widgets/ReactiveWidgetState/dispose.html create mode 100644 docs/widgets/ReactiveWidgetState/initState.html create mode 100644 docs/widgets/ReactiveWidgetState/listener.html create mode 100644 docs/widgets/ReactiveWidgetState/model.html create mode 100644 docs/widgets/ReusableReactiveWidget-class-sidebar.html create mode 100644 docs/widgets/ReusableReactiveWidget-class.html create mode 100644 docs/widgets/ReusableReactiveWidget/ReusableReactiveWidget.html create mode 100644 docs/widgets/ReusableReactiveWidget/createModel.html create mode 100644 docs/widgets/ReusableReactiveWidget/model.html create mode 100644 docs/widgets/ReusableReactiveWidget/shouldDispose.html create mode 100644 docs/widgets/ScienceCommandEditor-class-sidebar.html create mode 100644 docs/widgets/ScienceCommandEditor-class.html create mode 100644 docs/widgets/ScienceCommandEditor/ScienceCommandEditor.html create mode 100644 docs/widgets/ScienceCommandEditor/build.html create mode 100644 docs/widgets/ScienceCommandEditor/createModel.html create mode 100644 docs/widgets/SerialButton-class-sidebar.html create mode 100644 docs/widgets/SerialButton-class.html create mode 100644 docs/widgets/SerialButton/SerialButton.html create mode 100644 docs/widgets/SerialButton/build.html create mode 100644 docs/widgets/SeverityUtil-extension-sidebar.html create mode 100644 docs/widgets/SeverityUtil.html create mode 100644 docs/widgets/SeverityUtil/color.html create mode 100644 docs/widgets/Sidebar-class-sidebar.html create mode 100644 docs/widgets/Sidebar-class.html create mode 100644 docs/widgets/Sidebar/Sidebar.html create mode 100644 docs/widgets/Sidebar/build.html create mode 100644 docs/widgets/SliderSettings-class-sidebar.html create mode 100644 docs/widgets/SliderSettings-class.html create mode 100644 docs/widgets/SliderSettings/SliderSettings.html create mode 100644 docs/widgets/SliderSettings/build.html create mode 100644 docs/widgets/SliderSettings/label.html create mode 100644 docs/widgets/SliderSettings/max.html create mode 100644 docs/widgets/SliderSettings/min.html create mode 100644 docs/widgets/SliderSettings/onChanged.html create mode 100644 docs/widgets/SliderSettings/value.html create mode 100644 docs/widgets/SocketEditor-class-sidebar.html create mode 100644 docs/widgets/SocketEditor-class.html create mode 100644 docs/widgets/SocketEditor/SocketEditor.html create mode 100644 docs/widgets/SocketEditor/build.html create mode 100644 docs/widgets/SocketEditor/editPort.html create mode 100644 docs/widgets/SocketEditor/name.html create mode 100644 docs/widgets/StatusIcons-class-sidebar.html create mode 100644 docs/widgets/StatusIcons-class.html create mode 100644 docs/widgets/StatusIcons/StatusIcons.html create mode 100644 docs/widgets/StatusIcons/build.html create mode 100644 docs/widgets/StatusIcons/getBatteryIcon.html create mode 100644 docs/widgets/StatusIcons/getColor.html create mode 100644 docs/widgets/StatusIcons/getLedColor.html create mode 100644 docs/widgets/StatusIcons/getStatusColor.html create mode 100644 docs/widgets/StatusIcons/getStatusIcon.html create mode 100644 docs/widgets/ThrottleEditor-class-sidebar.html create mode 100644 docs/widgets/ThrottleEditor-class.html create mode 100644 docs/widgets/ThrottleEditor/ThrottleEditor.html create mode 100644 docs/widgets/ThrottleEditor/build.html create mode 100644 docs/widgets/ThrottleEditor/createModel.html create mode 100644 docs/widgets/TimerEditor-class-sidebar.html create mode 100644 docs/widgets/TimerEditor-class.html create mode 100644 docs/widgets/TimerEditor/TimerEditor.html create mode 100644 docs/widgets/TimerEditor/build.html create mode 100644 docs/widgets/TimerEditor/createModel.html create mode 100644 docs/widgets/TimerWidget-class-sidebar.html create mode 100644 docs/widgets/TimerWidget-class.html create mode 100644 docs/widgets/TimerWidget/TimerWidget.html create mode 100644 docs/widgets/TimerWidget/build.html create mode 100644 docs/widgets/TimerWidget/getStyle.html create mode 100644 docs/widgets/VideoFeed-class-sidebar.html create mode 100644 docs/widgets/VideoFeed-class.html create mode 100644 docs/widgets/VideoFeed/VideoFeed.html create mode 100644 docs/widgets/VideoFeed/createState.html create mode 100644 docs/widgets/VideoFeed/index.html create mode 100644 docs/widgets/VideoFeed/name.html create mode 100644 docs/widgets/VideoFeedState-class-sidebar.html create mode 100644 docs/widgets/VideoFeedState-class.html create mode 100644 docs/widgets/VideoFeedState/VideoFeedState.html create mode 100644 docs/widgets/VideoFeedState/brightness.html create mode 100644 docs/widgets/VideoFeedState/build.html create mode 100644 docs/widgets/VideoFeedState/buildChild.html create mode 100644 docs/widgets/VideoFeedState/data.html create mode 100644 docs/widgets/VideoFeedState/dispose.html create mode 100644 docs/widgets/VideoFeedState/errorMessage.html create mode 100644 docs/widgets/VideoFeedState/focus.html create mode 100644 docs/widgets/VideoFeedState/imageLoader.html create mode 100644 docs/widgets/VideoFeedState/initState.html create mode 100644 docs/widgets/VideoFeedState/isOpened.html create mode 100644 docs/widgets/VideoFeedState/isReady.html create mode 100644 docs/widgets/VideoFeedState/pan.html create mode 100644 docs/widgets/VideoFeedState/toggleSettings.html create mode 100644 docs/widgets/VideoFeedState/updateImage.html create mode 100644 docs/widgets/VideoFeedState/zoom.html create mode 100644 docs/widgets/VideoSettingsState-class-sidebar.html create mode 100644 docs/widgets/VideoSettingsState-class.html create mode 100644 docs/widgets/VideoSettingsState/VideoSettingsState.html create mode 100644 docs/widgets/VideoSettingsState/autofocus.html create mode 100644 docs/widgets/VideoSettingsState/build.html create mode 100644 docs/widgets/VideoSettingsState/focus.html create mode 100644 docs/widgets/VideoSettingsState/pan.html create mode 100644 docs/widgets/VideoSettingsState/tilt.html create mode 100644 docs/widgets/VideoSettingsState/zoom.html create mode 100644 docs/widgets/VideoSettingsWidget-class-sidebar.html create mode 100644 docs/widgets/VideoSettingsWidget-class.html create mode 100644 docs/widgets/VideoSettingsWidget/VideoSettingsWidget.html create mode 100644 docs/widgets/VideoSettingsWidget/createState.html create mode 100644 docs/widgets/VideoSettingsWidget/details.html create mode 100644 docs/widgets/VideoSettingsWidget/id.html create mode 100644 docs/widgets/ViewsCounter-class-sidebar.html create mode 100644 docs/widgets/ViewsCounter-class.html create mode 100644 docs/widgets/ViewsCounter/ViewsCounter.html create mode 100644 docs/widgets/ViewsCounter/build.html create mode 100644 docs/widgets/ViewsList-class-sidebar.html create mode 100644 docs/widgets/ViewsList-class.html create mode 100644 docs/widgets/ViewsList/ViewsList.html create mode 100644 docs/widgets/ViewsList/build.html create mode 100644 docs/widgets/ViewsList/draggingIconSize-constant.html create mode 100644 docs/widgets/ViewsSelector-class-sidebar.html create mode 100644 docs/widgets/ViewsSelector-class.html create mode 100644 docs/widgets/ViewsSelector/ViewsSelector.html create mode 100644 docs/widgets/ViewsSelector/build.html create mode 100644 docs/widgets/ViewsSelector/index.html create mode 100644 docs/widgets/ViewsWidget-class-sidebar.html create mode 100644 docs/widgets/ViewsWidget-class.html create mode 100644 docs/widgets/ViewsWidget/ViewsWidget.html create mode 100644 docs/widgets/ViewsWidget/build.html create mode 100644 docs/widgets/widgets-library-sidebar.html create mode 100644 docs/widgets/widgets-library.html diff --git a/docs/__404error.html b/docs/__404error.html new file mode 100644 index 0000000000..b06737b2f3 --- /dev/null +++ b/docs/__404error.html @@ -0,0 +1,100 @@ + + + + + + + + rover_dashboard - Dart API docs + + + + + + + + + + + + + + +
+
+ menu + +
rover_dashboard
+ +
+ +
+
+
+
+

404: Something's gone wrong :-(

+
+

You've tried to visit a page that doesn't exist. Luckily this site + has other pages.

+

If you were looking for something specific, try searching: +

+

+
+
+ + +
+ + + + + + + + + diff --git a/docs/app/RoverControlDashboard-class-sidebar.html b/docs/app/RoverControlDashboard-class-sidebar.html new file mode 100644 index 0000000000..d1bb906801 --- /dev/null +++ b/docs/app/RoverControlDashboard-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. RoverControlDashboard
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/app/RoverControlDashboard-class.html b/docs/app/RoverControlDashboard-class.html new file mode 100644 index 0000000000..81bc63087b --- /dev/null +++ b/docs/app/RoverControlDashboard-class.html @@ -0,0 +1,410 @@ + + + + + + + + RoverControlDashboard class - app library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverControlDashboard
+ +
+ +
+
+
+
+
+ +

RoverControlDashboard class + +

+ + +
+

The main class for the app.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ RoverControlDashboard() +
+
+ Creates the main app. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + SettingsModel + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, SettingsModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + SettingsModel + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<SettingsModel> oldWidget, SettingsModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/app/RoverControlDashboard/RoverControlDashboard.html b/docs/app/RoverControlDashboard/RoverControlDashboard.html new file mode 100644 index 0000000000..d217a79a77 --- /dev/null +++ b/docs/app/RoverControlDashboard/RoverControlDashboard.html @@ -0,0 +1,111 @@ + + + + + + + + RoverControlDashboard constructor - RoverControlDashboard - app library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverControlDashboard
+ +
+ +
+
+
+
+
+ +

RoverControlDashboard constructor +

+ +
+ + RoverControlDashboard() +
+ +
+

Creates the main app.

+
+ + + +
+

Implementation

+
RoverControlDashboard() : super(models.settings);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/app/RoverControlDashboard/build.html b/docs/app/RoverControlDashboard/build.html new file mode 100644 index 0000000000..4729f36bc5 --- /dev/null +++ b/docs/app/RoverControlDashboard/build.html @@ -0,0 +1,149 @@ + + + + + + + + build method - RoverControlDashboard class - app library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. SettingsModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, SettingsModel model) => MaterialApp(
+    title: "Binghamton University Rover Team",
+    home: SplashPage(),
+    debugShowCheckedModeBanner: false,
+    themeMode: models.isReady ? model.dashboard.themeMode : ThemeMode.system,
+    theme: ThemeData(
+      useMaterial3: false,
+      colorScheme: const ColorScheme.light(
+        primary: binghamtonGreen,
+        secondary: binghamtonGreen,
+      ),
+      appBarTheme: const AppBarTheme(
+        backgroundColor: binghamtonGreen,
+        foregroundColor: Colors.white,
+      ),
+    ),
+    darkTheme: ThemeData.from(
+      colorScheme: const ColorScheme.dark(
+        primary: binghamtonGreen,
+        secondary: binghamtonGreen,
+      ),
+    ),
+    routes: {
+      Routes.home: (_) => HomePage(),
+      Routes.settings: (_) => SettingsPage(),
+    },
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/app/app-library-sidebar.html b/docs/app/app-library-sidebar.html new file mode 100644 index 0000000000..464a114937 --- /dev/null +++ b/docs/app/app-library-sidebar.html @@ -0,0 +1,15 @@ +
    +
  1. Classes
  2. +
  3. RoverControlDashboard
  4. + + + + +
  5. Constants
  6. +
  7. binghamtonGreen
  8. + + + + + +
diff --git a/docs/app/app-library.html b/docs/app/app-library.html new file mode 100644 index 0000000000..1914fff4c4 --- /dev/null +++ b/docs/app/app-library.html @@ -0,0 +1,158 @@ + + + + + + + + app library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
app
+ +
+ +
+
+
+
+ +
+ + + +

+ app + library + + +

+
+ + +
+

Defines any global app configuration.

+

Usually this page is reserved for theming, navigation, and startup logic.

+

This library is the final touch that ties the app together, so it may depend on any other +library (except for main.dart).

+
+ + +
+

Classes

+
+
+ RoverControlDashboard + +
+
+ The main class for the app. +
+ +
+
+ + + + + +
+

Constants

+
+
+ binghamtonGreen + → const Color + + +
+
+ The classic Binghamton green. + + +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/app/binghamtonGreen-constant.html b/docs/app/binghamtonGreen-constant.html new file mode 100644 index 0000000000..59542553c6 --- /dev/null +++ b/docs/app/binghamtonGreen-constant.html @@ -0,0 +1,113 @@ + + + + + + + + binghamtonGreen constant - app library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
binghamtonGreen
+ +
+ +
+
+
+
+
+ +

binghamtonGreen top-level constant + +

+ +
+ + Color + const binghamtonGreen + + +
+ +
+

The classic Binghamton green.

+
+ + +
+

Implementation

+
const binghamtonGreen = Color(0xff005943);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/categories.json b/docs/categories.json new file mode 100644 index 0000000000..fe51488c70 --- /dev/null +++ b/docs/categories.json @@ -0,0 +1 @@ +[] diff --git a/docs/data/ArmCommand-class-sidebar.html b/docs/data/ArmCommand-class-sidebar.html new file mode 100644 index 0000000000..bc6d889078 --- /dev/null +++ b/docs/data/ArmCommand-class-sidebar.html @@ -0,0 +1,111 @@ +
    + +
  1. Constructors
  2. +
  3. ArmCommand
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. calibrate
  12. +
  13. elbow
  14. +
  15. eventPlugin
  16. +
  17. gripperLift
  18. +
  19. hashCode
  20. +
  21. ikX
  22. +
  23. ikY
  24. +
  25. ikZ
  26. +
  27. info_
  28. +
  29. isFrozen
  30. +
  31. jab
  32. +
  33. runtimeType
  34. +
  35. shoulder
  36. +
  37. stop
  38. +
  39. swivel
  40. +
  41. unknownFields
  42. +
  43. version
  44. + +
  45. Methods
  46. +
  47. addExtension
  48. +
  49. check
  50. +
  51. clear
  52. +
  53. clearCalibrate
  54. +
  55. clearElbow
  56. +
  57. clearExtension
  58. +
  59. clearField
  60. +
  61. clearGripperLift
  62. +
  63. clearIkX
  64. +
  65. clearIkY
  66. +
  67. clearIkZ
  68. +
  69. clearJab
  70. +
  71. clearShoulder
  72. +
  73. clearStop
  74. +
  75. clearSwivel
  76. +
  77. clearVersion
  78. +
  79. clone
  80. +
  81. copyWith
  82. +
  83. createEmptyInstance
  84. +
  85. createMapField
  86. +
  87. createRepeatedField
  88. +
  89. ensureElbow
  90. +
  91. ensureGripperLift
  92. +
  93. ensureShoulder
  94. +
  95. ensureSwivel
  96. +
  97. ensureVersion
  98. +
  99. extensionsAreInitialized
  100. +
  101. freeze
  102. +
  103. getDefaultForField
  104. +
  105. getExtension
  106. +
  107. getField
  108. +
  109. getFieldOrNull
  110. +
  111. getTagNumber
  112. +
  113. hasCalibrate
  114. +
  115. hasElbow
  116. +
  117. hasExtension
  118. +
  119. hasField
  120. +
  121. hasGripperLift
  122. +
  123. hasIkX
  124. +
  125. hasIkY
  126. +
  127. hasIkZ
  128. +
  129. hasJab
  130. +
  131. hasRequiredFields
  132. +
  133. hasShoulder
  134. +
  135. hasStop
  136. +
  137. hasSwivel
  138. +
  139. hasVersion
  140. +
  141. isInitialized
  142. +
  143. mergeFromBuffer
  144. +
  145. mergeFromCodedBufferReader
  146. +
  147. mergeFromJson
  148. +
  149. mergeFromJsonMap
  150. +
  151. mergeFromMessage
  152. +
  153. mergeFromProto3Json
  154. +
  155. mergeUnknownFields
  156. +
  157. noSuchMethod
  158. +
  159. setExtension
  160. +
  161. setField
  162. +
  163. toBuilder
  164. +
  165. toDebugString
  166. +
  167. toProto3Json
  168. +
  169. toString
  170. +
  171. writeToBuffer
  172. +
  173. writeToCodedBufferWriter
  174. +
  175. writeToJson
  176. +
  177. writeToJsonMap
  178. + +
  179. Operators
  180. +
  181. operator ==
  182. + + + + + +
  183. Static methods
  184. +
  185. create
  186. +
  187. createRepeated
  188. +
  189. getDefault
  190. + +
diff --git a/docs/data/ArmCommand-class.html b/docs/data/ArmCommand-class.html new file mode 100644 index 0000000000..92321814f2 --- /dev/null +++ b/docs/data/ArmCommand-class.html @@ -0,0 +1,1303 @@ + + + + + + + + ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmCommand
+ +
+ +
+
+
+
+
+ +

ArmCommand class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ ArmCommand({bool? stop, bool? calibrate, MotorCommand? swivel, MotorCommand? shoulder, MotorCommand? elbow, MotorCommand? gripperLift, double? ikX, double? ikY, double? ikZ, bool? jab, Version? version}) +
+
+ +
factory
+
+
+ ArmCommand.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ ArmCommand.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ calibrate + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ elbow + MotorCommand + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ gripperLift + MotorCommand + + +
+
+ Needed for IK: If the wrist-lift moves, we need to re-calculate IK to keep the end-effector +stationary. See /Arm/src/ik/README.md in the Arm-Firmware repository. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ ikX + ↔ double + + +
+
+ Can be removed in future versions +
getter/setter pair
+ +
+ +
+ ikY + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ ikZ + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ jab + ↔ bool + + +
+
+ Custom actions +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shoulder + MotorCommand + + +
+
+ +
getter/setter pair
+ +
+ +
+ stop + ↔ bool + + +
+
+ General commands +
getter/setter pair
+ +
+ +
+ swivel + MotorCommand + + +
+
+ Move individual motors +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearCalibrate() + → void + + + +
+
+ + + +
+ +
+ clearElbow() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearGripperLift() + → void + + + +
+
+ + + +
+ +
+ clearIkX() + → void + + + +
+
+ + + +
+ +
+ clearIkY() + → void + + + +
+
+ + + +
+ +
+ clearIkZ() + → void + + + +
+
+ + + +
+ +
+ clearJab() + → void + + + +
+
+ + + +
+ +
+ clearShoulder() + → void + + + +
+
+ + + +
+ +
+ clearStop() + → void + + + +
+
+ + + +
+ +
+ clearSwivel() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + ArmCommand + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(ArmCommand)) + ArmCommand + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + ArmCommand + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureElbow() + MotorCommand + + + +
+
+ + + +
+ +
+ ensureGripperLift() + MotorCommand + + + +
+
+ + + +
+ +
+ ensureShoulder() + MotorCommand + + + +
+
+ + + +
+ +
+ ensureSwivel() + MotorCommand + + + +
+
+ + + +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasCalibrate() + → bool + + + +
+
+ + + +
+ +
+ hasElbow() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasGripperLift() + → bool + + + +
+
+ + + +
+ +
+ hasIkX() + → bool + + + +
+
+ + + +
+ +
+ hasIkY() + → bool + + + +
+
+ + + +
+ +
+ hasIkZ() + → bool + + + +
+
+ + + +
+ +
+ hasJab() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasShoulder() + → bool + + + +
+
+ + + +
+ +
+ hasStop() + → bool + + + +
+
+ + + +
+ +
+ hasSwivel() + → bool + + + +
+
+ + + +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + ArmCommand + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<ArmCommand> + + + +
+
+ + + +
+ +
+ getDefault() + ArmCommand + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/ArmCommand.fromBuffer.html b/docs/data/ArmCommand/ArmCommand.fromBuffer.html new file mode 100644 index 0000000000..a54eb4fb70 --- /dev/null +++ b/docs/data/ArmCommand/ArmCommand.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + ArmCommand.fromBuffer constructor - ArmCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmCommand.fromBuffer
+ +
+ +
+
+
+
+
+ +

ArmCommand.fromBuffer constructor +

+ +
+ + ArmCommand.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory ArmCommand.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/ArmCommand.fromJson.html b/docs/data/ArmCommand/ArmCommand.fromJson.html new file mode 100644 index 0000000000..21c1fd7dd3 --- /dev/null +++ b/docs/data/ArmCommand/ArmCommand.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + ArmCommand.fromJson constructor - ArmCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmCommand.fromJson
+ +
+ +
+
+
+
+
+ +

ArmCommand.fromJson constructor +

+ +
+ + ArmCommand.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory ArmCommand.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/ArmCommand.html b/docs/data/ArmCommand/ArmCommand.html new file mode 100644 index 0000000000..20323488fc --- /dev/null +++ b/docs/data/ArmCommand/ArmCommand.html @@ -0,0 +1,167 @@ + + + + + + + + ArmCommand constructor - ArmCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmCommand
+ +
+ +
+
+
+
+
+ +

ArmCommand constructor +

+ +
+ + ArmCommand({
  1. bool? stop,
  2. +
  3. bool? calibrate,
  4. +
  5. MotorCommand? swivel,
  6. +
  7. MotorCommand? shoulder,
  8. +
  9. MotorCommand? elbow,
  10. +
  11. MotorCommand? gripperLift,
  12. +
  13. double? ikX,
  14. +
  15. double? ikY,
  16. +
  17. double? ikZ,
  18. +
  19. bool? jab,
  20. +
  21. Version? version,
  22. +
}) +
+ + + + +
+

Implementation

+
factory ArmCommand({
+  $core.bool? stop,
+  $core.bool? calibrate,
+  MotorCommand? swivel,
+  MotorCommand? shoulder,
+  MotorCommand? elbow,
+  MotorCommand? gripperLift,
+  $core.double? ikX,
+  $core.double? ikY,
+  $core.double? ikZ,
+  $core.bool? jab,
+  $0.Version? version,
+}) {
+  final $result = create();
+  if (stop != null) {
+    $result.stop = stop;
+  }
+  if (calibrate != null) {
+    $result.calibrate = calibrate;
+  }
+  if (swivel != null) {
+    $result.swivel = swivel;
+  }
+  if (shoulder != null) {
+    $result.shoulder = shoulder;
+  }
+  if (elbow != null) {
+    $result.elbow = elbow;
+  }
+  if (gripperLift != null) {
+    $result.gripperLift = gripperLift;
+  }
+  if (ikX != null) {
+    $result.ikX = ikX;
+  }
+  if (ikY != null) {
+    $result.ikY = ikY;
+  }
+  if (ikZ != null) {
+    $result.ikZ = ikZ;
+  }
+  if (jab != null) {
+    $result.jab = jab;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/calibrate.html b/docs/data/ArmCommand/calibrate.html new file mode 100644 index 0000000000..0e7f05b4fe --- /dev/null +++ b/docs/data/ArmCommand/calibrate.html @@ -0,0 +1,150 @@ + + + + + + + + calibrate property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
calibrate
+ +
+ +
+
+
+
+
+ +

calibrate property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ bool + get + calibrate + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool get calibrate => $_getBF(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + calibrate + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set calibrate($core.bool v) { $_setBool(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clearCalibrate.html b/docs/data/ArmCommand/clearCalibrate.html new file mode 100644 index 0000000000..550432640d --- /dev/null +++ b/docs/data/ArmCommand/clearCalibrate.html @@ -0,0 +1,118 @@ + + + + + + + + clearCalibrate method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearCalibrate
+ +
+ +
+
+
+
+
+ +

clearCalibrate method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearCalibrate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearCalibrate() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clearElbow.html b/docs/data/ArmCommand/clearElbow.html new file mode 100644 index 0000000000..4cdf3eeb66 --- /dev/null +++ b/docs/data/ArmCommand/clearElbow.html @@ -0,0 +1,118 @@ + + + + + + + + clearElbow method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearElbow
+ +
+ +
+
+
+
+
+ +

clearElbow method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearElbow() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearElbow() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clearGripperLift.html b/docs/data/ArmCommand/clearGripperLift.html new file mode 100644 index 0000000000..c77e85565d --- /dev/null +++ b/docs/data/ArmCommand/clearGripperLift.html @@ -0,0 +1,118 @@ + + + + + + + + clearGripperLift method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearGripperLift
+ +
+ +
+
+
+
+
+ +

clearGripperLift method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+void +clearGripperLift() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+void clearGripperLift() => clearField(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clearIkX.html b/docs/data/ArmCommand/clearIkX.html new file mode 100644 index 0000000000..7e7dc9fba4 --- /dev/null +++ b/docs/data/ArmCommand/clearIkX.html @@ -0,0 +1,118 @@ + + + + + + + + clearIkX method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearIkX
+ +
+ +
+
+
+
+
+ +

clearIkX method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+void +clearIkX() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+void clearIkX() => clearField(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clearIkY.html b/docs/data/ArmCommand/clearIkY.html new file mode 100644 index 0000000000..3d0806d1de --- /dev/null +++ b/docs/data/ArmCommand/clearIkY.html @@ -0,0 +1,118 @@ + + + + + + + + clearIkY method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearIkY
+ +
+ +
+
+
+
+
+ +

clearIkY method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+void +clearIkY() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+void clearIkY() => clearField(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clearIkZ.html b/docs/data/ArmCommand/clearIkZ.html new file mode 100644 index 0000000000..6e4385c5f9 --- /dev/null +++ b/docs/data/ArmCommand/clearIkZ.html @@ -0,0 +1,118 @@ + + + + + + + + clearIkZ method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearIkZ
+ +
+ +
+
+
+
+
+ +

clearIkZ method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+void +clearIkZ() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+void clearIkZ() => clearField(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clearJab.html b/docs/data/ArmCommand/clearJab.html new file mode 100644 index 0000000000..735d8065b0 --- /dev/null +++ b/docs/data/ArmCommand/clearJab.html @@ -0,0 +1,118 @@ + + + + + + + + clearJab method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearJab
+ +
+ +
+
+
+
+
+ +

clearJab method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+void +clearJab() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+void clearJab() => clearField(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clearShoulder.html b/docs/data/ArmCommand/clearShoulder.html new file mode 100644 index 0000000000..8c4cec2630 --- /dev/null +++ b/docs/data/ArmCommand/clearShoulder.html @@ -0,0 +1,118 @@ + + + + + + + + clearShoulder method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearShoulder
+ +
+ +
+
+
+
+
+ +

clearShoulder method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearShoulder() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearShoulder() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clearStop.html b/docs/data/ArmCommand/clearStop.html new file mode 100644 index 0000000000..8f6cbd3b62 --- /dev/null +++ b/docs/data/ArmCommand/clearStop.html @@ -0,0 +1,118 @@ + + + + + + + + clearStop method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearStop
+ +
+ +
+
+
+
+
+ +

clearStop method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearStop() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearStop() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clearSwivel.html b/docs/data/ArmCommand/clearSwivel.html new file mode 100644 index 0000000000..eda531c59c --- /dev/null +++ b/docs/data/ArmCommand/clearSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + clearSwivel method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSwivel
+ +
+ +
+
+
+
+
+ +

clearSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearSwivel() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clearVersion.html b/docs/data/ArmCommand/clearVersion.html new file mode 100644 index 0000000000..a593f256c9 --- /dev/null +++ b/docs/data/ArmCommand/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+void clearVersion() => clearField(11);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/clone.html b/docs/data/ArmCommand/clone.html new file mode 100644 index 0000000000..62d4e892bb --- /dev/null +++ b/docs/data/ArmCommand/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+ArmCommand +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+ArmCommand clone() => ArmCommand()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/copyWith.html b/docs/data/ArmCommand/copyWith.html new file mode 100644 index 0000000000..70efa55873 --- /dev/null +++ b/docs/data/ArmCommand/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+ArmCommand +copyWith(
  1. void updates(
    1. ArmCommand
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+ArmCommand copyWith(void Function(ArmCommand) updates) => super.copyWith((message) => updates(message as ArmCommand)) as ArmCommand;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/create.html b/docs/data/ArmCommand/create.html new file mode 100644 index 0000000000..24d476bc6f --- /dev/null +++ b/docs/data/ArmCommand/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +ArmCommand +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static ArmCommand create() => ArmCommand._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/createEmptyInstance.html b/docs/data/ArmCommand/createEmptyInstance.html new file mode 100644 index 0000000000..03d364e690 --- /dev/null +++ b/docs/data/ArmCommand/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +ArmCommand +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
ArmCommand createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/createRepeated.html b/docs/data/ArmCommand/createRepeated.html new file mode 100644 index 0000000000..740831c3c7 --- /dev/null +++ b/docs/data/ArmCommand/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<ArmCommand> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<ArmCommand> createRepeated() => $pb.PbList<ArmCommand>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/elbow.html b/docs/data/ArmCommand/elbow.html new file mode 100644 index 0000000000..ef0a034bfc --- /dev/null +++ b/docs/data/ArmCommand/elbow.html @@ -0,0 +1,150 @@ + + + + + + + + elbow property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
elbow
+ +
+ +
+
+
+
+
+ +

elbow property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ MotorCommand + get + elbow + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+MotorCommand get elbow => $_getN(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + elbow + (MotorCommand v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set elbow(MotorCommand v) { setField(5, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/ensureElbow.html b/docs/data/ArmCommand/ensureElbow.html new file mode 100644 index 0000000000..605b2cd74b --- /dev/null +++ b/docs/data/ArmCommand/ensureElbow.html @@ -0,0 +1,118 @@ + + + + + + + + ensureElbow method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureElbow
+ +
+ +
+
+
+
+
+ +

ensureElbow method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+MotorCommand +ensureElbow() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+MotorCommand ensureElbow() => $_ensure(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/ensureGripperLift.html b/docs/data/ArmCommand/ensureGripperLift.html new file mode 100644 index 0000000000..a7f08ea4d0 --- /dev/null +++ b/docs/data/ArmCommand/ensureGripperLift.html @@ -0,0 +1,118 @@ + + + + + + + + ensureGripperLift method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureGripperLift
+ +
+ +
+
+
+
+
+ +

ensureGripperLift method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+MotorCommand +ensureGripperLift() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+MotorCommand ensureGripperLift() => $_ensure(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/ensureShoulder.html b/docs/data/ArmCommand/ensureShoulder.html new file mode 100644 index 0000000000..0cd6bb940c --- /dev/null +++ b/docs/data/ArmCommand/ensureShoulder.html @@ -0,0 +1,118 @@ + + + + + + + + ensureShoulder method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureShoulder
+ +
+ +
+
+
+
+
+ +

ensureShoulder method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+MotorCommand +ensureShoulder() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+MotorCommand ensureShoulder() => $_ensure(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/ensureSwivel.html b/docs/data/ArmCommand/ensureSwivel.html new file mode 100644 index 0000000000..11cb15b37d --- /dev/null +++ b/docs/data/ArmCommand/ensureSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + ensureSwivel method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureSwivel
+ +
+ +
+
+
+
+
+ +

ensureSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+MotorCommand +ensureSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+MotorCommand ensureSwivel() => $_ensure(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/ensureVersion.html b/docs/data/ArmCommand/ensureVersion.html new file mode 100644 index 0000000000..f28129e009 --- /dev/null +++ b/docs/data/ArmCommand/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+$0.Version ensureVersion() => $_ensure(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/getDefault.html b/docs/data/ArmCommand/getDefault.html new file mode 100644 index 0000000000..e582ff5c00 --- /dev/null +++ b/docs/data/ArmCommand/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +ArmCommand +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static ArmCommand getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ArmCommand>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/gripperLift.html b/docs/data/ArmCommand/gripperLift.html new file mode 100644 index 0000000000..39002a13b5 --- /dev/null +++ b/docs/data/ArmCommand/gripperLift.html @@ -0,0 +1,154 @@ + + + + + + + + gripperLift property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gripperLift
+ +
+ +
+
+
+
+
+ +

gripperLift property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ MotorCommand + get + gripperLift + + +
+ +
+

Needed for IK: If the wrist-lift moves, we need to re-calculate IK to keep the end-effector +stationary. See /Arm/src/ik/README.md in the Arm-Firmware repository.

+
+ + +
+

Implementation

+
@$pb.TagNumber(6)
+MotorCommand get gripperLift => $_getN(5);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ set + gripperLift + (MotorCommand v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+set gripperLift(MotorCommand v) { setField(6, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/hasCalibrate.html b/docs/data/ArmCommand/hasCalibrate.html new file mode 100644 index 0000000000..5fde8d5aa0 --- /dev/null +++ b/docs/data/ArmCommand/hasCalibrate.html @@ -0,0 +1,118 @@ + + + + + + + + hasCalibrate method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasCalibrate
+ +
+ +
+
+
+
+
+ +

hasCalibrate method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasCalibrate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasCalibrate() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/hasElbow.html b/docs/data/ArmCommand/hasElbow.html new file mode 100644 index 0000000000..a794bd05b2 --- /dev/null +++ b/docs/data/ArmCommand/hasElbow.html @@ -0,0 +1,118 @@ + + + + + + + + hasElbow method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasElbow
+ +
+ +
+
+
+
+
+ +

hasElbow method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasElbow() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasElbow() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/hasGripperLift.html b/docs/data/ArmCommand/hasGripperLift.html new file mode 100644 index 0000000000..ab0860f01c --- /dev/null +++ b/docs/data/ArmCommand/hasGripperLift.html @@ -0,0 +1,118 @@ + + + + + + + + hasGripperLift method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasGripperLift
+ +
+ +
+
+
+
+
+ +

hasGripperLift method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+bool +hasGripperLift() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool hasGripperLift() => $_has(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/hasIkX.html b/docs/data/ArmCommand/hasIkX.html new file mode 100644 index 0000000000..e03a8bc1fb --- /dev/null +++ b/docs/data/ArmCommand/hasIkX.html @@ -0,0 +1,118 @@ + + + + + + + + hasIkX method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasIkX
+ +
+ +
+
+
+
+
+ +

hasIkX method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+bool +hasIkX() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.bool hasIkX() => $_has(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/hasIkY.html b/docs/data/ArmCommand/hasIkY.html new file mode 100644 index 0000000000..17d4845285 --- /dev/null +++ b/docs/data/ArmCommand/hasIkY.html @@ -0,0 +1,118 @@ + + + + + + + + hasIkY method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasIkY
+ +
+ +
+
+
+
+
+ +

hasIkY method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+bool +hasIkY() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.bool hasIkY() => $_has(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/hasIkZ.html b/docs/data/ArmCommand/hasIkZ.html new file mode 100644 index 0000000000..4f35d3e0fd --- /dev/null +++ b/docs/data/ArmCommand/hasIkZ.html @@ -0,0 +1,118 @@ + + + + + + + + hasIkZ method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasIkZ
+ +
+ +
+
+
+
+
+ +

hasIkZ method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+bool +hasIkZ() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.bool hasIkZ() => $_has(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/hasJab.html b/docs/data/ArmCommand/hasJab.html new file mode 100644 index 0000000000..df40b5d951 --- /dev/null +++ b/docs/data/ArmCommand/hasJab.html @@ -0,0 +1,118 @@ + + + + + + + + hasJab method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasJab
+ +
+ +
+
+
+
+
+ +

hasJab method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+bool +hasJab() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.bool hasJab() => $_has(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/hasShoulder.html b/docs/data/ArmCommand/hasShoulder.html new file mode 100644 index 0000000000..fa83e7ff04 --- /dev/null +++ b/docs/data/ArmCommand/hasShoulder.html @@ -0,0 +1,118 @@ + + + + + + + + hasShoulder method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasShoulder
+ +
+ +
+
+
+
+
+ +

hasShoulder method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasShoulder() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasShoulder() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/hasStop.html b/docs/data/ArmCommand/hasStop.html new file mode 100644 index 0000000000..ea324ce3c2 --- /dev/null +++ b/docs/data/ArmCommand/hasStop.html @@ -0,0 +1,118 @@ + + + + + + + + hasStop method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasStop
+ +
+ +
+
+
+
+
+ +

hasStop method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasStop() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasStop() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/hasSwivel.html b/docs/data/ArmCommand/hasSwivel.html new file mode 100644 index 0000000000..5aad536949 --- /dev/null +++ b/docs/data/ArmCommand/hasSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + hasSwivel method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSwivel
+ +
+ +
+
+
+
+
+ +

hasSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasSwivel() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/hasVersion.html b/docs/data/ArmCommand/hasVersion.html new file mode 100644 index 0000000000..0edc4dfaba --- /dev/null +++ b/docs/data/ArmCommand/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+$core.bool hasVersion() => $_has(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/ikX.html b/docs/data/ArmCommand/ikX.html new file mode 100644 index 0000000000..240f194086 --- /dev/null +++ b/docs/data/ArmCommand/ikX.html @@ -0,0 +1,153 @@ + + + + + + + + ikX property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ikX
+ +
+ +
+
+
+
+
+ +

ikX property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ double + get + ikX + + +
+ +
+

Can be removed in future versions

+
+ + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.double get ikX => $_getN(6);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ set + ikX + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+set ikX($core.double v) { $_setFloat(6, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/ikY.html b/docs/data/ArmCommand/ikY.html new file mode 100644 index 0000000000..de1695eda4 --- /dev/null +++ b/docs/data/ArmCommand/ikY.html @@ -0,0 +1,150 @@ + + + + + + + + ikY property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ikY
+ +
+ +
+
+
+
+
+ +

ikY property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ double + get + ikY + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.double get ikY => $_getN(7);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ set + ikY + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(8)
+set ikY($core.double v) { $_setFloat(7, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/ikZ.html b/docs/data/ArmCommand/ikZ.html new file mode 100644 index 0000000000..fcec3321ad --- /dev/null +++ b/docs/data/ArmCommand/ikZ.html @@ -0,0 +1,150 @@ + + + + + + + + ikZ property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ikZ
+ +
+ +
+
+
+
+
+ +

ikZ property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ double + get + ikZ + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.double get ikZ => $_getN(8);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ set + ikZ + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+set ikZ($core.double v) { $_setFloat(8, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/info_.html b/docs/data/ArmCommand/info_.html new file mode 100644 index 0000000000..f03a15342e --- /dev/null +++ b/docs/data/ArmCommand/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/jab.html b/docs/data/ArmCommand/jab.html new file mode 100644 index 0000000000..4196a89094 --- /dev/null +++ b/docs/data/ArmCommand/jab.html @@ -0,0 +1,153 @@ + + + + + + + + jab property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
jab
+ +
+ +
+
+
+
+
+ +

jab property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ bool + get + jab + + +
+ +
+

Custom actions

+
+ + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.bool get jab => $_getBF(9);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ set + jab + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(10)
+set jab($core.bool v) { $_setBool(9, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/shoulder.html b/docs/data/ArmCommand/shoulder.html new file mode 100644 index 0000000000..0b783322ee --- /dev/null +++ b/docs/data/ArmCommand/shoulder.html @@ -0,0 +1,150 @@ + + + + + + + + shoulder property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
shoulder
+ +
+ +
+
+
+
+
+ +

shoulder property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ MotorCommand + get + shoulder + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+MotorCommand get shoulder => $_getN(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + shoulder + (MotorCommand v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set shoulder(MotorCommand v) { setField(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/stop.html b/docs/data/ArmCommand/stop.html new file mode 100644 index 0000000000..373763d88d --- /dev/null +++ b/docs/data/ArmCommand/stop.html @@ -0,0 +1,153 @@ + + + + + + + + stop property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
stop
+ +
+ +
+
+
+
+
+ +

stop property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ bool + get + stop + + +
+ +
+

General commands

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool get stop => $_getBF(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + stop + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set stop($core.bool v) { $_setBool(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/swivel.html b/docs/data/ArmCommand/swivel.html new file mode 100644 index 0000000000..806ad60865 --- /dev/null +++ b/docs/data/ArmCommand/swivel.html @@ -0,0 +1,153 @@ + + + + + + + + swivel property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
swivel
+ +
+ +
+
+
+
+
+ +

swivel property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ MotorCommand + get + swivel + + +
+ +
+

Move individual motors

+
+ + +
+

Implementation

+
@$pb.TagNumber(3)
+MotorCommand get swivel => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + swivel + (MotorCommand v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set swivel(MotorCommand v) { setField(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmCommand/version.html b/docs/data/ArmCommand/version.html new file mode 100644 index 0000000000..4e3cfe4cda --- /dev/null +++ b/docs/data/ArmCommand/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(11)
+$0.Version get version => $_getN(10);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(11)
+set version($0.Version v) { setField(11, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData-class-sidebar.html b/docs/data/ArmData-class-sidebar.html new file mode 100644 index 0000000000..d304609b81 --- /dev/null +++ b/docs/data/ArmData-class-sidebar.html @@ -0,0 +1,97 @@ +
    + +
  1. Constructors
  2. +
  3. ArmData
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. base
  12. +
  13. currentPosition
  14. +
  15. elbow
  16. +
  17. eventPlugin
  18. +
  19. hashCode
  20. +
  21. info_
  22. +
  23. isFrozen
  24. +
  25. runtimeType
  26. +
  27. shoulder
  28. +
  29. targetPosition
  30. +
  31. unknownFields
  32. +
  33. version
  34. + +
  35. Methods
  36. +
  37. addExtension
  38. +
  39. check
  40. +
  41. clear
  42. +
  43. clearBase
  44. +
  45. clearCurrentPosition
  46. +
  47. clearElbow
  48. +
  49. clearExtension
  50. +
  51. clearField
  52. +
  53. clearShoulder
  54. +
  55. clearTargetPosition
  56. +
  57. clearVersion
  58. +
  59. clone
  60. +
  61. copyWith
  62. +
  63. createEmptyInstance
  64. +
  65. createMapField
  66. +
  67. createRepeatedField
  68. +
  69. ensureBase
  70. +
  71. ensureCurrentPosition
  72. +
  73. ensureElbow
  74. +
  75. ensureShoulder
  76. +
  77. ensureTargetPosition
  78. +
  79. ensureVersion
  80. +
  81. extensionsAreInitialized
  82. +
  83. freeze
  84. +
  85. getDefaultForField
  86. +
  87. getExtension
  88. +
  89. getField
  90. +
  91. getFieldOrNull
  92. +
  93. getTagNumber
  94. +
  95. hasBase
  96. +
  97. hasCurrentPosition
  98. +
  99. hasElbow
  100. +
  101. hasExtension
  102. +
  103. hasField
  104. +
  105. hasRequiredFields
  106. +
  107. hasShoulder
  108. +
  109. hasTargetPosition
  110. +
  111. hasVersion
  112. +
  113. isInitialized
  114. +
  115. mergeFromBuffer
  116. +
  117. mergeFromCodedBufferReader
  118. +
  119. mergeFromJson
  120. +
  121. mergeFromJsonMap
  122. +
  123. mergeFromMessage
  124. +
  125. mergeFromProto3Json
  126. +
  127. mergeUnknownFields
  128. +
  129. noSuchMethod
  130. +
  131. setExtension
  132. +
  133. setField
  134. +
  135. toBuilder
  136. +
  137. toDebugString
  138. +
  139. toProto3Json
  140. +
  141. toString
  142. +
  143. writeToBuffer
  144. +
  145. writeToCodedBufferWriter
  146. +
  147. writeToJson
  148. +
  149. writeToJsonMap
  150. + +
  151. Operators
  152. +
  153. operator ==
  154. + + + + + +
  155. Static methods
  156. +
  157. create
  158. +
  159. createRepeated
  160. +
  161. getDefault
  162. + +
diff --git a/docs/data/ArmData-class.html b/docs/data/ArmData-class.html new file mode 100644 index 0000000000..d1826aedd8 --- /dev/null +++ b/docs/data/ArmData-class.html @@ -0,0 +1,1125 @@ + + + + + + + + ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmData
+ +
+ +
+
+
+
+
+ +

ArmData class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ ArmData({Coordinates? currentPosition, Coordinates? targetPosition, MotorData? base, MotorData? shoulder, MotorData? elbow, Version? version}) +
+
+ +
factory
+
+
+ ArmData.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ ArmData.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ base + MotorData + + +
+
+ +
getter/setter pair
+ +
+ +
+ currentPosition + Coordinates + + +
+
+ +
getter/setter pair
+ +
+ +
+ elbow + MotorData + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shoulder + MotorData + + +
+
+ +
getter/setter pair
+ +
+ +
+ targetPosition + Coordinates + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearBase() + → void + + + +
+
+ + + +
+ +
+ clearCurrentPosition() + → void + + + +
+
+ + + +
+ +
+ clearElbow() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearShoulder() + → void + + + +
+
+ + + +
+ +
+ clearTargetPosition() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + ArmData + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(ArmData)) + ArmData + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + ArmData + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureBase() + MotorData + + + +
+
+ + + +
+ +
+ ensureCurrentPosition() + Coordinates + + + +
+
+ + + +
+ +
+ ensureElbow() + MotorData + + + +
+
+ + + +
+ +
+ ensureShoulder() + MotorData + + + +
+
+ + + +
+ +
+ ensureTargetPosition() + Coordinates + + + +
+
+ + + +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasBase() + → bool + + + +
+
+ + + +
+ +
+ hasCurrentPosition() + → bool + + + +
+
+ + + +
+ +
+ hasElbow() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasShoulder() + → bool + + + +
+
+ + + +
+ +
+ hasTargetPosition() + → bool + + + +
+
+ + + +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + ArmData + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<ArmData> + + + +
+
+ + + +
+ +
+ getDefault() + ArmData + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/ArmData.fromBuffer.html b/docs/data/ArmData/ArmData.fromBuffer.html new file mode 100644 index 0000000000..05ff0c27ae --- /dev/null +++ b/docs/data/ArmData/ArmData.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + ArmData.fromBuffer constructor - ArmData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmData.fromBuffer
+ +
+ +
+
+
+
+
+ +

ArmData.fromBuffer constructor +

+ +
+ + ArmData.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory ArmData.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/ArmData.fromJson.html b/docs/data/ArmData/ArmData.fromJson.html new file mode 100644 index 0000000000..4f185a5fa3 --- /dev/null +++ b/docs/data/ArmData/ArmData.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + ArmData.fromJson constructor - ArmData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmData.fromJson
+ +
+ +
+
+
+
+
+ +

ArmData.fromJson constructor +

+ +
+ + ArmData.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory ArmData.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/ArmData.html b/docs/data/ArmData/ArmData.html new file mode 100644 index 0000000000..1cd18cbb6f --- /dev/null +++ b/docs/data/ArmData/ArmData.html @@ -0,0 +1,142 @@ + + + + + + + + ArmData constructor - ArmData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmData
+ +
+ +
+
+
+
+
+ +

ArmData constructor +

+ +
+ + ArmData({
  1. Coordinates? currentPosition,
  2. +
  3. Coordinates? targetPosition,
  4. +
  5. MotorData? base,
  6. +
  7. MotorData? shoulder,
  8. +
  9. MotorData? elbow,
  10. +
  11. Version? version,
  12. +
}) +
+ + + + +
+

Implementation

+
factory ArmData({
+  Coordinates? currentPosition,
+  Coordinates? targetPosition,
+  MotorData? base,
+  MotorData? shoulder,
+  MotorData? elbow,
+  $0.Version? version,
+}) {
+  final $result = create();
+  if (currentPosition != null) {
+    $result.currentPosition = currentPosition;
+  }
+  if (targetPosition != null) {
+    $result.targetPosition = targetPosition;
+  }
+  if (base != null) {
+    $result.base = base;
+  }
+  if (shoulder != null) {
+    $result.shoulder = shoulder;
+  }
+  if (elbow != null) {
+    $result.elbow = elbow;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/base.html b/docs/data/ArmData/base.html new file mode 100644 index 0000000000..7ba87a9234 --- /dev/null +++ b/docs/data/ArmData/base.html @@ -0,0 +1,150 @@ + + + + + + + + base property - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
base
+ +
+ +
+
+
+
+
+ +

base property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ MotorData + get + base + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+MotorData get base => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + base + (MotorData v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set base(MotorData v) { setField(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/clearBase.html b/docs/data/ArmData/clearBase.html new file mode 100644 index 0000000000..bfd8ccfe8e --- /dev/null +++ b/docs/data/ArmData/clearBase.html @@ -0,0 +1,118 @@ + + + + + + + + clearBase method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearBase
+ +
+ +
+
+
+
+
+ +

clearBase method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearBase() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearBase() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/clearCurrentPosition.html b/docs/data/ArmData/clearCurrentPosition.html new file mode 100644 index 0000000000..0304e7e4c9 --- /dev/null +++ b/docs/data/ArmData/clearCurrentPosition.html @@ -0,0 +1,118 @@ + + + + + + + + clearCurrentPosition method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearCurrentPosition
+ +
+ +
+
+
+
+
+ +

clearCurrentPosition method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearCurrentPosition() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearCurrentPosition() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/clearElbow.html b/docs/data/ArmData/clearElbow.html new file mode 100644 index 0000000000..1b26171db4 --- /dev/null +++ b/docs/data/ArmData/clearElbow.html @@ -0,0 +1,118 @@ + + + + + + + + clearElbow method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearElbow
+ +
+ +
+
+
+
+
+ +

clearElbow method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearElbow() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearElbow() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/clearShoulder.html b/docs/data/ArmData/clearShoulder.html new file mode 100644 index 0000000000..4037aba798 --- /dev/null +++ b/docs/data/ArmData/clearShoulder.html @@ -0,0 +1,118 @@ + + + + + + + + clearShoulder method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearShoulder
+ +
+ +
+
+
+
+
+ +

clearShoulder method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearShoulder() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearShoulder() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/clearTargetPosition.html b/docs/data/ArmData/clearTargetPosition.html new file mode 100644 index 0000000000..9927e9ad81 --- /dev/null +++ b/docs/data/ArmData/clearTargetPosition.html @@ -0,0 +1,118 @@ + + + + + + + + clearTargetPosition method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearTargetPosition
+ +
+ +
+
+
+
+
+ +

clearTargetPosition method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearTargetPosition() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearTargetPosition() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/clearVersion.html b/docs/data/ArmData/clearVersion.html new file mode 100644 index 0000000000..5cc4a2f32a --- /dev/null +++ b/docs/data/ArmData/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+void clearVersion() => clearField(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/clone.html b/docs/data/ArmData/clone.html new file mode 100644 index 0000000000..17af954b91 --- /dev/null +++ b/docs/data/ArmData/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+ArmData +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+ArmData clone() => ArmData()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/copyWith.html b/docs/data/ArmData/copyWith.html new file mode 100644 index 0000000000..c0b0d2399d --- /dev/null +++ b/docs/data/ArmData/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+ArmData +copyWith(
  1. void updates(
    1. ArmData
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+ArmData copyWith(void Function(ArmData) updates) => super.copyWith((message) => updates(message as ArmData)) as ArmData;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/create.html b/docs/data/ArmData/create.html new file mode 100644 index 0000000000..2281fed834 --- /dev/null +++ b/docs/data/ArmData/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +ArmData +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static ArmData create() => ArmData._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/createEmptyInstance.html b/docs/data/ArmData/createEmptyInstance.html new file mode 100644 index 0000000000..49f1814750 --- /dev/null +++ b/docs/data/ArmData/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +ArmData +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
ArmData createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/createRepeated.html b/docs/data/ArmData/createRepeated.html new file mode 100644 index 0000000000..297771c750 --- /dev/null +++ b/docs/data/ArmData/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<ArmData> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<ArmData> createRepeated() => $pb.PbList<ArmData>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/currentPosition.html b/docs/data/ArmData/currentPosition.html new file mode 100644 index 0000000000..216e9345e2 --- /dev/null +++ b/docs/data/ArmData/currentPosition.html @@ -0,0 +1,150 @@ + + + + + + + + currentPosition property - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
currentPosition
+ +
+ +
+
+
+
+
+ +

currentPosition property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ Coordinates + get + currentPosition + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+Coordinates get currentPosition => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + currentPosition + (Coordinates v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set currentPosition(Coordinates v) { setField(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/elbow.html b/docs/data/ArmData/elbow.html new file mode 100644 index 0000000000..25cac21417 --- /dev/null +++ b/docs/data/ArmData/elbow.html @@ -0,0 +1,150 @@ + + + + + + + + elbow property - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
elbow
+ +
+ +
+
+
+
+
+ +

elbow property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ MotorData + get + elbow + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+MotorData get elbow => $_getN(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + elbow + (MotorData v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set elbow(MotorData v) { setField(5, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/ensureBase.html b/docs/data/ArmData/ensureBase.html new file mode 100644 index 0000000000..d122660840 --- /dev/null +++ b/docs/data/ArmData/ensureBase.html @@ -0,0 +1,118 @@ + + + + + + + + ensureBase method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureBase
+ +
+ +
+
+
+
+
+ +

ensureBase method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+MotorData +ensureBase() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+MotorData ensureBase() => $_ensure(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/ensureCurrentPosition.html b/docs/data/ArmData/ensureCurrentPosition.html new file mode 100644 index 0000000000..c624e3f483 --- /dev/null +++ b/docs/data/ArmData/ensureCurrentPosition.html @@ -0,0 +1,118 @@ + + + + + + + + ensureCurrentPosition method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureCurrentPosition
+ +
+ +
+
+
+
+
+ +

ensureCurrentPosition method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+Coordinates +ensureCurrentPosition() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+Coordinates ensureCurrentPosition() => $_ensure(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/ensureElbow.html b/docs/data/ArmData/ensureElbow.html new file mode 100644 index 0000000000..811fb7a89c --- /dev/null +++ b/docs/data/ArmData/ensureElbow.html @@ -0,0 +1,118 @@ + + + + + + + + ensureElbow method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureElbow
+ +
+ +
+
+
+
+
+ +

ensureElbow method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+MotorData +ensureElbow() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+MotorData ensureElbow() => $_ensure(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/ensureShoulder.html b/docs/data/ArmData/ensureShoulder.html new file mode 100644 index 0000000000..9459c2d7b8 --- /dev/null +++ b/docs/data/ArmData/ensureShoulder.html @@ -0,0 +1,118 @@ + + + + + + + + ensureShoulder method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureShoulder
+ +
+ +
+
+
+
+
+ +

ensureShoulder method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+MotorData +ensureShoulder() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+MotorData ensureShoulder() => $_ensure(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/ensureTargetPosition.html b/docs/data/ArmData/ensureTargetPosition.html new file mode 100644 index 0000000000..59200779b7 --- /dev/null +++ b/docs/data/ArmData/ensureTargetPosition.html @@ -0,0 +1,118 @@ + + + + + + + + ensureTargetPosition method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureTargetPosition
+ +
+ +
+
+
+
+
+ +

ensureTargetPosition method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+Coordinates +ensureTargetPosition() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+Coordinates ensureTargetPosition() => $_ensure(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/ensureVersion.html b/docs/data/ArmData/ensureVersion.html new file mode 100644 index 0000000000..ded101b801 --- /dev/null +++ b/docs/data/ArmData/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$0.Version ensureVersion() => $_ensure(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/getDefault.html b/docs/data/ArmData/getDefault.html new file mode 100644 index 0000000000..3eb06f2def --- /dev/null +++ b/docs/data/ArmData/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +ArmData +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static ArmData getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ArmData>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/hasBase.html b/docs/data/ArmData/hasBase.html new file mode 100644 index 0000000000..4a8ad8817b --- /dev/null +++ b/docs/data/ArmData/hasBase.html @@ -0,0 +1,118 @@ + + + + + + + + hasBase method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasBase
+ +
+ +
+
+
+
+
+ +

hasBase method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasBase() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasBase() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/hasCurrentPosition.html b/docs/data/ArmData/hasCurrentPosition.html new file mode 100644 index 0000000000..70dc16ccbd --- /dev/null +++ b/docs/data/ArmData/hasCurrentPosition.html @@ -0,0 +1,118 @@ + + + + + + + + hasCurrentPosition method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasCurrentPosition
+ +
+ +
+
+
+
+
+ +

hasCurrentPosition method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasCurrentPosition() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasCurrentPosition() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/hasElbow.html b/docs/data/ArmData/hasElbow.html new file mode 100644 index 0000000000..1f4e01fc80 --- /dev/null +++ b/docs/data/ArmData/hasElbow.html @@ -0,0 +1,118 @@ + + + + + + + + hasElbow method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasElbow
+ +
+ +
+
+
+
+
+ +

hasElbow method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasElbow() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasElbow() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/hasShoulder.html b/docs/data/ArmData/hasShoulder.html new file mode 100644 index 0000000000..95684258d8 --- /dev/null +++ b/docs/data/ArmData/hasShoulder.html @@ -0,0 +1,118 @@ + + + + + + + + hasShoulder method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasShoulder
+ +
+ +
+
+
+
+
+ +

hasShoulder method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasShoulder() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasShoulder() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/hasTargetPosition.html b/docs/data/ArmData/hasTargetPosition.html new file mode 100644 index 0000000000..221b382a90 --- /dev/null +++ b/docs/data/ArmData/hasTargetPosition.html @@ -0,0 +1,118 @@ + + + + + + + + hasTargetPosition method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasTargetPosition
+ +
+ +
+
+
+
+
+ +

hasTargetPosition method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasTargetPosition() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasTargetPosition() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/hasVersion.html b/docs/data/ArmData/hasVersion.html new file mode 100644 index 0000000000..0869ec909f --- /dev/null +++ b/docs/data/ArmData/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool hasVersion() => $_has(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/info_.html b/docs/data/ArmData/info_.html new file mode 100644 index 0000000000..5ee1cb3e97 --- /dev/null +++ b/docs/data/ArmData/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/shoulder.html b/docs/data/ArmData/shoulder.html new file mode 100644 index 0000000000..d44c837a4c --- /dev/null +++ b/docs/data/ArmData/shoulder.html @@ -0,0 +1,150 @@ + + + + + + + + shoulder property - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
shoulder
+ +
+ +
+
+
+
+
+ +

shoulder property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ MotorData + get + shoulder + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+MotorData get shoulder => $_getN(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + shoulder + (MotorData v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set shoulder(MotorData v) { setField(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/targetPosition.html b/docs/data/ArmData/targetPosition.html new file mode 100644 index 0000000000..12da6f1e57 --- /dev/null +++ b/docs/data/ArmData/targetPosition.html @@ -0,0 +1,150 @@ + + + + + + + + targetPosition property - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
targetPosition
+ +
+ +
+
+
+
+
+ +

targetPosition property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ Coordinates + get + targetPosition + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+Coordinates get targetPosition => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + targetPosition + (Coordinates v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set targetPosition(Coordinates v) { setField(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmData/version.html b/docs/data/ArmData/version.html new file mode 100644 index 0000000000..27907a2135 --- /dev/null +++ b/docs/data/ArmData/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - ArmData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+$0.Version get version => $_getN(5);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+set version($0.Version v) { setField(6, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmMetrics-class-sidebar.html b/docs/data/ArmMetrics-class-sidebar.html new file mode 100644 index 0000000000..e72c6adddd --- /dev/null +++ b/docs/data/ArmMetrics-class-sidebar.html @@ -0,0 +1,43 @@ +
    + +
  1. Constructors
  2. +
  3. ArmMetrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. data
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. matchesVersion
  16. +
  17. name
  18. +
  19. overallSeverity
  20. +
  21. runtimeType
  22. +
  23. supportedVersion
  24. +
  25. version
  26. +
  27. versionCommand
  28. + +
  29. Methods
  30. +
  31. addListener
  32. +
  33. checkVersion
  34. +
  35. dispose
  36. +
  37. getMotorData
  38. +
  39. noSuchMethod
  40. +
  41. notifyListeners
  42. +
  43. parseVersion
  44. +
  45. removeListener
  46. +
  47. toString
  48. +
  49. update
  50. + +
  51. Operators
  52. +
  53. operator ==
  54. + + + + + + +
diff --git a/docs/data/ArmMetrics-class.html b/docs/data/ArmMetrics-class.html new file mode 100644 index 0000000000..3da934b5c4 --- /dev/null +++ b/docs/data/ArmMetrics-class.html @@ -0,0 +1,440 @@ + + + + + + + + ArmMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmMetrics
+ +
+ +
+
+
+
+
+ +

ArmMetrics class + +

+ + +
+

Metrics reported by the HREI subsystem about the arm. Does not include the gripper.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ArmMetrics() +
+
+ Metrics from the arm. +
+
+
+ +
+

Properties

+
+
+ allMetrics + → List<MetricLine> + + +
+
+ A list of user-friendly explanations for each of the metrics. +
no setteroverride
+ +
+ +
+ data + ArmData + + +
+
+ The underlying data used to get these metrics. +
finalinherited
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ matchesVersion + → bool + + +
+
+ Whether the Dashboard is certain the firmware matches the right version. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ A collective name for this group of metrics (usually the name of the subsystem). +
no setteroverride
+ +
+ +
+ overallSeverity + Severity? + + +
+
+ Fetch the overall Security +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ supportedVersion + Version + + +
+
+ The currently-supported version for this Dashboard. +
no setteroverride
+ +
+ +
+ version + Version + + +
+
+ The version of the data that the firmware sends. +
getter/setter pairinherited
+ +
+ +
+ versionCommand + Message + + +
+
+ A command to notify the firmware of the Dashboard's supportedVersion. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ checkVersion(ArmData data) + → bool + + + +
+
+ Checks this message's version and checks for support. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ getMotorData(MotorData motor) + → List<MetricLine> + + + +
+
+ Returns a description of a MotorData. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ parseVersion(ArmData message) + Version + + + +
+
+ Parses the version out of a given data packet. +
override
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(ArmData value) + → void + + + +
+
+ Updates data with new data. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmMetrics/ArmMetrics.html b/docs/data/ArmMetrics/ArmMetrics.html new file mode 100644 index 0000000000..63e0c77543 --- /dev/null +++ b/docs/data/ArmMetrics/ArmMetrics.html @@ -0,0 +1,111 @@ + + + + + + + + ArmMetrics constructor - ArmMetrics - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmMetrics
+ +
+ +
+
+
+
+
+ +

ArmMetrics constructor +

+ +
+ + ArmMetrics() +
+ +
+

Metrics from the arm.

+
+ + + +
+

Implementation

+
ArmMetrics() : super(ArmData());
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmMetrics/allMetrics.html b/docs/data/ArmMetrics/allMetrics.html new file mode 100644 index 0000000000..0d0cb91e53 --- /dev/null +++ b/docs/data/ArmMetrics/allMetrics.html @@ -0,0 +1,142 @@ + + + + + + + + allMetrics property - ArmMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
allMetrics
+ +
+ +
+
+
+
+
+ +

allMetrics property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<MetricLine> + get + allMetrics +
override
+ +
+ +
+

A list of user-friendly explanations for each of the metrics.

+

Be sure to store the actual values as fields. This property should be a list of one +user-friendly explanation per metric.

+
+ + +
+

Implementation

+
@override
+List<MetricLine> get allMetrics => [
+	MetricLine("IK: "),
+	MetricLine("  Current: ${data.currentPosition.prettyPrint}"),
+	MetricLine("  Target: ${data.targetPosition.prettyPrint}"),
+	MetricLine("------------------------------"),
+	MetricLine("Swivel: "),
+    ...getMotorData(data.base),
+	MetricLine("------------------------------"),
+	MetricLine("Shoulder: "),
+    ...getMotorData(data.shoulder),
+	MetricLine("------------------------------"),
+	MetricLine("Elbow: "),
+    ...getMotorData(data.elbow),
+];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmMetrics/getMotorData.html b/docs/data/ArmMetrics/getMotorData.html new file mode 100644 index 0000000000..c1baed86ab --- /dev/null +++ b/docs/data/ArmMetrics/getMotorData.html @@ -0,0 +1,122 @@ + + + + + + + + getMotorData method - ArmMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getMotorData
+ +
+ +
+
+
+
+
+ +

getMotorData method +

+ +
+ +List<MetricLine> +getMotorData(
  1. MotorData motor
  2. +
) + + + +
+ +
+

Returns a description of a MotorData.

+
+ + + +
+

Implementation

+
List<MetricLine> getMotorData(MotorData motor) => [
+	MetricLine("  Is moving? ${motor.isMoving.displayName}", severity: motor.isMoving.toBool() ? Severity.info : null),
+	MetricLine("  Limit? ${motor.isLimitSwitchPressed.displayName}", severity: motor.isLimitSwitchPressed.toBool() ? Severity.warning : null),
+	MetricLine("  Direction: ${motor.direction.humanName}"),
+	MetricLine("  Steps: ${motor.currentStep} --> ${motor.targetStep}"),
+	MetricLine("  Angle: ${motor.angle.toDegrees()} degrees"),
+];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmMetrics/name.html b/docs/data/ArmMetrics/name.html new file mode 100644 index 0000000000..8b4b560091 --- /dev/null +++ b/docs/data/ArmMetrics/name.html @@ -0,0 +1,127 @@ + + + + + + + + name property - ArmMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ String + get + name +
override
+ +
+ +
+

A collective name for this group of metrics (usually the name of the subsystem).

+
+ + +
+

Implementation

+
@override
+String get name => "Arm Base";
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmMetrics/parseVersion.html b/docs/data/ArmMetrics/parseVersion.html new file mode 100644 index 0000000000..471265b61f --- /dev/null +++ b/docs/data/ArmMetrics/parseVersion.html @@ -0,0 +1,122 @@ + + + + + + + + parseVersion method - ArmMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseVersion
+ +
+ +
+
+
+
+
+ +

parseVersion method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Version +parseVersion(
  1. ArmData message
  2. +
) + +
override
+ +
+ +
+

Parses the version out of a given data packet.

+
+ + + +
+

Implementation

+
@override
+Version parseVersion(ArmData message) => message.version;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmMetrics/supportedVersion.html b/docs/data/ArmMetrics/supportedVersion.html new file mode 100644 index 0000000000..9ff46df499 --- /dev/null +++ b/docs/data/ArmMetrics/supportedVersion.html @@ -0,0 +1,127 @@ + + + + + + + + supportedVersion property - ArmMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
supportedVersion
+ +
+ +
+
+
+
+
+ +

supportedVersion property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Version + get + supportedVersion +
override
+ +
+ +
+

The currently-supported version for this Dashboard.

+
+ + +
+

Implementation

+
@override
+Version get supportedVersion => Version(major: 1);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmMetrics/versionCommand.html b/docs/data/ArmMetrics/versionCommand.html new file mode 100644 index 0000000000..6a314b314b --- /dev/null +++ b/docs/data/ArmMetrics/versionCommand.html @@ -0,0 +1,127 @@ + + + + + + + + versionCommand property - ArmMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
versionCommand
+ +
+ +
+
+
+
+
+ +

versionCommand property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Message + get + versionCommand +
override
+ +
+ +
+

A command to notify the firmware of the Dashboard's supportedVersion.

+
+ + +
+

Implementation

+
@override
+Message get versionCommand => ArmCommand(version: supportedVersion);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings-class-sidebar.html b/docs/data/ArmSettings-class-sidebar.html new file mode 100644 index 0000000000..aa09687793 --- /dev/null +++ b/docs/data/ArmSettings-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. ArmSettings
  4. +
  5. fromJson
  6. + + + +
  7. + Properties +
  8. +
  9. elbow
  10. +
  11. hashCode
  12. +
  13. ikIncrement
  14. +
  15. lift
  16. +
  17. pinch
  18. +
  19. rotate
  20. +
  21. runtimeType
  22. +
  23. shoulder
  24. +
  25. swivel
  26. +
  27. useIK
  28. + +
  29. Methods
  30. +
  31. noSuchMethod
  32. +
  33. toJson
  34. +
  35. toString
  36. + +
  37. Operators
  38. +
  39. operator ==
  40. + + + + + + +
diff --git a/docs/data/ArmSettings-class.html b/docs/data/ArmSettings-class.html new file mode 100644 index 0000000000..02dcc39a86 --- /dev/null +++ b/docs/data/ArmSettings-class.html @@ -0,0 +1,319 @@ + + + + + + + + ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmSettings
+ +
+ +
+
+
+
+
+ +

ArmSettings class + +

+ + +
+

Settings relating to the arm.

+
+ + + + +
+

Constructors

+
+
+ ArmSettings({required double shoulder, required double elbow, required double swivel, required double pinch, required double lift, required double rotate, required double ikIncrement, required bool useIK}) +
+
+ A const constructor. +
const
+
+
+ ArmSettings.fromJson(Json? json) +
+
+ Parses arm settings from a JSON map. +
+
+
+ +
+

Properties

+
+
+ elbow + → double + + +
+
+ How many radians to move the elbow joint each frame. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ ikIncrement + → double + + +
+
+ How many mm to move every 10 ms in IK mode. +
final
+ +
+ +
+ lift + → double + + +
+
+ How many radians to lift the gripper each frame. +
final
+ +
+ +
+ pinch + → double + + +
+
+ How many radians to pinch each frame. +
final
+ +
+ +
+ rotate + → double + + +
+
+ How many radians to rotate the gripper each frame. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shoulder + → double + + +
+
+ How many radians to move the shoulder joint each frame. +
final
+ +
+ +
+ swivel + → double + + +
+
+ How many radians to move the swivel joint each frame. +
final
+ +
+ +
+ useIK + → bool + + +
+
+ Whether the arm is in manual or IK mode. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toJson() + Json + + + +
+
+ Serializes these settings to a JSON map. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/ArmSettings.fromJson.html b/docs/data/ArmSettings/ArmSettings.fromJson.html new file mode 100644 index 0000000000..50e6c49773 --- /dev/null +++ b/docs/data/ArmSettings/ArmSettings.fromJson.html @@ -0,0 +1,120 @@ + + + + + + + + ArmSettings.fromJson constructor - ArmSettings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmSettings.fromJson
+ +
+ +
+
+
+
+
+ +

ArmSettings.fromJson constructor +

+ +
+ + ArmSettings.fromJson(
  1. Json? json
  2. +
) +
+ +
+

Parses arm settings from a JSON map.

+
+ + + +
+

Implementation

+
ArmSettings.fromJson(Json? json) :
+  shoulder = json?["shoulder"] ?? 0.005,
+  elbow = json?["elbow"] ?? 0.005,
+  swivel = json?["swivel"] ?? 0.2,
+  pinch = json?["pinch"] ?? 0.002,
+  lift = json?["lift"] ?? 0.01,
+  rotate = json?["rotate"] ?? 0.01,
+  useIK = json?["useIK"] ?? false,
+  ikIncrement = json?["ikIncrement"] ?? 10;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/ArmSettings.html b/docs/data/ArmSettings/ArmSettings.html new file mode 100644 index 0000000000..4c4e4d1ca2 --- /dev/null +++ b/docs/data/ArmSettings/ArmSettings.html @@ -0,0 +1,128 @@ + + + + + + + + ArmSettings constructor - ArmSettings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmSettings
+ +
+ +
+
+
+
+
+ +

ArmSettings constructor +

+ +
+ const + ArmSettings({
  1. required double shoulder,
  2. +
  3. required double elbow,
  4. +
  5. required double swivel,
  6. +
  7. required double pinch,
  8. +
  9. required double lift,
  10. +
  11. required double rotate,
  12. +
  13. required double ikIncrement,
  14. +
  15. required bool useIK,
  16. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const ArmSettings({
+  required this.shoulder,
+  required this.elbow,
+  required this.swivel,
+  required this.pinch,
+  required this.lift,
+  required this.rotate,
+  required this.ikIncrement,
+  required this.useIK,
+ });
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/elbow.html b/docs/data/ArmSettings/elbow.html new file mode 100644 index 0000000000..e1e7afae38 --- /dev/null +++ b/docs/data/ArmSettings/elbow.html @@ -0,0 +1,115 @@ + + + + + + + + elbow property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
elbow
+ +
+ +
+
+
+
+
+ +

elbow property +

+ + +
+ + double + elbow +
final
+ +
+ +
+

How many radians to move the elbow joint each frame.

+
+ + +
+

Implementation

+
final double elbow;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/hashCode.html b/docs/data/ArmSettings/hashCode.html new file mode 100644 index 0000000000..0f81f68ad7 --- /dev/null +++ b/docs/data/ArmSettings/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/ikIncrement.html b/docs/data/ArmSettings/ikIncrement.html new file mode 100644 index 0000000000..45a70f2400 --- /dev/null +++ b/docs/data/ArmSettings/ikIncrement.html @@ -0,0 +1,115 @@ + + + + + + + + ikIncrement property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ikIncrement
+ +
+ +
+
+
+
+
+ +

ikIncrement property +

+ + +
+ + double + ikIncrement +
final
+ +
+ +
+

How many mm to move every 10 ms in IK mode.

+
+ + +
+

Implementation

+
final double ikIncrement;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/lift.html b/docs/data/ArmSettings/lift.html new file mode 100644 index 0000000000..8ebcf923a2 --- /dev/null +++ b/docs/data/ArmSettings/lift.html @@ -0,0 +1,115 @@ + + + + + + + + lift property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
lift
+ +
+ +
+
+
+
+
+ +

lift property +

+ + +
+ + double + lift +
final
+ +
+ +
+

How many radians to lift the gripper each frame.

+
+ + +
+

Implementation

+
final double lift;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/noSuchMethod.html b/docs/data/ArmSettings/noSuchMethod.html new file mode 100644 index 0000000000..59b13900bf --- /dev/null +++ b/docs/data/ArmSettings/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/operator_equals.html b/docs/data/ArmSettings/operator_equals.html new file mode 100644 index 0000000000..2d75cd956b --- /dev/null +++ b/docs/data/ArmSettings/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/pinch.html b/docs/data/ArmSettings/pinch.html new file mode 100644 index 0000000000..a84de4012b --- /dev/null +++ b/docs/data/ArmSettings/pinch.html @@ -0,0 +1,115 @@ + + + + + + + + pinch property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pinch
+ +
+ +
+
+
+
+
+ +

pinch property +

+ + +
+ + double + pinch +
final
+ +
+ +
+

How many radians to pinch each frame.

+
+ + +
+

Implementation

+
final double pinch;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/rotate.html b/docs/data/ArmSettings/rotate.html new file mode 100644 index 0000000000..8b2d3f07a4 --- /dev/null +++ b/docs/data/ArmSettings/rotate.html @@ -0,0 +1,115 @@ + + + + + + + + rotate property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rotate
+ +
+ +
+
+
+
+
+ +

rotate property +

+ + +
+ + double + rotate +
final
+ +
+ +
+

How many radians to rotate the gripper each frame.

+
+ + +
+

Implementation

+
final double rotate;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/runtimeType.html b/docs/data/ArmSettings/runtimeType.html new file mode 100644 index 0000000000..927b8b2444 --- /dev/null +++ b/docs/data/ArmSettings/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/shoulder.html b/docs/data/ArmSettings/shoulder.html new file mode 100644 index 0000000000..de1532d348 --- /dev/null +++ b/docs/data/ArmSettings/shoulder.html @@ -0,0 +1,115 @@ + + + + + + + + shoulder property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
shoulder
+ +
+ +
+
+
+
+
+ +

shoulder property +

+ + +
+ + double + shoulder +
final
+ +
+ +
+

How many radians to move the shoulder joint each frame.

+
+ + +
+

Implementation

+
final double shoulder;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/swivel.html b/docs/data/ArmSettings/swivel.html new file mode 100644 index 0000000000..7519d869ae --- /dev/null +++ b/docs/data/ArmSettings/swivel.html @@ -0,0 +1,115 @@ + + + + + + + + swivel property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
swivel
+ +
+ +
+
+
+
+
+ +

swivel property +

+ + +
+ + double + swivel +
final
+ +
+ +
+

How many radians to move the swivel joint each frame.

+
+ + +
+

Implementation

+
final double swivel;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/toJson.html b/docs/data/ArmSettings/toJson.html new file mode 100644 index 0000000000..531038ff8d --- /dev/null +++ b/docs/data/ArmSettings/toJson.html @@ -0,0 +1,124 @@ + + + + + + + + toJson method - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toJson
+ +
+ +
+
+
+
+
+ +

toJson method +

+ +
+ +Json +toJson() + + + +
+ +
+

Serializes these settings to a JSON map.

+
+ + + +
+

Implementation

+
Json toJson() => {
+  "shoulder": shoulder,
+  "elbow": elbow,
+  "swivel": swivel,
+  "pinch": pinch,
+  "lift": lift,
+  "rotate": rotate,
+  "useIK": useIK,
+  "ikIncrement": ikIncrement,
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/toString.html b/docs/data/ArmSettings/toString.html new file mode 100644 index 0000000000..e5270761c8 --- /dev/null +++ b/docs/data/ArmSettings/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ArmSettings/useIK.html b/docs/data/ArmSettings/useIK.html new file mode 100644 index 0000000000..e8d2b4d525 --- /dev/null +++ b/docs/data/ArmSettings/useIK.html @@ -0,0 +1,115 @@ + + + + + + + + useIK property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
useIK
+ +
+ +
+
+
+
+
+ +

useIK property +

+ + +
+ + bool + useIK +
final
+ +
+ +
+

Whether the arm is in manual or IK mode.

+
+ + +
+

Implementation

+
final bool useIK;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand-class-sidebar.html b/docs/data/AutonomyCommand-class-sidebar.html new file mode 100644 index 0000000000..d9e71caa71 --- /dev/null +++ b/docs/data/AutonomyCommand-class-sidebar.html @@ -0,0 +1,90 @@ +
    + +
  1. Constructors
  2. +
  3. AutonomyCommand
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. abort
  12. +
  13. arucoId
  14. +
  15. destination
  16. +
  17. eventPlugin
  18. +
  19. hashCode
  20. +
  21. info_
  22. +
  23. isFrozen
  24. +
  25. runtimeType
  26. +
  27. task
  28. +
  29. unknownFields
  30. +
  31. version
  32. + +
  33. Methods
  34. +
  35. addExtension
  36. +
  37. check
  38. +
  39. clear
  40. +
  41. clearAbort
  42. +
  43. clearArucoId
  44. +
  45. clearDestination
  46. +
  47. clearExtension
  48. +
  49. clearField
  50. +
  51. clearTask
  52. +
  53. clearVersion
  54. +
  55. clone
  56. +
  57. copyWith
  58. +
  59. createEmptyInstance
  60. +
  61. createMapField
  62. +
  63. createRepeatedField
  64. +
  65. ensureDestination
  66. +
  67. ensureVersion
  68. +
  69. extensionsAreInitialized
  70. +
  71. freeze
  72. +
  73. getDefaultForField
  74. +
  75. getExtension
  76. +
  77. getField
  78. +
  79. getFieldOrNull
  80. +
  81. getTagNumber
  82. +
  83. hasAbort
  84. +
  85. hasArucoId
  86. +
  87. hasDestination
  88. +
  89. hasExtension
  90. +
  91. hasField
  92. +
  93. hasRequiredFields
  94. +
  95. hasTask
  96. +
  97. hasVersion
  98. +
  99. isInitialized
  100. +
  101. mergeFromBuffer
  102. +
  103. mergeFromCodedBufferReader
  104. +
  105. mergeFromJson
  106. +
  107. mergeFromJsonMap
  108. +
  109. mergeFromMessage
  110. +
  111. mergeFromProto3Json
  112. +
  113. mergeUnknownFields
  114. +
  115. noSuchMethod
  116. +
  117. setExtension
  118. +
  119. setField
  120. +
  121. toBuilder
  122. +
  123. toDebugString
  124. +
  125. toProto3Json
  126. +
  127. toString
  128. +
  129. writeToBuffer
  130. +
  131. writeToCodedBufferWriter
  132. +
  133. writeToJson
  134. +
  135. writeToJsonMap
  136. + +
  137. Operators
  138. +
  139. operator ==
  140. + + + + + +
  141. Static methods
  142. +
  143. create
  144. +
  145. createRepeated
  146. +
  147. getDefault
  148. + +
diff --git a/docs/data/AutonomyCommand-class.html b/docs/data/AutonomyCommand-class.html new file mode 100644 index 0000000000..6bf491c41e --- /dev/null +++ b/docs/data/AutonomyCommand-class.html @@ -0,0 +1,1035 @@ + + + + + + + + AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyCommand
+ +
+ +
+
+
+
+
+ +

AutonomyCommand class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ AutonomyCommand({GpsCoordinates? destination, AutonomyTask? task, int? arucoId, bool? abort, Version? version}) +
+
+ +
factory
+
+
+ AutonomyCommand.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ AutonomyCommand.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ abort + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ arucoId + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ destination + GpsCoordinates + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ task + AutonomyTask + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearAbort() + → void + + + +
+
+ + + +
+ +
+ clearArucoId() + → void + + + +
+
+ + + +
+ +
+ clearDestination() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearTask() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + AutonomyCommand + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(AutonomyCommand)) + AutonomyCommand + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + AutonomyCommand + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureDestination() + GpsCoordinates + + + +
+
+ + + +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasAbort() + → bool + + + +
+
+ + + +
+ +
+ hasArucoId() + → bool + + + +
+
+ + + +
+ +
+ hasDestination() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasTask() + → bool + + + +
+
+ + + +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + AutonomyCommand + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<AutonomyCommand> + + + +
+
+ + + +
+ +
+ getDefault() + AutonomyCommand + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/AutonomyCommand.fromBuffer.html b/docs/data/AutonomyCommand/AutonomyCommand.fromBuffer.html new file mode 100644 index 0000000000..23762d19a1 --- /dev/null +++ b/docs/data/AutonomyCommand/AutonomyCommand.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + AutonomyCommand.fromBuffer constructor - AutonomyCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyCommand.fromBuffer
+ +
+ +
+
+
+
+
+ +

AutonomyCommand.fromBuffer constructor +

+ +
+ + AutonomyCommand.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory AutonomyCommand.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/AutonomyCommand.fromJson.html b/docs/data/AutonomyCommand/AutonomyCommand.fromJson.html new file mode 100644 index 0000000000..9c955c755f --- /dev/null +++ b/docs/data/AutonomyCommand/AutonomyCommand.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + AutonomyCommand.fromJson constructor - AutonomyCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyCommand.fromJson
+ +
+ +
+
+
+
+
+ +

AutonomyCommand.fromJson constructor +

+ +
+ + AutonomyCommand.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory AutonomyCommand.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/AutonomyCommand.html b/docs/data/AutonomyCommand/AutonomyCommand.html new file mode 100644 index 0000000000..9ea6553e95 --- /dev/null +++ b/docs/data/AutonomyCommand/AutonomyCommand.html @@ -0,0 +1,137 @@ + + + + + + + + AutonomyCommand constructor - AutonomyCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyCommand
+ +
+ +
+
+
+
+
+ +

AutonomyCommand constructor +

+ +
+ + AutonomyCommand({
  1. GpsCoordinates? destination,
  2. +
  3. AutonomyTask? task,
  4. +
  5. int? arucoId,
  6. +
  7. bool? abort,
  8. +
  9. Version? version,
  10. +
}) +
+ + + + +
+

Implementation

+
factory AutonomyCommand({
+  $2.GpsCoordinates? destination,
+  AutonomyTask? task,
+  $core.int? arucoId,
+  $core.bool? abort,
+  $0.Version? version,
+}) {
+  final $result = create();
+  if (destination != null) {
+    $result.destination = destination;
+  }
+  if (task != null) {
+    $result.task = task;
+  }
+  if (arucoId != null) {
+    $result.arucoId = arucoId;
+  }
+  if (abort != null) {
+    $result.abort = abort;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/abort.html b/docs/data/AutonomyCommand/abort.html new file mode 100644 index 0000000000..4d9bfdce41 --- /dev/null +++ b/docs/data/AutonomyCommand/abort.html @@ -0,0 +1,150 @@ + + + + + + + + abort property - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
abort
+ +
+ +
+
+
+
+
+ +

abort property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ bool + get + abort + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool get abort => $_getBF(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + abort + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set abort($core.bool v) { $_setBool(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/arucoId.html b/docs/data/AutonomyCommand/arucoId.html new file mode 100644 index 0000000000..4b1175eb4b --- /dev/null +++ b/docs/data/AutonomyCommand/arucoId.html @@ -0,0 +1,150 @@ + + + + + + + + arucoId property - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
arucoId
+ +
+ +
+
+
+
+
+ +

arucoId property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ int + get + arucoId + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.int get arucoId => $_getIZ(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + arucoId + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set arucoId($core.int v) { $_setSignedInt32(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/clearAbort.html b/docs/data/AutonomyCommand/clearAbort.html new file mode 100644 index 0000000000..46b2d66ef7 --- /dev/null +++ b/docs/data/AutonomyCommand/clearAbort.html @@ -0,0 +1,118 @@ + + + + + + + + clearAbort method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearAbort
+ +
+ +
+
+
+
+
+ +

clearAbort method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearAbort() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearAbort() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/clearArucoId.html b/docs/data/AutonomyCommand/clearArucoId.html new file mode 100644 index 0000000000..acdcdf58a1 --- /dev/null +++ b/docs/data/AutonomyCommand/clearArucoId.html @@ -0,0 +1,118 @@ + + + + + + + + clearArucoId method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearArucoId
+ +
+ +
+
+
+
+
+ +

clearArucoId method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearArucoId() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearArucoId() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/clearDestination.html b/docs/data/AutonomyCommand/clearDestination.html new file mode 100644 index 0000000000..2bdf9500f2 --- /dev/null +++ b/docs/data/AutonomyCommand/clearDestination.html @@ -0,0 +1,118 @@ + + + + + + + + clearDestination method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearDestination
+ +
+ +
+
+
+
+
+ +

clearDestination method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearDestination() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearDestination() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/clearTask.html b/docs/data/AutonomyCommand/clearTask.html new file mode 100644 index 0000000000..7f5201518a --- /dev/null +++ b/docs/data/AutonomyCommand/clearTask.html @@ -0,0 +1,118 @@ + + + + + + + + clearTask method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearTask
+ +
+ +
+
+
+
+
+ +

clearTask method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearTask() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearTask() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/clearVersion.html b/docs/data/AutonomyCommand/clearVersion.html new file mode 100644 index 0000000000..b52e62475c --- /dev/null +++ b/docs/data/AutonomyCommand/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearVersion() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/clone.html b/docs/data/AutonomyCommand/clone.html new file mode 100644 index 0000000000..10e36d0dad --- /dev/null +++ b/docs/data/AutonomyCommand/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+AutonomyCommand +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+AutonomyCommand clone() => AutonomyCommand()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/copyWith.html b/docs/data/AutonomyCommand/copyWith.html new file mode 100644 index 0000000000..dcc3f776c4 --- /dev/null +++ b/docs/data/AutonomyCommand/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+AutonomyCommand +copyWith(
  1. void updates(
    1. AutonomyCommand
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+AutonomyCommand copyWith(void Function(AutonomyCommand) updates) => super.copyWith((message) => updates(message as AutonomyCommand)) as AutonomyCommand;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/create.html b/docs/data/AutonomyCommand/create.html new file mode 100644 index 0000000000..1e688b9262 --- /dev/null +++ b/docs/data/AutonomyCommand/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +AutonomyCommand +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static AutonomyCommand create() => AutonomyCommand._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/createEmptyInstance.html b/docs/data/AutonomyCommand/createEmptyInstance.html new file mode 100644 index 0000000000..7dea79ab32 --- /dev/null +++ b/docs/data/AutonomyCommand/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +AutonomyCommand +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
AutonomyCommand createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/createRepeated.html b/docs/data/AutonomyCommand/createRepeated.html new file mode 100644 index 0000000000..5477ca0ce8 --- /dev/null +++ b/docs/data/AutonomyCommand/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<AutonomyCommand> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<AutonomyCommand> createRepeated() => $pb.PbList<AutonomyCommand>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/destination.html b/docs/data/AutonomyCommand/destination.html new file mode 100644 index 0000000000..cecc55302b --- /dev/null +++ b/docs/data/AutonomyCommand/destination.html @@ -0,0 +1,150 @@ + + + + + + + + destination property - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
destination
+ +
+ +
+
+
+
+
+ +

destination property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ GpsCoordinates + get + destination + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+$2.GpsCoordinates get destination => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + destination + (GpsCoordinates v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set destination($2.GpsCoordinates v) { setField(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/ensureDestination.html b/docs/data/AutonomyCommand/ensureDestination.html new file mode 100644 index 0000000000..a458f634cb --- /dev/null +++ b/docs/data/AutonomyCommand/ensureDestination.html @@ -0,0 +1,118 @@ + + + + + + + + ensureDestination method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureDestination
+ +
+ +
+
+
+
+
+ +

ensureDestination method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+GpsCoordinates +ensureDestination() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$2.GpsCoordinates ensureDestination() => $_ensure(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/ensureVersion.html b/docs/data/AutonomyCommand/ensureVersion.html new file mode 100644 index 0000000000..a03af84f3a --- /dev/null +++ b/docs/data/AutonomyCommand/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$0.Version ensureVersion() => $_ensure(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/getDefault.html b/docs/data/AutonomyCommand/getDefault.html new file mode 100644 index 0000000000..ed3fcef069 --- /dev/null +++ b/docs/data/AutonomyCommand/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +AutonomyCommand +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static AutonomyCommand getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<AutonomyCommand>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/hasAbort.html b/docs/data/AutonomyCommand/hasAbort.html new file mode 100644 index 0000000000..41d5f56082 --- /dev/null +++ b/docs/data/AutonomyCommand/hasAbort.html @@ -0,0 +1,118 @@ + + + + + + + + hasAbort method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasAbort
+ +
+ +
+
+
+
+
+ +

hasAbort method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasAbort() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasAbort() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/hasArucoId.html b/docs/data/AutonomyCommand/hasArucoId.html new file mode 100644 index 0000000000..c28ca433d1 --- /dev/null +++ b/docs/data/AutonomyCommand/hasArucoId.html @@ -0,0 +1,118 @@ + + + + + + + + hasArucoId method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasArucoId
+ +
+ +
+
+
+
+
+ +

hasArucoId method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasArucoId() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasArucoId() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/hasDestination.html b/docs/data/AutonomyCommand/hasDestination.html new file mode 100644 index 0000000000..25a3df6972 --- /dev/null +++ b/docs/data/AutonomyCommand/hasDestination.html @@ -0,0 +1,118 @@ + + + + + + + + hasDestination method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasDestination
+ +
+ +
+
+
+
+
+ +

hasDestination method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasDestination() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasDestination() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/hasTask.html b/docs/data/AutonomyCommand/hasTask.html new file mode 100644 index 0000000000..860bee5490 --- /dev/null +++ b/docs/data/AutonomyCommand/hasTask.html @@ -0,0 +1,118 @@ + + + + + + + + hasTask method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasTask
+ +
+ +
+
+
+
+
+ +

hasTask method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasTask() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasTask() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/hasVersion.html b/docs/data/AutonomyCommand/hasVersion.html new file mode 100644 index 0000000000..d4c04c6957 --- /dev/null +++ b/docs/data/AutonomyCommand/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasVersion() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/info_.html b/docs/data/AutonomyCommand/info_.html new file mode 100644 index 0000000000..717bb51f25 --- /dev/null +++ b/docs/data/AutonomyCommand/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/task.html b/docs/data/AutonomyCommand/task.html new file mode 100644 index 0000000000..ffc8ea22f4 --- /dev/null +++ b/docs/data/AutonomyCommand/task.html @@ -0,0 +1,150 @@ + + + + + + + + task property - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
task
+ +
+ +
+
+
+
+
+ +

task property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ AutonomyTask + get + task + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+AutonomyTask get task => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + task + (AutonomyTask v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set task(AutonomyTask v) { setField(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyCommand/version.html b/docs/data/AutonomyCommand/version.html new file mode 100644 index 0000000000..090a976880 --- /dev/null +++ b/docs/data/AutonomyCommand/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+$0.Version get version => $_getN(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set version($0.Version v) { setField(5, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData-class-sidebar.html b/docs/data/AutonomyData-class-sidebar.html new file mode 100644 index 0000000000..d292a34bac --- /dev/null +++ b/docs/data/AutonomyData-class-sidebar.html @@ -0,0 +1,92 @@ +
    + +
  1. Constructors
  2. +
  3. AutonomyData
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. crash
  12. +
  13. destination
  14. +
  15. eventPlugin
  16. +
  17. hashCode
  18. +
  19. info_
  20. +
  21. isFrozen
  22. +
  23. obstacles
  24. +
  25. path
  26. +
  27. runtimeType
  28. +
  29. state
  30. +
  31. task
  32. +
  33. unknownFields
  34. +
  35. version
  36. + +
  37. Methods
  38. +
  39. addExtension
  40. +
  41. check
  42. +
  43. clear
  44. +
  45. clearCrash
  46. +
  47. clearDestination
  48. +
  49. clearExtension
  50. +
  51. clearField
  52. +
  53. clearState
  54. +
  55. clearTask
  56. +
  57. clearVersion
  58. +
  59. clone
  60. +
  61. copyWith
  62. +
  63. createEmptyInstance
  64. +
  65. createMapField
  66. +
  67. createRepeatedField
  68. +
  69. ensureDestination
  70. +
  71. ensureVersion
  72. +
  73. extensionsAreInitialized
  74. +
  75. freeze
  76. +
  77. getDefaultForField
  78. +
  79. getExtension
  80. +
  81. getField
  82. +
  83. getFieldOrNull
  84. +
  85. getTagNumber
  86. +
  87. hasCrash
  88. +
  89. hasDestination
  90. +
  91. hasExtension
  92. +
  93. hasField
  94. +
  95. hasRequiredFields
  96. +
  97. hasState
  98. +
  99. hasTask
  100. +
  101. hasVersion
  102. +
  103. isInitialized
  104. +
  105. mergeFromBuffer
  106. +
  107. mergeFromCodedBufferReader
  108. +
  109. mergeFromJson
  110. +
  111. mergeFromJsonMap
  112. +
  113. mergeFromMessage
  114. +
  115. mergeFromProto3Json
  116. +
  117. mergeUnknownFields
  118. +
  119. noSuchMethod
  120. +
  121. setExtension
  122. +
  123. setField
  124. +
  125. toBuilder
  126. +
  127. toDebugString
  128. +
  129. toProto3Json
  130. +
  131. toString
  132. +
  133. writeToBuffer
  134. +
  135. writeToCodedBufferWriter
  136. +
  137. writeToJson
  138. +
  139. writeToJsonMap
  140. + +
  141. Operators
  142. +
  143. operator ==
  144. + + + + + +
  145. Static methods
  146. +
  147. create
  148. +
  149. createRepeated
  150. +
  151. getDefault
  152. + +
diff --git a/docs/data/AutonomyData-class.html b/docs/data/AutonomyData-class.html new file mode 100644 index 0000000000..af2e01a699 --- /dev/null +++ b/docs/data/AutonomyData-class.html @@ -0,0 +1,1059 @@ + + + + + + + + AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyData
+ +
+ +
+
+
+
+
+ +

AutonomyData class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ AutonomyData({AutonomyState? state, GpsCoordinates? destination, Iterable<GpsCoordinates>? obstacles, Iterable<GpsCoordinates>? path, AutonomyTask? task, bool? crash, Version? version}) +
+
+ +
factory
+
+
+ AutonomyData.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ AutonomyData.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ crash + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ destination + GpsCoordinates + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ obstacles + → List<GpsCoordinates> + + +
+
+ +
no setter
+ +
+ +
+ path + → List<GpsCoordinates> + + +
+
+ +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ state + AutonomyState + + +
+
+ +
getter/setter pair
+ +
+ +
+ task + AutonomyTask + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearCrash() + → void + + + +
+
+ + + +
+ +
+ clearDestination() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearState() + → void + + + +
+
+ + + +
+ +
+ clearTask() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + AutonomyData + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(AutonomyData)) + AutonomyData + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + AutonomyData + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureDestination() + GpsCoordinates + + + +
+
+ + + +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasCrash() + → bool + + + +
+
+ + + +
+ +
+ hasDestination() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasState() + → bool + + + +
+
+ + + +
+ +
+ hasTask() + → bool + + + +
+
+ + + +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + AutonomyData + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<AutonomyData> + + + +
+
+ + + +
+ +
+ getDefault() + AutonomyData + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/AutonomyData.fromBuffer.html b/docs/data/AutonomyData/AutonomyData.fromBuffer.html new file mode 100644 index 0000000000..0b4d275f55 --- /dev/null +++ b/docs/data/AutonomyData/AutonomyData.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + AutonomyData.fromBuffer constructor - AutonomyData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyData.fromBuffer
+ +
+ +
+
+
+
+
+ +

AutonomyData.fromBuffer constructor +

+ +
+ + AutonomyData.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory AutonomyData.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/AutonomyData.fromJson.html b/docs/data/AutonomyData/AutonomyData.fromJson.html new file mode 100644 index 0000000000..b119d4200d --- /dev/null +++ b/docs/data/AutonomyData/AutonomyData.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + AutonomyData.fromJson constructor - AutonomyData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyData.fromJson
+ +
+ +
+
+
+
+
+ +

AutonomyData.fromJson constructor +

+ +
+ + AutonomyData.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory AutonomyData.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/AutonomyData.html b/docs/data/AutonomyData/AutonomyData.html new file mode 100644 index 0000000000..09a293ad7a --- /dev/null +++ b/docs/data/AutonomyData/AutonomyData.html @@ -0,0 +1,147 @@ + + + + + + + + AutonomyData constructor - AutonomyData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyData
+ +
+ +
+
+
+
+
+ +

AutonomyData constructor +

+ +
+ + AutonomyData({
  1. AutonomyState? state,
  2. +
  3. GpsCoordinates? destination,
  4. +
  5. Iterable<GpsCoordinates>? obstacles,
  6. +
  7. Iterable<GpsCoordinates>? path,
  8. +
  9. AutonomyTask? task,
  10. +
  11. bool? crash,
  12. +
  13. Version? version,
  14. +
}) +
+ + + + +
+

Implementation

+
factory AutonomyData({
+  AutonomyState? state,
+  $2.GpsCoordinates? destination,
+  $core.Iterable<$2.GpsCoordinates>? obstacles,
+  $core.Iterable<$2.GpsCoordinates>? path,
+  AutonomyTask? task,
+  $core.bool? crash,
+  $0.Version? version,
+}) {
+  final $result = create();
+  if (state != null) {
+    $result.state = state;
+  }
+  if (destination != null) {
+    $result.destination = destination;
+  }
+  if (obstacles != null) {
+    $result.obstacles.addAll(obstacles);
+  }
+  if (path != null) {
+    $result.path.addAll(path);
+  }
+  if (task != null) {
+    $result.task = task;
+  }
+  if (crash != null) {
+    $result.crash = crash;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/clearCrash.html b/docs/data/AutonomyData/clearCrash.html new file mode 100644 index 0000000000..129d79f657 --- /dev/null +++ b/docs/data/AutonomyData/clearCrash.html @@ -0,0 +1,118 @@ + + + + + + + + clearCrash method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearCrash
+ +
+ +
+
+
+
+
+ +

clearCrash method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+void +clearCrash() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+void clearCrash() => clearField(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/clearDestination.html b/docs/data/AutonomyData/clearDestination.html new file mode 100644 index 0000000000..5be463afb4 --- /dev/null +++ b/docs/data/AutonomyData/clearDestination.html @@ -0,0 +1,118 @@ + + + + + + + + clearDestination method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearDestination
+ +
+ +
+
+
+
+
+ +

clearDestination method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearDestination() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearDestination() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/clearState.html b/docs/data/AutonomyData/clearState.html new file mode 100644 index 0000000000..af40258f8e --- /dev/null +++ b/docs/data/AutonomyData/clearState.html @@ -0,0 +1,118 @@ + + + + + + + + clearState method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearState
+ +
+ +
+
+
+
+
+ +

clearState method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearState() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearState() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/clearTask.html b/docs/data/AutonomyData/clearTask.html new file mode 100644 index 0000000000..16799ace62 --- /dev/null +++ b/docs/data/AutonomyData/clearTask.html @@ -0,0 +1,118 @@ + + + + + + + + clearTask method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearTask
+ +
+ +
+
+
+
+
+ +

clearTask method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearTask() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearTask() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/clearVersion.html b/docs/data/AutonomyData/clearVersion.html new file mode 100644 index 0000000000..b05c90c984 --- /dev/null +++ b/docs/data/AutonomyData/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+void clearVersion() => clearField(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/clone.html b/docs/data/AutonomyData/clone.html new file mode 100644 index 0000000000..e4e9f935c6 --- /dev/null +++ b/docs/data/AutonomyData/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+AutonomyData +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+AutonomyData clone() => AutonomyData()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/copyWith.html b/docs/data/AutonomyData/copyWith.html new file mode 100644 index 0000000000..c951371d6b --- /dev/null +++ b/docs/data/AutonomyData/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+AutonomyData +copyWith(
  1. void updates(
    1. AutonomyData
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+AutonomyData copyWith(void Function(AutonomyData) updates) => super.copyWith((message) => updates(message as AutonomyData)) as AutonomyData;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/crash.html b/docs/data/AutonomyData/crash.html new file mode 100644 index 0000000000..a65d3b1184 --- /dev/null +++ b/docs/data/AutonomyData/crash.html @@ -0,0 +1,150 @@ + + + + + + + + crash property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
crash
+ +
+ +
+
+
+
+
+ +

crash property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ bool + get + crash + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool get crash => $_getBF(5);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ set + crash + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+set crash($core.bool v) { $_setBool(5, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/create.html b/docs/data/AutonomyData/create.html new file mode 100644 index 0000000000..8e32b083b0 --- /dev/null +++ b/docs/data/AutonomyData/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +AutonomyData +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static AutonomyData create() => AutonomyData._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/createEmptyInstance.html b/docs/data/AutonomyData/createEmptyInstance.html new file mode 100644 index 0000000000..28c32fbe33 --- /dev/null +++ b/docs/data/AutonomyData/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +AutonomyData +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
AutonomyData createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/createRepeated.html b/docs/data/AutonomyData/createRepeated.html new file mode 100644 index 0000000000..09386fe532 --- /dev/null +++ b/docs/data/AutonomyData/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<AutonomyData> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<AutonomyData> createRepeated() => $pb.PbList<AutonomyData>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/destination.html b/docs/data/AutonomyData/destination.html new file mode 100644 index 0000000000..4f9e0cbed7 --- /dev/null +++ b/docs/data/AutonomyData/destination.html @@ -0,0 +1,150 @@ + + + + + + + + destination property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
destination
+ +
+ +
+
+
+
+
+ +

destination property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ GpsCoordinates + get + destination + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$2.GpsCoordinates get destination => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + destination + (GpsCoordinates v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set destination($2.GpsCoordinates v) { setField(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/ensureDestination.html b/docs/data/AutonomyData/ensureDestination.html new file mode 100644 index 0000000000..488be12297 --- /dev/null +++ b/docs/data/AutonomyData/ensureDestination.html @@ -0,0 +1,118 @@ + + + + + + + + ensureDestination method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureDestination
+ +
+ +
+
+
+
+
+ +

ensureDestination method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+GpsCoordinates +ensureDestination() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$2.GpsCoordinates ensureDestination() => $_ensure(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/ensureVersion.html b/docs/data/AutonomyData/ensureVersion.html new file mode 100644 index 0000000000..3e90802040 --- /dev/null +++ b/docs/data/AutonomyData/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+$0.Version ensureVersion() => $_ensure(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/getDefault.html b/docs/data/AutonomyData/getDefault.html new file mode 100644 index 0000000000..cfe19a6349 --- /dev/null +++ b/docs/data/AutonomyData/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +AutonomyData +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static AutonomyData getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<AutonomyData>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/hasCrash.html b/docs/data/AutonomyData/hasCrash.html new file mode 100644 index 0000000000..cf8b931228 --- /dev/null +++ b/docs/data/AutonomyData/hasCrash.html @@ -0,0 +1,118 @@ + + + + + + + + hasCrash method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasCrash
+ +
+ +
+
+
+
+
+ +

hasCrash method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+bool +hasCrash() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool hasCrash() => $_has(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/hasDestination.html b/docs/data/AutonomyData/hasDestination.html new file mode 100644 index 0000000000..4161234829 --- /dev/null +++ b/docs/data/AutonomyData/hasDestination.html @@ -0,0 +1,118 @@ + + + + + + + + hasDestination method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasDestination
+ +
+ +
+
+
+
+
+ +

hasDestination method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasDestination() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasDestination() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/hasState.html b/docs/data/AutonomyData/hasState.html new file mode 100644 index 0000000000..956eb4d3dd --- /dev/null +++ b/docs/data/AutonomyData/hasState.html @@ -0,0 +1,118 @@ + + + + + + + + hasState method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasState
+ +
+ +
+
+
+
+
+ +

hasState method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasState() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasState() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/hasTask.html b/docs/data/AutonomyData/hasTask.html new file mode 100644 index 0000000000..3206de5082 --- /dev/null +++ b/docs/data/AutonomyData/hasTask.html @@ -0,0 +1,118 @@ + + + + + + + + hasTask method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasTask
+ +
+ +
+
+
+
+
+ +

hasTask method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasTask() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasTask() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/hasVersion.html b/docs/data/AutonomyData/hasVersion.html new file mode 100644 index 0000000000..ec35ce5c5c --- /dev/null +++ b/docs/data/AutonomyData/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.bool hasVersion() => $_has(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/info_.html b/docs/data/AutonomyData/info_.html new file mode 100644 index 0000000000..0ba292d7ec --- /dev/null +++ b/docs/data/AutonomyData/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/obstacles.html b/docs/data/AutonomyData/obstacles.html new file mode 100644 index 0000000000..f99f40eda0 --- /dev/null +++ b/docs/data/AutonomyData/obstacles.html @@ -0,0 +1,124 @@ + + + + + + + + obstacles property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
obstacles
+ +
+ +
+
+
+
+
+ +

obstacles property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ List<GpsCoordinates> + get + obstacles + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.List<$2.GpsCoordinates> get obstacles => $_getList(2);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/path.html b/docs/data/AutonomyData/path.html new file mode 100644 index 0000000000..80733bae5d --- /dev/null +++ b/docs/data/AutonomyData/path.html @@ -0,0 +1,124 @@ + + + + + + + + path property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
path
+ +
+ +
+
+
+
+
+ +

path property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ List<GpsCoordinates> + get + path + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.List<$2.GpsCoordinates> get path => $_getList(3);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/state.html b/docs/data/AutonomyData/state.html new file mode 100644 index 0000000000..ed7aee4b72 --- /dev/null +++ b/docs/data/AutonomyData/state.html @@ -0,0 +1,150 @@ + + + + + + + + state property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
state
+ +
+ +
+
+
+
+
+ +

state property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ AutonomyState + get + state + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+AutonomyState get state => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + state + (AutonomyState v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set state(AutonomyState v) { setField(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/task.html b/docs/data/AutonomyData/task.html new file mode 100644 index 0000000000..1b884bbfae --- /dev/null +++ b/docs/data/AutonomyData/task.html @@ -0,0 +1,150 @@ + + + + + + + + task property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
task
+ +
+ +
+
+
+
+
+ +

task property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ AutonomyTask + get + task + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+AutonomyTask get task => $_getN(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + task + (AutonomyTask v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set task(AutonomyTask v) { setField(5, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyData/version.html b/docs/data/AutonomyData/version.html new file mode 100644 index 0000000000..20dbccd86b --- /dev/null +++ b/docs/data/AutonomyData/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+$0.Version get version => $_getN(6);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+set version($0.Version v) { setField(7, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyState-class-sidebar.html b/docs/data/AutonomyState-class-sidebar.html new file mode 100644 index 0000000000..54dbd1683d --- /dev/null +++ b/docs/data/AutonomyState-class-sidebar.html @@ -0,0 +1,38 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. ABORTING
  28. +
  29. APPROACHING
  30. +
  31. AT_DESTINATION
  32. +
  33. AUTONOMY_STATE_UNDEFINED
  34. +
  35. DRIVING
  36. +
  37. NO_SOLUTION
  38. +
  39. PATHING
  40. +
  41. SEARCHING
  42. +
  43. values
  44. +
diff --git a/docs/data/AutonomyState-class.html b/docs/data/AutonomyState-class.html new file mode 100644 index 0000000000..1e2260ce60 --- /dev/null +++ b/docs/data/AutonomyState-class.html @@ -0,0 +1,370 @@ + + + + + + + + AutonomyState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyState
+ +
+ +
+
+
+
+
+ +

AutonomyState class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + AutonomyState? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ ABORTING + → const AutonomyState + + +
+
+ + + +
+ +
+ APPROACHING + → const AutonomyState + + +
+
+ + + +
+ +
+ AT_DESTINATION + → const AutonomyState + + +
+
+ + + +
+ +
+ AUTONOMY_STATE_UNDEFINED + → const AutonomyState + + +
+
+ + + +
+ +
+ DRIVING + → const AutonomyState + + +
+
+ + + +
+ +
+ NO_SOLUTION + → const AutonomyState + + +
+
+ + + +
+ +
+ PATHING + → const AutonomyState + + +
+
+ + + +
+ +
+ SEARCHING + → const AutonomyState + + +
+
+ + + +
+ +
+ values + → const List<AutonomyState> + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyState/ABORTING-constant.html b/docs/data/AutonomyState/ABORTING-constant.html new file mode 100644 index 0000000000..81d6a7803f --- /dev/null +++ b/docs/data/AutonomyState/ABORTING-constant.html @@ -0,0 +1,112 @@ + + + + + + + + ABORTING constant - AutonomyState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ABORTING
+ +
+ +
+
+
+
+
+ +

ABORTING constant +

+ + +
+ + AutonomyState + const ABORTING + + +
+ + + +
+

Implementation

+
static const AutonomyState ABORTING = AutonomyState._(8, _omitEnumNames ? '' : 'ABORTING');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyState/APPROACHING-constant.html b/docs/data/AutonomyState/APPROACHING-constant.html new file mode 100644 index 0000000000..66d291c47a --- /dev/null +++ b/docs/data/AutonomyState/APPROACHING-constant.html @@ -0,0 +1,112 @@ + + + + + + + + APPROACHING constant - AutonomyState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
APPROACHING
+ +
+ +
+
+
+
+
+ +

APPROACHING constant +

+ + +
+ + AutonomyState + const APPROACHING + + +
+ + + +
+

Implementation

+
static const AutonomyState APPROACHING = AutonomyState._(3, _omitEnumNames ? '' : 'APPROACHING');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyState/AT_DESTINATION-constant.html b/docs/data/AutonomyState/AT_DESTINATION-constant.html new file mode 100644 index 0000000000..4ccf4d0da6 --- /dev/null +++ b/docs/data/AutonomyState/AT_DESTINATION-constant.html @@ -0,0 +1,112 @@ + + + + + + + + AT_DESTINATION constant - AutonomyState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AT_DESTINATION
+ +
+ +
+
+
+
+
+ +

AT_DESTINATION constant +

+ + +
+ + AutonomyState + const AT_DESTINATION + + +
+ + + +
+

Implementation

+
static const AutonomyState AT_DESTINATION = AutonomyState._(4, _omitEnumNames ? '' : 'AT_DESTINATION');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyState/AUTONOMY_STATE_UNDEFINED-constant.html b/docs/data/AutonomyState/AUTONOMY_STATE_UNDEFINED-constant.html new file mode 100644 index 0000000000..7e4df892fc --- /dev/null +++ b/docs/data/AutonomyState/AUTONOMY_STATE_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + AUTONOMY_STATE_UNDEFINED constant - AutonomyState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AUTONOMY_STATE_UNDEFINED
+ +
+ +
+
+
+
+
+ +

AUTONOMY_STATE_UNDEFINED constant +

+ + +
+ + AutonomyState + const AUTONOMY_STATE_UNDEFINED + + +
+ + + +
+

Implementation

+
static const AutonomyState AUTONOMY_STATE_UNDEFINED = AutonomyState._(0, _omitEnumNames ? '' : 'AUTONOMY_STATE_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyState/DRIVING-constant.html b/docs/data/AutonomyState/DRIVING-constant.html new file mode 100644 index 0000000000..e99af29301 --- /dev/null +++ b/docs/data/AutonomyState/DRIVING-constant.html @@ -0,0 +1,112 @@ + + + + + + + + DRIVING constant - AutonomyState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DRIVING
+ +
+ +
+
+
+
+
+ +

DRIVING constant +

+ + +
+ + AutonomyState + const DRIVING + + +
+ + + +
+

Implementation

+
static const AutonomyState DRIVING = AutonomyState._(5, _omitEnumNames ? '' : 'DRIVING');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyState/NO_SOLUTION-constant.html b/docs/data/AutonomyState/NO_SOLUTION-constant.html new file mode 100644 index 0000000000..a7ae06ecb0 --- /dev/null +++ b/docs/data/AutonomyState/NO_SOLUTION-constant.html @@ -0,0 +1,112 @@ + + + + + + + + NO_SOLUTION constant - AutonomyState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NO_SOLUTION
+ +
+ +
+
+
+
+
+ +

NO_SOLUTION constant +

+ + +
+ + AutonomyState + const NO_SOLUTION + + +
+ + + +
+

Implementation

+
static const AutonomyState NO_SOLUTION = AutonomyState._(7, _omitEnumNames ? '' : 'NO_SOLUTION');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyState/PATHING-constant.html b/docs/data/AutonomyState/PATHING-constant.html new file mode 100644 index 0000000000..48f2b6109d --- /dev/null +++ b/docs/data/AutonomyState/PATHING-constant.html @@ -0,0 +1,112 @@ + + + + + + + + PATHING constant - AutonomyState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PATHING
+ +
+ +
+
+
+
+
+ +

PATHING constant +

+ + +
+ + AutonomyState + const PATHING + + +
+ + + +
+

Implementation

+
static const AutonomyState PATHING = AutonomyState._(2, _omitEnumNames ? '' : 'PATHING');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyState/SEARCHING-constant.html b/docs/data/AutonomyState/SEARCHING-constant.html new file mode 100644 index 0000000000..089b831cd2 --- /dev/null +++ b/docs/data/AutonomyState/SEARCHING-constant.html @@ -0,0 +1,112 @@ + + + + + + + + SEARCHING constant - AutonomyState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SEARCHING
+ +
+ +
+
+
+
+
+ +

SEARCHING constant +

+ + +
+ + AutonomyState + const SEARCHING + + +
+ + + +
+

Implementation

+
static const AutonomyState SEARCHING = AutonomyState._(6, _omitEnumNames ? '' : 'SEARCHING');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyState/valueOf.html b/docs/data/AutonomyState/valueOf.html new file mode 100644 index 0000000000..89a7c3ed68 --- /dev/null +++ b/docs/data/AutonomyState/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - AutonomyState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +AutonomyState? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static AutonomyState? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyState/values-constant.html b/docs/data/AutonomyState/values-constant.html new file mode 100644 index 0000000000..a4e10ba835 --- /dev/null +++ b/docs/data/AutonomyState/values-constant.html @@ -0,0 +1,121 @@ + + + + + + + + values constant - AutonomyState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<AutonomyState> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<AutonomyState> values = <AutonomyState> [
+  AUTONOMY_STATE_UNDEFINED,
+  PATHING,
+  APPROACHING,
+  AT_DESTINATION,
+  DRIVING,
+  SEARCHING,
+  NO_SOLUTION,
+  ABORTING,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyStateUtils-extension-sidebar.html b/docs/data/AutonomyStateUtils-extension-sidebar.html new file mode 100644 index 0000000000..a01c4a8e97 --- /dev/null +++ b/docs/data/AutonomyStateUtils-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. + + + + + + +
diff --git a/docs/data/AutonomyStateUtils.html b/docs/data/AutonomyStateUtils.html new file mode 100644 index 0000000000..282bcc6aca --- /dev/null +++ b/docs/data/AutonomyStateUtils.html @@ -0,0 +1,139 @@ + + + + + + + + AutonomyStateUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyStateUtils
+ +
+ +
+
+
+
+
+ +

AutonomyStateUtils extension + +

+ + +
+

Utilities for AutonomyStates.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ humanName + → String + + +
+
+ The human-readable name of the task. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/AutonomyStateUtils/humanName.html b/docs/data/AutonomyStateUtils/humanName.html new file mode 100644 index 0000000000..459d52275d --- /dev/null +++ b/docs/data/AutonomyStateUtils/humanName.html @@ -0,0 +1,134 @@ + + + + + + + + humanName property - AutonomyStateUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

The human-readable name of the task.

+
+ + +
+

Implementation

+
String get humanName {
+	switch (this) {
+		case AutonomyState.AUTONOMY_STATE_UNDEFINED: return "Disabled";
+		case AutonomyState.PATHING: return "Calculating path";
+		case AutonomyState.APPROACHING: return "Approaching destination";
+		case AutonomyState.AT_DESTINATION: return "Arrived at destination";
+		case AutonomyState.DRIVING: return "Driving";
+		case AutonomyState.SEARCHING: return "Searching for ArUco";
+		case AutonomyState.ABORTING: return "Aborting";
+		case AutonomyState.NO_SOLUTION: return "No solution found";
+	}
+	// Do not use default or else you'll lose exhaustiveness checking.
+	throw ArgumentError("Unrecognized status: $this");
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyTask-class-sidebar.html b/docs/data/AutonomyTask-class-sidebar.html new file mode 100644 index 0000000000..c328c232fc --- /dev/null +++ b/docs/data/AutonomyTask-class-sidebar.html @@ -0,0 +1,34 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. AUTONOMY_TASK_UNDEFINED
  28. +
  29. BETWEEN_GATES
  30. +
  31. GPS_ONLY
  32. +
  33. values
  34. +
  35. VISUAL_MARKER
  36. +
diff --git a/docs/data/AutonomyTask-class.html b/docs/data/AutonomyTask-class.html new file mode 100644 index 0000000000..8c214cfa57 --- /dev/null +++ b/docs/data/AutonomyTask-class.html @@ -0,0 +1,322 @@ + + + + + + + + AutonomyTask class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyTask
+ +
+ +
+
+
+
+
+ +

AutonomyTask class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + AutonomyTask? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ AUTONOMY_TASK_UNDEFINED + → const AutonomyTask + + +
+
+ + + +
+ +
+ BETWEEN_GATES + → const AutonomyTask + + +
+
+ + + +
+ +
+ GPS_ONLY + → const AutonomyTask + + +
+
+ + + +
+ +
+ values + → const List<AutonomyTask> + + +
+
+ + + +
+ +
+ VISUAL_MARKER + → const AutonomyTask + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyTask/AUTONOMY_TASK_UNDEFINED-constant.html b/docs/data/AutonomyTask/AUTONOMY_TASK_UNDEFINED-constant.html new file mode 100644 index 0000000000..7d40fef4ba --- /dev/null +++ b/docs/data/AutonomyTask/AUTONOMY_TASK_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + AUTONOMY_TASK_UNDEFINED constant - AutonomyTask class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AUTONOMY_TASK_UNDEFINED
+ +
+ +
+
+
+
+
+ +

AUTONOMY_TASK_UNDEFINED constant +

+ + +
+ + AutonomyTask + const AUTONOMY_TASK_UNDEFINED + + +
+ + + +
+

Implementation

+
static const AutonomyTask AUTONOMY_TASK_UNDEFINED = AutonomyTask._(0, _omitEnumNames ? '' : 'AUTONOMY_TASK_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyTask/BETWEEN_GATES-constant.html b/docs/data/AutonomyTask/BETWEEN_GATES-constant.html new file mode 100644 index 0000000000..84bb7cba7e --- /dev/null +++ b/docs/data/AutonomyTask/BETWEEN_GATES-constant.html @@ -0,0 +1,112 @@ + + + + + + + + BETWEEN_GATES constant - AutonomyTask class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BETWEEN_GATES
+ +
+ +
+
+
+
+
+ +

BETWEEN_GATES constant +

+ + +
+ + AutonomyTask + const BETWEEN_GATES + + +
+ + + +
+

Implementation

+
static const AutonomyTask BETWEEN_GATES = AutonomyTask._(3, _omitEnumNames ? '' : 'BETWEEN_GATES');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyTask/GPS_ONLY-constant.html b/docs/data/AutonomyTask/GPS_ONLY-constant.html new file mode 100644 index 0000000000..2553c5296b --- /dev/null +++ b/docs/data/AutonomyTask/GPS_ONLY-constant.html @@ -0,0 +1,112 @@ + + + + + + + + GPS_ONLY constant - AutonomyTask class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GPS_ONLY
+ +
+ +
+
+
+
+
+ +

GPS_ONLY constant +

+ + +
+ + AutonomyTask + const GPS_ONLY + + +
+ + + +
+

Implementation

+
static const AutonomyTask GPS_ONLY = AutonomyTask._(1, _omitEnumNames ? '' : 'GPS_ONLY');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyTask/VISUAL_MARKER-constant.html b/docs/data/AutonomyTask/VISUAL_MARKER-constant.html new file mode 100644 index 0000000000..1cb931f720 --- /dev/null +++ b/docs/data/AutonomyTask/VISUAL_MARKER-constant.html @@ -0,0 +1,112 @@ + + + + + + + + VISUAL_MARKER constant - AutonomyTask class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VISUAL_MARKER
+ +
+ +
+
+
+
+
+ +

VISUAL_MARKER constant +

+ + +
+ + AutonomyTask + const VISUAL_MARKER + + +
+ + + +
+

Implementation

+
static const AutonomyTask VISUAL_MARKER = AutonomyTask._(2, _omitEnumNames ? '' : 'VISUAL_MARKER');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyTask/valueOf.html b/docs/data/AutonomyTask/valueOf.html new file mode 100644 index 0000000000..b92e4d0571 --- /dev/null +++ b/docs/data/AutonomyTask/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - AutonomyTask class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +AutonomyTask? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static AutonomyTask? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyTask/values-constant.html b/docs/data/AutonomyTask/values-constant.html new file mode 100644 index 0000000000..ef3dc343b7 --- /dev/null +++ b/docs/data/AutonomyTask/values-constant.html @@ -0,0 +1,117 @@ + + + + + + + + values constant - AutonomyTask class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<AutonomyTask> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<AutonomyTask> values = <AutonomyTask> [
+  AUTONOMY_TASK_UNDEFINED,
+  GPS_ONLY,
+  VISUAL_MARKER,
+  BETWEEN_GATES,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/AutonomyTaskUtils-extension-sidebar.html b/docs/data/AutonomyTaskUtils-extension-sidebar.html new file mode 100644 index 0000000000..1dd774a98b --- /dev/null +++ b/docs/data/AutonomyTaskUtils-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. + + + + + + +
diff --git a/docs/data/AutonomyTaskUtils.html b/docs/data/AutonomyTaskUtils.html new file mode 100644 index 0000000000..edd6734017 --- /dev/null +++ b/docs/data/AutonomyTaskUtils.html @@ -0,0 +1,139 @@ + + + + + + + + AutonomyTaskUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyTaskUtils
+ +
+ +
+
+
+
+
+ +

AutonomyTaskUtils extension + +

+ + +
+

Utilities for AutonomyTasks.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ humanName + → String + + +
+
+ The human-readable name of the task. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/AutonomyTaskUtils/humanName.html b/docs/data/AutonomyTaskUtils/humanName.html new file mode 100644 index 0000000000..e725c5986d --- /dev/null +++ b/docs/data/AutonomyTaskUtils/humanName.html @@ -0,0 +1,130 @@ + + + + + + + + humanName property - AutonomyTaskUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

The human-readable name of the task.

+
+ + +
+

Implementation

+
String get humanName {
+	switch (this) {
+		case AutonomyTask.AUTONOMY_TASK_UNDEFINED: return "No task";
+		case AutonomyTask.GPS_ONLY: return "GPS only";
+		case AutonomyTask.VISUAL_MARKER: return "Visual marker";
+		case AutonomyTask.BETWEEN_GATES: return "Between gates";
+	}
+	// Do not use default or else you'll lose exhaustiveness checking.
+	throw ArgumentError("Unrecognized task: $this");
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolState-class-sidebar.html b/docs/data/BoolState-class-sidebar.html new file mode 100644 index 0000000000..fe695505ca --- /dev/null +++ b/docs/data/BoolState-class-sidebar.html @@ -0,0 +1,37 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. BOOL_UNDEFINED
  28. +
  29. CLOSE
  30. +
  31. NO
  32. +
  33. OFF
  34. +
  35. ON
  36. +
  37. OPEN
  38. +
  39. values
  40. +
  41. YES
  42. +
diff --git a/docs/data/BoolState-class.html b/docs/data/BoolState-class.html new file mode 100644 index 0000000000..b825892dbe --- /dev/null +++ b/docs/data/BoolState-class.html @@ -0,0 +1,358 @@ + + + + + + + + BoolState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BoolState
+ +
+ +
+
+
+
+
+ +

BoolState class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + BoolState? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ BOOL_UNDEFINED + → const BoolState + + +
+
+ + + +
+ +
+ CLOSE + → const BoolState + + +
+
+ + + +
+ +
+ NO + → const BoolState + + +
+
+ + + +
+ +
+ OFF + → const BoolState + + +
+
+ + + +
+ +
+ ON + → const BoolState + + +
+
+ + + +
+ +
+ OPEN + → const BoolState + + +
+
+ + + +
+ +
+ values + → const List<BoolState> + + +
+
+ + + +
+ +
+ YES + → const BoolState + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolState/BOOL_UNDEFINED-constant.html b/docs/data/BoolState/BOOL_UNDEFINED-constant.html new file mode 100644 index 0000000000..80343df5f5 --- /dev/null +++ b/docs/data/BoolState/BOOL_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + BOOL_UNDEFINED constant - BoolState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BOOL_UNDEFINED
+ +
+ +
+
+
+
+
+ +

BOOL_UNDEFINED constant +

+ + +
+ + BoolState + const BOOL_UNDEFINED + + +
+ + + +
+

Implementation

+
static const BoolState BOOL_UNDEFINED = BoolState._(0, _omitEnumNames ? '' : 'BOOL_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolState/CLOSE-constant.html b/docs/data/BoolState/CLOSE-constant.html new file mode 100644 index 0000000000..69d0af1775 --- /dev/null +++ b/docs/data/BoolState/CLOSE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CLOSE constant - BoolState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CLOSE
+ +
+ +
+
+
+
+
+ +

CLOSE constant +

+ + +
+ + BoolState + const CLOSE + + +
+ + + +
+

Implementation

+
static const BoolState CLOSE = OFF;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolState/NO-constant.html b/docs/data/BoolState/NO-constant.html new file mode 100644 index 0000000000..225be37160 --- /dev/null +++ b/docs/data/BoolState/NO-constant.html @@ -0,0 +1,112 @@ + + + + + + + + NO constant - BoolState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NO
+ +
+ +
+
+
+
+
+ +

NO constant +

+ + +
+ + BoolState + const NO + + +
+ + + +
+

Implementation

+
static const BoolState NO = OFF;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolState/OFF-constant.html b/docs/data/BoolState/OFF-constant.html new file mode 100644 index 0000000000..47ca222a1a --- /dev/null +++ b/docs/data/BoolState/OFF-constant.html @@ -0,0 +1,112 @@ + + + + + + + + OFF constant - BoolState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
OFF
+ +
+ +
+
+
+
+
+ +

OFF constant +

+ + +
+ + BoolState + const OFF + + +
+ + + +
+

Implementation

+
static const BoolState OFF = BoolState._(2, _omitEnumNames ? '' : 'OFF');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolState/ON-constant.html b/docs/data/BoolState/ON-constant.html new file mode 100644 index 0000000000..5bc011d21e --- /dev/null +++ b/docs/data/BoolState/ON-constant.html @@ -0,0 +1,112 @@ + + + + + + + + ON constant - BoolState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ON
+ +
+ +
+
+
+
+
+ +

ON constant +

+ + +
+ + BoolState + const ON + + +
+ + + +
+

Implementation

+
static const BoolState ON = BoolState._(1, _omitEnumNames ? '' : 'ON');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolState/OPEN-constant.html b/docs/data/BoolState/OPEN-constant.html new file mode 100644 index 0000000000..92d1348394 --- /dev/null +++ b/docs/data/BoolState/OPEN-constant.html @@ -0,0 +1,112 @@ + + + + + + + + OPEN constant - BoolState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
OPEN
+ +
+ +
+
+
+
+
+ +

OPEN constant +

+ + +
+ + BoolState + const OPEN + + +
+ + + +
+

Implementation

+
static const BoolState OPEN = ON;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolState/YES-constant.html b/docs/data/BoolState/YES-constant.html new file mode 100644 index 0000000000..b1d4bf4429 --- /dev/null +++ b/docs/data/BoolState/YES-constant.html @@ -0,0 +1,112 @@ + + + + + + + + YES constant - BoolState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
YES
+ +
+ +
+
+
+
+
+ +

YES constant +

+ + +
+ + BoolState + const YES + + +
+ + + +
+

Implementation

+
static const BoolState YES = ON;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolState/valueOf.html b/docs/data/BoolState/valueOf.html new file mode 100644 index 0000000000..0e03287c46 --- /dev/null +++ b/docs/data/BoolState/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - BoolState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +BoolState? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static BoolState? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolState/values-constant.html b/docs/data/BoolState/values-constant.html new file mode 100644 index 0000000000..48d06d0ccf --- /dev/null +++ b/docs/data/BoolState/values-constant.html @@ -0,0 +1,116 @@ + + + + + + + + values constant - BoolState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<BoolState> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<BoolState> values = <BoolState> [
+  BOOL_UNDEFINED,
+  ON,
+  OFF,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolUtils-extension-sidebar.html b/docs/data/BoolUtils-extension-sidebar.html new file mode 100644 index 0000000000..abdc9da16e --- /dev/null +++ b/docs/data/BoolUtils-extension-sidebar.html @@ -0,0 +1,18 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. displayName
  4. + +
  5. Methods
  6. +
  7. toBool
  8. + + + + + +
diff --git a/docs/data/BoolUtils.html b/docs/data/BoolUtils.html new file mode 100644 index 0000000000..97e9ae1d99 --- /dev/null +++ b/docs/data/BoolUtils.html @@ -0,0 +1,159 @@ + + + + + + + + BoolUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BoolUtils
+ +
+ +
+
+
+
+
+ +

BoolUtils extension + +

+ + +
+

Helpful methods on BoolStates.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ displayName + → String + + +
+
+ Converts this Protobuf boolean into a human readable string. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ toBool() + → bool + + + +
+
+ Converts this Protobuf boolean into a normal boolean. + + +
+ +
+
+ + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/BoolUtils/displayName.html b/docs/data/BoolUtils/displayName.html new file mode 100644 index 0000000000..e58508b54d --- /dev/null +++ b/docs/data/BoolUtils/displayName.html @@ -0,0 +1,126 @@ + + + + + + + + displayName property - BoolUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
displayName
+ +
+ +
+
+
+
+
+ +

displayName property +

+ + + + + +
+
+ + String + get + displayName + + +
+ +
+

Converts this Protobuf boolean into a human readable string.

+
+ + +
+

Implementation

+
String get displayName => switch(this) {
+  BoolState.NO => "No",
+  BoolState.YES => "Yes",
+  BoolState.BOOL_UNDEFINED => "No Data",
+  _ => throw ArgumentError("Unrecognized bool state: $this"),
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BoolUtils/toBool.html b/docs/data/BoolUtils/toBool.html new file mode 100644 index 0000000000..0bb889f181 --- /dev/null +++ b/docs/data/BoolUtils/toBool.html @@ -0,0 +1,120 @@ + + + + + + + + toBool method - BoolUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toBool
+ +
+ +
+
+
+
+
+ +

toBool method +

+ +
+ +bool +toBool() + + + +
+ +
+

Converts this Protobuf boolean into a normal boolean.

+
+ + + +
+

Implementation

+
bool toBool() => switch (this) {
+  BoolState.NO => false,
+  BoolState.YES => true,
+  BoolState.BOOL_UNDEFINED => false,
+  _ => throw ArgumentError("Unrecognized bool state: $this"),
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog-class-sidebar.html b/docs/data/BurtLog-class-sidebar.html new file mode 100644 index 0000000000..4b2f441380 --- /dev/null +++ b/docs/data/BurtLog-class-sidebar.html @@ -0,0 +1,85 @@ +
    + +
  1. Constructors
  2. +
  3. BurtLog
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. body
  12. +
  13. device
  14. +
  15. eventPlugin
  16. +
  17. hashCode
  18. +
  19. info_
  20. +
  21. isFrozen
  22. +
  23. level
  24. +
  25. runtimeType
  26. +
  27. title
  28. +
  29. unknownFields
  30. + +
  31. Methods
  32. +
  33. addExtension
  34. +
  35. check
  36. +
  37. clear
  38. +
  39. clearBody
  40. +
  41. clearDevice
  42. +
  43. clearExtension
  44. +
  45. clearField
  46. +
  47. clearLevel
  48. +
  49. clearTitle
  50. +
  51. clone
  52. +
  53. copyWith
  54. +
  55. createEmptyInstance
  56. +
  57. createMapField
  58. +
  59. createRepeatedField
  60. +
  61. extensionsAreInitialized
  62. +
  63. freeze
  64. +
  65. getDefaultForField
  66. +
  67. getExtension
  68. +
  69. getField
  70. +
  71. getFieldOrNull
  72. +
  73. getTagNumber
  74. +
  75. hasBody
  76. +
  77. hasDevice
  78. +
  79. hasExtension
  80. +
  81. hasField
  82. +
  83. hasLevel
  84. +
  85. hasRequiredFields
  86. +
  87. hasTitle
  88. +
  89. isInitialized
  90. +
  91. mergeFromBuffer
  92. +
  93. mergeFromCodedBufferReader
  94. +
  95. mergeFromJson
  96. +
  97. mergeFromJsonMap
  98. +
  99. mergeFromMessage
  100. +
  101. mergeFromProto3Json
  102. +
  103. mergeUnknownFields
  104. +
  105. noSuchMethod
  106. +
  107. setExtension
  108. +
  109. setField
  110. +
  111. toBuilder
  112. +
  113. toDebugString
  114. +
  115. toProto3Json
  116. +
  117. toString
  118. +
  119. writeToBuffer
  120. +
  121. writeToCodedBufferWriter
  122. +
  123. writeToJson
  124. +
  125. writeToJsonMap
  126. + +
  127. Operators
  128. +
  129. operator ==
  130. + + + + + +
  131. Static methods
  132. +
  133. create
  134. +
  135. createRepeated
  136. +
  137. getDefault
  138. + +
diff --git a/docs/data/BurtLog-class.html b/docs/data/BurtLog-class.html new file mode 100644 index 0000000000..33e1244b77 --- /dev/null +++ b/docs/data/BurtLog-class.html @@ -0,0 +1,972 @@ + + + + + + + + BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BurtLog
+ +
+ +
+
+
+
+
+ +

BurtLog class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ BurtLog({BurtLogLevel? level, String? title, String? body, Device? device}) +
+
+ +
factory
+
+
+ BurtLog.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ BurtLog.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ body + ↔ String + + +
+
+ +
getter/setter pair
+ +
+ +
+ device + Device + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ level + BurtLogLevel + + +
+
+ +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ title + ↔ String + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearBody() + → void + + + +
+
+ + + +
+ +
+ clearDevice() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearLevel() + → void + + + +
+
+ + + +
+ +
+ clearTitle() + → void + + + +
+
+ + + +
+ +
+ clone() + BurtLog + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(BurtLog)) + BurtLog + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + BurtLog + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasBody() + → bool + + + +
+
+ + + +
+ +
+ hasDevice() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasLevel() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasTitle() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + BurtLog + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<BurtLog> + + + +
+
+ + + +
+ +
+ getDefault() + BurtLog + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/BurtLog.fromBuffer.html b/docs/data/BurtLog/BurtLog.fromBuffer.html new file mode 100644 index 0000000000..515acb20c6 --- /dev/null +++ b/docs/data/BurtLog/BurtLog.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + BurtLog.fromBuffer constructor - BurtLog - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BurtLog.fromBuffer
+ +
+ +
+
+
+
+
+ +

BurtLog.fromBuffer constructor +

+ +
+ + BurtLog.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory BurtLog.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/BurtLog.fromJson.html b/docs/data/BurtLog/BurtLog.fromJson.html new file mode 100644 index 0000000000..f3b68d5483 --- /dev/null +++ b/docs/data/BurtLog/BurtLog.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + BurtLog.fromJson constructor - BurtLog - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BurtLog.fromJson
+ +
+ +
+
+
+
+
+ +

BurtLog.fromJson constructor +

+ +
+ + BurtLog.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory BurtLog.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/BurtLog.html b/docs/data/BurtLog/BurtLog.html new file mode 100644 index 0000000000..94fcfc5e15 --- /dev/null +++ b/docs/data/BurtLog/BurtLog.html @@ -0,0 +1,132 @@ + + + + + + + + BurtLog constructor - BurtLog - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BurtLog
+ +
+ +
+
+
+
+
+ +

BurtLog constructor +

+ +
+ + BurtLog({
  1. BurtLogLevel? level,
  2. +
  3. String? title,
  4. +
  5. String? body,
  6. +
  7. Device? device,
  8. +
}) +
+ + + + +
+

Implementation

+
factory BurtLog({
+  BurtLogLevel? level,
+  $core.String? title,
+  $core.String? body,
+  $4.Device? device,
+}) {
+  final $result = create();
+  if (level != null) {
+    $result.level = level;
+  }
+  if (title != null) {
+    $result.title = title;
+  }
+  if (body != null) {
+    $result.body = body;
+  }
+  if (device != null) {
+    $result.device = device;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/body.html b/docs/data/BurtLog/body.html new file mode 100644 index 0000000000..d889033116 --- /dev/null +++ b/docs/data/BurtLog/body.html @@ -0,0 +1,150 @@ + + + + + + + + body property - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
body
+ +
+ +
+
+
+
+
+ +

body property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ String + get + body + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.String get body => $_getSZ(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + body + (String v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set body($core.String v) { $_setString(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/clearBody.html b/docs/data/BurtLog/clearBody.html new file mode 100644 index 0000000000..73b1d60ccc --- /dev/null +++ b/docs/data/BurtLog/clearBody.html @@ -0,0 +1,118 @@ + + + + + + + + clearBody method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearBody
+ +
+ +
+
+
+
+
+ +

clearBody method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearBody() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearBody() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/clearDevice.html b/docs/data/BurtLog/clearDevice.html new file mode 100644 index 0000000000..4c4e7fcdb9 --- /dev/null +++ b/docs/data/BurtLog/clearDevice.html @@ -0,0 +1,118 @@ + + + + + + + + clearDevice method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearDevice
+ +
+ +
+
+
+
+
+ +

clearDevice method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearDevice() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearDevice() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/clearLevel.html b/docs/data/BurtLog/clearLevel.html new file mode 100644 index 0000000000..0810ad923b --- /dev/null +++ b/docs/data/BurtLog/clearLevel.html @@ -0,0 +1,118 @@ + + + + + + + + clearLevel method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearLevel
+ +
+ +
+
+
+
+
+ +

clearLevel method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearLevel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearLevel() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/clearTitle.html b/docs/data/BurtLog/clearTitle.html new file mode 100644 index 0000000000..06fc1dd1ce --- /dev/null +++ b/docs/data/BurtLog/clearTitle.html @@ -0,0 +1,118 @@ + + + + + + + + clearTitle method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearTitle
+ +
+ +
+
+
+
+
+ +

clearTitle method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearTitle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearTitle() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/clone.html b/docs/data/BurtLog/clone.html new file mode 100644 index 0000000000..26af93847d --- /dev/null +++ b/docs/data/BurtLog/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+BurtLog +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+BurtLog clone() => BurtLog()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/copyWith.html b/docs/data/BurtLog/copyWith.html new file mode 100644 index 0000000000..83ed42e8ff --- /dev/null +++ b/docs/data/BurtLog/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+BurtLog +copyWith(
  1. void updates(
    1. BurtLog
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+BurtLog copyWith(void Function(BurtLog) updates) => super.copyWith((message) => updates(message as BurtLog)) as BurtLog;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/create.html b/docs/data/BurtLog/create.html new file mode 100644 index 0000000000..8d31dc4693 --- /dev/null +++ b/docs/data/BurtLog/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +BurtLog +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static BurtLog create() => BurtLog._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/createEmptyInstance.html b/docs/data/BurtLog/createEmptyInstance.html new file mode 100644 index 0000000000..39b224d958 --- /dev/null +++ b/docs/data/BurtLog/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +BurtLog +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
BurtLog createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/createRepeated.html b/docs/data/BurtLog/createRepeated.html new file mode 100644 index 0000000000..0c0a58f5d8 --- /dev/null +++ b/docs/data/BurtLog/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<BurtLog> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<BurtLog> createRepeated() => $pb.PbList<BurtLog>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/device.html b/docs/data/BurtLog/device.html new file mode 100644 index 0000000000..3681e89070 --- /dev/null +++ b/docs/data/BurtLog/device.html @@ -0,0 +1,150 @@ + + + + + + + + device property - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
device
+ +
+ +
+
+
+
+
+ +

device property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ Device + get + device + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+$4.Device get device => $_getN(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + device + (Device v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set device($4.Device v) { setField(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/getDefault.html b/docs/data/BurtLog/getDefault.html new file mode 100644 index 0000000000..60f8a9c49e --- /dev/null +++ b/docs/data/BurtLog/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +BurtLog +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static BurtLog getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<BurtLog>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/hasBody.html b/docs/data/BurtLog/hasBody.html new file mode 100644 index 0000000000..d6433dd0a8 --- /dev/null +++ b/docs/data/BurtLog/hasBody.html @@ -0,0 +1,118 @@ + + + + + + + + hasBody method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasBody
+ +
+ +
+
+
+
+
+ +

hasBody method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasBody() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasBody() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/hasDevice.html b/docs/data/BurtLog/hasDevice.html new file mode 100644 index 0000000000..4cb33c8682 --- /dev/null +++ b/docs/data/BurtLog/hasDevice.html @@ -0,0 +1,118 @@ + + + + + + + + hasDevice method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasDevice
+ +
+ +
+
+
+
+
+ +

hasDevice method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasDevice() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasDevice() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/hasLevel.html b/docs/data/BurtLog/hasLevel.html new file mode 100644 index 0000000000..8e018316c6 --- /dev/null +++ b/docs/data/BurtLog/hasLevel.html @@ -0,0 +1,118 @@ + + + + + + + + hasLevel method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasLevel
+ +
+ +
+
+
+
+
+ +

hasLevel method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasLevel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasLevel() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/hasTitle.html b/docs/data/BurtLog/hasTitle.html new file mode 100644 index 0000000000..95ba3c0b59 --- /dev/null +++ b/docs/data/BurtLog/hasTitle.html @@ -0,0 +1,118 @@ + + + + + + + + hasTitle method - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasTitle
+ +
+ +
+
+
+
+
+ +

hasTitle method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasTitle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasTitle() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/info_.html b/docs/data/BurtLog/info_.html new file mode 100644 index 0000000000..38d435a04a --- /dev/null +++ b/docs/data/BurtLog/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/level.html b/docs/data/BurtLog/level.html new file mode 100644 index 0000000000..0558e260f4 --- /dev/null +++ b/docs/data/BurtLog/level.html @@ -0,0 +1,150 @@ + + + + + + + + level property - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
level
+ +
+ +
+
+
+
+
+ +

level property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ BurtLogLevel + get + level + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+BurtLogLevel get level => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + level + (BurtLogLevel v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set level(BurtLogLevel v) { setField(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLog/title.html b/docs/data/BurtLog/title.html new file mode 100644 index 0000000000..03e4394e4c --- /dev/null +++ b/docs/data/BurtLog/title.html @@ -0,0 +1,150 @@ + + + + + + + + title property - BurtLog class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
title
+ +
+ +
+
+
+
+
+ +

title property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ String + get + title + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.String get title => $_getSZ(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + title + (String v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set title($core.String v) { $_setString(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLogLevel-class-sidebar.html b/docs/data/BurtLogLevel-class-sidebar.html new file mode 100644 index 0000000000..d433417bf5 --- /dev/null +++ b/docs/data/BurtLogLevel-class-sidebar.html @@ -0,0 +1,37 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. BURT_LOG_LEVEL_UNDEFINED
  28. +
  29. critical
  30. +
  31. debug
  32. +
  33. error
  34. +
  35. info
  36. +
  37. trace
  38. +
  39. values
  40. +
  41. warning
  42. +
diff --git a/docs/data/BurtLogLevel-class.html b/docs/data/BurtLogLevel-class.html new file mode 100644 index 0000000000..7f719bf155 --- /dev/null +++ b/docs/data/BurtLogLevel-class.html @@ -0,0 +1,358 @@ + + + + + + + + BurtLogLevel class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BurtLogLevel
+ +
+ +
+
+
+
+
+ +

BurtLogLevel class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + BurtLogLevel? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ BURT_LOG_LEVEL_UNDEFINED + → const BurtLogLevel + + +
+
+ + + +
+ +
+ critical + → const BurtLogLevel + + +
+
+ + + +
+ +
+ debug + → const BurtLogLevel + + +
+
+ + + +
+ +
+ error + → const BurtLogLevel + + +
+
+ + + +
+ +
+ info + → const BurtLogLevel + + +
+
+ + + +
+ +
+ trace + → const BurtLogLevel + + +
+
+ + + +
+ +
+ values + → const List<BurtLogLevel> + + +
+
+ + + +
+ +
+ warning + → const BurtLogLevel + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLogLevel/BURT_LOG_LEVEL_UNDEFINED-constant.html b/docs/data/BurtLogLevel/BURT_LOG_LEVEL_UNDEFINED-constant.html new file mode 100644 index 0000000000..edebd6bb3f --- /dev/null +++ b/docs/data/BurtLogLevel/BURT_LOG_LEVEL_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + BURT_LOG_LEVEL_UNDEFINED constant - BurtLogLevel class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BURT_LOG_LEVEL_UNDEFINED
+ +
+ +
+
+
+
+
+ +

BURT_LOG_LEVEL_UNDEFINED constant +

+ + +
+ + BurtLogLevel + const BURT_LOG_LEVEL_UNDEFINED + + +
+ + + +
+

Implementation

+
static const BurtLogLevel BURT_LOG_LEVEL_UNDEFINED = BurtLogLevel._(0, _omitEnumNames ? '' : 'BURT_LOG_LEVEL_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLogLevel/critical-constant.html b/docs/data/BurtLogLevel/critical-constant.html new file mode 100644 index 0000000000..f6a9fc17fb --- /dev/null +++ b/docs/data/BurtLogLevel/critical-constant.html @@ -0,0 +1,112 @@ + + + + + + + + critical constant - BurtLogLevel class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
critical
+ +
+ +
+
+
+
+
+ +

critical constant +

+ + +
+ + BurtLogLevel + const critical + + +
+ + + +
+

Implementation

+
static const BurtLogLevel critical = BurtLogLevel._(1, _omitEnumNames ? '' : 'critical');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLogLevel/debug-constant.html b/docs/data/BurtLogLevel/debug-constant.html new file mode 100644 index 0000000000..bbeb4eade9 --- /dev/null +++ b/docs/data/BurtLogLevel/debug-constant.html @@ -0,0 +1,112 @@ + + + + + + + + debug constant - BurtLogLevel class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
debug
+ +
+ +
+
+
+
+
+ +

debug constant +

+ + +
+ + BurtLogLevel + const debug + + +
+ + + +
+

Implementation

+
static const BurtLogLevel debug = BurtLogLevel._(5, _omitEnumNames ? '' : 'debug');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLogLevel/error-constant.html b/docs/data/BurtLogLevel/error-constant.html new file mode 100644 index 0000000000..f004feee2e --- /dev/null +++ b/docs/data/BurtLogLevel/error-constant.html @@ -0,0 +1,112 @@ + + + + + + + + error constant - BurtLogLevel class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
error
+ +
+ +
+
+
+
+
+ +

error constant +

+ + +
+ + BurtLogLevel + const error + + +
+ + + +
+

Implementation

+
static const BurtLogLevel error = BurtLogLevel._(2, _omitEnumNames ? '' : 'error');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLogLevel/info-constant.html b/docs/data/BurtLogLevel/info-constant.html new file mode 100644 index 0000000000..2304886e52 --- /dev/null +++ b/docs/data/BurtLogLevel/info-constant.html @@ -0,0 +1,112 @@ + + + + + + + + info constant - BurtLogLevel class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info
+ +
+ +
+
+
+
+
+ +

info constant +

+ + +
+ + BurtLogLevel + const info + + +
+ + + +
+

Implementation

+
static const BurtLogLevel info = BurtLogLevel._(4, _omitEnumNames ? '' : 'info');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLogLevel/trace-constant.html b/docs/data/BurtLogLevel/trace-constant.html new file mode 100644 index 0000000000..82b181faaa --- /dev/null +++ b/docs/data/BurtLogLevel/trace-constant.html @@ -0,0 +1,112 @@ + + + + + + + + trace constant - BurtLogLevel class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
trace
+ +
+ +
+
+
+
+
+ +

trace constant +

+ + +
+ + BurtLogLevel + const trace + + +
+ + + +
+

Implementation

+
static const BurtLogLevel trace = BurtLogLevel._(6, _omitEnumNames ? '' : 'trace');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLogLevel/valueOf.html b/docs/data/BurtLogLevel/valueOf.html new file mode 100644 index 0000000000..3cf3c5820c --- /dev/null +++ b/docs/data/BurtLogLevel/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - BurtLogLevel class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +BurtLogLevel? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static BurtLogLevel? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLogLevel/values-constant.html b/docs/data/BurtLogLevel/values-constant.html new file mode 100644 index 0000000000..ab6caf79fd --- /dev/null +++ b/docs/data/BurtLogLevel/values-constant.html @@ -0,0 +1,120 @@ + + + + + + + + values constant - BurtLogLevel class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<BurtLogLevel> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<BurtLogLevel> values = <BurtLogLevel> [
+  BURT_LOG_LEVEL_UNDEFINED,
+  critical,
+  error,
+  warning,
+  info,
+  debug,
+  trace,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/BurtLogLevel/warning-constant.html b/docs/data/BurtLogLevel/warning-constant.html new file mode 100644 index 0000000000..61374a9413 --- /dev/null +++ b/docs/data/BurtLogLevel/warning-constant.html @@ -0,0 +1,112 @@ + + + + + + + + warning constant - BurtLogLevel class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
warning
+ +
+ +
+
+
+
+
+ +

warning constant +

+ + +
+ + BurtLogLevel + const warning + + +
+ + + +
+

Implementation

+
static const BurtLogLevel warning = BurtLogLevel._(3, _omitEnumNames ? '' : 'warning');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails-class-sidebar.html b/docs/data/CameraDetails-class-sidebar.html new file mode 100644 index 0000000000..65fc1d8d8c --- /dev/null +++ b/docs/data/CameraDetails-class-sidebar.html @@ -0,0 +1,106 @@ +
    + +
  1. Constructors
  2. +
  3. CameraDetails
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. autofocus
  12. +
  13. eventPlugin
  14. +
  15. focus
  16. +
  17. fps
  18. +
  19. hashCode
  20. +
  21. info_
  22. +
  23. isFrozen
  24. +
  25. name
  26. +
  27. pan
  28. +
  29. quality
  30. +
  31. resolutionHeight
  32. +
  33. resolutionWidth
  34. +
  35. runtimeType
  36. +
  37. status
  38. +
  39. tilt
  40. +
  41. unknownFields
  42. +
  43. zoom
  44. + +
  45. Methods
  46. +
  47. addExtension
  48. +
  49. check
  50. +
  51. clear
  52. +
  53. clearAutofocus
  54. +
  55. clearExtension
  56. +
  57. clearField
  58. +
  59. clearFocus
  60. +
  61. clearFps
  62. +
  63. clearName
  64. +
  65. clearPan
  66. +
  67. clearQuality
  68. +
  69. clearResolutionHeight
  70. +
  71. clearResolutionWidth
  72. +
  73. clearStatus
  74. +
  75. clearTilt
  76. +
  77. clearZoom
  78. +
  79. clone
  80. +
  81. copyWith
  82. +
  83. createEmptyInstance
  84. +
  85. createMapField
  86. +
  87. createRepeatedField
  88. +
  89. extensionsAreInitialized
  90. +
  91. freeze
  92. +
  93. getDefaultForField
  94. +
  95. getExtension
  96. +
  97. getField
  98. +
  99. getFieldOrNull
  100. +
  101. getTagNumber
  102. +
  103. hasAutofocus
  104. +
  105. hasExtension
  106. +
  107. hasField
  108. +
  109. hasFocus
  110. +
  111. hasFps
  112. +
  113. hasName
  114. +
  115. hasPan
  116. +
  117. hasQuality
  118. +
  119. hasRequiredFields
  120. +
  121. hasResolutionHeight
  122. +
  123. hasResolutionWidth
  124. +
  125. hasStatus
  126. +
  127. hasTilt
  128. +
  129. hasZoom
  130. +
  131. isInitialized
  132. +
  133. mergeFromBuffer
  134. +
  135. mergeFromCodedBufferReader
  136. +
  137. mergeFromJson
  138. +
  139. mergeFromJsonMap
  140. +
  141. mergeFromMessage
  142. +
  143. mergeFromProto3Json
  144. +
  145. mergeUnknownFields
  146. +
  147. noSuchMethod
  148. +
  149. setExtension
  150. +
  151. setField
  152. +
  153. toBuilder
  154. +
  155. toDebugString
  156. +
  157. toProto3Json
  158. +
  159. toString
  160. +
  161. writeToBuffer
  162. +
  163. writeToCodedBufferWriter
  164. +
  165. writeToJson
  166. +
  167. writeToJsonMap
  168. + +
  169. Operators
  170. +
  171. operator ==
  172. + + + + + +
  173. Static methods
  174. +
  175. create
  176. +
  177. createRepeated
  178. +
  179. getDefault
  180. + +
diff --git a/docs/data/CameraDetails-class.html b/docs/data/CameraDetails-class.html new file mode 100644 index 0000000000..af7a8f71b8 --- /dev/null +++ b/docs/data/CameraDetails-class.html @@ -0,0 +1,1240 @@ + + + + + + + + CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraDetails
+ +
+ +
+
+
+
+
+ +

CameraDetails class + +

+ + +
+

/ Details about a specific camera.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ CameraDetails({CameraName? name, int? resolutionWidth, int? resolutionHeight, int? quality, int? fps, CameraStatus? status, bool? autofocus, int? zoom, int? pan, int? tilt, int? focus}) +
+
+ +
factory
+
+
+ CameraDetails.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ CameraDetails.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ autofocus + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ focus + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ fps + ↔ int + + +
+
+ / The amount of frames per second. Eg, 60 FPS or 24 FPS. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ name + CameraName + + +
+
+ / The name of the camera. +
getter/setter pair
+ +
+ +
+ pan + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ quality + ↔ int + + +
+
+ / The quality of the frame, as a percentage. Used for JPG compression. +
getter/setter pair
+ +
+ +
+ resolutionHeight + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ resolutionWidth + ↔ int + + +
+
+ / The width and height of the image frame. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ status + CameraStatus + + +
+
+ / The status of this camera. +
getter/setter pair
+ +
+ +
+ tilt + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ zoom + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearAutofocus() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearFocus() + → void + + + +
+
+ + + +
+ +
+ clearFps() + → void + + + +
+
+ + + +
+ +
+ clearName() + → void + + + +
+
+ + + +
+ +
+ clearPan() + → void + + + +
+
+ + + +
+ +
+ clearQuality() + → void + + + +
+
+ + + +
+ +
+ clearResolutionHeight() + → void + + + +
+
+ + + +
+ +
+ clearResolutionWidth() + → void + + + +
+
+ + + +
+ +
+ clearStatus() + → void + + + +
+
+ + + +
+ +
+ clearTilt() + → void + + + +
+
+ + + +
+ +
+ clearZoom() + → void + + + +
+
+ + + +
+ +
+ clone() + CameraDetails + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(CameraDetails)) + CameraDetails + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + CameraDetails + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasAutofocus() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasFocus() + → bool + + + +
+
+ + + +
+ +
+ hasFps() + → bool + + + +
+
+ + + +
+ +
+ hasName() + → bool + + + +
+
+ + + +
+ +
+ hasPan() + → bool + + + +
+
+ + + +
+ +
+ hasQuality() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasResolutionHeight() + → bool + + + +
+
+ + + +
+ +
+ hasResolutionWidth() + → bool + + + +
+
+ + + +
+ +
+ hasStatus() + → bool + + + +
+
+ + + +
+ +
+ hasTilt() + → bool + + + +
+
+ + + +
+ +
+ hasZoom() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + CameraDetails + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<CameraDetails> + + + +
+
+ + + +
+ +
+ getDefault() + CameraDetails + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/CameraDetails.fromBuffer.html b/docs/data/CameraDetails/CameraDetails.fromBuffer.html new file mode 100644 index 0000000000..b04898f4a9 --- /dev/null +++ b/docs/data/CameraDetails/CameraDetails.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + CameraDetails.fromBuffer constructor - CameraDetails - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraDetails.fromBuffer
+ +
+ +
+
+
+
+
+ +

CameraDetails.fromBuffer constructor +

+ +
+ + CameraDetails.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory CameraDetails.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/CameraDetails.fromJson.html b/docs/data/CameraDetails/CameraDetails.fromJson.html new file mode 100644 index 0000000000..f13a170efb --- /dev/null +++ b/docs/data/CameraDetails/CameraDetails.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + CameraDetails.fromJson constructor - CameraDetails - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraDetails.fromJson
+ +
+ +
+
+
+
+
+ +

CameraDetails.fromJson constructor +

+ +
+ + CameraDetails.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory CameraDetails.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/CameraDetails.html b/docs/data/CameraDetails/CameraDetails.html new file mode 100644 index 0000000000..551585a4d0 --- /dev/null +++ b/docs/data/CameraDetails/CameraDetails.html @@ -0,0 +1,167 @@ + + + + + + + + CameraDetails constructor - CameraDetails - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraDetails
+ +
+ +
+
+
+
+
+ +

CameraDetails constructor +

+ +
+ + CameraDetails({
  1. CameraName? name,
  2. +
  3. int? resolutionWidth,
  4. +
  5. int? resolutionHeight,
  6. +
  7. int? quality,
  8. +
  9. int? fps,
  10. +
  11. CameraStatus? status,
  12. +
  13. bool? autofocus,
  14. +
  15. int? zoom,
  16. +
  17. int? pan,
  18. +
  19. int? tilt,
  20. +
  21. int? focus,
  22. +
}) +
+ + + + +
+

Implementation

+
factory CameraDetails({
+  CameraName? name,
+  $core.int? resolutionWidth,
+  $core.int? resolutionHeight,
+  $core.int? quality,
+  $core.int? fps,
+  CameraStatus? status,
+  $core.bool? autofocus,
+  $core.int? zoom,
+  $core.int? pan,
+  $core.int? tilt,
+  $core.int? focus,
+}) {
+  final $result = create();
+  if (name != null) {
+    $result.name = name;
+  }
+  if (resolutionWidth != null) {
+    $result.resolutionWidth = resolutionWidth;
+  }
+  if (resolutionHeight != null) {
+    $result.resolutionHeight = resolutionHeight;
+  }
+  if (quality != null) {
+    $result.quality = quality;
+  }
+  if (fps != null) {
+    $result.fps = fps;
+  }
+  if (status != null) {
+    $result.status = status;
+  }
+  if (autofocus != null) {
+    $result.autofocus = autofocus;
+  }
+  if (zoom != null) {
+    $result.zoom = zoom;
+  }
+  if (pan != null) {
+    $result.pan = pan;
+  }
+  if (tilt != null) {
+    $result.tilt = tilt;
+  }
+  if (focus != null) {
+    $result.focus = focus;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/autofocus.html b/docs/data/CameraDetails/autofocus.html new file mode 100644 index 0000000000..7b5e14ec20 --- /dev/null +++ b/docs/data/CameraDetails/autofocus.html @@ -0,0 +1,150 @@ + + + + + + + + autofocus property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
autofocus
+ +
+ +
+
+
+
+
+ +

autofocus property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ bool + get + autofocus + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.bool get autofocus => $_getBF(6);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ set + autofocus + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+set autofocus($core.bool v) { $_setBool(6, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clearAutofocus.html b/docs/data/CameraDetails/clearAutofocus.html new file mode 100644 index 0000000000..22da38571e --- /dev/null +++ b/docs/data/CameraDetails/clearAutofocus.html @@ -0,0 +1,118 @@ + + + + + + + + clearAutofocus method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearAutofocus
+ +
+ +
+
+
+
+
+ +

clearAutofocus method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+void +clearAutofocus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+void clearAutofocus() => clearField(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clearFocus.html b/docs/data/CameraDetails/clearFocus.html new file mode 100644 index 0000000000..d7b91a2c00 --- /dev/null +++ b/docs/data/CameraDetails/clearFocus.html @@ -0,0 +1,118 @@ + + + + + + + + clearFocus method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearFocus
+ +
+ +
+
+
+
+
+ +

clearFocus method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+void +clearFocus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+void clearFocus() => clearField(11);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clearFps.html b/docs/data/CameraDetails/clearFps.html new file mode 100644 index 0000000000..fd7436bb4c --- /dev/null +++ b/docs/data/CameraDetails/clearFps.html @@ -0,0 +1,118 @@ + + + + + + + + clearFps method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearFps
+ +
+ +
+
+
+
+
+ +

clearFps method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearFps() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearFps() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clearName.html b/docs/data/CameraDetails/clearName.html new file mode 100644 index 0000000000..ecac11a945 --- /dev/null +++ b/docs/data/CameraDetails/clearName.html @@ -0,0 +1,118 @@ + + + + + + + + clearName method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearName
+ +
+ +
+
+
+
+
+ +

clearName method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearName() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearName() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clearPan.html b/docs/data/CameraDetails/clearPan.html new file mode 100644 index 0000000000..6d28419c69 --- /dev/null +++ b/docs/data/CameraDetails/clearPan.html @@ -0,0 +1,118 @@ + + + + + + + + clearPan method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearPan
+ +
+ +
+
+
+
+
+ +

clearPan method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+void +clearPan() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+void clearPan() => clearField(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clearQuality.html b/docs/data/CameraDetails/clearQuality.html new file mode 100644 index 0000000000..6b189caa56 --- /dev/null +++ b/docs/data/CameraDetails/clearQuality.html @@ -0,0 +1,118 @@ + + + + + + + + clearQuality method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearQuality
+ +
+ +
+
+
+
+
+ +

clearQuality method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearQuality() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearQuality() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clearResolutionHeight.html b/docs/data/CameraDetails/clearResolutionHeight.html new file mode 100644 index 0000000000..736593c242 --- /dev/null +++ b/docs/data/CameraDetails/clearResolutionHeight.html @@ -0,0 +1,118 @@ + + + + + + + + clearResolutionHeight method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearResolutionHeight
+ +
+ +
+
+
+
+
+ +

clearResolutionHeight method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearResolutionHeight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearResolutionHeight() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clearResolutionWidth.html b/docs/data/CameraDetails/clearResolutionWidth.html new file mode 100644 index 0000000000..f557662ed2 --- /dev/null +++ b/docs/data/CameraDetails/clearResolutionWidth.html @@ -0,0 +1,118 @@ + + + + + + + + clearResolutionWidth method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearResolutionWidth
+ +
+ +
+
+
+
+
+ +

clearResolutionWidth method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearResolutionWidth() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearResolutionWidth() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clearStatus.html b/docs/data/CameraDetails/clearStatus.html new file mode 100644 index 0000000000..529b32df6b --- /dev/null +++ b/docs/data/CameraDetails/clearStatus.html @@ -0,0 +1,118 @@ + + + + + + + + clearStatus method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearStatus
+ +
+ +
+
+
+
+
+ +

clearStatus method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+void +clearStatus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+void clearStatus() => clearField(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clearTilt.html b/docs/data/CameraDetails/clearTilt.html new file mode 100644 index 0000000000..13f9f968b8 --- /dev/null +++ b/docs/data/CameraDetails/clearTilt.html @@ -0,0 +1,118 @@ + + + + + + + + clearTilt method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearTilt
+ +
+ +
+
+
+
+
+ +

clearTilt method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+void +clearTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+void clearTilt() => clearField(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clearZoom.html b/docs/data/CameraDetails/clearZoom.html new file mode 100644 index 0000000000..03eec4c9ac --- /dev/null +++ b/docs/data/CameraDetails/clearZoom.html @@ -0,0 +1,118 @@ + + + + + + + + clearZoom method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearZoom
+ +
+ +
+
+
+
+
+ +

clearZoom method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+void +clearZoom() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+void clearZoom() => clearField(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/clone.html b/docs/data/CameraDetails/clone.html new file mode 100644 index 0000000000..cdf1e18f44 --- /dev/null +++ b/docs/data/CameraDetails/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+CameraDetails +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+CameraDetails clone() => CameraDetails()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/copyWith.html b/docs/data/CameraDetails/copyWith.html new file mode 100644 index 0000000000..7e24be5f3b --- /dev/null +++ b/docs/data/CameraDetails/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+CameraDetails +copyWith(
  1. void updates(
    1. CameraDetails
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+CameraDetails copyWith(void Function(CameraDetails) updates) => super.copyWith((message) => updates(message as CameraDetails)) as CameraDetails;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/create.html b/docs/data/CameraDetails/create.html new file mode 100644 index 0000000000..b8b55aef88 --- /dev/null +++ b/docs/data/CameraDetails/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +CameraDetails +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static CameraDetails create() => CameraDetails._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/createEmptyInstance.html b/docs/data/CameraDetails/createEmptyInstance.html new file mode 100644 index 0000000000..33f547a622 --- /dev/null +++ b/docs/data/CameraDetails/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +CameraDetails +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
CameraDetails createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/createRepeated.html b/docs/data/CameraDetails/createRepeated.html new file mode 100644 index 0000000000..b5338dc820 --- /dev/null +++ b/docs/data/CameraDetails/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<CameraDetails> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<CameraDetails> createRepeated() => $pb.PbList<CameraDetails>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/focus.html b/docs/data/CameraDetails/focus.html new file mode 100644 index 0000000000..db4c78d617 --- /dev/null +++ b/docs/data/CameraDetails/focus.html @@ -0,0 +1,150 @@ + + + + + + + + focus property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
focus
+ +
+ +
+
+
+
+
+ +

focus property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ int + get + focus + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(11)
+$core.int get focus => $_getIZ(10);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ set + focus + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(11)
+set focus($core.int v) { $_setSignedInt32(10, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/fps.html b/docs/data/CameraDetails/fps.html new file mode 100644 index 0000000000..7e1af411e9 --- /dev/null +++ b/docs/data/CameraDetails/fps.html @@ -0,0 +1,153 @@ + + + + + + + + fps property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
fps
+ +
+ +
+
+
+
+
+ +

fps property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ int + get + fps + + +
+ +
+

/ The amount of frames per second. Eg, 60 FPS or 24 FPS.

+
+ + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.int get fps => $_getIZ(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + fps + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set fps($core.int v) { $_setSignedInt32(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/getDefault.html b/docs/data/CameraDetails/getDefault.html new file mode 100644 index 0000000000..4219fe4ed4 --- /dev/null +++ b/docs/data/CameraDetails/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +CameraDetails +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static CameraDetails getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<CameraDetails>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/hasAutofocus.html b/docs/data/CameraDetails/hasAutofocus.html new file mode 100644 index 0000000000..de14fd2adf --- /dev/null +++ b/docs/data/CameraDetails/hasAutofocus.html @@ -0,0 +1,118 @@ + + + + + + + + hasAutofocus method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasAutofocus
+ +
+ +
+
+
+
+
+ +

hasAutofocus method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+bool +hasAutofocus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.bool hasAutofocus() => $_has(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/hasFocus.html b/docs/data/CameraDetails/hasFocus.html new file mode 100644 index 0000000000..3c13306eeb --- /dev/null +++ b/docs/data/CameraDetails/hasFocus.html @@ -0,0 +1,118 @@ + + + + + + + + hasFocus method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasFocus
+ +
+ +
+
+
+
+
+ +

hasFocus method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+bool +hasFocus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+$core.bool hasFocus() => $_has(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/hasFps.html b/docs/data/CameraDetails/hasFps.html new file mode 100644 index 0000000000..f1aaa1bf9b --- /dev/null +++ b/docs/data/CameraDetails/hasFps.html @@ -0,0 +1,118 @@ + + + + + + + + hasFps method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasFps
+ +
+ +
+
+
+
+
+ +

hasFps method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasFps() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasFps() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/hasName.html b/docs/data/CameraDetails/hasName.html new file mode 100644 index 0000000000..be526e42ee --- /dev/null +++ b/docs/data/CameraDetails/hasName.html @@ -0,0 +1,118 @@ + + + + + + + + hasName method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasName
+ +
+ +
+
+
+
+
+ +

hasName method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasName() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasName() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/hasPan.html b/docs/data/CameraDetails/hasPan.html new file mode 100644 index 0000000000..846f0e5fd6 --- /dev/null +++ b/docs/data/CameraDetails/hasPan.html @@ -0,0 +1,118 @@ + + + + + + + + hasPan method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasPan
+ +
+ +
+
+
+
+
+ +

hasPan method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+bool +hasPan() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.bool hasPan() => $_has(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/hasQuality.html b/docs/data/CameraDetails/hasQuality.html new file mode 100644 index 0000000000..015c4323d4 --- /dev/null +++ b/docs/data/CameraDetails/hasQuality.html @@ -0,0 +1,118 @@ + + + + + + + + hasQuality method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasQuality
+ +
+ +
+
+
+
+
+ +

hasQuality method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasQuality() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasQuality() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/hasResolutionHeight.html b/docs/data/CameraDetails/hasResolutionHeight.html new file mode 100644 index 0000000000..033cb77c00 --- /dev/null +++ b/docs/data/CameraDetails/hasResolutionHeight.html @@ -0,0 +1,118 @@ + + + + + + + + hasResolutionHeight method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasResolutionHeight
+ +
+ +
+
+
+
+
+ +

hasResolutionHeight method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasResolutionHeight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasResolutionHeight() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/hasResolutionWidth.html b/docs/data/CameraDetails/hasResolutionWidth.html new file mode 100644 index 0000000000..4af2c9fcb1 --- /dev/null +++ b/docs/data/CameraDetails/hasResolutionWidth.html @@ -0,0 +1,118 @@ + + + + + + + + hasResolutionWidth method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasResolutionWidth
+ +
+ +
+
+
+
+
+ +

hasResolutionWidth method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasResolutionWidth() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasResolutionWidth() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/hasStatus.html b/docs/data/CameraDetails/hasStatus.html new file mode 100644 index 0000000000..e9a6e807e6 --- /dev/null +++ b/docs/data/CameraDetails/hasStatus.html @@ -0,0 +1,118 @@ + + + + + + + + hasStatus method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasStatus
+ +
+ +
+
+
+
+
+ +

hasStatus method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+bool +hasStatus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool hasStatus() => $_has(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/hasTilt.html b/docs/data/CameraDetails/hasTilt.html new file mode 100644 index 0000000000..6a819cb4b6 --- /dev/null +++ b/docs/data/CameraDetails/hasTilt.html @@ -0,0 +1,118 @@ + + + + + + + + hasTilt method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasTilt
+ +
+ +
+
+
+
+
+ +

hasTilt method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+bool +hasTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.bool hasTilt() => $_has(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/hasZoom.html b/docs/data/CameraDetails/hasZoom.html new file mode 100644 index 0000000000..19b6e49c19 --- /dev/null +++ b/docs/data/CameraDetails/hasZoom.html @@ -0,0 +1,118 @@ + + + + + + + + hasZoom method - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasZoom
+ +
+ +
+
+
+
+
+ +

hasZoom method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+bool +hasZoom() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.bool hasZoom() => $_has(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/info_.html b/docs/data/CameraDetails/info_.html new file mode 100644 index 0000000000..617a6fe3ef --- /dev/null +++ b/docs/data/CameraDetails/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/name.html b/docs/data/CameraDetails/name.html new file mode 100644 index 0000000000..bd336a6f20 --- /dev/null +++ b/docs/data/CameraDetails/name.html @@ -0,0 +1,153 @@ + + + + + + + + name property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ CameraName + get + name + + +
+ +
+

/ The name of the camera.

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+CameraName get name => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + name + (CameraName v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set name(CameraName v) { setField(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/pan.html b/docs/data/CameraDetails/pan.html new file mode 100644 index 0000000000..31c73b0830 --- /dev/null +++ b/docs/data/CameraDetails/pan.html @@ -0,0 +1,150 @@ + + + + + + + + pan property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pan
+ +
+ +
+
+
+
+
+ +

pan property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ int + get + pan + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.int get pan => $_getIZ(8);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ set + pan + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+set pan($core.int v) { $_setSignedInt32(8, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/quality.html b/docs/data/CameraDetails/quality.html new file mode 100644 index 0000000000..42f7586f99 --- /dev/null +++ b/docs/data/CameraDetails/quality.html @@ -0,0 +1,153 @@ + + + + + + + + quality property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
quality
+ +
+ +
+
+
+
+
+ +

quality property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ int + get + quality + + +
+ +
+

/ The quality of the frame, as a percentage. Used for JPG compression.

+
+ + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.int get quality => $_getIZ(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + quality + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set quality($core.int v) { $_setSignedInt32(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/resolutionHeight.html b/docs/data/CameraDetails/resolutionHeight.html new file mode 100644 index 0000000000..ce091af8d5 --- /dev/null +++ b/docs/data/CameraDetails/resolutionHeight.html @@ -0,0 +1,150 @@ + + + + + + + + resolutionHeight property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
resolutionHeight
+ +
+ +
+
+
+
+
+ +

resolutionHeight property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ int + get + resolutionHeight + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.int get resolutionHeight => $_getIZ(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + resolutionHeight + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set resolutionHeight($core.int v) { $_setSignedInt32(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/resolutionWidth.html b/docs/data/CameraDetails/resolutionWidth.html new file mode 100644 index 0000000000..ad1d22c9f7 --- /dev/null +++ b/docs/data/CameraDetails/resolutionWidth.html @@ -0,0 +1,153 @@ + + + + + + + + resolutionWidth property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
resolutionWidth
+ +
+ +
+
+
+
+
+ +

resolutionWidth property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ int + get + resolutionWidth + + +
+ +
+

/ The width and height of the image frame.

+
+ + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.int get resolutionWidth => $_getIZ(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + resolutionWidth + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set resolutionWidth($core.int v) { $_setSignedInt32(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/status.html b/docs/data/CameraDetails/status.html new file mode 100644 index 0000000000..0596e5a677 --- /dev/null +++ b/docs/data/CameraDetails/status.html @@ -0,0 +1,153 @@ + + + + + + + + status property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
status
+ +
+ +
+
+
+
+
+ +

status property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ CameraStatus + get + status + + +
+ +
+

/ The status of this camera.

+
+ + +
+

Implementation

+
@$pb.TagNumber(6)
+CameraStatus get status => $_getN(5);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ set + status + (CameraStatus v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+set status(CameraStatus v) { setField(6, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/tilt.html b/docs/data/CameraDetails/tilt.html new file mode 100644 index 0000000000..b1e4bd1e70 --- /dev/null +++ b/docs/data/CameraDetails/tilt.html @@ -0,0 +1,150 @@ + + + + + + + + tilt property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
tilt
+ +
+ +
+
+
+
+
+ +

tilt property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ int + get + tilt + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.int get tilt => $_getIZ(9);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ set + tilt + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(10)
+set tilt($core.int v) { $_setSignedInt32(9, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraDetails/zoom.html b/docs/data/CameraDetails/zoom.html new file mode 100644 index 0000000000..dc1d68c0ac --- /dev/null +++ b/docs/data/CameraDetails/zoom.html @@ -0,0 +1,150 @@ + + + + + + + + zoom property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
zoom
+ +
+ +
+
+
+
+
+ +

zoom property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ int + get + zoom + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.int get zoom => $_getIZ(7);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ set + zoom + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(8)
+set zoom($core.int v) { $_setSignedInt32(7, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName-class-sidebar.html b/docs/data/CameraName-class-sidebar.html new file mode 100644 index 0000000000..cf445b30c5 --- /dev/null +++ b/docs/data/CameraName-class-sidebar.html @@ -0,0 +1,39 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. AUTONOMY_DEPTH
  28. +
  29. BOTTOM_LEFT
  30. +
  31. BOTTOM_RIGHT
  32. +
  33. CAMERA_NAME_UNDEFINED
  34. +
  35. ROVER_FRONT
  36. +
  37. ROVER_REAR
  38. +
  39. SUBSYSTEM1
  40. +
  41. SUBSYSTEM2
  42. +
  43. SUBSYSTEM3
  44. +
  45. values
  46. +
diff --git a/docs/data/CameraName-class.html b/docs/data/CameraName-class.html new file mode 100644 index 0000000000..1294c5e527 --- /dev/null +++ b/docs/data/CameraName-class.html @@ -0,0 +1,382 @@ + + + + + + + + CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraName
+ +
+ +
+
+
+
+
+ +

CameraName class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + CameraName? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ AUTONOMY_DEPTH + → const CameraName + + +
+
+ + + +
+ +
+ BOTTOM_LEFT + → const CameraName + + +
+
+ + + +
+ +
+ BOTTOM_RIGHT + → const CameraName + + +
+
+ + + +
+ +
+ CAMERA_NAME_UNDEFINED + → const CameraName + + +
+
+ + + +
+ +
+ ROVER_FRONT + → const CameraName + + +
+
+ + + +
+ +
+ ROVER_REAR + → const CameraName + + +
+
+ + + +
+ +
+ SUBSYSTEM1 + → const CameraName + + +
+
+ + + +
+ +
+ SUBSYSTEM2 + → const CameraName + + +
+
+ + + +
+ +
+ SUBSYSTEM3 + → const CameraName + + +
+
+ + + +
+ +
+ values + → const List<CameraName> + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName/AUTONOMY_DEPTH-constant.html b/docs/data/CameraName/AUTONOMY_DEPTH-constant.html new file mode 100644 index 0000000000..3507ba8d23 --- /dev/null +++ b/docs/data/CameraName/AUTONOMY_DEPTH-constant.html @@ -0,0 +1,112 @@ + + + + + + + + AUTONOMY_DEPTH constant - CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AUTONOMY_DEPTH
+ +
+ +
+
+
+
+
+ +

AUTONOMY_DEPTH constant +

+ + +
+ + CameraName + const AUTONOMY_DEPTH + + +
+ + + +
+

Implementation

+
static const CameraName AUTONOMY_DEPTH = CameraName._(3, _omitEnumNames ? '' : 'AUTONOMY_DEPTH');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName/BOTTOM_LEFT-constant.html b/docs/data/CameraName/BOTTOM_LEFT-constant.html new file mode 100644 index 0000000000..0732fbe5c0 --- /dev/null +++ b/docs/data/CameraName/BOTTOM_LEFT-constant.html @@ -0,0 +1,112 @@ + + + + + + + + BOTTOM_LEFT constant - CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BOTTOM_LEFT
+ +
+ +
+
+
+
+
+ +

BOTTOM_LEFT constant +

+ + +
+ + CameraName + const BOTTOM_LEFT + + +
+ + + +
+

Implementation

+
static const CameraName BOTTOM_LEFT = CameraName._(7, _omitEnumNames ? '' : 'BOTTOM_LEFT');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName/BOTTOM_RIGHT-constant.html b/docs/data/CameraName/BOTTOM_RIGHT-constant.html new file mode 100644 index 0000000000..3d7ba37b24 --- /dev/null +++ b/docs/data/CameraName/BOTTOM_RIGHT-constant.html @@ -0,0 +1,112 @@ + + + + + + + + BOTTOM_RIGHT constant - CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BOTTOM_RIGHT
+ +
+ +
+
+
+
+
+ +

BOTTOM_RIGHT constant +

+ + +
+ + CameraName + const BOTTOM_RIGHT + + +
+ + + +
+

Implementation

+
static const CameraName BOTTOM_RIGHT = CameraName._(8, _omitEnumNames ? '' : 'BOTTOM_RIGHT');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName/CAMERA_NAME_UNDEFINED-constant.html b/docs/data/CameraName/CAMERA_NAME_UNDEFINED-constant.html new file mode 100644 index 0000000000..a84c64ee97 --- /dev/null +++ b/docs/data/CameraName/CAMERA_NAME_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CAMERA_NAME_UNDEFINED constant - CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CAMERA_NAME_UNDEFINED
+ +
+ +
+
+
+
+
+ +

CAMERA_NAME_UNDEFINED constant +

+ + +
+ + CameraName + const CAMERA_NAME_UNDEFINED + + +
+ + + +
+

Implementation

+
static const CameraName CAMERA_NAME_UNDEFINED = CameraName._(0, _omitEnumNames ? '' : 'CAMERA_NAME_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName/ROVER_FRONT-constant.html b/docs/data/CameraName/ROVER_FRONT-constant.html new file mode 100644 index 0000000000..02199fc323 --- /dev/null +++ b/docs/data/CameraName/ROVER_FRONT-constant.html @@ -0,0 +1,112 @@ + + + + + + + + ROVER_FRONT constant - CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ROVER_FRONT
+ +
+ +
+
+
+
+
+ +

ROVER_FRONT constant +

+ + +
+ + CameraName + const ROVER_FRONT + + +
+ + + +
+

Implementation

+
static const CameraName ROVER_FRONT = CameraName._(1, _omitEnumNames ? '' : 'ROVER_FRONT');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName/ROVER_REAR-constant.html b/docs/data/CameraName/ROVER_REAR-constant.html new file mode 100644 index 0000000000..3f909c550c --- /dev/null +++ b/docs/data/CameraName/ROVER_REAR-constant.html @@ -0,0 +1,112 @@ + + + + + + + + ROVER_REAR constant - CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ROVER_REAR
+ +
+ +
+
+
+
+
+ +

ROVER_REAR constant +

+ + +
+ + CameraName + const ROVER_REAR + + +
+ + + +
+

Implementation

+
static const CameraName ROVER_REAR = CameraName._(2, _omitEnumNames ? '' : 'ROVER_REAR');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName/SUBSYSTEM1-constant.html b/docs/data/CameraName/SUBSYSTEM1-constant.html new file mode 100644 index 0000000000..ef9a51da19 --- /dev/null +++ b/docs/data/CameraName/SUBSYSTEM1-constant.html @@ -0,0 +1,112 @@ + + + + + + + + SUBSYSTEM1 constant - CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SUBSYSTEM1
+ +
+ +
+
+
+
+
+ +

SUBSYSTEM1 constant +

+ + +
+ + CameraName + const SUBSYSTEM1 + + +
+ + + +
+

Implementation

+
static const CameraName SUBSYSTEM1 = CameraName._(4, _omitEnumNames ? '' : 'SUBSYSTEM1');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName/SUBSYSTEM2-constant.html b/docs/data/CameraName/SUBSYSTEM2-constant.html new file mode 100644 index 0000000000..3b2a819b0d --- /dev/null +++ b/docs/data/CameraName/SUBSYSTEM2-constant.html @@ -0,0 +1,112 @@ + + + + + + + + SUBSYSTEM2 constant - CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SUBSYSTEM2
+ +
+ +
+
+
+
+
+ +

SUBSYSTEM2 constant +

+ + +
+ + CameraName + const SUBSYSTEM2 + + +
+ + + +
+

Implementation

+
static const CameraName SUBSYSTEM2 = CameraName._(5, _omitEnumNames ? '' : 'SUBSYSTEM2');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName/SUBSYSTEM3-constant.html b/docs/data/CameraName/SUBSYSTEM3-constant.html new file mode 100644 index 0000000000..48b5f95378 --- /dev/null +++ b/docs/data/CameraName/SUBSYSTEM3-constant.html @@ -0,0 +1,112 @@ + + + + + + + + SUBSYSTEM3 constant - CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SUBSYSTEM3
+ +
+ +
+
+
+
+
+ +

SUBSYSTEM3 constant +

+ + +
+ + CameraName + const SUBSYSTEM3 + + +
+ + + +
+

Implementation

+
static const CameraName SUBSYSTEM3 = CameraName._(6, _omitEnumNames ? '' : 'SUBSYSTEM3');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName/valueOf.html b/docs/data/CameraName/valueOf.html new file mode 100644 index 0000000000..763b8a5d2c --- /dev/null +++ b/docs/data/CameraName/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +CameraName? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static CameraName? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraName/values-constant.html b/docs/data/CameraName/values-constant.html new file mode 100644 index 0000000000..e42a1c2a49 --- /dev/null +++ b/docs/data/CameraName/values-constant.html @@ -0,0 +1,122 @@ + + + + + + + + values constant - CameraName class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<CameraName> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<CameraName> values = <CameraName> [
+  CAMERA_NAME_UNDEFINED,
+  ROVER_FRONT,
+  ROVER_REAR,
+  AUTONOMY_DEPTH,
+  SUBSYSTEM1,
+  SUBSYSTEM2,
+  SUBSYSTEM3,
+  BOTTOM_LEFT,
+  BOTTOM_RIGHT,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraNameUtils-extension-sidebar.html b/docs/data/CameraNameUtils-extension-sidebar.html new file mode 100644 index 0000000000..1d12b932f2 --- /dev/null +++ b/docs/data/CameraNameUtils-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. + + + + + + +
diff --git a/docs/data/CameraNameUtils.html b/docs/data/CameraNameUtils.html new file mode 100644 index 0000000000..2f34ca3f99 --- /dev/null +++ b/docs/data/CameraNameUtils.html @@ -0,0 +1,139 @@ + + + + + + + + CameraNameUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraNameUtils
+ +
+ +
+
+
+
+
+ +

CameraNameUtils extension + +

+ + +
+

Extensions for CameraName values.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ humanName + → String + + +
+
+ Gets a user-friendly name for a CameraName. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/CameraNameUtils/humanName.html b/docs/data/CameraNameUtils/humanName.html new file mode 100644 index 0000000000..14bcfd07cf --- /dev/null +++ b/docs/data/CameraNameUtils/humanName.html @@ -0,0 +1,135 @@ + + + + + + + + humanName property - CameraNameUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

Gets a user-friendly name for a CameraName.

+
+ + +
+

Implementation

+
String get humanName {
+	switch(this) {
+		case CameraName.CAMERA_NAME_UNDEFINED: return "";
+		case CameraName.ROVER_FRONT: return "Rover front";
+		case CameraName.ROVER_REAR: return "Rover rear";
+		case CameraName.AUTONOMY_DEPTH: return "Depth";
+		case CameraName.SUBSYSTEM1: return "Subsystem 1";
+		case CameraName.SUBSYSTEM2: return "Subsystem 2";
+		case CameraName.SUBSYSTEM3: return "Subsystem 3";
+		case CameraName.BOTTOM_LEFT: return "Bottom Left";
+		case CameraName.BOTTOM_RIGHT: return "Bottom Right";
+	}
+	// Do not use default or else you'll lose exhaustiveness checking.
+	throw ArgumentError("Unrecognized camera name: $this");
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatus-class-sidebar.html b/docs/data/CameraStatus-class-sidebar.html new file mode 100644 index 0000000000..7ea616debf --- /dev/null +++ b/docs/data/CameraStatus-class-sidebar.html @@ -0,0 +1,38 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. CAMERA_DISABLED
  28. +
  29. CAMERA_DISCONNECTED
  30. +
  31. CAMERA_ENABLED
  32. +
  33. CAMERA_HAS_NO_NAME
  34. +
  35. CAMERA_LOADING
  36. +
  37. CAMERA_NOT_RESPONDING
  38. +
  39. CAMERA_STATUS_UNDEFINED
  40. +
  41. FRAME_TOO_LARGE
  42. +
  43. values
  44. +
diff --git a/docs/data/CameraStatus-class.html b/docs/data/CameraStatus-class.html new file mode 100644 index 0000000000..d09eed3a24 --- /dev/null +++ b/docs/data/CameraStatus-class.html @@ -0,0 +1,370 @@ + + + + + + + + CameraStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraStatus
+ +
+ +
+
+
+
+
+ +

CameraStatus class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + CameraStatus? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ CAMERA_DISABLED + → const CameraStatus + + +
+
+ + + +
+ +
+ CAMERA_DISCONNECTED + → const CameraStatus + + +
+
+ + + +
+ +
+ CAMERA_ENABLED + → const CameraStatus + + +
+
+ + + +
+ +
+ CAMERA_HAS_NO_NAME + → const CameraStatus + + +
+
+ + + +
+ +
+ CAMERA_LOADING + → const CameraStatus + + +
+
+ + + +
+ +
+ CAMERA_NOT_RESPONDING + → const CameraStatus + + +
+
+ + + +
+ +
+ CAMERA_STATUS_UNDEFINED + → const CameraStatus + + +
+
+ + + +
+ +
+ FRAME_TOO_LARGE + → const CameraStatus + + +
+
+ + + +
+ +
+ values + → const List<CameraStatus> + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatus/CAMERA_DISABLED-constant.html b/docs/data/CameraStatus/CAMERA_DISABLED-constant.html new file mode 100644 index 0000000000..04a97391f5 --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_DISABLED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CAMERA_DISABLED constant - CameraStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CAMERA_DISABLED
+ +
+ +
+
+
+
+
+ +

CAMERA_DISABLED constant +

+ + +
+ + CameraStatus + const CAMERA_DISABLED + + +
+ + + +
+

Implementation

+
static const CameraStatus CAMERA_DISABLED = CameraStatus._(3, _omitEnumNames ? '' : 'CAMERA_DISABLED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatus/CAMERA_DISCONNECTED-constant.html b/docs/data/CameraStatus/CAMERA_DISCONNECTED-constant.html new file mode 100644 index 0000000000..33a41e7f6a --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_DISCONNECTED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CAMERA_DISCONNECTED constant - CameraStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CAMERA_DISCONNECTED
+ +
+ +
+
+
+
+
+ +

CAMERA_DISCONNECTED constant +

+ + +
+ + CameraStatus + const CAMERA_DISCONNECTED + + +
+ + + +
+

Implementation

+
static const CameraStatus CAMERA_DISCONNECTED = CameraStatus._(1, _omitEnumNames ? '' : 'CAMERA_DISCONNECTED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatus/CAMERA_ENABLED-constant.html b/docs/data/CameraStatus/CAMERA_ENABLED-constant.html new file mode 100644 index 0000000000..59c687f6cb --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_ENABLED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CAMERA_ENABLED constant - CameraStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CAMERA_ENABLED
+ +
+ +
+
+
+
+
+ +

CAMERA_ENABLED constant +

+ + +
+ + CameraStatus + const CAMERA_ENABLED + + +
+ + + +
+

Implementation

+
static const CameraStatus CAMERA_ENABLED = CameraStatus._(2, _omitEnumNames ? '' : 'CAMERA_ENABLED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatus/CAMERA_HAS_NO_NAME-constant.html b/docs/data/CameraStatus/CAMERA_HAS_NO_NAME-constant.html new file mode 100644 index 0000000000..03ee06e9a9 --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_HAS_NO_NAME-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CAMERA_HAS_NO_NAME constant - CameraStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CAMERA_HAS_NO_NAME
+ +
+ +
+
+
+
+
+ +

CAMERA_HAS_NO_NAME constant +

+ + +
+ + CameraStatus + const CAMERA_HAS_NO_NAME + + +
+ + + +
+

Implementation

+
static const CameraStatus CAMERA_HAS_NO_NAME = CameraStatus._(7, _omitEnumNames ? '' : 'CAMERA_HAS_NO_NAME');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatus/CAMERA_LOADING-constant.html b/docs/data/CameraStatus/CAMERA_LOADING-constant.html new file mode 100644 index 0000000000..2445050577 --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_LOADING-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CAMERA_LOADING constant - CameraStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CAMERA_LOADING
+ +
+ +
+
+
+
+
+ +

CAMERA_LOADING constant +

+ + +
+ + CameraStatus + const CAMERA_LOADING + + +
+ + + +
+

Implementation

+
static const CameraStatus CAMERA_LOADING = CameraStatus._(5, _omitEnumNames ? '' : 'CAMERA_LOADING');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatus/CAMERA_NOT_RESPONDING-constant.html b/docs/data/CameraStatus/CAMERA_NOT_RESPONDING-constant.html new file mode 100644 index 0000000000..f991b838bd --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_NOT_RESPONDING-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CAMERA_NOT_RESPONDING constant - CameraStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CAMERA_NOT_RESPONDING
+ +
+ +
+
+
+
+
+ +

CAMERA_NOT_RESPONDING constant +

+ + +
+ + CameraStatus + const CAMERA_NOT_RESPONDING + + +
+ + + +
+

Implementation

+
static const CameraStatus CAMERA_NOT_RESPONDING = CameraStatus._(4, _omitEnumNames ? '' : 'CAMERA_NOT_RESPONDING');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatus/CAMERA_STATUS_UNDEFINED-constant.html b/docs/data/CameraStatus/CAMERA_STATUS_UNDEFINED-constant.html new file mode 100644 index 0000000000..b59a31122b --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_STATUS_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CAMERA_STATUS_UNDEFINED constant - CameraStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CAMERA_STATUS_UNDEFINED
+ +
+ +
+
+
+
+
+ +

CAMERA_STATUS_UNDEFINED constant +

+ + +
+ + CameraStatus + const CAMERA_STATUS_UNDEFINED + + +
+ + + +
+

Implementation

+
static const CameraStatus CAMERA_STATUS_UNDEFINED = CameraStatus._(0, _omitEnumNames ? '' : 'CAMERA_STATUS_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatus/FRAME_TOO_LARGE-constant.html b/docs/data/CameraStatus/FRAME_TOO_LARGE-constant.html new file mode 100644 index 0000000000..25d8e8b9de --- /dev/null +++ b/docs/data/CameraStatus/FRAME_TOO_LARGE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + FRAME_TOO_LARGE constant - CameraStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
FRAME_TOO_LARGE
+ +
+ +
+
+
+
+
+ +

FRAME_TOO_LARGE constant +

+ + +
+ + CameraStatus + const FRAME_TOO_LARGE + + +
+ + + +
+

Implementation

+
static const CameraStatus FRAME_TOO_LARGE = CameraStatus._(6, _omitEnumNames ? '' : 'FRAME_TOO_LARGE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatus/valueOf.html b/docs/data/CameraStatus/valueOf.html new file mode 100644 index 0000000000..c9022e09e2 --- /dev/null +++ b/docs/data/CameraStatus/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - CameraStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +CameraStatus? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static CameraStatus? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatus/values-constant.html b/docs/data/CameraStatus/values-constant.html new file mode 100644 index 0000000000..a45ab99b4b --- /dev/null +++ b/docs/data/CameraStatus/values-constant.html @@ -0,0 +1,121 @@ + + + + + + + + values constant - CameraStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<CameraStatus> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<CameraStatus> values = <CameraStatus> [
+  CAMERA_STATUS_UNDEFINED,
+  CAMERA_DISCONNECTED,
+  CAMERA_ENABLED,
+  CAMERA_DISABLED,
+  CAMERA_NOT_RESPONDING,
+  CAMERA_LOADING,
+  FRAME_TOO_LARGE,
+  CAMERA_HAS_NO_NAME,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CameraStatusUtils-extension-sidebar.html b/docs/data/CameraStatusUtils-extension-sidebar.html new file mode 100644 index 0000000000..3e3c09928b --- /dev/null +++ b/docs/data/CameraStatusUtils-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. + + + + + + +
diff --git a/docs/data/CameraStatusUtils.html b/docs/data/CameraStatusUtils.html new file mode 100644 index 0000000000..278bc68b7a --- /dev/null +++ b/docs/data/CameraStatusUtils.html @@ -0,0 +1,139 @@ + + + + + + + + CameraStatusUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraStatusUtils
+ +
+ +
+
+
+
+
+ +

CameraStatusUtils extension + +

+ + +
+

Extensions for CameraStatus values.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ humanName + → String + + +
+
+ Gets a user-friendly name for a CameraStatus. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/CameraStatusUtils/humanName.html b/docs/data/CameraStatusUtils/humanName.html new file mode 100644 index 0000000000..e521466775 --- /dev/null +++ b/docs/data/CameraStatusUtils/humanName.html @@ -0,0 +1,134 @@ + + + + + + + + humanName property - CameraStatusUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

Gets a user-friendly name for a CameraStatus.

+
+ + +
+

Implementation

+
String get humanName {
+	switch(this) {
+		case CameraStatus.CAMERA_STATUS_UNDEFINED: return "";
+		case CameraStatus.CAMERA_DISCONNECTED: return "Disconnected";
+		case CameraStatus.CAMERA_ENABLED: return "Enabled";
+		case CameraStatus.CAMERA_DISABLED: return "Disabled";
+		case CameraStatus.CAMERA_NOT_RESPONDING: return "Not responding";
+		case CameraStatus.CAMERA_LOADING: return "Loading";
+		case CameraStatus.FRAME_TOO_LARGE: return "Frame too large";
+		case CameraStatus.CAMERA_HAS_NO_NAME: return "Camera has no name";
+	}
+	// Do not use default or else you'll lose exhaustiveness checking.
+	throw ArgumentError("Unrecognized rover status: $this");
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CarouselCommand-class-sidebar.html b/docs/data/CarouselCommand-class-sidebar.html new file mode 100644 index 0000000000..df2b7652c5 --- /dev/null +++ b/docs/data/CarouselCommand-class-sidebar.html @@ -0,0 +1,37 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. CAROUSEL_COMMAND_UNDEFINED
  28. +
  29. FILL_SECTION
  30. +
  31. FILL_TUBE
  32. +
  33. NEXT_SECTION
  34. +
  35. NEXT_TUBE
  36. +
  37. PREV_SECTION
  38. +
  39. PREV_TUBE
  40. +
  41. values
  42. +
diff --git a/docs/data/CarouselCommand-class.html b/docs/data/CarouselCommand-class.html new file mode 100644 index 0000000000..267a724ccc --- /dev/null +++ b/docs/data/CarouselCommand-class.html @@ -0,0 +1,357 @@ + + + + + + + + CarouselCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CarouselCommand
+ +
+ +
+
+
+
+
+ +

CarouselCommand class + +

+ + +
+

/ A command for the carousel and funnel to follow.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + CarouselCommand? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+ +
+ + + +
+ +
+ FILL_SECTION + → const CarouselCommand + + +
+
+ + + +
+ +
+ FILL_TUBE + → const CarouselCommand + + +
+
+ + + +
+ +
+ NEXT_SECTION + → const CarouselCommand + + +
+
+ + + +
+ +
+ NEXT_TUBE + → const CarouselCommand + + +
+
+ + + +
+ +
+ PREV_SECTION + → const CarouselCommand + + +
+
+ + + +
+ +
+ PREV_TUBE + → const CarouselCommand + + +
+
+ + + +
+ +
+ values + → const List<CarouselCommand> + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/CarouselCommand/CAROUSEL_COMMAND_UNDEFINED-constant.html b/docs/data/CarouselCommand/CAROUSEL_COMMAND_UNDEFINED-constant.html new file mode 100644 index 0000000000..7f1b590a8a --- /dev/null +++ b/docs/data/CarouselCommand/CAROUSEL_COMMAND_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CAROUSEL_COMMAND_UNDEFINED constant - CarouselCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CAROUSEL_COMMAND_UNDEFINED
+ +
+ +
+
+
+
+
+ +

CAROUSEL_COMMAND_UNDEFINED constant +

+ + +
+ + CarouselCommand + const CAROUSEL_COMMAND_UNDEFINED + + +
+ + + +
+

Implementation

+
static const CarouselCommand CAROUSEL_COMMAND_UNDEFINED = CarouselCommand._(0, _omitEnumNames ? '' : 'CAROUSEL_COMMAND_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CarouselCommand/FILL_SECTION-constant.html b/docs/data/CarouselCommand/FILL_SECTION-constant.html new file mode 100644 index 0000000000..c97d1bb3e7 --- /dev/null +++ b/docs/data/CarouselCommand/FILL_SECTION-constant.html @@ -0,0 +1,112 @@ + + + + + + + + FILL_SECTION constant - CarouselCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
FILL_SECTION
+ +
+ +
+
+
+
+
+ +

FILL_SECTION constant +

+ + +
+ + CarouselCommand + const FILL_SECTION + + +
+ + + +
+

Implementation

+
static const CarouselCommand FILL_SECTION = CarouselCommand._(6, _omitEnumNames ? '' : 'FILL_SECTION');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CarouselCommand/FILL_TUBE-constant.html b/docs/data/CarouselCommand/FILL_TUBE-constant.html new file mode 100644 index 0000000000..7752e598d5 --- /dev/null +++ b/docs/data/CarouselCommand/FILL_TUBE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + FILL_TUBE constant - CarouselCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
FILL_TUBE
+ +
+ +
+
+
+
+
+ +

FILL_TUBE constant +

+ + +
+ + CarouselCommand + const FILL_TUBE + + +
+ + + +
+

Implementation

+
static const CarouselCommand FILL_TUBE = CarouselCommand._(5, _omitEnumNames ? '' : 'FILL_TUBE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CarouselCommand/NEXT_SECTION-constant.html b/docs/data/CarouselCommand/NEXT_SECTION-constant.html new file mode 100644 index 0000000000..674d6c8b77 --- /dev/null +++ b/docs/data/CarouselCommand/NEXT_SECTION-constant.html @@ -0,0 +1,112 @@ + + + + + + + + NEXT_SECTION constant - CarouselCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NEXT_SECTION
+ +
+ +
+
+
+
+
+ +

NEXT_SECTION constant +

+ + +
+ + CarouselCommand + const NEXT_SECTION + + +
+ + + +
+

Implementation

+
static const CarouselCommand NEXT_SECTION = CarouselCommand._(3, _omitEnumNames ? '' : 'NEXT_SECTION');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CarouselCommand/NEXT_TUBE-constant.html b/docs/data/CarouselCommand/NEXT_TUBE-constant.html new file mode 100644 index 0000000000..8175a4d0ac --- /dev/null +++ b/docs/data/CarouselCommand/NEXT_TUBE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + NEXT_TUBE constant - CarouselCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NEXT_TUBE
+ +
+ +
+
+
+
+
+ +

NEXT_TUBE constant +

+ + +
+ + CarouselCommand + const NEXT_TUBE + + +
+ + + +
+

Implementation

+
static const CarouselCommand NEXT_TUBE = CarouselCommand._(1, _omitEnumNames ? '' : 'NEXT_TUBE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CarouselCommand/PREV_SECTION-constant.html b/docs/data/CarouselCommand/PREV_SECTION-constant.html new file mode 100644 index 0000000000..a7198cdcc4 --- /dev/null +++ b/docs/data/CarouselCommand/PREV_SECTION-constant.html @@ -0,0 +1,112 @@ + + + + + + + + PREV_SECTION constant - CarouselCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PREV_SECTION
+ +
+ +
+
+
+
+
+ +

PREV_SECTION constant +

+ + +
+ + CarouselCommand + const PREV_SECTION + + +
+ + + +
+

Implementation

+
static const CarouselCommand PREV_SECTION = CarouselCommand._(4, _omitEnumNames ? '' : 'PREV_SECTION');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CarouselCommand/PREV_TUBE-constant.html b/docs/data/CarouselCommand/PREV_TUBE-constant.html new file mode 100644 index 0000000000..8f26031ac3 --- /dev/null +++ b/docs/data/CarouselCommand/PREV_TUBE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + PREV_TUBE constant - CarouselCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PREV_TUBE
+ +
+ +
+
+
+
+
+ +

PREV_TUBE constant +

+ + +
+ + CarouselCommand + const PREV_TUBE + + +
+ + + +
+

Implementation

+
static const CarouselCommand PREV_TUBE = CarouselCommand._(2, _omitEnumNames ? '' : 'PREV_TUBE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CarouselCommand/valueOf.html b/docs/data/CarouselCommand/valueOf.html new file mode 100644 index 0000000000..893bee730d --- /dev/null +++ b/docs/data/CarouselCommand/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - CarouselCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +CarouselCommand? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static CarouselCommand? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CarouselCommand/values-constant.html b/docs/data/CarouselCommand/values-constant.html new file mode 100644 index 0000000000..713d6c438b --- /dev/null +++ b/docs/data/CarouselCommand/values-constant.html @@ -0,0 +1,120 @@ + + + + + + + + values constant - CarouselCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<CarouselCommand> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<CarouselCommand> values = <CarouselCommand> [
+  CAROUSEL_COMMAND_UNDEFINED,
+  NEXT_TUBE,
+  PREV_TUBE,
+  NEXT_SECTION,
+  PREV_SECTION,
+  FILL_TUBE,
+  FILL_SECTION,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect-class-sidebar.html b/docs/data/Connect-class-sidebar.html new file mode 100644 index 0000000000..7c4c7ec57f --- /dev/null +++ b/docs/data/Connect-class-sidebar.html @@ -0,0 +1,79 @@ +
    + +
  1. Constructors
  2. +
  3. Connect
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. eventPlugin
  12. +
  13. hashCode
  14. +
  15. info_
  16. +
  17. isFrozen
  18. +
  19. receiver
  20. +
  21. runtimeType
  22. +
  23. sender
  24. +
  25. unknownFields
  26. + +
  27. Methods
  28. +
  29. addExtension
  30. +
  31. check
  32. +
  33. clear
  34. +
  35. clearExtension
  36. +
  37. clearField
  38. +
  39. clearReceiver
  40. +
  41. clearSender
  42. +
  43. clone
  44. +
  45. copyWith
  46. +
  47. createEmptyInstance
  48. +
  49. createMapField
  50. +
  51. createRepeatedField
  52. +
  53. extensionsAreInitialized
  54. +
  55. freeze
  56. +
  57. getDefaultForField
  58. +
  59. getExtension
  60. +
  61. getField
  62. +
  63. getFieldOrNull
  64. +
  65. getTagNumber
  66. +
  67. hasExtension
  68. +
  69. hasField
  70. +
  71. hasReceiver
  72. +
  73. hasRequiredFields
  74. +
  75. hasSender
  76. +
  77. isInitialized
  78. +
  79. mergeFromBuffer
  80. +
  81. mergeFromCodedBufferReader
  82. +
  83. mergeFromJson
  84. +
  85. mergeFromJsonMap
  86. +
  87. mergeFromMessage
  88. +
  89. mergeFromProto3Json
  90. +
  91. mergeUnknownFields
  92. +
  93. noSuchMethod
  94. +
  95. setExtension
  96. +
  97. setField
  98. +
  99. toBuilder
  100. +
  101. toDebugString
  102. +
  103. toProto3Json
  104. +
  105. toString
  106. +
  107. writeToBuffer
  108. +
  109. writeToCodedBufferWriter
  110. +
  111. writeToJson
  112. +
  113. writeToJsonMap
  114. + +
  115. Operators
  116. +
  117. operator ==
  118. + + + + + +
  119. Static methods
  120. +
  121. create
  122. +
  123. createRepeated
  124. +
  125. getDefault
  126. + +
diff --git a/docs/data/Connect-class.html b/docs/data/Connect-class.html new file mode 100644 index 0000000000..e4e9df4cd0 --- /dev/null +++ b/docs/data/Connect-class.html @@ -0,0 +1,898 @@ + + + + + + + + Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Connect
+ +
+ +
+
+
+
+
+ +

Connect class + +

+ + +
+

Used for a simple handshake between devices.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ Connect({Device? sender, Device? receiver}) +
+
+ +
factory
+
+
+ Connect.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ Connect.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ receiver + Device + + +
+
+ +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ sender + Device + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearReceiver() + → void + + + +
+
+ + + +
+ +
+ clearSender() + → void + + + +
+
+ + + +
+ +
+ clone() + Connect + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(Connect)) + Connect + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + Connect + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasReceiver() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasSender() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + Connect + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<Connect> + + + +
+
+ + + +
+ +
+ getDefault() + Connect + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/Connect.fromBuffer.html b/docs/data/Connect/Connect.fromBuffer.html new file mode 100644 index 0000000000..2baf14b490 --- /dev/null +++ b/docs/data/Connect/Connect.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + Connect.fromBuffer constructor - Connect - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Connect.fromBuffer
+ +
+ +
+
+
+
+
+ +

Connect.fromBuffer constructor +

+ +
+ + Connect.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Connect.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/Connect.fromJson.html b/docs/data/Connect/Connect.fromJson.html new file mode 100644 index 0000000000..dfc24a2553 --- /dev/null +++ b/docs/data/Connect/Connect.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + Connect.fromJson constructor - Connect - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Connect.fromJson
+ +
+ +
+
+
+
+
+ +

Connect.fromJson constructor +

+ +
+ + Connect.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Connect.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/Connect.html b/docs/data/Connect/Connect.html new file mode 100644 index 0000000000..823efd63b7 --- /dev/null +++ b/docs/data/Connect/Connect.html @@ -0,0 +1,122 @@ + + + + + + + + Connect constructor - Connect - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Connect
+ +
+ +
+
+
+
+
+ +

Connect constructor +

+ +
+ + Connect({
  1. Device? sender,
  2. +
  3. Device? receiver,
  4. +
}) +
+ + + + +
+

Implementation

+
factory Connect({
+  Device? sender,
+  Device? receiver,
+}) {
+  final $result = create();
+  if (sender != null) {
+    $result.sender = sender;
+  }
+  if (receiver != null) {
+    $result.receiver = receiver;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/clearReceiver.html b/docs/data/Connect/clearReceiver.html new file mode 100644 index 0000000000..0c181b5e4f --- /dev/null +++ b/docs/data/Connect/clearReceiver.html @@ -0,0 +1,118 @@ + + + + + + + + clearReceiver method - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearReceiver
+ +
+ +
+
+
+
+
+ +

clearReceiver method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearReceiver() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearReceiver() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/clearSender.html b/docs/data/Connect/clearSender.html new file mode 100644 index 0000000000..ab297c1a95 --- /dev/null +++ b/docs/data/Connect/clearSender.html @@ -0,0 +1,118 @@ + + + + + + + + clearSender method - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSender
+ +
+ +
+
+
+
+
+ +

clearSender method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearSender() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearSender() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/clone.html b/docs/data/Connect/clone.html new file mode 100644 index 0000000000..25d32c6755 --- /dev/null +++ b/docs/data/Connect/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+Connect +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+Connect clone() => Connect()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/copyWith.html b/docs/data/Connect/copyWith.html new file mode 100644 index 0000000000..a521584285 --- /dev/null +++ b/docs/data/Connect/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+Connect +copyWith(
  1. void updates(
    1. Connect
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+Connect copyWith(void Function(Connect) updates) => super.copyWith((message) => updates(message as Connect)) as Connect;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/create.html b/docs/data/Connect/create.html new file mode 100644 index 0000000000..8905fd65cb --- /dev/null +++ b/docs/data/Connect/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +Connect +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Connect create() => Connect._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/createEmptyInstance.html b/docs/data/Connect/createEmptyInstance.html new file mode 100644 index 0000000000..a1b08fba7c --- /dev/null +++ b/docs/data/Connect/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +Connect +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
Connect createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/createRepeated.html b/docs/data/Connect/createRepeated.html new file mode 100644 index 0000000000..65c7b53e5c --- /dev/null +++ b/docs/data/Connect/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<Connect> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<Connect> createRepeated() => $pb.PbList<Connect>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/getDefault.html b/docs/data/Connect/getDefault.html new file mode 100644 index 0000000000..0420f9184f --- /dev/null +++ b/docs/data/Connect/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +Connect +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Connect getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Connect>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/hasReceiver.html b/docs/data/Connect/hasReceiver.html new file mode 100644 index 0000000000..626f0646a7 --- /dev/null +++ b/docs/data/Connect/hasReceiver.html @@ -0,0 +1,118 @@ + + + + + + + + hasReceiver method - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasReceiver
+ +
+ +
+
+
+
+
+ +

hasReceiver method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasReceiver() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasReceiver() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/hasSender.html b/docs/data/Connect/hasSender.html new file mode 100644 index 0000000000..af61c9c13e --- /dev/null +++ b/docs/data/Connect/hasSender.html @@ -0,0 +1,118 @@ + + + + + + + + hasSender method - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSender
+ +
+ +
+
+
+
+
+ +

hasSender method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasSender() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasSender() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/info_.html b/docs/data/Connect/info_.html new file mode 100644 index 0000000000..a2ad7ae631 --- /dev/null +++ b/docs/data/Connect/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/receiver.html b/docs/data/Connect/receiver.html new file mode 100644 index 0000000000..83900e9e2a --- /dev/null +++ b/docs/data/Connect/receiver.html @@ -0,0 +1,150 @@ + + + + + + + + receiver property - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
receiver
+ +
+ +
+
+
+
+
+ +

receiver property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ Device + get + receiver + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+Device get receiver => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + receiver + (Device v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set receiver(Device v) { setField(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/Connect/sender.html b/docs/data/Connect/sender.html new file mode 100644 index 0000000000..b8b2fb558e --- /dev/null +++ b/docs/data/Connect/sender.html @@ -0,0 +1,150 @@ + + + + + + + + sender property - Connect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sender
+ +
+ +
+
+
+
+
+ +

sender property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ Device + get + sender + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+Device get sender => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + sender + (Device v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set sender(Device v) { setField(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates-class-sidebar.html b/docs/data/Coordinates-class-sidebar.html new file mode 100644 index 0000000000..e10b017c9b --- /dev/null +++ b/docs/data/Coordinates-class-sidebar.html @@ -0,0 +1,82 @@ +
    + +
  1. Constructors
  2. +
  3. Coordinates
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. eventPlugin
  12. +
  13. hashCode
  14. +
  15. info_
  16. +
  17. isFrozen
  18. +
  19. runtimeType
  20. +
  21. unknownFields
  22. +
  23. x
  24. +
  25. y
  26. +
  27. z
  28. + +
  29. Methods
  30. +
  31. addExtension
  32. +
  33. check
  34. +
  35. clear
  36. +
  37. clearExtension
  38. +
  39. clearField
  40. +
  41. clearX
  42. +
  43. clearY
  44. +
  45. clearZ
  46. +
  47. clone
  48. +
  49. copyWith
  50. +
  51. createEmptyInstance
  52. +
  53. createMapField
  54. +
  55. createRepeatedField
  56. +
  57. extensionsAreInitialized
  58. +
  59. freeze
  60. +
  61. getDefaultForField
  62. +
  63. getExtension
  64. +
  65. getField
  66. +
  67. getFieldOrNull
  68. +
  69. getTagNumber
  70. +
  71. hasExtension
  72. +
  73. hasField
  74. +
  75. hasRequiredFields
  76. +
  77. hasX
  78. +
  79. hasY
  80. +
  81. hasZ
  82. +
  83. isInitialized
  84. +
  85. mergeFromBuffer
  86. +
  87. mergeFromCodedBufferReader
  88. +
  89. mergeFromJson
  90. +
  91. mergeFromJsonMap
  92. +
  93. mergeFromMessage
  94. +
  95. mergeFromProto3Json
  96. +
  97. mergeUnknownFields
  98. +
  99. noSuchMethod
  100. +
  101. setExtension
  102. +
  103. setField
  104. +
  105. toBuilder
  106. +
  107. toDebugString
  108. +
  109. toProto3Json
  110. +
  111. toString
  112. +
  113. writeToBuffer
  114. +
  115. writeToCodedBufferWriter
  116. +
  117. writeToJson
  118. +
  119. writeToJsonMap
  120. + +
  121. Operators
  122. +
  123. operator ==
  124. + + + + + +
  125. Static methods
  126. +
  127. create
  128. +
  129. createRepeated
  130. +
  131. getDefault
  132. + +
diff --git a/docs/data/Coordinates-class.html b/docs/data/Coordinates-class.html new file mode 100644 index 0000000000..b13dd2d6a6 --- /dev/null +++ b/docs/data/Coordinates-class.html @@ -0,0 +1,934 @@ + + + + + + + + Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Coordinates
+ +
+ +
+
+
+
+
+ +

Coordinates class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ Coordinates({double? x, double? y, double? z}) +
+
+ +
factory
+
+
+ Coordinates.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ Coordinates.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ x + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ y + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ z + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearX() + → void + + + +
+
+ + + +
+ +
+ clearY() + → void + + + +
+
+ + + +
+ +
+ clearZ() + → void + + + +
+
+ + + +
+ +
+ clone() + Coordinates + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(Coordinates)) + Coordinates + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + Coordinates + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasX() + → bool + + + +
+
+ + + +
+ +
+ hasY() + → bool + + + +
+
+ + + +
+ +
+ hasZ() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + Coordinates + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<Coordinates> + + + +
+
+ + + +
+ +
+ getDefault() + Coordinates + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/Coordinates.fromBuffer.html b/docs/data/Coordinates/Coordinates.fromBuffer.html new file mode 100644 index 0000000000..d7992fbd79 --- /dev/null +++ b/docs/data/Coordinates/Coordinates.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + Coordinates.fromBuffer constructor - Coordinates - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Coordinates.fromBuffer
+ +
+ +
+
+
+
+
+ +

Coordinates.fromBuffer constructor +

+ +
+ + Coordinates.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Coordinates.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/Coordinates.fromJson.html b/docs/data/Coordinates/Coordinates.fromJson.html new file mode 100644 index 0000000000..370e557186 --- /dev/null +++ b/docs/data/Coordinates/Coordinates.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + Coordinates.fromJson constructor - Coordinates - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Coordinates.fromJson
+ +
+ +
+
+
+
+
+ +

Coordinates.fromJson constructor +

+ +
+ + Coordinates.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Coordinates.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/Coordinates.html b/docs/data/Coordinates/Coordinates.html new file mode 100644 index 0000000000..d5c8cd88f5 --- /dev/null +++ b/docs/data/Coordinates/Coordinates.html @@ -0,0 +1,127 @@ + + + + + + + + Coordinates constructor - Coordinates - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Coordinates
+ +
+ +
+
+
+
+
+ +

Coordinates constructor +

+ +
+ + Coordinates({
  1. double? x,
  2. +
  3. double? y,
  4. +
  5. double? z,
  6. +
}) +
+ + + + +
+

Implementation

+
factory Coordinates({
+  $core.double? x,
+  $core.double? y,
+  $core.double? z,
+}) {
+  final $result = create();
+  if (x != null) {
+    $result.x = x;
+  }
+  if (y != null) {
+    $result.y = y;
+  }
+  if (z != null) {
+    $result.z = z;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/clearX.html b/docs/data/Coordinates/clearX.html new file mode 100644 index 0000000000..3eaad822ae --- /dev/null +++ b/docs/data/Coordinates/clearX.html @@ -0,0 +1,118 @@ + + + + + + + + clearX method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearX
+ +
+ +
+
+
+
+
+ +

clearX method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearX() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearX() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/clearY.html b/docs/data/Coordinates/clearY.html new file mode 100644 index 0000000000..c368fce13a --- /dev/null +++ b/docs/data/Coordinates/clearY.html @@ -0,0 +1,118 @@ + + + + + + + + clearY method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearY
+ +
+ +
+
+
+
+
+ +

clearY method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearY() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearY() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/clearZ.html b/docs/data/Coordinates/clearZ.html new file mode 100644 index 0000000000..0da17aa5dd --- /dev/null +++ b/docs/data/Coordinates/clearZ.html @@ -0,0 +1,118 @@ + + + + + + + + clearZ method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearZ
+ +
+ +
+
+
+
+
+ +

clearZ method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearZ() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearZ() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/clone.html b/docs/data/Coordinates/clone.html new file mode 100644 index 0000000000..86e0400883 --- /dev/null +++ b/docs/data/Coordinates/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+Coordinates +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+Coordinates clone() => Coordinates()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/copyWith.html b/docs/data/Coordinates/copyWith.html new file mode 100644 index 0000000000..3c94842265 --- /dev/null +++ b/docs/data/Coordinates/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+Coordinates +copyWith(
  1. void updates(
    1. Coordinates
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+Coordinates copyWith(void Function(Coordinates) updates) => super.copyWith((message) => updates(message as Coordinates)) as Coordinates;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/create.html b/docs/data/Coordinates/create.html new file mode 100644 index 0000000000..c9b5b0f948 --- /dev/null +++ b/docs/data/Coordinates/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +Coordinates +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Coordinates create() => Coordinates._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/createEmptyInstance.html b/docs/data/Coordinates/createEmptyInstance.html new file mode 100644 index 0000000000..4968154554 --- /dev/null +++ b/docs/data/Coordinates/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +Coordinates +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
Coordinates createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/createRepeated.html b/docs/data/Coordinates/createRepeated.html new file mode 100644 index 0000000000..cf003bdcc7 --- /dev/null +++ b/docs/data/Coordinates/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<Coordinates> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<Coordinates> createRepeated() => $pb.PbList<Coordinates>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/getDefault.html b/docs/data/Coordinates/getDefault.html new file mode 100644 index 0000000000..6e2422c515 --- /dev/null +++ b/docs/data/Coordinates/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +Coordinates +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Coordinates getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Coordinates>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/hasX.html b/docs/data/Coordinates/hasX.html new file mode 100644 index 0000000000..1cf09f1d57 --- /dev/null +++ b/docs/data/Coordinates/hasX.html @@ -0,0 +1,118 @@ + + + + + + + + hasX method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasX
+ +
+ +
+
+
+
+
+ +

hasX method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasX() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasX() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/hasY.html b/docs/data/Coordinates/hasY.html new file mode 100644 index 0000000000..6d65990c27 --- /dev/null +++ b/docs/data/Coordinates/hasY.html @@ -0,0 +1,118 @@ + + + + + + + + hasY method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasY
+ +
+ +
+
+
+
+
+ +

hasY method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasY() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasY() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/hasZ.html b/docs/data/Coordinates/hasZ.html new file mode 100644 index 0000000000..08598ff885 --- /dev/null +++ b/docs/data/Coordinates/hasZ.html @@ -0,0 +1,118 @@ + + + + + + + + hasZ method - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasZ
+ +
+ +
+
+
+
+
+ +

hasZ method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasZ() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasZ() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/info_.html b/docs/data/Coordinates/info_.html new file mode 100644 index 0000000000..3e2ad0e66a --- /dev/null +++ b/docs/data/Coordinates/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/x.html b/docs/data/Coordinates/x.html new file mode 100644 index 0000000000..d6c86db28e --- /dev/null +++ b/docs/data/Coordinates/x.html @@ -0,0 +1,150 @@ + + + + + + + + x property - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
x
+ +
+ +
+
+
+
+
+ +

x property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + get + x + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get x => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + x + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set x($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/y.html b/docs/data/Coordinates/y.html new file mode 100644 index 0000000000..88507037bf --- /dev/null +++ b/docs/data/Coordinates/y.html @@ -0,0 +1,150 @@ + + + + + + + + y property - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
y
+ +
+ +
+
+
+
+
+ +

y property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + get + y + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get y => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + y + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set y($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/Coordinates/z.html b/docs/data/Coordinates/z.html new file mode 100644 index 0000000000..de94ce6f9b --- /dev/null +++ b/docs/data/Coordinates/z.html @@ -0,0 +1,150 @@ + + + + + + + + z property - Coordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
z
+ +
+ +
+
+
+
+
+ +

z property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + get + z + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get z => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + z + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set z($core.double v) { $_setFloat(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/CoordinatesUtils-extension-sidebar.html b/docs/data/CoordinatesUtils-extension-sidebar.html new file mode 100644 index 0000000000..1c2e60fad9 --- /dev/null +++ b/docs/data/CoordinatesUtils-extension-sidebar.html @@ -0,0 +1,18 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. prettyPrint
  4. + + +
  5. Operators
  6. +
  7. operator +
  8. + + + + +
diff --git a/docs/data/CoordinatesUtils.html b/docs/data/CoordinatesUtils.html new file mode 100644 index 0000000000..1710fafbbd --- /dev/null +++ b/docs/data/CoordinatesUtils.html @@ -0,0 +1,159 @@ + + + + + + + + CoordinatesUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CoordinatesUtils
+ +
+ +
+
+
+
+
+ +

CoordinatesUtils extension + +

+ + +
+

Extensions for Coordinates messages.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ prettyPrint + → String + + +
+
+ Returns a user-friendly format of these coordinates. +
no setter
+ +
+ +
+
+ + +
+

Operators

+
+
+ operator +(Coordinates other) + Coordinates + + + +
+
+ Adds two coordinates. + + +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/CoordinatesUtils/operator_plus.html b/docs/data/CoordinatesUtils/operator_plus.html new file mode 100644 index 0000000000..bb7e27c291 --- /dev/null +++ b/docs/data/CoordinatesUtils/operator_plus.html @@ -0,0 +1,117 @@ + + + + + + + + operator + method - CoordinatesUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator +
+ +
+ +
+
+
+
+
+ +

operator + method +

+ +
+ +Coordinates +operator +(
  1. Coordinates other
  2. +
) + + + +
+ +
+

Adds two coordinates.

+
+ + + +
+

Implementation

+
Coordinates operator +(Coordinates other) =>
+	Coordinates(x: x + other.x, y: y + other.y, z: z + other.z);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/CoordinatesUtils/prettyPrint.html b/docs/data/CoordinatesUtils/prettyPrint.html new file mode 100644 index 0000000000..bcdf0f46ba --- /dev/null +++ b/docs/data/CoordinatesUtils/prettyPrint.html @@ -0,0 +1,121 @@ + + + + + + + + prettyPrint property - CoordinatesUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
prettyPrint
+ +
+ +
+
+
+
+
+ +

prettyPrint property +

+ + + + + +
+
+ + String + get + prettyPrint + + +
+ +
+

Returns a user-friendly format of these coordinates.

+
+ + +
+

Implementation

+
String get prettyPrint => "(${x.toStringAsFixed(2)}, ${y.toStringAsFixed(2)}, ${z.toStringAsFixed(2)})";
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings-class-sidebar.html b/docs/data/DashboardSettings-class-sidebar.html new file mode 100644 index 0000000000..9921674341 --- /dev/null +++ b/docs/data/DashboardSettings-class-sidebar.html @@ -0,0 +1,35 @@ +
    + +
  1. Constructors
  2. +
  3. DashboardSettings
  4. +
  5. fromJson
  6. + + + +
  7. + Properties +
  8. +
  9. hashCode
  10. +
  11. mapBlockSize
  12. +
  13. maxFps
  14. +
  15. preferTankControls
  16. +
  17. runtimeType
  18. +
  19. splitCameras
  20. +
  21. splitMode
  22. +
  23. themeMode
  24. +
  25. versionChecking
  26. + +
  27. Methods
  28. +
  29. noSuchMethod
  30. +
  31. toJson
  32. +
  33. toString
  34. + +
  35. Operators
  36. +
  37. operator ==
  38. + + + + + + +
diff --git a/docs/data/DashboardSettings-class.html b/docs/data/DashboardSettings-class.html new file mode 100644 index 0000000000..a65782d0d8 --- /dev/null +++ b/docs/data/DashboardSettings-class.html @@ -0,0 +1,307 @@ + + + + + + + + DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DashboardSettings
+ +
+ +
+
+
+
+
+ +

DashboardSettings class + +

+ + +
+

Settings related to the dashboard itself, not the rover.

+
+ + + + +
+

Constructors

+
+
+ DashboardSettings({required SplitMode splitMode, required double mapBlockSize, required int maxFps, required ThemeMode themeMode, required bool splitCameras, required bool preferTankControls, required bool versionChecking}) +
+
+ A const constructor. +
const
+
+
+ DashboardSettings.fromJson(Json? json) +
+
+ Parses Dashboard settings from JSON. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ mapBlockSize + → double + + +
+
+ The precision of the GPS grid. +
final
+ +
+ +
+ maxFps + → int + + +
+
+ How many frames to render per second. +
final
+ +
+ +
+ preferTankControls + → bool + + +
+
+ Whether to default to tank drive controls. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ splitCameras + → bool + + +
+
+ Whether to split cameras into their own controls. +
final
+ +
+ +
+ splitMode + SplitMode + + +
+
+ How the Dashboard should split when only two views are present. +
final
+ +
+ +
+ themeMode + ThemeMode + + +
+
+ The theme of the Dashboard. +
final
+ +
+ +
+ versionChecking + → bool + + +
+
+ Whether to have version checking on protobuf messages. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toJson() + Json + + + +
+
+ Serializes these settings to JSON. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/DashboardSettings.fromJson.html b/docs/data/DashboardSettings/DashboardSettings.fromJson.html new file mode 100644 index 0000000000..038d9813a9 --- /dev/null +++ b/docs/data/DashboardSettings/DashboardSettings.fromJson.html @@ -0,0 +1,119 @@ + + + + + + + + DashboardSettings.fromJson constructor - DashboardSettings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DashboardSettings.fromJson
+ +
+ +
+
+
+
+
+ +

DashboardSettings.fromJson constructor +

+ +
+ + DashboardSettings.fromJson(
  1. Json? json
  2. +
) +
+ +
+

Parses Dashboard settings from JSON.

+
+ + + +
+

Implementation

+
DashboardSettings.fromJson(Json? json) :
+  splitMode = SplitMode.values[json?["splitMode"] ?? SplitMode.horizontal.index],
+  mapBlockSize = json?["mapBlockSize"] ?? 1.0,
+  maxFps = (json?["maxFps"] ?? 60) as int,
+  splitCameras = json?["splitCameras"] ?? false,
+  preferTankControls = json?["preferTankControls"] ?? false,
+  versionChecking = json?["versionChecking"] ?? true,
+  themeMode = ThemeMode.values.byName(json?["theme"] ?? ThemeMode.system.name);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/DashboardSettings.html b/docs/data/DashboardSettings/DashboardSettings.html new file mode 100644 index 0000000000..6f3668b367 --- /dev/null +++ b/docs/data/DashboardSettings/DashboardSettings.html @@ -0,0 +1,126 @@ + + + + + + + + DashboardSettings constructor - DashboardSettings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DashboardSettings
+ +
+ +
+
+
+
+
+ +

DashboardSettings constructor +

+ +
+ const + DashboardSettings({
  1. required SplitMode splitMode,
  2. +
  3. required double mapBlockSize,
  4. +
  5. required int maxFps,
  6. +
  7. required ThemeMode themeMode,
  8. +
  9. required bool splitCameras,
  10. +
  11. required bool preferTankControls,
  12. +
  13. required bool versionChecking,
  14. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const DashboardSettings({
+  required this.splitMode,
+  required this.mapBlockSize,
+  required this.maxFps,
+  required this.themeMode,
+  required this.splitCameras,
+  required this.preferTankControls,
+  required this.versionChecking,
+});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/hashCode.html b/docs/data/DashboardSettings/hashCode.html new file mode 100644 index 0000000000..4d3f08a286 --- /dev/null +++ b/docs/data/DashboardSettings/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/mapBlockSize.html b/docs/data/DashboardSettings/mapBlockSize.html new file mode 100644 index 0000000000..5962da4e0d --- /dev/null +++ b/docs/data/DashboardSettings/mapBlockSize.html @@ -0,0 +1,119 @@ + + + + + + + + mapBlockSize property - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
mapBlockSize
+ +
+ +
+
+
+
+
+ +

mapBlockSize property +

+ + +
+ + double + mapBlockSize +
final
+ +
+ +
+

The precision of the GPS grid.

+

Since GPS coordinates are decimal values, we divide by this value to get the index of the cell +each coordinate belongs to. Smaller sizes means more blocks, but we should be careful that the +blocks are big enough to the margin of error of our GPS. This value must be synced with the +value in the autonomy program, or else the UI will not be accurate to the rover's logic.

+
+ + +
+

Implementation

+
final double mapBlockSize;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/maxFps.html b/docs/data/DashboardSettings/maxFps.html new file mode 100644 index 0000000000..b9e00b4322 --- /dev/null +++ b/docs/data/DashboardSettings/maxFps.html @@ -0,0 +1,116 @@ + + + + + + + + maxFps property - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
maxFps
+ +
+ +
+
+
+
+
+ +

maxFps property +

+ + +
+ + int + maxFps +
final
+ +
+ +
+

How many frames to render per second.

+

This does not affect how many frames are sent by the rover per second.

+
+ + +
+

Implementation

+
final int maxFps;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/noSuchMethod.html b/docs/data/DashboardSettings/noSuchMethod.html new file mode 100644 index 0000000000..8dc76c1bb8 --- /dev/null +++ b/docs/data/DashboardSettings/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/operator_equals.html b/docs/data/DashboardSettings/operator_equals.html new file mode 100644 index 0000000000..a994aedd5b --- /dev/null +++ b/docs/data/DashboardSettings/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/preferTankControls.html b/docs/data/DashboardSettings/preferTankControls.html new file mode 100644 index 0000000000..14c2a7bea8 --- /dev/null +++ b/docs/data/DashboardSettings/preferTankControls.html @@ -0,0 +1,116 @@ + + + + + + + + preferTankControls property - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
preferTankControls
+ +
+ +
+
+
+
+
+ +

preferTankControls property +

+ + +
+ + bool + preferTankControls +
final
+ +
+ +
+

Whether to default to tank drive controls.

+

Tank controls offer more custom control, but modern drive controls are more intuitive.

+
+ + +
+

Implementation

+
final bool preferTankControls;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/runtimeType.html b/docs/data/DashboardSettings/runtimeType.html new file mode 100644 index 0000000000..7079ee5986 --- /dev/null +++ b/docs/data/DashboardSettings/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/splitCameras.html b/docs/data/DashboardSettings/splitCameras.html new file mode 100644 index 0000000000..e913f05177 --- /dev/null +++ b/docs/data/DashboardSettings/splitCameras.html @@ -0,0 +1,117 @@ + + + + + + + + splitCameras property - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
splitCameras
+ +
+ +
+
+
+
+
+ +

splitCameras property +

+ + +
+ + bool + splitCameras +
final
+ +
+ +
+

Whether to split cameras into their own controls.

+

When this is disabled, some other modes, like arm or drive, may move the cameras. +When this is enabled, only the dedicated camera control mode can move the cameras.

+
+ + +
+

Implementation

+
final bool splitCameras;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/splitMode.html b/docs/data/DashboardSettings/splitMode.html new file mode 100644 index 0000000000..20384f1c2f --- /dev/null +++ b/docs/data/DashboardSettings/splitMode.html @@ -0,0 +1,115 @@ + + + + + + + + splitMode property - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
splitMode
+ +
+ +
+
+
+
+
+ +

splitMode property +

+ + +
+ + SplitMode + splitMode +
final
+ +
+ +
+

How the Dashboard should split when only two views are present.

+
+ + +
+

Implementation

+
final SplitMode splitMode;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/themeMode.html b/docs/data/DashboardSettings/themeMode.html new file mode 100644 index 0000000000..1fbc9264d5 --- /dev/null +++ b/docs/data/DashboardSettings/themeMode.html @@ -0,0 +1,115 @@ + + + + + + + + themeMode property - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
themeMode
+ +
+ +
+
+
+
+
+ +

themeMode property +

+ + +
+ + ThemeMode + themeMode +
final
+ +
+ +
+

The theme of the Dashboard.

+
+ + +
+

Implementation

+
final ThemeMode themeMode;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/toJson.html b/docs/data/DashboardSettings/toJson.html new file mode 100644 index 0000000000..94f9695699 --- /dev/null +++ b/docs/data/DashboardSettings/toJson.html @@ -0,0 +1,123 @@ + + + + + + + + toJson method - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toJson
+ +
+ +
+
+
+
+
+ +

toJson method +

+ +
+ +Json +toJson() + + + +
+ +
+

Serializes these settings to JSON.

+
+ + + +
+

Implementation

+
Json toJson() => {
+  "splitMode": splitMode.index,
+  "mapBlockSize": mapBlockSize,
+  "maxFps": maxFps,
+  "theme": themeMode.name,
+  "splitCameras": splitCameras,
+  "preferTankControls": preferTankControls,
+  "versionChecking": versionChecking,
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/toString.html b/docs/data/DashboardSettings/toString.html new file mode 100644 index 0000000000..4383bb1169 --- /dev/null +++ b/docs/data/DashboardSettings/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DashboardSettings/versionChecking.html b/docs/data/DashboardSettings/versionChecking.html new file mode 100644 index 0000000000..821173b2da --- /dev/null +++ b/docs/data/DashboardSettings/versionChecking.html @@ -0,0 +1,115 @@ + + + + + + + + versionChecking property - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
versionChecking
+ +
+ +
+
+
+
+
+ +

versionChecking property +

+ + +
+ + bool + versionChecking +
final
+ +
+ +
+

Whether to have version checking on protobuf messages.

+
+ + +
+

Implementation

+
final bool versionChecking;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DateTimeTimestamp-extension-sidebar.html b/docs/data/DateTimeTimestamp-extension-sidebar.html new file mode 100644 index 0000000000..bdc8425874 --- /dev/null +++ b/docs/data/DateTimeTimestamp-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. timeStamp
  4. + + + + + + +
diff --git a/docs/data/DateTimeTimestamp.html b/docs/data/DateTimeTimestamp.html new file mode 100644 index 0000000000..ab04f50a68 --- /dev/null +++ b/docs/data/DateTimeTimestamp.html @@ -0,0 +1,139 @@ + + + + + + + + DateTimeTimestamp extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DateTimeTimestamp
+ +
+ +
+
+
+
+
+ +

DateTimeTimestamp extension + +

+ + +
+

Helpful extensions on DateTimes.

+
+ +
+
+
on
+
+
    +
  • DateTime
  • +
+
+
+ + + +
+ +
+

Properties

+
+
+ timeStamp + → String + + +
+
+ Formats this DateTime as a simple timestamp. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/DateTimeTimestamp/timeStamp.html b/docs/data/DateTimeTimestamp/timeStamp.html new file mode 100644 index 0000000000..27c88f5b45 --- /dev/null +++ b/docs/data/DateTimeTimestamp/timeStamp.html @@ -0,0 +1,121 @@ + + + + + + + + timeStamp property - DateTimeTimestamp extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
timeStamp
+ +
+ +
+
+
+
+
+ +

timeStamp property +

+ + + + + +
+
+ + String + get + timeStamp + + +
+ +
+

Formats this DateTime as a simple timestamp.

+
+ + +
+

Implementation

+
String get timeStamp => "$year-$month-$day-$hour-$minute";
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device-class-sidebar.html b/docs/data/Device-class-sidebar.html new file mode 100644 index 0000000000..1a8ec63df3 --- /dev/null +++ b/docs/data/Device-class-sidebar.html @@ -0,0 +1,40 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. ARM
  28. +
  29. AUTONOMY
  30. +
  31. DASHBOARD
  32. +
  33. DEVICE_UNDEFINED
  34. +
  35. DRIVE
  36. +
  37. FIRMWARE
  38. +
  39. GRIPPER
  40. +
  41. SCIENCE
  42. +
  43. SUBSYSTEMS
  44. +
  45. values
  46. +
  47. VIDEO
  48. +
diff --git a/docs/data/Device-class.html b/docs/data/Device-class.html new file mode 100644 index 0000000000..228d607064 --- /dev/null +++ b/docs/data/Device-class.html @@ -0,0 +1,394 @@ + + + + + + + + Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Device
+ +
+ +
+
+
+
+
+ +

Device class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + Device? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ ARM + → const Device + + +
+
+ + + +
+ +
+ AUTONOMY + → const Device + + +
+
+ + + +
+ +
+ DASHBOARD + → const Device + + +
+
+ + + +
+ +
+ DEVICE_UNDEFINED + → const Device + + +
+
+ + + +
+ +
+ DRIVE + → const Device + + +
+
+ + + +
+ +
+ FIRMWARE + → const Device + + +
+
+ + + +
+ +
+ GRIPPER + → const Device + + +
+
+ + + +
+ +
+ SCIENCE + → const Device + + +
+
+ + + +
+ +
+ SUBSYSTEMS + → const Device + + +
+
+ + + +
+ +
+ values + → const List<Device> + + +
+
+ + + +
+ +
+ VIDEO + → const Device + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/ARM-constant.html b/docs/data/Device/ARM-constant.html new file mode 100644 index 0000000000..fb37908b1c --- /dev/null +++ b/docs/data/Device/ARM-constant.html @@ -0,0 +1,112 @@ + + + + + + + + ARM constant - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ARM
+ +
+ +
+
+
+
+
+ +

ARM constant +

+ + +
+ + Device + const ARM + + +
+ + + +
+

Implementation

+
static const Device ARM = Device._(6, _omitEnumNames ? '' : 'ARM');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/AUTONOMY-constant.html b/docs/data/Device/AUTONOMY-constant.html new file mode 100644 index 0000000000..233eb51638 --- /dev/null +++ b/docs/data/Device/AUTONOMY-constant.html @@ -0,0 +1,112 @@ + + + + + + + + AUTONOMY constant - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AUTONOMY
+ +
+ +
+
+
+
+
+ +

AUTONOMY constant +

+ + +
+ + Device + const AUTONOMY + + +
+ + + +
+

Implementation

+
static const Device AUTONOMY = Device._(4, _omitEnumNames ? '' : 'AUTONOMY');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/DASHBOARD-constant.html b/docs/data/Device/DASHBOARD-constant.html new file mode 100644 index 0000000000..07db5103b5 --- /dev/null +++ b/docs/data/Device/DASHBOARD-constant.html @@ -0,0 +1,112 @@ + + + + + + + + DASHBOARD constant - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DASHBOARD
+ +
+ +
+
+
+
+
+ +

DASHBOARD constant +

+ + +
+ + Device + const DASHBOARD + + +
+ + + +
+

Implementation

+
static const Device DASHBOARD = Device._(1, _omitEnumNames ? '' : 'DASHBOARD');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/DEVICE_UNDEFINED-constant.html b/docs/data/Device/DEVICE_UNDEFINED-constant.html new file mode 100644 index 0000000000..7227a07c1b --- /dev/null +++ b/docs/data/Device/DEVICE_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + DEVICE_UNDEFINED constant - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DEVICE_UNDEFINED
+ +
+ +
+
+
+
+
+ +

DEVICE_UNDEFINED constant +

+ + +
+ + Device + const DEVICE_UNDEFINED + + +
+ + + +
+

Implementation

+
static const Device DEVICE_UNDEFINED = Device._(0, _omitEnumNames ? '' : 'DEVICE_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/DRIVE-constant.html b/docs/data/Device/DRIVE-constant.html new file mode 100644 index 0000000000..a987dc5034 --- /dev/null +++ b/docs/data/Device/DRIVE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + DRIVE constant - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DRIVE
+ +
+ +
+
+
+
+
+ +

DRIVE constant +

+ + +
+ + Device + const DRIVE + + +
+ + + +
+

Implementation

+
static const Device DRIVE = Device._(9, _omitEnumNames ? '' : 'DRIVE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/FIRMWARE-constant.html b/docs/data/Device/FIRMWARE-constant.html new file mode 100644 index 0000000000..c43306c425 --- /dev/null +++ b/docs/data/Device/FIRMWARE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + FIRMWARE constant - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
FIRMWARE
+ +
+ +
+
+
+
+
+ +

FIRMWARE constant +

+ + +
+ + Device + const FIRMWARE + + +
+ + + +
+

Implementation

+
static const Device FIRMWARE = Device._(5, _omitEnumNames ? '' : 'FIRMWARE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/GRIPPER-constant.html b/docs/data/Device/GRIPPER-constant.html new file mode 100644 index 0000000000..717e99e253 --- /dev/null +++ b/docs/data/Device/GRIPPER-constant.html @@ -0,0 +1,112 @@ + + + + + + + + GRIPPER constant - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GRIPPER
+ +
+ +
+
+
+
+
+ +

GRIPPER constant +

+ + +
+ + Device + const GRIPPER + + +
+ + + +
+

Implementation

+
static const Device GRIPPER = Device._(7, _omitEnumNames ? '' : 'GRIPPER');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/SCIENCE-constant.html b/docs/data/Device/SCIENCE-constant.html new file mode 100644 index 0000000000..bacb3f8c3d --- /dev/null +++ b/docs/data/Device/SCIENCE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + SCIENCE constant - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SCIENCE
+ +
+ +
+
+
+
+
+ +

SCIENCE constant +

+ + +
+ + Device + const SCIENCE + + +
+ + + +
+

Implementation

+
static const Device SCIENCE = Device._(8, _omitEnumNames ? '' : 'SCIENCE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/SUBSYSTEMS-constant.html b/docs/data/Device/SUBSYSTEMS-constant.html new file mode 100644 index 0000000000..b676f88f53 --- /dev/null +++ b/docs/data/Device/SUBSYSTEMS-constant.html @@ -0,0 +1,112 @@ + + + + + + + + SUBSYSTEMS constant - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SUBSYSTEMS
+ +
+ +
+
+
+
+
+ +

SUBSYSTEMS constant +

+ + +
+ + Device + const SUBSYSTEMS + + +
+ + + +
+

Implementation

+
static const Device SUBSYSTEMS = Device._(2, _omitEnumNames ? '' : 'SUBSYSTEMS');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/VIDEO-constant.html b/docs/data/Device/VIDEO-constant.html new file mode 100644 index 0000000000..09af5edf7e --- /dev/null +++ b/docs/data/Device/VIDEO-constant.html @@ -0,0 +1,112 @@ + + + + + + + + VIDEO constant - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VIDEO
+ +
+ +
+
+
+
+
+ +

VIDEO constant +

+ + +
+ + Device + const VIDEO + + +
+ + + +
+

Implementation

+
static const Device VIDEO = Device._(3, _omitEnumNames ? '' : 'VIDEO');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/valueOf.html b/docs/data/Device/valueOf.html new file mode 100644 index 0000000000..c7913c4614 --- /dev/null +++ b/docs/data/Device/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +Device? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static Device? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Device/values-constant.html b/docs/data/Device/values-constant.html new file mode 100644 index 0000000000..ba6ae87913 --- /dev/null +++ b/docs/data/Device/values-constant.html @@ -0,0 +1,123 @@ + + + + + + + + values constant - Device class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<Device> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<Device> values = <Device> [
+  DEVICE_UNDEFINED,
+  DASHBOARD,
+  SUBSYSTEMS,
+  VIDEO,
+  AUTONOMY,
+  FIRMWARE,
+  ARM,
+  GRIPPER,
+  SCIENCE,
+  DRIVE,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DeviceUtils-extension-sidebar.html b/docs/data/DeviceUtils-extension-sidebar.html new file mode 100644 index 0000000000..b57c0873d9 --- /dev/null +++ b/docs/data/DeviceUtils-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. + + + + + + +
diff --git a/docs/data/DeviceUtils.html b/docs/data/DeviceUtils.html new file mode 100644 index 0000000000..e0c5812dd2 --- /dev/null +++ b/docs/data/DeviceUtils.html @@ -0,0 +1,139 @@ + + + + + + + + DeviceUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DeviceUtils
+ +
+ +
+
+
+
+
+ +

DeviceUtils extension + +

+ + +
+

Extensions for Device values.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ humanName + → String + + +
+
+ Gets a user-friendly name for a Device. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/DeviceUtils/humanName.html b/docs/data/DeviceUtils/humanName.html new file mode 100644 index 0000000000..3c9116ccf5 --- /dev/null +++ b/docs/data/DeviceUtils/humanName.html @@ -0,0 +1,136 @@ + + + + + + + + humanName property - DeviceUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

Gets a user-friendly name for a Device.

+
+ + +
+

Implementation

+
String get humanName {
+	switch(this) {
+		case Device.DEVICE_UNDEFINED: return "Unknown device";
+		case Device.DASHBOARD: return "Dashboard";
+		case Device.SUBSYSTEMS: return "Subsystems";
+		case Device.VIDEO: return "Video";
+		case Device.AUTONOMY: return "Autonomy";
+		case Device.FIRMWARE: return "Firmware";
+		case Device.ARM: return "Arm";
+		case Device.GRIPPER: return "Gripper";
+		case Device.SCIENCE: return "Science";
+		case Device.DRIVE: return "Drive";
+	}
+	// Do not use default or else you'll lose exhaustiveness checking.
+	throw ArgumentError("Unrecognized device: $this");
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect-class-sidebar.html b/docs/data/Disconnect-class-sidebar.html new file mode 100644 index 0000000000..5046cd625b --- /dev/null +++ b/docs/data/Disconnect-class-sidebar.html @@ -0,0 +1,76 @@ +
    + +
  1. Constructors
  2. +
  3. Disconnect
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. eventPlugin
  12. +
  13. hashCode
  14. +
  15. info_
  16. +
  17. isFrozen
  18. +
  19. runtimeType
  20. +
  21. sender
  22. +
  23. unknownFields
  24. + +
  25. Methods
  26. +
  27. addExtension
  28. +
  29. check
  30. +
  31. clear
  32. +
  33. clearExtension
  34. +
  35. clearField
  36. +
  37. clearSender
  38. +
  39. clone
  40. +
  41. copyWith
  42. +
  43. createEmptyInstance
  44. +
  45. createMapField
  46. +
  47. createRepeatedField
  48. +
  49. extensionsAreInitialized
  50. +
  51. freeze
  52. +
  53. getDefaultForField
  54. +
  55. getExtension
  56. +
  57. getField
  58. +
  59. getFieldOrNull
  60. +
  61. getTagNumber
  62. +
  63. hasExtension
  64. +
  65. hasField
  66. +
  67. hasRequiredFields
  68. +
  69. hasSender
  70. +
  71. isInitialized
  72. +
  73. mergeFromBuffer
  74. +
  75. mergeFromCodedBufferReader
  76. +
  77. mergeFromJson
  78. +
  79. mergeFromJsonMap
  80. +
  81. mergeFromMessage
  82. +
  83. mergeFromProto3Json
  84. +
  85. mergeUnknownFields
  86. +
  87. noSuchMethod
  88. +
  89. setExtension
  90. +
  91. setField
  92. +
  93. toBuilder
  94. +
  95. toDebugString
  96. +
  97. toProto3Json
  98. +
  99. toString
  100. +
  101. writeToBuffer
  102. +
  103. writeToCodedBufferWriter
  104. +
  105. writeToJson
  106. +
  107. writeToJsonMap
  108. + +
  109. Operators
  110. +
  111. operator ==
  112. + + + + + +
  113. Static methods
  114. +
  115. create
  116. +
  117. createRepeated
  118. +
  119. getDefault
  120. + +
diff --git a/docs/data/Disconnect-class.html b/docs/data/Disconnect-class.html new file mode 100644 index 0000000000..f7ab265fd0 --- /dev/null +++ b/docs/data/Disconnect-class.html @@ -0,0 +1,860 @@ + + + + + + + + Disconnect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Disconnect
+ +
+ +
+
+
+
+
+ +

Disconnect class + +

+ + +
+

Notifies the recipient that the sender will no longer be connected.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ Disconnect({Device? sender}) +
+
+ +
factory
+
+
+ Disconnect.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ Disconnect.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ sender + Device + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearSender() + → void + + + +
+
+ + + +
+ +
+ clone() + Disconnect + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(Disconnect)) + Disconnect + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + Disconnect + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasSender() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + Disconnect + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<Disconnect> + + + +
+
+ + + +
+ +
+ getDefault() + Disconnect + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/Disconnect.fromBuffer.html b/docs/data/Disconnect/Disconnect.fromBuffer.html new file mode 100644 index 0000000000..20a6d31cff --- /dev/null +++ b/docs/data/Disconnect/Disconnect.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + Disconnect.fromBuffer constructor - Disconnect - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Disconnect.fromBuffer
+ +
+ +
+
+
+
+
+ +

Disconnect.fromBuffer constructor +

+ +
+ + Disconnect.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Disconnect.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/Disconnect.fromJson.html b/docs/data/Disconnect/Disconnect.fromJson.html new file mode 100644 index 0000000000..21bc07e3e5 --- /dev/null +++ b/docs/data/Disconnect/Disconnect.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + Disconnect.fromJson constructor - Disconnect - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Disconnect.fromJson
+ +
+ +
+
+
+
+
+ +

Disconnect.fromJson constructor +

+ +
+ + Disconnect.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Disconnect.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/Disconnect.html b/docs/data/Disconnect/Disconnect.html new file mode 100644 index 0000000000..c5088b22e0 --- /dev/null +++ b/docs/data/Disconnect/Disconnect.html @@ -0,0 +1,117 @@ + + + + + + + + Disconnect constructor - Disconnect - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Disconnect
+ +
+ +
+
+
+
+
+ +

Disconnect constructor +

+ +
+ + Disconnect({
  1. Device? sender,
  2. +
}) +
+ + + + +
+

Implementation

+
factory Disconnect({
+  Device? sender,
+}) {
+  final $result = create();
+  if (sender != null) {
+    $result.sender = sender;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/clearSender.html b/docs/data/Disconnect/clearSender.html new file mode 100644 index 0000000000..2e6279be66 --- /dev/null +++ b/docs/data/Disconnect/clearSender.html @@ -0,0 +1,118 @@ + + + + + + + + clearSender method - Disconnect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSender
+ +
+ +
+
+
+
+
+ +

clearSender method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearSender() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearSender() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/clone.html b/docs/data/Disconnect/clone.html new file mode 100644 index 0000000000..906e9501cc --- /dev/null +++ b/docs/data/Disconnect/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - Disconnect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+Disconnect +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+Disconnect clone() => Disconnect()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/copyWith.html b/docs/data/Disconnect/copyWith.html new file mode 100644 index 0000000000..f488d1d9a5 --- /dev/null +++ b/docs/data/Disconnect/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - Disconnect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+Disconnect +copyWith(
  1. void updates(
    1. Disconnect
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+Disconnect copyWith(void Function(Disconnect) updates) => super.copyWith((message) => updates(message as Disconnect)) as Disconnect;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/create.html b/docs/data/Disconnect/create.html new file mode 100644 index 0000000000..b17c7fb6c3 --- /dev/null +++ b/docs/data/Disconnect/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - Disconnect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +Disconnect +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Disconnect create() => Disconnect._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/createEmptyInstance.html b/docs/data/Disconnect/createEmptyInstance.html new file mode 100644 index 0000000000..fba9b5d7cc --- /dev/null +++ b/docs/data/Disconnect/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - Disconnect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +Disconnect +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
Disconnect createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/createRepeated.html b/docs/data/Disconnect/createRepeated.html new file mode 100644 index 0000000000..d02c7d641d --- /dev/null +++ b/docs/data/Disconnect/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - Disconnect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<Disconnect> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<Disconnect> createRepeated() => $pb.PbList<Disconnect>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/getDefault.html b/docs/data/Disconnect/getDefault.html new file mode 100644 index 0000000000..6ba4b06654 --- /dev/null +++ b/docs/data/Disconnect/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - Disconnect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +Disconnect +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Disconnect getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Disconnect>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/hasSender.html b/docs/data/Disconnect/hasSender.html new file mode 100644 index 0000000000..439048e253 --- /dev/null +++ b/docs/data/Disconnect/hasSender.html @@ -0,0 +1,118 @@ + + + + + + + + hasSender method - Disconnect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSender
+ +
+ +
+
+
+
+
+ +

hasSender method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasSender() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasSender() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/info_.html b/docs/data/Disconnect/info_.html new file mode 100644 index 0000000000..e94ce4edb6 --- /dev/null +++ b/docs/data/Disconnect/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - Disconnect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Disconnect/sender.html b/docs/data/Disconnect/sender.html new file mode 100644 index 0000000000..9ed0b554f8 --- /dev/null +++ b/docs/data/Disconnect/sender.html @@ -0,0 +1,150 @@ + + + + + + + + sender property - Disconnect class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sender
+ +
+ +
+
+
+
+
+ +

sender property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ Device + get + sender + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+Device get sender => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + sender + (Device v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set sender(Device v) { setField(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand-class-sidebar.html b/docs/data/DriveCommand-class-sidebar.html new file mode 100644 index 0000000000..dcbbf9dd3f --- /dev/null +++ b/docs/data/DriveCommand-class-sidebar.html @@ -0,0 +1,116 @@ +
    + +
  1. Constructors
  2. +
  3. DriveCommand
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. blink
  12. +
  13. color
  14. +
  15. eventPlugin
  16. +
  17. frontSwivel
  18. +
  19. frontTilt
  20. +
  21. hashCode
  22. +
  23. info_
  24. +
  25. isFrozen
  26. +
  27. left
  28. +
  29. rearSwivel
  30. +
  31. rearTilt
  32. +
  33. right
  34. +
  35. runtimeType
  36. +
  37. setLeft
  38. +
  39. setRight
  40. +
  41. setThrottle
  42. +
  43. status
  44. +
  45. throttle
  46. +
  47. unknownFields
  48. +
  49. version
  50. + +
  51. Methods
  52. +
  53. addExtension
  54. +
  55. check
  56. +
  57. clear
  58. +
  59. clearBlink
  60. +
  61. clearColor
  62. +
  63. clearExtension
  64. +
  65. clearField
  66. +
  67. clearFrontSwivel
  68. +
  69. clearFrontTilt
  70. +
  71. clearLeft
  72. +
  73. clearRearSwivel
  74. +
  75. clearRearTilt
  76. +
  77. clearRight
  78. +
  79. clearSetLeft
  80. +
  81. clearSetRight
  82. +
  83. clearSetThrottle
  84. +
  85. clearStatus
  86. +
  87. clearThrottle
  88. +
  89. clearVersion
  90. +
  91. clone
  92. +
  93. copyWith
  94. +
  95. createEmptyInstance
  96. +
  97. createMapField
  98. +
  99. createRepeatedField
  100. +
  101. ensureVersion
  102. +
  103. extensionsAreInitialized
  104. +
  105. freeze
  106. +
  107. getDefaultForField
  108. +
  109. getExtension
  110. +
  111. getField
  112. +
  113. getFieldOrNull
  114. +
  115. getTagNumber
  116. +
  117. hasBlink
  118. +
  119. hasColor
  120. +
  121. hasExtension
  122. +
  123. hasField
  124. +
  125. hasFrontSwivel
  126. +
  127. hasFrontTilt
  128. +
  129. hasLeft
  130. +
  131. hasRearSwivel
  132. +
  133. hasRearTilt
  134. +
  135. hasRequiredFields
  136. +
  137. hasRight
  138. +
  139. hasSetLeft
  140. +
  141. hasSetRight
  142. +
  143. hasSetThrottle
  144. +
  145. hasStatus
  146. +
  147. hasThrottle
  148. +
  149. hasVersion
  150. +
  151. isInitialized
  152. +
  153. mergeFromBuffer
  154. +
  155. mergeFromCodedBufferReader
  156. +
  157. mergeFromJson
  158. +
  159. mergeFromJsonMap
  160. +
  161. mergeFromMessage
  162. +
  163. mergeFromProto3Json
  164. +
  165. mergeUnknownFields
  166. +
  167. noSuchMethod
  168. +
  169. setExtension
  170. +
  171. setField
  172. +
  173. toBuilder
  174. +
  175. toDebugString
  176. +
  177. toProto3Json
  178. +
  179. toString
  180. +
  181. writeToBuffer
  182. +
  183. writeToCodedBufferWriter
  184. +
  185. writeToJson
  186. +
  187. writeToJsonMap
  188. + +
  189. Operators
  190. +
  191. operator ==
  192. + + + + + +
  193. Static methods
  194. +
  195. create
  196. +
  197. createRepeated
  198. +
  199. getDefault
  200. + +
diff --git a/docs/data/DriveCommand-class.html b/docs/data/DriveCommand-class.html new file mode 100644 index 0000000000..8d5aa5e4b2 --- /dev/null +++ b/docs/data/DriveCommand-class.html @@ -0,0 +1,1364 @@ + + + + + + + + DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveCommand
+ +
+ +
+
+
+
+
+ +

DriveCommand class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ DriveCommand({double? throttle, double? left, double? right, bool? setLeft, bool? setRight, bool? setThrottle, double? frontSwivel, double? frontTilt, double? rearSwivel, double? rearTilt, RoverStatus? status, Version? version, ProtoColor? color, BoolState? blink}) +
+
+ +
factory
+
+
+ DriveCommand.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ DriveCommand.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+ +
+ +
getter/setter pair
+ +
+ +
+ color + ProtoColor + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ frontSwivel + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ frontTilt + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ left + ↔ double + + +
+
+ Speed of the left wheels, as a percentage of throttle. +
getter/setter pair
+ +
+ +
+ rearSwivel + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ rearTilt + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ + +
+ Speed of the right wheels, as a percentage of throttle. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ setLeft + ↔ bool + + +
+
+ Indicates that left = 0 is valid, even though 0 usually means no value. +
getter/setter pair
+ +
+ +
+ setRight + ↔ bool + + +
+
+ Indicates that right = 0 is valid, even though 0 usually means no value. +
getter/setter pair
+ +
+ +
+ setThrottle + ↔ bool + + +
+
+ Indicates that throttle = 0 is valid, even though 0 usually means no value. +
getter/setter pair
+ +
+ +
+ status + RoverStatus + + +
+
+ +
getter/setter pair
+ +
+ +
+ throttle + ↔ double + + +
+
+ The max speed, as a percentage of the rover's possible speed. +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ + +
+ + + +
+ +
+ clearColor() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearFrontSwivel() + → void + + + +
+
+ + + +
+ +
+ clearFrontTilt() + → void + + + +
+
+ + + +
+ +
+ clearLeft() + → void + + + +
+
+ + + +
+ +
+ clearRearSwivel() + → void + + + +
+
+ + + +
+ +
+ clearRearTilt() + → void + + + +
+
+ + + +
+ +
+ clearRight() + → void + + + +
+
+ + + +
+ +
+ clearSetLeft() + → void + + + +
+
+ + + +
+ +
+ clearSetRight() + → void + + + +
+
+ + + +
+ +
+ clearSetThrottle() + → void + + + +
+
+ + + +
+ +
+ clearStatus() + → void + + + +
+
+ + + +
+ +
+ clearThrottle() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + DriveCommand + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(DriveCommand)) + DriveCommand + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + DriveCommand + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ + +
+ + + +
+ +
+ hasColor() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasFrontSwivel() + → bool + + + +
+
+ + + +
+ +
+ hasFrontTilt() + → bool + + + +
+
+ + + +
+ +
+ hasLeft() + → bool + + + +
+
+ + + +
+ +
+ hasRearSwivel() + → bool + + + +
+
+ + + +
+ +
+ hasRearTilt() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasRight() + → bool + + + +
+
+ + + +
+ +
+ hasSetLeft() + → bool + + + +
+
+ + + +
+ +
+ hasSetRight() + → bool + + + +
+
+ + + +
+ +
+ hasSetThrottle() + → bool + + + +
+
+ + + +
+ +
+ hasStatus() + → bool + + + +
+
+ + + +
+ +
+ hasThrottle() + → bool + + + +
+
+ + + +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + DriveCommand + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<DriveCommand> + + + +
+
+ + + +
+ +
+ getDefault() + DriveCommand + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/DriveCommand.fromBuffer.html b/docs/data/DriveCommand/DriveCommand.fromBuffer.html new file mode 100644 index 0000000000..83684bed4d --- /dev/null +++ b/docs/data/DriveCommand/DriveCommand.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + DriveCommand.fromBuffer constructor - DriveCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveCommand.fromBuffer
+ +
+ +
+
+
+
+
+ +

DriveCommand.fromBuffer constructor +

+ +
+ + DriveCommand.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory DriveCommand.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/DriveCommand.fromJson.html b/docs/data/DriveCommand/DriveCommand.fromJson.html new file mode 100644 index 0000000000..482ea6ab63 --- /dev/null +++ b/docs/data/DriveCommand/DriveCommand.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + DriveCommand.fromJson constructor - DriveCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveCommand.fromJson
+ +
+ +
+
+
+
+
+ +

DriveCommand.fromJson constructor +

+ +
+ + DriveCommand.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory DriveCommand.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/DriveCommand.html b/docs/data/DriveCommand/DriveCommand.html new file mode 100644 index 0000000000..b671ccb2fd --- /dev/null +++ b/docs/data/DriveCommand/DriveCommand.html @@ -0,0 +1,182 @@ + + + + + + + + DriveCommand constructor - DriveCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveCommand
+ +
+ +
+
+
+
+
+ +

DriveCommand constructor +

+ +
+ + DriveCommand({
  1. double? throttle,
  2. +
  3. double? left,
  4. +
  5. double? right,
  6. +
  7. bool? setLeft,
  8. +
  9. bool? setRight,
  10. +
  11. bool? setThrottle,
  12. +
  13. double? frontSwivel,
  14. +
  15. double? frontTilt,
  16. +
  17. double? rearSwivel,
  18. +
  19. double? rearTilt,
  20. +
  21. RoverStatus? status,
  22. +
  23. Version? version,
  24. +
  25. ProtoColor? color,
  26. +
  27. BoolState? blink,
  28. +
}) +
+ + + + +
+

Implementation

+
factory DriveCommand({
+  $core.double? throttle,
+  $core.double? left,
+  $core.double? right,
+  $core.bool? setLeft,
+  $core.bool? setRight,
+  $core.bool? setThrottle,
+  $core.double? frontSwivel,
+  $core.double? frontTilt,
+  $core.double? rearSwivel,
+  $core.double? rearTilt,
+  $3.RoverStatus? status,
+  $0.Version? version,
+  ProtoColor? color,
+  $1.BoolState? blink,
+}) {
+  final $result = create();
+  if (throttle != null) {
+    $result.throttle = throttle;
+  }
+  if (left != null) {
+    $result.left = left;
+  }
+  if (right != null) {
+    $result.right = right;
+  }
+  if (setLeft != null) {
+    $result.setLeft = setLeft;
+  }
+  if (setRight != null) {
+    $result.setRight = setRight;
+  }
+  if (setThrottle != null) {
+    $result.setThrottle = setThrottle;
+  }
+  if (frontSwivel != null) {
+    $result.frontSwivel = frontSwivel;
+  }
+  if (frontTilt != null) {
+    $result.frontTilt = frontTilt;
+  }
+  if (rearSwivel != null) {
+    $result.rearSwivel = rearSwivel;
+  }
+  if (rearTilt != null) {
+    $result.rearTilt = rearTilt;
+  }
+  if (status != null) {
+    $result.status = status;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  if (color != null) {
+    $result.color = color;
+  }
+  if (blink != null) {
+    $result.blink = blink;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/blink.html b/docs/data/DriveCommand/blink.html new file mode 100644 index 0000000000..43098961d1 --- /dev/null +++ b/docs/data/DriveCommand/blink.html @@ -0,0 +1,150 @@ + + + + + + + + blink property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
blink
+ +
+ +
+
+
+
+
+ +

blink property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+ BoolState + get + blink + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(14)
+$1.BoolState get blink => $_getN(13);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+ set + blink + (BoolState v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(14)
+set blink($1.BoolState v) { setField(14, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearBlink.html b/docs/data/DriveCommand/clearBlink.html new file mode 100644 index 0000000000..ab76ba8d60 --- /dev/null +++ b/docs/data/DriveCommand/clearBlink.html @@ -0,0 +1,118 @@ + + + + + + + + clearBlink method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearBlink
+ +
+ +
+
+
+
+
+ +

clearBlink method +

+ +
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+void +clearBlink() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(14)
+void clearBlink() => clearField(14);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearColor.html b/docs/data/DriveCommand/clearColor.html new file mode 100644 index 0000000000..cc17e9a0d7 --- /dev/null +++ b/docs/data/DriveCommand/clearColor.html @@ -0,0 +1,118 @@ + + + + + + + + clearColor method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearColor
+ +
+ +
+
+
+
+
+ +

clearColor method +

+ +
+ +
+
    +
  1. @TagNumber(13)
  2. +
+
+void +clearColor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(13)
+void clearColor() => clearField(13);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearFrontSwivel.html b/docs/data/DriveCommand/clearFrontSwivel.html new file mode 100644 index 0000000000..674361d1a4 --- /dev/null +++ b/docs/data/DriveCommand/clearFrontSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + clearFrontSwivel method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearFrontSwivel
+ +
+ +
+
+
+
+
+ +

clearFrontSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+void +clearFrontSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+void clearFrontSwivel() => clearField(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearFrontTilt.html b/docs/data/DriveCommand/clearFrontTilt.html new file mode 100644 index 0000000000..d928e8bdb2 --- /dev/null +++ b/docs/data/DriveCommand/clearFrontTilt.html @@ -0,0 +1,118 @@ + + + + + + + + clearFrontTilt method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearFrontTilt
+ +
+ +
+
+
+
+
+ +

clearFrontTilt method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+void +clearFrontTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+void clearFrontTilt() => clearField(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearLeft.html b/docs/data/DriveCommand/clearLeft.html new file mode 100644 index 0000000000..1abadb825a --- /dev/null +++ b/docs/data/DriveCommand/clearLeft.html @@ -0,0 +1,118 @@ + + + + + + + + clearLeft method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearLeft
+ +
+ +
+
+
+
+
+ +

clearLeft method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearLeft() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearRearSwivel.html b/docs/data/DriveCommand/clearRearSwivel.html new file mode 100644 index 0000000000..296dc27534 --- /dev/null +++ b/docs/data/DriveCommand/clearRearSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + clearRearSwivel method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearRearSwivel
+ +
+ +
+
+
+
+
+ +

clearRearSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+void +clearRearSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+void clearRearSwivel() => clearField(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearRearTilt.html b/docs/data/DriveCommand/clearRearTilt.html new file mode 100644 index 0000000000..dad7479cb6 --- /dev/null +++ b/docs/data/DriveCommand/clearRearTilt.html @@ -0,0 +1,118 @@ + + + + + + + + clearRearTilt method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearRearTilt
+ +
+ +
+
+
+
+
+ +

clearRearTilt method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+void +clearRearTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+void clearRearTilt() => clearField(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearRight.html b/docs/data/DriveCommand/clearRight.html new file mode 100644 index 0000000000..5cf675b66c --- /dev/null +++ b/docs/data/DriveCommand/clearRight.html @@ -0,0 +1,118 @@ + + + + + + + + clearRight method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearRight
+ +
+ +
+
+
+
+
+ +

clearRight method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearRight() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearSetLeft.html b/docs/data/DriveCommand/clearSetLeft.html new file mode 100644 index 0000000000..314ce2d1dd --- /dev/null +++ b/docs/data/DriveCommand/clearSetLeft.html @@ -0,0 +1,118 @@ + + + + + + + + clearSetLeft method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSetLeft
+ +
+ +
+
+
+
+
+ +

clearSetLeft method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearSetLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearSetLeft() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearSetRight.html b/docs/data/DriveCommand/clearSetRight.html new file mode 100644 index 0000000000..1b0b730215 --- /dev/null +++ b/docs/data/DriveCommand/clearSetRight.html @@ -0,0 +1,118 @@ + + + + + + + + clearSetRight method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSetRight
+ +
+ +
+
+
+
+
+ +

clearSetRight method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearSetRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearSetRight() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearSetThrottle.html b/docs/data/DriveCommand/clearSetThrottle.html new file mode 100644 index 0000000000..167def5885 --- /dev/null +++ b/docs/data/DriveCommand/clearSetThrottle.html @@ -0,0 +1,118 @@ + + + + + + + + clearSetThrottle method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSetThrottle
+ +
+ +
+
+
+
+
+ +

clearSetThrottle method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+void +clearSetThrottle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+void clearSetThrottle() => clearField(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearStatus.html b/docs/data/DriveCommand/clearStatus.html new file mode 100644 index 0000000000..4149c20efe --- /dev/null +++ b/docs/data/DriveCommand/clearStatus.html @@ -0,0 +1,118 @@ + + + + + + + + clearStatus method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearStatus
+ +
+ +
+
+
+
+
+ +

clearStatus method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+void +clearStatus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+void clearStatus() => clearField(11);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearThrottle.html b/docs/data/DriveCommand/clearThrottle.html new file mode 100644 index 0000000000..57dfa1baa4 --- /dev/null +++ b/docs/data/DriveCommand/clearThrottle.html @@ -0,0 +1,118 @@ + + + + + + + + clearThrottle method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearThrottle
+ +
+ +
+
+
+
+
+ +

clearThrottle method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearThrottle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearThrottle() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clearVersion.html b/docs/data/DriveCommand/clearVersion.html new file mode 100644 index 0000000000..fa0cc97c91 --- /dev/null +++ b/docs/data/DriveCommand/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(12)
+void clearVersion() => clearField(12);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/clone.html b/docs/data/DriveCommand/clone.html new file mode 100644 index 0000000000..701f632a52 --- /dev/null +++ b/docs/data/DriveCommand/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+DriveCommand +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+DriveCommand clone() => DriveCommand()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/color.html b/docs/data/DriveCommand/color.html new file mode 100644 index 0000000000..8592c99a06 --- /dev/null +++ b/docs/data/DriveCommand/color.html @@ -0,0 +1,150 @@ + + + + + + + + color property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
color
+ +
+ +
+
+
+
+
+ +

color property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(13)
  2. +
+
+ ProtoColor + get + color + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(13)
+ProtoColor get color => $_getN(12);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(13)
  2. +
+
+ set + color + (ProtoColor v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(13)
+set color(ProtoColor v) { setField(13, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/copyWith.html b/docs/data/DriveCommand/copyWith.html new file mode 100644 index 0000000000..5523b0fb63 --- /dev/null +++ b/docs/data/DriveCommand/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+DriveCommand +copyWith(
  1. void updates(
    1. DriveCommand
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+DriveCommand copyWith(void Function(DriveCommand) updates) => super.copyWith((message) => updates(message as DriveCommand)) as DriveCommand;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/create.html b/docs/data/DriveCommand/create.html new file mode 100644 index 0000000000..9075d060ee --- /dev/null +++ b/docs/data/DriveCommand/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +DriveCommand +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static DriveCommand create() => DriveCommand._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/createEmptyInstance.html b/docs/data/DriveCommand/createEmptyInstance.html new file mode 100644 index 0000000000..cc250de450 --- /dev/null +++ b/docs/data/DriveCommand/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +DriveCommand +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
DriveCommand createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/createRepeated.html b/docs/data/DriveCommand/createRepeated.html new file mode 100644 index 0000000000..8f4f1e7246 --- /dev/null +++ b/docs/data/DriveCommand/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<DriveCommand> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<DriveCommand> createRepeated() => $pb.PbList<DriveCommand>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/ensureVersion.html b/docs/data/DriveCommand/ensureVersion.html new file mode 100644 index 0000000000..fdc5713459 --- /dev/null +++ b/docs/data/DriveCommand/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(12)
+$0.Version ensureVersion() => $_ensure(11);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/frontSwivel.html b/docs/data/DriveCommand/frontSwivel.html new file mode 100644 index 0000000000..d29ce42288 --- /dev/null +++ b/docs/data/DriveCommand/frontSwivel.html @@ -0,0 +1,150 @@ + + + + + + + + frontSwivel property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frontSwivel
+ +
+ +
+
+
+
+
+ +

frontSwivel property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ double + get + frontSwivel + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.double get frontSwivel => $_getN(6);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ set + frontSwivel + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+set frontSwivel($core.double v) { $_setFloat(6, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/frontTilt.html b/docs/data/DriveCommand/frontTilt.html new file mode 100644 index 0000000000..388ba24dc3 --- /dev/null +++ b/docs/data/DriveCommand/frontTilt.html @@ -0,0 +1,150 @@ + + + + + + + + frontTilt property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frontTilt
+ +
+ +
+
+
+
+
+ +

frontTilt property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ double + get + frontTilt + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.double get frontTilt => $_getN(7);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ set + frontTilt + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(8)
+set frontTilt($core.double v) { $_setFloat(7, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/getDefault.html b/docs/data/DriveCommand/getDefault.html new file mode 100644 index 0000000000..14d8233abb --- /dev/null +++ b/docs/data/DriveCommand/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +DriveCommand +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static DriveCommand getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DriveCommand>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasBlink.html b/docs/data/DriveCommand/hasBlink.html new file mode 100644 index 0000000000..593aaf17df --- /dev/null +++ b/docs/data/DriveCommand/hasBlink.html @@ -0,0 +1,118 @@ + + + + + + + + hasBlink method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasBlink
+ +
+ +
+
+
+
+
+ +

hasBlink method +

+ +
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+bool +hasBlink() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(14)
+$core.bool hasBlink() => $_has(13);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasColor.html b/docs/data/DriveCommand/hasColor.html new file mode 100644 index 0000000000..dbbdc10593 --- /dev/null +++ b/docs/data/DriveCommand/hasColor.html @@ -0,0 +1,118 @@ + + + + + + + + hasColor method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasColor
+ +
+ +
+
+
+
+
+ +

hasColor method +

+ +
+ +
+
    +
  1. @TagNumber(13)
  2. +
+
+bool +hasColor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(13)
+$core.bool hasColor() => $_has(12);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasFrontSwivel.html b/docs/data/DriveCommand/hasFrontSwivel.html new file mode 100644 index 0000000000..a0256ae9e2 --- /dev/null +++ b/docs/data/DriveCommand/hasFrontSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + hasFrontSwivel method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasFrontSwivel
+ +
+ +
+
+
+
+
+ +

hasFrontSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+bool +hasFrontSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.bool hasFrontSwivel() => $_has(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasFrontTilt.html b/docs/data/DriveCommand/hasFrontTilt.html new file mode 100644 index 0000000000..58e49e03ef --- /dev/null +++ b/docs/data/DriveCommand/hasFrontTilt.html @@ -0,0 +1,118 @@ + + + + + + + + hasFrontTilt method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasFrontTilt
+ +
+ +
+
+
+
+
+ +

hasFrontTilt method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+bool +hasFrontTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.bool hasFrontTilt() => $_has(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasLeft.html b/docs/data/DriveCommand/hasLeft.html new file mode 100644 index 0000000000..74131adfc6 --- /dev/null +++ b/docs/data/DriveCommand/hasLeft.html @@ -0,0 +1,118 @@ + + + + + + + + hasLeft method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasLeft
+ +
+ +
+
+
+
+
+ +

hasLeft method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasLeft() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasRearSwivel.html b/docs/data/DriveCommand/hasRearSwivel.html new file mode 100644 index 0000000000..a313519b17 --- /dev/null +++ b/docs/data/DriveCommand/hasRearSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + hasRearSwivel method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasRearSwivel
+ +
+ +
+
+
+
+
+ +

hasRearSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+bool +hasRearSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.bool hasRearSwivel() => $_has(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasRearTilt.html b/docs/data/DriveCommand/hasRearTilt.html new file mode 100644 index 0000000000..ab01fe55cd --- /dev/null +++ b/docs/data/DriveCommand/hasRearTilt.html @@ -0,0 +1,118 @@ + + + + + + + + hasRearTilt method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasRearTilt
+ +
+ +
+
+
+
+
+ +

hasRearTilt method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+bool +hasRearTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.bool hasRearTilt() => $_has(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasRight.html b/docs/data/DriveCommand/hasRight.html new file mode 100644 index 0000000000..ea388ebf0e --- /dev/null +++ b/docs/data/DriveCommand/hasRight.html @@ -0,0 +1,118 @@ + + + + + + + + hasRight method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasRight
+ +
+ +
+
+
+
+
+ +

hasRight method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasRight() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasSetLeft.html b/docs/data/DriveCommand/hasSetLeft.html new file mode 100644 index 0000000000..626cc49a2a --- /dev/null +++ b/docs/data/DriveCommand/hasSetLeft.html @@ -0,0 +1,118 @@ + + + + + + + + hasSetLeft method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSetLeft
+ +
+ +
+
+
+
+
+ +

hasSetLeft method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasSetLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasSetLeft() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasSetRight.html b/docs/data/DriveCommand/hasSetRight.html new file mode 100644 index 0000000000..9cd41e91d4 --- /dev/null +++ b/docs/data/DriveCommand/hasSetRight.html @@ -0,0 +1,118 @@ + + + + + + + + hasSetRight method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSetRight
+ +
+ +
+
+
+
+
+ +

hasSetRight method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasSetRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasSetRight() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasSetThrottle.html b/docs/data/DriveCommand/hasSetThrottle.html new file mode 100644 index 0000000000..4e5209a905 --- /dev/null +++ b/docs/data/DriveCommand/hasSetThrottle.html @@ -0,0 +1,118 @@ + + + + + + + + hasSetThrottle method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSetThrottle
+ +
+ +
+
+
+
+
+ +

hasSetThrottle method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+bool +hasSetThrottle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool hasSetThrottle() => $_has(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasStatus.html b/docs/data/DriveCommand/hasStatus.html new file mode 100644 index 0000000000..1db0c9f07e --- /dev/null +++ b/docs/data/DriveCommand/hasStatus.html @@ -0,0 +1,118 @@ + + + + + + + + hasStatus method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasStatus
+ +
+ +
+
+
+
+
+ +

hasStatus method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+bool +hasStatus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+$core.bool hasStatus() => $_has(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasThrottle.html b/docs/data/DriveCommand/hasThrottle.html new file mode 100644 index 0000000000..1cc2785a37 --- /dev/null +++ b/docs/data/DriveCommand/hasThrottle.html @@ -0,0 +1,118 @@ + + + + + + + + hasThrottle method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasThrottle
+ +
+ +
+
+
+
+
+ +

hasThrottle method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasThrottle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasThrottle() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/hasVersion.html b/docs/data/DriveCommand/hasVersion.html new file mode 100644 index 0000000000..537bfdfb63 --- /dev/null +++ b/docs/data/DriveCommand/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(12)
+$core.bool hasVersion() => $_has(11);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/info_.html b/docs/data/DriveCommand/info_.html new file mode 100644 index 0000000000..caaedcf852 --- /dev/null +++ b/docs/data/DriveCommand/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/left.html b/docs/data/DriveCommand/left.html new file mode 100644 index 0000000000..46267588e6 --- /dev/null +++ b/docs/data/DriveCommand/left.html @@ -0,0 +1,153 @@ + + + + + + + + left property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
left
+ +
+ +
+
+
+
+
+ +

left property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + get + left + + +
+ +
+

Speed of the left wheels, as a percentage of throttle.

+
+ + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get left => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + left + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set left($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/rearSwivel.html b/docs/data/DriveCommand/rearSwivel.html new file mode 100644 index 0000000000..6171b8e7e6 --- /dev/null +++ b/docs/data/DriveCommand/rearSwivel.html @@ -0,0 +1,150 @@ + + + + + + + + rearSwivel property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rearSwivel
+ +
+ +
+
+
+
+
+ +

rearSwivel property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ double + get + rearSwivel + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.double get rearSwivel => $_getN(8);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ set + rearSwivel + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+set rearSwivel($core.double v) { $_setFloat(8, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/rearTilt.html b/docs/data/DriveCommand/rearTilt.html new file mode 100644 index 0000000000..d9de815997 --- /dev/null +++ b/docs/data/DriveCommand/rearTilt.html @@ -0,0 +1,150 @@ + + + + + + + + rearTilt property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rearTilt
+ +
+ +
+
+
+
+
+ +

rearTilt property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ double + get + rearTilt + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.double get rearTilt => $_getN(9);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ set + rearTilt + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(10)
+set rearTilt($core.double v) { $_setFloat(9, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/right.html b/docs/data/DriveCommand/right.html new file mode 100644 index 0000000000..d1c309ae39 --- /dev/null +++ b/docs/data/DriveCommand/right.html @@ -0,0 +1,153 @@ + + + + + + + + right property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
right
+ +
+ +
+
+
+
+
+ +

right property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + get + right + + +
+ +
+

Speed of the right wheels, as a percentage of throttle.

+
+ + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get right => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + right + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set right($core.double v) { $_setFloat(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/setLeft.html b/docs/data/DriveCommand/setLeft.html new file mode 100644 index 0000000000..0b1d166afc --- /dev/null +++ b/docs/data/DriveCommand/setLeft.html @@ -0,0 +1,153 @@ + + + + + + + + setLeft property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setLeft
+ +
+ +
+
+
+
+
+ +

setLeft property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ bool + get + setLeft + + +
+ +
+

Indicates that left = 0 is valid, even though 0 usually means no value.

+
+ + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool get setLeft => $_getBF(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + setLeft + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set setLeft($core.bool v) { $_setBool(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/setRight.html b/docs/data/DriveCommand/setRight.html new file mode 100644 index 0000000000..9238cd2708 --- /dev/null +++ b/docs/data/DriveCommand/setRight.html @@ -0,0 +1,153 @@ + + + + + + + + setRight property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setRight
+ +
+ +
+
+
+
+
+ +

setRight property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ bool + get + setRight + + +
+ +
+

Indicates that right = 0 is valid, even though 0 usually means no value.

+
+ + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool get setRight => $_getBF(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + setRight + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set setRight($core.bool v) { $_setBool(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/setThrottle.html b/docs/data/DriveCommand/setThrottle.html new file mode 100644 index 0000000000..b198f8eb5c --- /dev/null +++ b/docs/data/DriveCommand/setThrottle.html @@ -0,0 +1,153 @@ + + + + + + + + setThrottle property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setThrottle
+ +
+ +
+
+
+
+
+ +

setThrottle property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ bool + get + setThrottle + + +
+ +
+

Indicates that throttle = 0 is valid, even though 0 usually means no value.

+
+ + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool get setThrottle => $_getBF(5);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ set + setThrottle + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+set setThrottle($core.bool v) { $_setBool(5, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/status.html b/docs/data/DriveCommand/status.html new file mode 100644 index 0000000000..4b11a844c7 --- /dev/null +++ b/docs/data/DriveCommand/status.html @@ -0,0 +1,150 @@ + + + + + + + + status property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
status
+ +
+ +
+
+
+
+
+ +

status property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ RoverStatus + get + status + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(11)
+$3.RoverStatus get status => $_getN(10);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ set + status + (RoverStatus v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(11)
+set status($3.RoverStatus v) { setField(11, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/throttle.html b/docs/data/DriveCommand/throttle.html new file mode 100644 index 0000000000..4551978c73 --- /dev/null +++ b/docs/data/DriveCommand/throttle.html @@ -0,0 +1,153 @@ + + + + + + + + throttle property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
throttle
+ +
+ +
+
+
+
+
+ +

throttle property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + get + throttle + + +
+ +
+

The max speed, as a percentage of the rover's possible speed.

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get throttle => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + throttle + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set throttle($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveCommand/version.html b/docs/data/DriveCommand/version.html new file mode 100644 index 0000000000..f3194180c6 --- /dev/null +++ b/docs/data/DriveCommand/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(12)
+$0.Version get version => $_getN(11);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(12)
+set version($0.Version v) { setField(12, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData-class-sidebar.html b/docs/data/DriveData-class-sidebar.html new file mode 100644 index 0000000000..367c4915b9 --- /dev/null +++ b/docs/data/DriveData-class-sidebar.html @@ -0,0 +1,140 @@ +
    + +
  1. Constructors
  2. +
  3. DriveData
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. backLeft
  12. +
  13. backRight
  14. +
  15. batteryCurrent
  16. +
  17. batteryTemperature
  18. +
  19. batteryVoltage
  20. +
  21. color
  22. +
  23. eventPlugin
  24. +
  25. frontLeft
  26. +
  27. frontRight
  28. +
  29. frontSwivel
  30. +
  31. frontTilt
  32. +
  33. hashCode
  34. +
  35. info_
  36. +
  37. isFrozen
  38. +
  39. left
  40. +
  41. middleLeft
  42. +
  43. middleRight
  44. +
  45. rearSwivel
  46. +
  47. rearTilt
  48. +
  49. right
  50. +
  51. runtimeType
  52. +
  53. setLeft
  54. +
  55. setRight
  56. +
  57. setThrottle
  58. +
  59. status
  60. +
  61. throttle
  62. +
  63. unknownFields
  64. +
  65. version
  66. + +
  67. Methods
  68. +
  69. addExtension
  70. +
  71. check
  72. +
  73. clear
  74. +
  75. clearBackLeft
  76. +
  77. clearBackRight
  78. +
  79. clearBatteryCurrent
  80. +
  81. clearBatteryTemperature
  82. +
  83. clearBatteryVoltage
  84. +
  85. clearColor
  86. +
  87. clearExtension
  88. +
  89. clearField
  90. +
  91. clearFrontLeft
  92. +
  93. clearFrontRight
  94. +
  95. clearFrontSwivel
  96. +
  97. clearFrontTilt
  98. +
  99. clearLeft
  100. +
  101. clearMiddleLeft
  102. +
  103. clearMiddleRight
  104. +
  105. clearRearSwivel
  106. +
  107. clearRearTilt
  108. +
  109. clearRight
  110. +
  111. clearSetLeft
  112. +
  113. clearSetRight
  114. +
  115. clearSetThrottle
  116. +
  117. clearStatus
  118. +
  119. clearThrottle
  120. +
  121. clearVersion
  122. +
  123. clone
  124. +
  125. copyWith
  126. +
  127. createEmptyInstance
  128. +
  129. createMapField
  130. +
  131. createRepeatedField
  132. +
  133. ensureVersion
  134. +
  135. extensionsAreInitialized
  136. +
  137. freeze
  138. +
  139. getDefaultForField
  140. +
  141. getExtension
  142. +
  143. getField
  144. +
  145. getFieldOrNull
  146. +
  147. getTagNumber
  148. +
  149. hasBackLeft
  150. +
  151. hasBackRight
  152. +
  153. hasBatteryCurrent
  154. +
  155. hasBatteryTemperature
  156. +
  157. hasBatteryVoltage
  158. +
  159. hasColor
  160. +
  161. hasExtension
  162. +
  163. hasField
  164. +
  165. hasFrontLeft
  166. +
  167. hasFrontRight
  168. +
  169. hasFrontSwivel
  170. +
  171. hasFrontTilt
  172. +
  173. hasLeft
  174. +
  175. hasMiddleLeft
  176. +
  177. hasMiddleRight
  178. +
  179. hasRearSwivel
  180. +
  181. hasRearTilt
  182. +
  183. hasRequiredFields
  184. +
  185. hasRight
  186. +
  187. hasSetLeft
  188. +
  189. hasSetRight
  190. +
  191. hasSetThrottle
  192. +
  193. hasStatus
  194. +
  195. hasThrottle
  196. +
  197. hasVersion
  198. +
  199. isInitialized
  200. +
  201. mergeFromBuffer
  202. +
  203. mergeFromCodedBufferReader
  204. +
  205. mergeFromJson
  206. +
  207. mergeFromJsonMap
  208. +
  209. mergeFromMessage
  210. +
  211. mergeFromProto3Json
  212. +
  213. mergeUnknownFields
  214. +
  215. noSuchMethod
  216. +
  217. setExtension
  218. +
  219. setField
  220. +
  221. toBuilder
  222. +
  223. toDebugString
  224. +
  225. toProto3Json
  226. +
  227. toString
  228. +
  229. writeToBuffer
  230. +
  231. writeToCodedBufferWriter
  232. +
  233. writeToJson
  234. +
  235. writeToJsonMap
  236. + +
  237. Operators
  238. +
  239. operator ==
  240. + + + + + +
  241. Static methods
  242. +
  243. create
  244. +
  245. createRepeated
  246. +
  247. getDefault
  248. + +
diff --git a/docs/data/DriveData-class.html b/docs/data/DriveData-class.html new file mode 100644 index 0000000000..7d39129a32 --- /dev/null +++ b/docs/data/DriveData-class.html @@ -0,0 +1,1668 @@ + + + + + + + + DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveData
+ +
+ +
+
+
+
+
+ +

DriveData class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ DriveData({double? throttle, double? left, double? right, bool? setLeft, bool? setRight, bool? setThrottle, double? frontSwivel, double? frontTilt, double? rearSwivel, double? rearTilt, double? batteryVoltage, double? batteryCurrent, double? batteryTemperature, Version? version, double? backLeft, double? middleLeft, double? frontLeft, double? backRight, double? middleRight, double? frontRight, ProtoColor? color, RoverStatus? status}) +
+
+ +
factory
+
+
+ DriveData.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ DriveData.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ backLeft + ↔ double + + +
+
+ Information about each wheel in rpm +
getter/setter pair
+ +
+ +
+ backRight + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ batteryCurrent + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ batteryTemperature + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ batteryVoltage + ↔ double + + +
+
+ Vitals for the whole rover +
getter/setter pair
+ +
+ +
+ color + ProtoColor + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ frontLeft + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ frontRight + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ frontSwivel + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ frontTilt + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ left + ↔ double + + +
+
+ Speed of the left wheels, as a percentage of throttle. +
getter/setter pair
+ +
+ +
+ middleLeft + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ middleRight + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ rearSwivel + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ rearTilt + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ + +
+ Speed of the right wheels, as a percentage of throttle. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ setLeft + ↔ bool + + +
+
+ Indicates that left = 0 is valid, even though 0 usually means no value. +
getter/setter pair
+ +
+ +
+ setRight + ↔ bool + + +
+
+ Indicates that right = 0 is valid, even though 0 usually means no value. +
getter/setter pair
+ +
+ +
+ setThrottle + ↔ bool + + +
+
+ Indicates that throttle = 0 is valid, even though 0 usually means no value. +
getter/setter pair
+ +
+ +
+ status + RoverStatus + + +
+
+ +
getter/setter pair
+ +
+ +
+ throttle + ↔ double + + +
+
+ The max speed, as a percentage of the rover's possible speed. +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearBackLeft() + → void + + + +
+
+ + + +
+ +
+ clearBackRight() + → void + + + +
+
+ + + +
+ +
+ clearBatteryCurrent() + → void + + + +
+
+ + + +
+ +
+ clearBatteryTemperature() + → void + + + +
+
+ + + +
+ +
+ clearBatteryVoltage() + → void + + + +
+
+ + + +
+ +
+ clearColor() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearFrontLeft() + → void + + + +
+
+ + + +
+ +
+ clearFrontRight() + → void + + + +
+
+ + + +
+ +
+ clearFrontSwivel() + → void + + + +
+
+ + + +
+ +
+ clearFrontTilt() + → void + + + +
+
+ + + +
+ +
+ clearLeft() + → void + + + +
+
+ + + +
+ +
+ clearMiddleLeft() + → void + + + +
+
+ + + +
+ +
+ clearMiddleRight() + → void + + + +
+
+ + + +
+ +
+ clearRearSwivel() + → void + + + +
+
+ + + +
+ +
+ clearRearTilt() + → void + + + +
+
+ + + +
+ +
+ clearRight() + → void + + + +
+
+ + + +
+ +
+ clearSetLeft() + → void + + + +
+
+ + + +
+ +
+ clearSetRight() + → void + + + +
+
+ + + +
+ +
+ clearSetThrottle() + → void + + + +
+
+ + + +
+ +
+ clearStatus() + → void + + + +
+
+ + + +
+ +
+ clearThrottle() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + DriveData + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(DriveData)) + DriveData + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + DriveData + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasBackLeft() + → bool + + + +
+
+ + + +
+ +
+ hasBackRight() + → bool + + + +
+
+ + + +
+ +
+ hasBatteryCurrent() + → bool + + + +
+
+ + + +
+ +
+ hasBatteryTemperature() + → bool + + + +
+
+ + + +
+ +
+ hasBatteryVoltage() + → bool + + + +
+
+ + + +
+ +
+ hasColor() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasFrontLeft() + → bool + + + +
+
+ + + +
+ +
+ hasFrontRight() + → bool + + + +
+
+ + + +
+ +
+ hasFrontSwivel() + → bool + + + +
+
+ + + +
+ +
+ hasFrontTilt() + → bool + + + +
+
+ + + +
+ +
+ hasLeft() + → bool + + + +
+
+ + + +
+ +
+ hasMiddleLeft() + → bool + + + +
+
+ + + +
+ +
+ hasMiddleRight() + → bool + + + +
+
+ + + +
+ +
+ hasRearSwivel() + → bool + + + +
+
+ + + +
+ +
+ hasRearTilt() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasRight() + → bool + + + +
+
+ + + +
+ +
+ hasSetLeft() + → bool + + + +
+
+ + + +
+ +
+ hasSetRight() + → bool + + + +
+
+ + + +
+ +
+ hasSetThrottle() + → bool + + + +
+
+ + + +
+ +
+ hasStatus() + → bool + + + +
+
+ + + +
+ +
+ hasThrottle() + → bool + + + +
+
+ + + +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + DriveData + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<DriveData> + + + +
+
+ + + +
+ +
+ getDefault() + DriveData + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/DriveData.fromBuffer.html b/docs/data/DriveData/DriveData.fromBuffer.html new file mode 100644 index 0000000000..73bab8f080 --- /dev/null +++ b/docs/data/DriveData/DriveData.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + DriveData.fromBuffer constructor - DriveData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveData.fromBuffer
+ +
+ +
+
+
+
+
+ +

DriveData.fromBuffer constructor +

+ +
+ + DriveData.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory DriveData.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/DriveData.fromJson.html b/docs/data/DriveData/DriveData.fromJson.html new file mode 100644 index 0000000000..b2d0bdd332 --- /dev/null +++ b/docs/data/DriveData/DriveData.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + DriveData.fromJson constructor - DriveData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveData.fromJson
+ +
+ +
+
+
+
+
+ +

DriveData.fromJson constructor +

+ +
+ + DriveData.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory DriveData.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/DriveData.html b/docs/data/DriveData/DriveData.html new file mode 100644 index 0000000000..0b2c53174d --- /dev/null +++ b/docs/data/DriveData/DriveData.html @@ -0,0 +1,222 @@ + + + + + + + + DriveData constructor - DriveData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveData
+ +
+ +
+
+
+
+
+ +

DriveData constructor +

+ +
+ + DriveData({
  1. double? throttle,
  2. +
  3. double? left,
  4. +
  5. double? right,
  6. +
  7. bool? setLeft,
  8. +
  9. bool? setRight,
  10. +
  11. bool? setThrottle,
  12. +
  13. double? frontSwivel,
  14. +
  15. double? frontTilt,
  16. +
  17. double? rearSwivel,
  18. +
  19. double? rearTilt,
  20. +
  21. double? batteryVoltage,
  22. +
  23. double? batteryCurrent,
  24. +
  25. double? batteryTemperature,
  26. +
  27. Version? version,
  28. +
  29. double? backLeft,
  30. +
  31. double? middleLeft,
  32. +
  33. double? frontLeft,
  34. +
  35. double? backRight,
  36. +
  37. double? middleRight,
  38. +
  39. double? frontRight,
  40. +
  41. ProtoColor? color,
  42. +
  43. RoverStatus? status,
  44. +
}) +
+ + + + +
+

Implementation

+
factory DriveData({
+  $core.double? throttle,
+  $core.double? left,
+  $core.double? right,
+  $core.bool? setLeft,
+  $core.bool? setRight,
+  $core.bool? setThrottle,
+  $core.double? frontSwivel,
+  $core.double? frontTilt,
+  $core.double? rearSwivel,
+  $core.double? rearTilt,
+  $core.double? batteryVoltage,
+  $core.double? batteryCurrent,
+  $core.double? batteryTemperature,
+  $0.Version? version,
+  $core.double? backLeft,
+  $core.double? middleLeft,
+  $core.double? frontLeft,
+  $core.double? backRight,
+  $core.double? middleRight,
+  $core.double? frontRight,
+  ProtoColor? color,
+  $3.RoverStatus? status,
+}) {
+  final $result = create();
+  if (throttle != null) {
+    $result.throttle = throttle;
+  }
+  if (left != null) {
+    $result.left = left;
+  }
+  if (right != null) {
+    $result.right = right;
+  }
+  if (setLeft != null) {
+    $result.setLeft = setLeft;
+  }
+  if (setRight != null) {
+    $result.setRight = setRight;
+  }
+  if (setThrottle != null) {
+    $result.setThrottle = setThrottle;
+  }
+  if (frontSwivel != null) {
+    $result.frontSwivel = frontSwivel;
+  }
+  if (frontTilt != null) {
+    $result.frontTilt = frontTilt;
+  }
+  if (rearSwivel != null) {
+    $result.rearSwivel = rearSwivel;
+  }
+  if (rearTilt != null) {
+    $result.rearTilt = rearTilt;
+  }
+  if (batteryVoltage != null) {
+    $result.batteryVoltage = batteryVoltage;
+  }
+  if (batteryCurrent != null) {
+    $result.batteryCurrent = batteryCurrent;
+  }
+  if (batteryTemperature != null) {
+    $result.batteryTemperature = batteryTemperature;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  if (backLeft != null) {
+    $result.backLeft = backLeft;
+  }
+  if (middleLeft != null) {
+    $result.middleLeft = middleLeft;
+  }
+  if (frontLeft != null) {
+    $result.frontLeft = frontLeft;
+  }
+  if (backRight != null) {
+    $result.backRight = backRight;
+  }
+  if (middleRight != null) {
+    $result.middleRight = middleRight;
+  }
+  if (frontRight != null) {
+    $result.frontRight = frontRight;
+  }
+  if (color != null) {
+    $result.color = color;
+  }
+  if (status != null) {
+    $result.status = status;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/backLeft.html b/docs/data/DriveData/backLeft.html new file mode 100644 index 0000000000..ee67b7fcfb --- /dev/null +++ b/docs/data/DriveData/backLeft.html @@ -0,0 +1,153 @@ + + + + + + + + backLeft property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
backLeft
+ +
+ +
+
+
+
+
+ +

backLeft property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(15)
  2. +
+
+ double + get + backLeft + + +
+ +
+

Information about each wheel in rpm

+
+ + +
+

Implementation

+
@$pb.TagNumber(15)
+$core.double get backLeft => $_getN(14);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(15)
  2. +
+
+ set + backLeft + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(15)
+set backLeft($core.double v) { $_setFloat(14, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/backRight.html b/docs/data/DriveData/backRight.html new file mode 100644 index 0000000000..46c7594000 --- /dev/null +++ b/docs/data/DriveData/backRight.html @@ -0,0 +1,150 @@ + + + + + + + + backRight property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
backRight
+ +
+ +
+
+
+
+
+ +

backRight property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(18)
  2. +
+
+ double + get + backRight + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(18)
+$core.double get backRight => $_getN(17);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(18)
  2. +
+
+ set + backRight + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(18)
+set backRight($core.double v) { $_setFloat(17, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/batteryCurrent.html b/docs/data/DriveData/batteryCurrent.html new file mode 100644 index 0000000000..e2312be6bd --- /dev/null +++ b/docs/data/DriveData/batteryCurrent.html @@ -0,0 +1,150 @@ + + + + + + + + batteryCurrent property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
batteryCurrent
+ +
+ +
+
+
+
+
+ +

batteryCurrent property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+ double + get + batteryCurrent + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(12)
+$core.double get batteryCurrent => $_getN(11);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+ set + batteryCurrent + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(12)
+set batteryCurrent($core.double v) { $_setFloat(11, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/batteryTemperature.html b/docs/data/DriveData/batteryTemperature.html new file mode 100644 index 0000000000..2fcc622839 --- /dev/null +++ b/docs/data/DriveData/batteryTemperature.html @@ -0,0 +1,150 @@ + + + + + + + + batteryTemperature property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
batteryTemperature
+ +
+ +
+
+
+
+
+ +

batteryTemperature property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(13)
  2. +
+
+ double + get + batteryTemperature + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(13)
+$core.double get batteryTemperature => $_getN(12);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(13)
  2. +
+
+ set + batteryTemperature + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(13)
+set batteryTemperature($core.double v) { $_setFloat(12, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/batteryVoltage.html b/docs/data/DriveData/batteryVoltage.html new file mode 100644 index 0000000000..827d34d0e5 --- /dev/null +++ b/docs/data/DriveData/batteryVoltage.html @@ -0,0 +1,153 @@ + + + + + + + + batteryVoltage property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
batteryVoltage
+ +
+ +
+
+
+
+
+ +

batteryVoltage property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ double + get + batteryVoltage + + +
+ +
+

Vitals for the whole rover

+
+ + +
+

Implementation

+
@$pb.TagNumber(11)
+$core.double get batteryVoltage => $_getN(10);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ set + batteryVoltage + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(11)
+set batteryVoltage($core.double v) { $_setFloat(10, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearBackLeft.html b/docs/data/DriveData/clearBackLeft.html new file mode 100644 index 0000000000..2cdd4cece6 --- /dev/null +++ b/docs/data/DriveData/clearBackLeft.html @@ -0,0 +1,118 @@ + + + + + + + + clearBackLeft method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearBackLeft
+ +
+ +
+
+
+
+
+ +

clearBackLeft method +

+ +
+ +
+
    +
  1. @TagNumber(15)
  2. +
+
+void +clearBackLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(15)
+void clearBackLeft() => clearField(15);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearBackRight.html b/docs/data/DriveData/clearBackRight.html new file mode 100644 index 0000000000..95dfb55069 --- /dev/null +++ b/docs/data/DriveData/clearBackRight.html @@ -0,0 +1,118 @@ + + + + + + + + clearBackRight method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearBackRight
+ +
+ +
+
+
+
+
+ +

clearBackRight method +

+ +
+ +
+
    +
  1. @TagNumber(18)
  2. +
+
+void +clearBackRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(18)
+void clearBackRight() => clearField(18);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearBatteryCurrent.html b/docs/data/DriveData/clearBatteryCurrent.html new file mode 100644 index 0000000000..6c9e88425a --- /dev/null +++ b/docs/data/DriveData/clearBatteryCurrent.html @@ -0,0 +1,118 @@ + + + + + + + + clearBatteryCurrent method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearBatteryCurrent
+ +
+ +
+
+
+
+
+ +

clearBatteryCurrent method +

+ +
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+void +clearBatteryCurrent() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(12)
+void clearBatteryCurrent() => clearField(12);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearBatteryTemperature.html b/docs/data/DriveData/clearBatteryTemperature.html new file mode 100644 index 0000000000..ca4b70dc6b --- /dev/null +++ b/docs/data/DriveData/clearBatteryTemperature.html @@ -0,0 +1,118 @@ + + + + + + + + clearBatteryTemperature method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearBatteryTemperature
+ +
+ +
+
+
+
+
+ +

clearBatteryTemperature method +

+ +
+ +
+
    +
  1. @TagNumber(13)
  2. +
+
+void +clearBatteryTemperature() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(13)
+void clearBatteryTemperature() => clearField(13);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearBatteryVoltage.html b/docs/data/DriveData/clearBatteryVoltage.html new file mode 100644 index 0000000000..d057fd26af --- /dev/null +++ b/docs/data/DriveData/clearBatteryVoltage.html @@ -0,0 +1,118 @@ + + + + + + + + clearBatteryVoltage method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearBatteryVoltage
+ +
+ +
+
+
+
+
+ +

clearBatteryVoltage method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+void +clearBatteryVoltage() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+void clearBatteryVoltage() => clearField(11);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearColor.html b/docs/data/DriveData/clearColor.html new file mode 100644 index 0000000000..cb51b18dba --- /dev/null +++ b/docs/data/DriveData/clearColor.html @@ -0,0 +1,118 @@ + + + + + + + + clearColor method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearColor
+ +
+ +
+
+
+
+
+ +

clearColor method +

+ +
+ +
+
    +
  1. @TagNumber(21)
  2. +
+
+void +clearColor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(21)
+void clearColor() => clearField(21);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearFrontLeft.html b/docs/data/DriveData/clearFrontLeft.html new file mode 100644 index 0000000000..8e0aaedabd --- /dev/null +++ b/docs/data/DriveData/clearFrontLeft.html @@ -0,0 +1,118 @@ + + + + + + + + clearFrontLeft method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearFrontLeft
+ +
+ +
+
+
+
+
+ +

clearFrontLeft method +

+ +
+ +
+
    +
  1. @TagNumber(17)
  2. +
+
+void +clearFrontLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(17)
+void clearFrontLeft() => clearField(17);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearFrontRight.html b/docs/data/DriveData/clearFrontRight.html new file mode 100644 index 0000000000..2a831e8414 --- /dev/null +++ b/docs/data/DriveData/clearFrontRight.html @@ -0,0 +1,118 @@ + + + + + + + + clearFrontRight method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearFrontRight
+ +
+ +
+
+
+
+
+ +

clearFrontRight method +

+ +
+ +
+
    +
  1. @TagNumber(20)
  2. +
+
+void +clearFrontRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(20)
+void clearFrontRight() => clearField(20);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearFrontSwivel.html b/docs/data/DriveData/clearFrontSwivel.html new file mode 100644 index 0000000000..9e4963a0ba --- /dev/null +++ b/docs/data/DriveData/clearFrontSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + clearFrontSwivel method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearFrontSwivel
+ +
+ +
+
+
+
+
+ +

clearFrontSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+void +clearFrontSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+void clearFrontSwivel() => clearField(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearFrontTilt.html b/docs/data/DriveData/clearFrontTilt.html new file mode 100644 index 0000000000..026b1c5c74 --- /dev/null +++ b/docs/data/DriveData/clearFrontTilt.html @@ -0,0 +1,118 @@ + + + + + + + + clearFrontTilt method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearFrontTilt
+ +
+ +
+
+
+
+
+ +

clearFrontTilt method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+void +clearFrontTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+void clearFrontTilt() => clearField(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearLeft.html b/docs/data/DriveData/clearLeft.html new file mode 100644 index 0000000000..672f9903a9 --- /dev/null +++ b/docs/data/DriveData/clearLeft.html @@ -0,0 +1,118 @@ + + + + + + + + clearLeft method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearLeft
+ +
+ +
+
+
+
+
+ +

clearLeft method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearLeft() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearMiddleLeft.html b/docs/data/DriveData/clearMiddleLeft.html new file mode 100644 index 0000000000..529fdce922 --- /dev/null +++ b/docs/data/DriveData/clearMiddleLeft.html @@ -0,0 +1,118 @@ + + + + + + + + clearMiddleLeft method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearMiddleLeft
+ +
+ +
+
+
+
+
+ +

clearMiddleLeft method +

+ +
+ +
+
    +
  1. @TagNumber(16)
  2. +
+
+void +clearMiddleLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(16)
+void clearMiddleLeft() => clearField(16);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearMiddleRight.html b/docs/data/DriveData/clearMiddleRight.html new file mode 100644 index 0000000000..8c6f90f09f --- /dev/null +++ b/docs/data/DriveData/clearMiddleRight.html @@ -0,0 +1,118 @@ + + + + + + + + clearMiddleRight method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearMiddleRight
+ +
+ +
+
+
+
+
+ +

clearMiddleRight method +

+ +
+ +
+
    +
  1. @TagNumber(19)
  2. +
+
+void +clearMiddleRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(19)
+void clearMiddleRight() => clearField(19);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearRearSwivel.html b/docs/data/DriveData/clearRearSwivel.html new file mode 100644 index 0000000000..e59ee2ab59 --- /dev/null +++ b/docs/data/DriveData/clearRearSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + clearRearSwivel method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearRearSwivel
+ +
+ +
+
+
+
+
+ +

clearRearSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+void +clearRearSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+void clearRearSwivel() => clearField(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearRearTilt.html b/docs/data/DriveData/clearRearTilt.html new file mode 100644 index 0000000000..e69ac1ae82 --- /dev/null +++ b/docs/data/DriveData/clearRearTilt.html @@ -0,0 +1,118 @@ + + + + + + + + clearRearTilt method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearRearTilt
+ +
+ +
+
+
+
+
+ +

clearRearTilt method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+void +clearRearTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+void clearRearTilt() => clearField(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearRight.html b/docs/data/DriveData/clearRight.html new file mode 100644 index 0000000000..14c7150246 --- /dev/null +++ b/docs/data/DriveData/clearRight.html @@ -0,0 +1,118 @@ + + + + + + + + clearRight method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearRight
+ +
+ +
+
+
+
+
+ +

clearRight method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearRight() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearSetLeft.html b/docs/data/DriveData/clearSetLeft.html new file mode 100644 index 0000000000..4669c51a36 --- /dev/null +++ b/docs/data/DriveData/clearSetLeft.html @@ -0,0 +1,118 @@ + + + + + + + + clearSetLeft method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSetLeft
+ +
+ +
+
+
+
+
+ +

clearSetLeft method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearSetLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearSetLeft() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearSetRight.html b/docs/data/DriveData/clearSetRight.html new file mode 100644 index 0000000000..bdb65d4cda --- /dev/null +++ b/docs/data/DriveData/clearSetRight.html @@ -0,0 +1,118 @@ + + + + + + + + clearSetRight method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSetRight
+ +
+ +
+
+
+
+
+ +

clearSetRight method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearSetRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearSetRight() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearSetThrottle.html b/docs/data/DriveData/clearSetThrottle.html new file mode 100644 index 0000000000..8826f62c05 --- /dev/null +++ b/docs/data/DriveData/clearSetThrottle.html @@ -0,0 +1,118 @@ + + + + + + + + clearSetThrottle method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSetThrottle
+ +
+ +
+
+
+
+
+ +

clearSetThrottle method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+void +clearSetThrottle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+void clearSetThrottle() => clearField(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearStatus.html b/docs/data/DriveData/clearStatus.html new file mode 100644 index 0000000000..e30b2b46cb --- /dev/null +++ b/docs/data/DriveData/clearStatus.html @@ -0,0 +1,118 @@ + + + + + + + + clearStatus method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearStatus
+ +
+ +
+
+
+
+
+ +

clearStatus method +

+ +
+ +
+
    +
  1. @TagNumber(22)
  2. +
+
+void +clearStatus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(22)
+void clearStatus() => clearField(22);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearThrottle.html b/docs/data/DriveData/clearThrottle.html new file mode 100644 index 0000000000..b9dc130c6b --- /dev/null +++ b/docs/data/DriveData/clearThrottle.html @@ -0,0 +1,118 @@ + + + + + + + + clearThrottle method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearThrottle
+ +
+ +
+
+
+
+
+ +

clearThrottle method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearThrottle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearThrottle() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clearVersion.html b/docs/data/DriveData/clearVersion.html new file mode 100644 index 0000000000..4e6275ea2c --- /dev/null +++ b/docs/data/DriveData/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(14)
+void clearVersion() => clearField(14);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/clone.html b/docs/data/DriveData/clone.html new file mode 100644 index 0000000000..6f95cabf2a --- /dev/null +++ b/docs/data/DriveData/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+DriveData +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+DriveData clone() => DriveData()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/color.html b/docs/data/DriveData/color.html new file mode 100644 index 0000000000..639bfa4726 --- /dev/null +++ b/docs/data/DriveData/color.html @@ -0,0 +1,150 @@ + + + + + + + + color property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
color
+ +
+ +
+
+
+
+
+ +

color property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(21)
  2. +
+
+ ProtoColor + get + color + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(21)
+ProtoColor get color => $_getN(20);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(21)
  2. +
+
+ set + color + (ProtoColor v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(21)
+set color(ProtoColor v) { setField(21, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/copyWith.html b/docs/data/DriveData/copyWith.html new file mode 100644 index 0000000000..1faece0e1a --- /dev/null +++ b/docs/data/DriveData/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+DriveData +copyWith(
  1. void updates(
    1. DriveData
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+DriveData copyWith(void Function(DriveData) updates) => super.copyWith((message) => updates(message as DriveData)) as DriveData;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/create.html b/docs/data/DriveData/create.html new file mode 100644 index 0000000000..c770f4d432 --- /dev/null +++ b/docs/data/DriveData/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +DriveData +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static DriveData create() => DriveData._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/createEmptyInstance.html b/docs/data/DriveData/createEmptyInstance.html new file mode 100644 index 0000000000..6061e59dc1 --- /dev/null +++ b/docs/data/DriveData/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +DriveData +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
DriveData createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/createRepeated.html b/docs/data/DriveData/createRepeated.html new file mode 100644 index 0000000000..2a30cad18b --- /dev/null +++ b/docs/data/DriveData/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<DriveData> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<DriveData> createRepeated() => $pb.PbList<DriveData>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/ensureVersion.html b/docs/data/DriveData/ensureVersion.html new file mode 100644 index 0000000000..34947e7977 --- /dev/null +++ b/docs/data/DriveData/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(14)
+$0.Version ensureVersion() => $_ensure(13);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/frontLeft.html b/docs/data/DriveData/frontLeft.html new file mode 100644 index 0000000000..a9254ec0e9 --- /dev/null +++ b/docs/data/DriveData/frontLeft.html @@ -0,0 +1,150 @@ + + + + + + + + frontLeft property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frontLeft
+ +
+ +
+
+
+
+
+ +

frontLeft property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(17)
  2. +
+
+ double + get + frontLeft + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(17)
+$core.double get frontLeft => $_getN(16);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(17)
  2. +
+
+ set + frontLeft + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(17)
+set frontLeft($core.double v) { $_setFloat(16, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/frontRight.html b/docs/data/DriveData/frontRight.html new file mode 100644 index 0000000000..c5ed9183ba --- /dev/null +++ b/docs/data/DriveData/frontRight.html @@ -0,0 +1,150 @@ + + + + + + + + frontRight property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frontRight
+ +
+ +
+
+
+
+
+ +

frontRight property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(20)
  2. +
+
+ double + get + frontRight + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(20)
+$core.double get frontRight => $_getN(19);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(20)
  2. +
+
+ set + frontRight + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(20)
+set frontRight($core.double v) { $_setFloat(19, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/frontSwivel.html b/docs/data/DriveData/frontSwivel.html new file mode 100644 index 0000000000..b1bb5c90e7 --- /dev/null +++ b/docs/data/DriveData/frontSwivel.html @@ -0,0 +1,150 @@ + + + + + + + + frontSwivel property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frontSwivel
+ +
+ +
+
+
+
+
+ +

frontSwivel property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ double + get + frontSwivel + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.double get frontSwivel => $_getN(6);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ set + frontSwivel + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+set frontSwivel($core.double v) { $_setFloat(6, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/frontTilt.html b/docs/data/DriveData/frontTilt.html new file mode 100644 index 0000000000..2720c2cb42 --- /dev/null +++ b/docs/data/DriveData/frontTilt.html @@ -0,0 +1,150 @@ + + + + + + + + frontTilt property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frontTilt
+ +
+ +
+
+
+
+
+ +

frontTilt property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ double + get + frontTilt + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.double get frontTilt => $_getN(7);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ set + frontTilt + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(8)
+set frontTilt($core.double v) { $_setFloat(7, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/getDefault.html b/docs/data/DriveData/getDefault.html new file mode 100644 index 0000000000..75f4f97cd8 --- /dev/null +++ b/docs/data/DriveData/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +DriveData +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static DriveData getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DriveData>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasBackLeft.html b/docs/data/DriveData/hasBackLeft.html new file mode 100644 index 0000000000..ea5f644cd9 --- /dev/null +++ b/docs/data/DriveData/hasBackLeft.html @@ -0,0 +1,118 @@ + + + + + + + + hasBackLeft method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasBackLeft
+ +
+ +
+
+
+
+
+ +

hasBackLeft method +

+ +
+ +
+
    +
  1. @TagNumber(15)
  2. +
+
+bool +hasBackLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(15)
+$core.bool hasBackLeft() => $_has(14);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasBackRight.html b/docs/data/DriveData/hasBackRight.html new file mode 100644 index 0000000000..a12814b42f --- /dev/null +++ b/docs/data/DriveData/hasBackRight.html @@ -0,0 +1,118 @@ + + + + + + + + hasBackRight method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasBackRight
+ +
+ +
+
+
+
+
+ +

hasBackRight method +

+ +
+ +
+
    +
  1. @TagNumber(18)
  2. +
+
+bool +hasBackRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(18)
+$core.bool hasBackRight() => $_has(17);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasBatteryCurrent.html b/docs/data/DriveData/hasBatteryCurrent.html new file mode 100644 index 0000000000..c9ff2dfe19 --- /dev/null +++ b/docs/data/DriveData/hasBatteryCurrent.html @@ -0,0 +1,118 @@ + + + + + + + + hasBatteryCurrent method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasBatteryCurrent
+ +
+ +
+
+
+
+
+ +

hasBatteryCurrent method +

+ +
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+bool +hasBatteryCurrent() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(12)
+$core.bool hasBatteryCurrent() => $_has(11);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasBatteryTemperature.html b/docs/data/DriveData/hasBatteryTemperature.html new file mode 100644 index 0000000000..e372644b08 --- /dev/null +++ b/docs/data/DriveData/hasBatteryTemperature.html @@ -0,0 +1,118 @@ + + + + + + + + hasBatteryTemperature method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasBatteryTemperature
+ +
+ +
+
+
+
+
+ +

hasBatteryTemperature method +

+ +
+ +
+
    +
  1. @TagNumber(13)
  2. +
+
+bool +hasBatteryTemperature() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(13)
+$core.bool hasBatteryTemperature() => $_has(12);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasBatteryVoltage.html b/docs/data/DriveData/hasBatteryVoltage.html new file mode 100644 index 0000000000..c173dadb9b --- /dev/null +++ b/docs/data/DriveData/hasBatteryVoltage.html @@ -0,0 +1,118 @@ + + + + + + + + hasBatteryVoltage method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasBatteryVoltage
+ +
+ +
+
+
+
+
+ +

hasBatteryVoltage method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+bool +hasBatteryVoltage() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+$core.bool hasBatteryVoltage() => $_has(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasColor.html b/docs/data/DriveData/hasColor.html new file mode 100644 index 0000000000..30503d2ebe --- /dev/null +++ b/docs/data/DriveData/hasColor.html @@ -0,0 +1,118 @@ + + + + + + + + hasColor method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasColor
+ +
+ +
+
+
+
+
+ +

hasColor method +

+ +
+ +
+
    +
  1. @TagNumber(21)
  2. +
+
+bool +hasColor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(21)
+$core.bool hasColor() => $_has(20);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasFrontLeft.html b/docs/data/DriveData/hasFrontLeft.html new file mode 100644 index 0000000000..eff1c95a3d --- /dev/null +++ b/docs/data/DriveData/hasFrontLeft.html @@ -0,0 +1,118 @@ + + + + + + + + hasFrontLeft method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasFrontLeft
+ +
+ +
+
+
+
+
+ +

hasFrontLeft method +

+ +
+ +
+
    +
  1. @TagNumber(17)
  2. +
+
+bool +hasFrontLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(17)
+$core.bool hasFrontLeft() => $_has(16);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasFrontRight.html b/docs/data/DriveData/hasFrontRight.html new file mode 100644 index 0000000000..e3d3bb5600 --- /dev/null +++ b/docs/data/DriveData/hasFrontRight.html @@ -0,0 +1,118 @@ + + + + + + + + hasFrontRight method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasFrontRight
+ +
+ +
+
+
+
+
+ +

hasFrontRight method +

+ +
+ +
+
    +
  1. @TagNumber(20)
  2. +
+
+bool +hasFrontRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(20)
+$core.bool hasFrontRight() => $_has(19);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasFrontSwivel.html b/docs/data/DriveData/hasFrontSwivel.html new file mode 100644 index 0000000000..cc849dfd63 --- /dev/null +++ b/docs/data/DriveData/hasFrontSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + hasFrontSwivel method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasFrontSwivel
+ +
+ +
+
+
+
+
+ +

hasFrontSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+bool +hasFrontSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.bool hasFrontSwivel() => $_has(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasFrontTilt.html b/docs/data/DriveData/hasFrontTilt.html new file mode 100644 index 0000000000..4fb5ef96fb --- /dev/null +++ b/docs/data/DriveData/hasFrontTilt.html @@ -0,0 +1,118 @@ + + + + + + + + hasFrontTilt method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasFrontTilt
+ +
+ +
+
+
+
+
+ +

hasFrontTilt method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+bool +hasFrontTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.bool hasFrontTilt() => $_has(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasLeft.html b/docs/data/DriveData/hasLeft.html new file mode 100644 index 0000000000..6578f3d6be --- /dev/null +++ b/docs/data/DriveData/hasLeft.html @@ -0,0 +1,118 @@ + + + + + + + + hasLeft method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasLeft
+ +
+ +
+
+
+
+
+ +

hasLeft method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasLeft() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasMiddleLeft.html b/docs/data/DriveData/hasMiddleLeft.html new file mode 100644 index 0000000000..3124b1234a --- /dev/null +++ b/docs/data/DriveData/hasMiddleLeft.html @@ -0,0 +1,118 @@ + + + + + + + + hasMiddleLeft method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasMiddleLeft
+ +
+ +
+
+
+
+
+ +

hasMiddleLeft method +

+ +
+ +
+
    +
  1. @TagNumber(16)
  2. +
+
+bool +hasMiddleLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(16)
+$core.bool hasMiddleLeft() => $_has(15);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasMiddleRight.html b/docs/data/DriveData/hasMiddleRight.html new file mode 100644 index 0000000000..747621c658 --- /dev/null +++ b/docs/data/DriveData/hasMiddleRight.html @@ -0,0 +1,118 @@ + + + + + + + + hasMiddleRight method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasMiddleRight
+ +
+ +
+
+
+
+
+ +

hasMiddleRight method +

+ +
+ +
+
    +
  1. @TagNumber(19)
  2. +
+
+bool +hasMiddleRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(19)
+$core.bool hasMiddleRight() => $_has(18);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasRearSwivel.html b/docs/data/DriveData/hasRearSwivel.html new file mode 100644 index 0000000000..964636adbd --- /dev/null +++ b/docs/data/DriveData/hasRearSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + hasRearSwivel method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasRearSwivel
+ +
+ +
+
+
+
+
+ +

hasRearSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+bool +hasRearSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.bool hasRearSwivel() => $_has(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasRearTilt.html b/docs/data/DriveData/hasRearTilt.html new file mode 100644 index 0000000000..130e421631 --- /dev/null +++ b/docs/data/DriveData/hasRearTilt.html @@ -0,0 +1,118 @@ + + + + + + + + hasRearTilt method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasRearTilt
+ +
+ +
+
+
+
+
+ +

hasRearTilt method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+bool +hasRearTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.bool hasRearTilt() => $_has(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasRight.html b/docs/data/DriveData/hasRight.html new file mode 100644 index 0000000000..46deeb930c --- /dev/null +++ b/docs/data/DriveData/hasRight.html @@ -0,0 +1,118 @@ + + + + + + + + hasRight method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasRight
+ +
+ +
+
+
+
+
+ +

hasRight method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasRight() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasSetLeft.html b/docs/data/DriveData/hasSetLeft.html new file mode 100644 index 0000000000..b5f48e9f57 --- /dev/null +++ b/docs/data/DriveData/hasSetLeft.html @@ -0,0 +1,118 @@ + + + + + + + + hasSetLeft method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSetLeft
+ +
+ +
+
+
+
+
+ +

hasSetLeft method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasSetLeft() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasSetLeft() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasSetRight.html b/docs/data/DriveData/hasSetRight.html new file mode 100644 index 0000000000..a3bf71a268 --- /dev/null +++ b/docs/data/DriveData/hasSetRight.html @@ -0,0 +1,118 @@ + + + + + + + + hasSetRight method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSetRight
+ +
+ +
+
+
+
+
+ +

hasSetRight method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasSetRight() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasSetRight() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasSetThrottle.html b/docs/data/DriveData/hasSetThrottle.html new file mode 100644 index 0000000000..fa7c4dd55f --- /dev/null +++ b/docs/data/DriveData/hasSetThrottle.html @@ -0,0 +1,118 @@ + + + + + + + + hasSetThrottle method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSetThrottle
+ +
+ +
+
+
+
+
+ +

hasSetThrottle method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+bool +hasSetThrottle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool hasSetThrottle() => $_has(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasStatus.html b/docs/data/DriveData/hasStatus.html new file mode 100644 index 0000000000..33ab3e26f9 --- /dev/null +++ b/docs/data/DriveData/hasStatus.html @@ -0,0 +1,118 @@ + + + + + + + + hasStatus method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasStatus
+ +
+ +
+
+
+
+
+ +

hasStatus method +

+ +
+ +
+
    +
  1. @TagNumber(22)
  2. +
+
+bool +hasStatus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(22)
+$core.bool hasStatus() => $_has(21);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasThrottle.html b/docs/data/DriveData/hasThrottle.html new file mode 100644 index 0000000000..1823e514fd --- /dev/null +++ b/docs/data/DriveData/hasThrottle.html @@ -0,0 +1,118 @@ + + + + + + + + hasThrottle method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasThrottle
+ +
+ +
+
+
+
+
+ +

hasThrottle method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasThrottle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasThrottle() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/hasVersion.html b/docs/data/DriveData/hasVersion.html new file mode 100644 index 0000000000..e456eee10b --- /dev/null +++ b/docs/data/DriveData/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(14)
+$core.bool hasVersion() => $_has(13);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/info_.html b/docs/data/DriveData/info_.html new file mode 100644 index 0000000000..23ac98f5a9 --- /dev/null +++ b/docs/data/DriveData/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/left.html b/docs/data/DriveData/left.html new file mode 100644 index 0000000000..949b53e42b --- /dev/null +++ b/docs/data/DriveData/left.html @@ -0,0 +1,153 @@ + + + + + + + + left property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
left
+ +
+ +
+
+
+
+
+ +

left property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + get + left + + +
+ +
+

Speed of the left wheels, as a percentage of throttle.

+
+ + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get left => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + left + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set left($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/middleLeft.html b/docs/data/DriveData/middleLeft.html new file mode 100644 index 0000000000..98edbf0f71 --- /dev/null +++ b/docs/data/DriveData/middleLeft.html @@ -0,0 +1,150 @@ + + + + + + + + middleLeft property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
middleLeft
+ +
+ +
+
+
+
+
+ +

middleLeft property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(16)
  2. +
+
+ double + get + middleLeft + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(16)
+$core.double get middleLeft => $_getN(15);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(16)
  2. +
+
+ set + middleLeft + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(16)
+set middleLeft($core.double v) { $_setFloat(15, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/middleRight.html b/docs/data/DriveData/middleRight.html new file mode 100644 index 0000000000..6754b22262 --- /dev/null +++ b/docs/data/DriveData/middleRight.html @@ -0,0 +1,150 @@ + + + + + + + + middleRight property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
middleRight
+ +
+ +
+
+
+
+
+ +

middleRight property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(19)
  2. +
+
+ double + get + middleRight + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(19)
+$core.double get middleRight => $_getN(18);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(19)
  2. +
+
+ set + middleRight + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(19)
+set middleRight($core.double v) { $_setFloat(18, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/rearSwivel.html b/docs/data/DriveData/rearSwivel.html new file mode 100644 index 0000000000..ed94868caf --- /dev/null +++ b/docs/data/DriveData/rearSwivel.html @@ -0,0 +1,150 @@ + + + + + + + + rearSwivel property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rearSwivel
+ +
+ +
+
+
+
+
+ +

rearSwivel property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ double + get + rearSwivel + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.double get rearSwivel => $_getN(8);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ set + rearSwivel + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+set rearSwivel($core.double v) { $_setFloat(8, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/rearTilt.html b/docs/data/DriveData/rearTilt.html new file mode 100644 index 0000000000..d36da04dd8 --- /dev/null +++ b/docs/data/DriveData/rearTilt.html @@ -0,0 +1,150 @@ + + + + + + + + rearTilt property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rearTilt
+ +
+ +
+
+
+
+
+ +

rearTilt property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ double + get + rearTilt + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.double get rearTilt => $_getN(9);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ set + rearTilt + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(10)
+set rearTilt($core.double v) { $_setFloat(9, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/right.html b/docs/data/DriveData/right.html new file mode 100644 index 0000000000..e2615f5d2e --- /dev/null +++ b/docs/data/DriveData/right.html @@ -0,0 +1,153 @@ + + + + + + + + right property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
right
+ +
+ +
+
+
+
+
+ +

right property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + get + right + + +
+ +
+

Speed of the right wheels, as a percentage of throttle.

+
+ + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get right => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + right + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set right($core.double v) { $_setFloat(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/setLeft.html b/docs/data/DriveData/setLeft.html new file mode 100644 index 0000000000..995ba414ac --- /dev/null +++ b/docs/data/DriveData/setLeft.html @@ -0,0 +1,153 @@ + + + + + + + + setLeft property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setLeft
+ +
+ +
+
+
+
+
+ +

setLeft property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ bool + get + setLeft + + +
+ +
+

Indicates that left = 0 is valid, even though 0 usually means no value.

+
+ + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool get setLeft => $_getBF(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + setLeft + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set setLeft($core.bool v) { $_setBool(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/setRight.html b/docs/data/DriveData/setRight.html new file mode 100644 index 0000000000..053b7fff9a --- /dev/null +++ b/docs/data/DriveData/setRight.html @@ -0,0 +1,153 @@ + + + + + + + + setRight property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setRight
+ +
+ +
+
+
+
+
+ +

setRight property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ bool + get + setRight + + +
+ +
+

Indicates that right = 0 is valid, even though 0 usually means no value.

+
+ + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool get setRight => $_getBF(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + setRight + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set setRight($core.bool v) { $_setBool(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/setThrottle.html b/docs/data/DriveData/setThrottle.html new file mode 100644 index 0000000000..0e1e2072f1 --- /dev/null +++ b/docs/data/DriveData/setThrottle.html @@ -0,0 +1,153 @@ + + + + + + + + setThrottle property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setThrottle
+ +
+ +
+
+
+
+
+ +

setThrottle property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ bool + get + setThrottle + + +
+ +
+

Indicates that throttle = 0 is valid, even though 0 usually means no value.

+
+ + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool get setThrottle => $_getBF(5);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ set + setThrottle + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+set setThrottle($core.bool v) { $_setBool(5, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/status.html b/docs/data/DriveData/status.html new file mode 100644 index 0000000000..3860ce9ac5 --- /dev/null +++ b/docs/data/DriveData/status.html @@ -0,0 +1,150 @@ + + + + + + + + status property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
status
+ +
+ +
+
+
+
+
+ +

status property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(22)
  2. +
+
+ RoverStatus + get + status + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(22)
+$3.RoverStatus get status => $_getN(21);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(22)
  2. +
+
+ set + status + (RoverStatus v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(22)
+set status($3.RoverStatus v) { setField(22, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/throttle.html b/docs/data/DriveData/throttle.html new file mode 100644 index 0000000000..9437d6fbe5 --- /dev/null +++ b/docs/data/DriveData/throttle.html @@ -0,0 +1,153 @@ + + + + + + + + throttle property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
throttle
+ +
+ +
+
+
+
+
+ +

throttle property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + get + throttle + + +
+ +
+

The max speed, as a percentage of the rover's possible speed.

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get throttle => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + throttle + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set throttle($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveData/version.html b/docs/data/DriveData/version.html new file mode 100644 index 0000000000..d71ce38d95 --- /dev/null +++ b/docs/data/DriveData/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - DriveData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(14)
+$0.Version get version => $_getN(13);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(14)
+set version($0.Version v) { setField(14, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics-class-sidebar.html b/docs/data/DriveMetrics-class-sidebar.html new file mode 100644 index 0000000000..a08d5254c9 --- /dev/null +++ b/docs/data/DriveMetrics-class-sidebar.html @@ -0,0 +1,46 @@ +
    + +
  1. Constructors
  2. +
  3. DriveMetrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. batteryPercentage
  10. +
  11. batteryVoltage
  12. +
  13. data
  14. +
  15. electricalSeverity
  16. +
  17. hashCode
  18. +
  19. hasListeners
  20. +
  21. matchesVersion
  22. +
  23. name
  24. +
  25. overallSeverity
  26. +
  27. runtimeType
  28. +
  29. supportedVersion
  30. +
  31. throttleSeverity
  32. +
  33. version
  34. +
  35. versionCommand
  36. + +
  37. Methods
  38. +
  39. addListener
  40. +
  41. checkVersion
  42. +
  43. dispose
  44. +
  45. noSuchMethod
  46. +
  47. notifyListeners
  48. +
  49. parseVersion
  50. +
  51. removeListener
  52. +
  53. toString
  54. +
  55. update
  56. + +
  57. Operators
  58. +
  59. operator ==
  60. + + + + + + +
diff --git a/docs/data/DriveMetrics-class.html b/docs/data/DriveMetrics-class.html new file mode 100644 index 0000000000..ebc8916ca8 --- /dev/null +++ b/docs/data/DriveMetrics-class.html @@ -0,0 +1,475 @@ + + + + + + + + DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveMetrics
+ +
+ +
+
+
+
+
+ +

DriveMetrics class + +

+ + +
+

Metrics reported by the drive subsystem.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ DriveMetrics() +
+
+ A collection of metrics relevant for monitoring the rover's electrical status. +
+
+
+ +
+

Properties

+
+
+ allMetrics + → List<MetricLine> + + +
+
+ A list of user-friendly explanations for each of the metrics. +
no setteroverride
+ +
+ +
+ batteryPercentage + → double + + +
+
+ The charge of the battery, as a percentage. +
no setter
+ +
+ +
+ batteryVoltage + → double + + +
+
+ The battery voltage. +
no setter
+ +
+ +
+ data + DriveData + + +
+
+ The underlying data used to get these metrics. +
finalinherited
+ +
+ +
+ electricalSeverity + Severity? + + +
+
+ The severity for the electrical metrics. +
no setter
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ matchesVersion + → bool + + +
+
+ Whether the Dashboard is certain the firmware matches the right version. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ A collective name for this group of metrics (usually the name of the subsystem). +
no setteroverride
+ +
+ +
+ overallSeverity + Severity? + + +
+
+ Fetch the overall Security +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ supportedVersion + Version + + +
+
+ The currently-supported version for this Dashboard. +
no setteroverride
+ +
+ +
+ throttleSeverity + Severity? + + +
+
+ The severity based on the throttle speed. +
no setter
+ +
+ +
+ version + Version + + +
+
+ The version of the data that the firmware sends. +
getter/setter pairinherited
+ +
+ +
+ versionCommand + Message + + +
+
+ A command to notify the firmware of the Dashboard's supportedVersion. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ checkVersion(DriveData data) + → bool + + + +
+
+ Checks this message's version and checks for support. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ parseVersion(DriveData message) + Version + + + +
+
+ Parses the version out of a given data packet. +
override
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(DriveData value) + → void + + + +
+
+ Updates data with new data. +
override
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics/DriveMetrics.html b/docs/data/DriveMetrics/DriveMetrics.html new file mode 100644 index 0000000000..9647ae40e0 --- /dev/null +++ b/docs/data/DriveMetrics/DriveMetrics.html @@ -0,0 +1,111 @@ + + + + + + + + DriveMetrics constructor - DriveMetrics - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveMetrics
+ +
+ +
+
+
+
+
+ +

DriveMetrics constructor +

+ +
+ + DriveMetrics() +
+ +
+

A collection of metrics relevant for monitoring the rover's electrical status.

+
+ + + +
+

Implementation

+
DriveMetrics() : super(DriveData());
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics/allMetrics.html b/docs/data/DriveMetrics/allMetrics.html new file mode 100644 index 0000000000..9e3a4a8cb2 --- /dev/null +++ b/docs/data/DriveMetrics/allMetrics.html @@ -0,0 +1,135 @@ + + + + + + + + allMetrics property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
allMetrics
+ +
+ +
+
+
+
+
+ +

allMetrics property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<MetricLine> + get + allMetrics +
override
+ +
+ +
+

A list of user-friendly explanations for each of the metrics.

+

Be sure to store the actual values as fields. This property should be a list of one +user-friendly explanation per metric.

+
+ + +
+

Implementation

+
@override
+List<MetricLine> get allMetrics => [
+	MetricLine("Throttle: ${data.throttle.toStringAsFixed(2)}", severity: throttleSeverity),
+	MetricLine("Left: ${data.left.toStringAsFixed(2)}"),
+	MetricLine("Right: ${data.right.toStringAsFixed(2)}"),
+    MetricLine("Left Side: ${data.frontLeft.toStringAsFixed(1)}, ${data.middleLeft.toStringAsFixed(1)}, ${data.backLeft.toStringAsFixed(1)}"),
+    MetricLine("Right Side: ${data.frontRight.toStringAsFixed(1)}, ${data.middleRight.toStringAsFixed(1)}, ${data.backRight.toStringAsFixed(1)}"),
+  ];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics/batteryPercentage.html b/docs/data/DriveMetrics/batteryPercentage.html new file mode 100644 index 0000000000..3375127a7e --- /dev/null +++ b/docs/data/DriveMetrics/batteryPercentage.html @@ -0,0 +1,121 @@ + + + + + + + + batteryPercentage property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
batteryPercentage
+ +
+ +
+
+
+
+
+ +

batteryPercentage property +

+ + + + + +
+
+ + double + get + batteryPercentage + + +
+ +
+

The charge of the battery, as a percentage.

+
+ + +
+

Implementation

+
double get batteryPercentage => (batteryVoltage - 24) / 6;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics/batteryVoltage.html b/docs/data/DriveMetrics/batteryVoltage.html new file mode 100644 index 0000000000..2a19b741ab --- /dev/null +++ b/docs/data/DriveMetrics/batteryVoltage.html @@ -0,0 +1,121 @@ + + + + + + + + batteryVoltage property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
batteryVoltage
+ +
+ +
+
+
+
+
+ +

batteryVoltage property +

+ + + + + +
+
+ + double + get + batteryVoltage + + +
+ +
+

The battery voltage.

+
+ + +
+

Implementation

+
double get batteryVoltage => data.batteryVoltage;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics/electricalSeverity.html b/docs/data/DriveMetrics/electricalSeverity.html new file mode 100644 index 0000000000..d60097c54e --- /dev/null +++ b/docs/data/DriveMetrics/electricalSeverity.html @@ -0,0 +1,130 @@ + + + + + + + + electricalSeverity property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
electricalSeverity
+ +
+ +
+
+
+
+
+ +

electricalSeverity property +

+ + + + + +
+
+ + Severity? + get + electricalSeverity + + +
+ +
+

The severity for the electrical metrics.

+
+ + +
+

Implementation

+
Severity? get electricalSeverity {
+  if (data.batteryVoltage == 0) return null;
+  if (data.batteryVoltage <= 25) {
+    return Severity.critical;
+  } else if (data.batteryVoltage <= 26) {
+    return Severity.warning;
+  } else {
+    return null;
+  }
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics/name.html b/docs/data/DriveMetrics/name.html new file mode 100644 index 0000000000..9a19097ea2 --- /dev/null +++ b/docs/data/DriveMetrics/name.html @@ -0,0 +1,127 @@ + + + + + + + + name property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ String + get + name +
override
+ +
+ +
+

A collective name for this group of metrics (usually the name of the subsystem).

+
+ + +
+

Implementation

+
@override
+String get name => "Drive";
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics/parseVersion.html b/docs/data/DriveMetrics/parseVersion.html new file mode 100644 index 0000000000..966582040a --- /dev/null +++ b/docs/data/DriveMetrics/parseVersion.html @@ -0,0 +1,122 @@ + + + + + + + + parseVersion method - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseVersion
+ +
+ +
+
+
+
+
+ +

parseVersion method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Version +parseVersion(
  1. DriveData message
  2. +
) + +
override
+ +
+ +
+

Parses the version out of a given data packet.

+
+ + + +
+

Implementation

+
@override
+Version parseVersion(DriveData message) => message.version;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics/supportedVersion.html b/docs/data/DriveMetrics/supportedVersion.html new file mode 100644 index 0000000000..f1be0063f6 --- /dev/null +++ b/docs/data/DriveMetrics/supportedVersion.html @@ -0,0 +1,127 @@ + + + + + + + + supportedVersion property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
supportedVersion
+ +
+ +
+
+
+
+
+ +

supportedVersion property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Version + get + supportedVersion +
override
+ +
+ +
+

The currently-supported version for this Dashboard.

+
+ + +
+

Implementation

+
@override
+Version get supportedVersion => Version(major: 1);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics/throttleSeverity.html b/docs/data/DriveMetrics/throttleSeverity.html new file mode 100644 index 0000000000..9c458459e3 --- /dev/null +++ b/docs/data/DriveMetrics/throttleSeverity.html @@ -0,0 +1,131 @@ + + + + + + + + throttleSeverity property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
throttleSeverity
+ +
+ +
+
+
+
+
+ +

throttleSeverity property +

+ + + + + +
+
+ + Severity? + get + throttleSeverity + + +
+ +
+

The severity based on the throttle speed.

+
+ + +
+

Implementation

+
Severity? get throttleSeverity {
+  if (data.throttle == 0) {
+    return null;
+  } else if (data.throttle <= 0.3) {
+    return Severity.info;
+  } else if (data.throttle <= 0.75) {
+    return Severity.warning;
+  } else {
+    return Severity.critical;
+  }
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics/update.html b/docs/data/DriveMetrics/update.html new file mode 100644 index 0000000000..16fc49d42f --- /dev/null +++ b/docs/data/DriveMetrics/update.html @@ -0,0 +1,151 @@ + + + + + + + + update method - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
update
+ +
+ +
+
+
+
+
+ +

update method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +update(
  1. DriveData value
  2. +
) + +
override
+ +
+ +
+

Updates data with new data.

+
+ + + +
+

Implementation

+
@override
+void update(DriveData value) {
+	// Since the newValues are often zero, [Metrics.merge] won't work.
+    if (!checkVersion(value)) return;
+	services.files.logData(value);
+    final oldThrottle = data.throttle;
+	if (value.setLeft) data.left = value.left;
+	if (value.setRight) data.right = value.right;
+	if (value.setThrottle) data.throttle = value.throttle;
+    if (value.hasBatteryCurrent()) data.batteryCurrent = value.batteryCurrent;
+    if (value.hasBatteryVoltage()) data.batteryVoltage = value.batteryVoltage;
+    if (value.hasBatteryTemperature()) data.batteryTemperature = value.batteryTemperature;
+    if(value.hasFrontLeft()) data.frontLeft = value.frontLeft;
+    if(value.hasMiddleLeft()) data.middleLeft = value.middleLeft;
+    if(value.hasBackLeft()) data.backLeft = value.backLeft;
+    if(value.hasFrontRight()) data.frontRight = value.frontRight;
+    if(value.hasMiddleRight()) data.middleRight = value.middleRight;
+    if(value.hasBackRight()) data.backRight = value.backRight;
+    if (value.color != ProtoColor.PROTO_COLOR_UNDEFINED) data.color = value.color;
+    if (value.batteryTemperature != 0) data.batteryTemperature = value.batteryTemperature;
+
+    if (
+      (data.throttle > 0.05 && oldThrottle < 0.05) ||
+      (data.throttle < 0.05 && oldThrottle > 0.05)
+    ) {
+      models.rover.controllers.firstWhereOrNull(
+        (controller) => controller.mode == OperatingMode.drive || controller.mode == OperatingMode.modernDrive,
+      )?.gamepad.pulse();
+    }
+    notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/DriveMetrics/versionCommand.html b/docs/data/DriveMetrics/versionCommand.html new file mode 100644 index 0000000000..8ea8f08ead --- /dev/null +++ b/docs/data/DriveMetrics/versionCommand.html @@ -0,0 +1,127 @@ + + + + + + + + versionCommand property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
versionCommand
+ +
+ +
+
+
+
+
+ +

versionCommand property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Message + get + versionCommand +
override
+ +
+ +
+

A command to notify the firmware of the Dashboard's supportedVersion.

+
+ + +
+

Implementation

+
@override
+Message get versionCommand => DriveCommand(version: supportedVersion);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings-class-sidebar.html b/docs/data/EasterEggsSettings-class-sidebar.html new file mode 100644 index 0000000000..4931a6e1c8 --- /dev/null +++ b/docs/data/EasterEggsSettings-class-sidebar.html @@ -0,0 +1,32 @@ +
    + +
  1. Constructors
  2. +
  3. EasterEggsSettings
  4. +
  5. fromJson
  6. + + + +
  7. + Properties +
  8. +
  9. badApple
  10. +
  11. enableClippy
  12. +
  13. hashCode
  14. +
  15. runtimeType
  16. +
  17. segaIntro
  18. +
  19. segaSound
  20. + +
  21. Methods
  22. +
  23. noSuchMethod
  24. +
  25. toJson
  26. +
  27. toString
  28. + +
  29. Operators
  30. +
  31. operator ==
  32. + + + + + + +
diff --git a/docs/data/EasterEggsSettings-class.html b/docs/data/EasterEggsSettings-class.html new file mode 100644 index 0000000000..496c1e4f6b --- /dev/null +++ b/docs/data/EasterEggsSettings-class.html @@ -0,0 +1,272 @@ + + + + + + + + EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
EasterEggsSettings
+ +
+ +
+
+
+
+
+ +

EasterEggsSettings class + +

+ + +
+

Settings relating to easter eggs.

+

Implement these! Ask Levi for details.

+
+ + + + +
+

Constructors

+
+
+ EasterEggsSettings({required bool segaIntro, required bool segaSound, required bool enableClippy, required bool badApple}) +
+
+ A const constructor. +
const
+
+
+ EasterEggsSettings.fromJson(Json? json) +
+
+ Parses easter eggs settings from JSON. +
+
+
+ +
+

Properties

+
+
+ badApple + → bool + + +
+
+ Whether to render Bad Apple in the Map page. +
final
+ +
+ +
+ enableClippy + → bool + + +
+
+ Whether clippy should appear by log messages. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ segaIntro + → bool + + +
+
+ Whether to do a SEGA-like intro during boot. +
final
+ +
+ +
+ segaSound + → bool + + +
+
+ Whether to say "Binghamton" in the SEGA style. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toJson() + Json + + + +
+
+ Serializes these settings to JSON. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/EasterEggsSettings.fromJson.html b/docs/data/EasterEggsSettings/EasterEggsSettings.fromJson.html new file mode 100644 index 0000000000..c5d7bbf2fc --- /dev/null +++ b/docs/data/EasterEggsSettings/EasterEggsSettings.fromJson.html @@ -0,0 +1,116 @@ + + + + + + + + EasterEggsSettings.fromJson constructor - EasterEggsSettings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
EasterEggsSettings.fromJson
+ +
+ +
+
+
+
+
+ +

EasterEggsSettings.fromJson constructor +

+ +
+ + EasterEggsSettings.fromJson(
  1. Json? json
  2. +
) +
+ +
+

Parses easter eggs settings from JSON.

+
+ + + +
+

Implementation

+
EasterEggsSettings.fromJson(Json? json) :
+  segaIntro = json?["segaIntro"] ?? true,
+  segaSound = json?["segaSound"] ?? true,
+  enableClippy = json?["enableClippy"] ?? true,
+  badApple = json?["badApple"] ?? true;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/EasterEggsSettings.html b/docs/data/EasterEggsSettings/EasterEggsSettings.html new file mode 100644 index 0000000000..6d9b4fcb73 --- /dev/null +++ b/docs/data/EasterEggsSettings/EasterEggsSettings.html @@ -0,0 +1,120 @@ + + + + + + + + EasterEggsSettings constructor - EasterEggsSettings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
EasterEggsSettings
+ +
+ +
+
+
+
+
+ +

EasterEggsSettings constructor +

+ +
+ const + EasterEggsSettings({
  1. required bool segaIntro,
  2. +
  3. required bool segaSound,
  4. +
  5. required bool enableClippy,
  6. +
  7. required bool badApple,
  8. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const EasterEggsSettings({
+  required this.segaIntro,
+  required this.segaSound,
+  required this.enableClippy,
+  required this.badApple,
+});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/badApple.html b/docs/data/EasterEggsSettings/badApple.html new file mode 100644 index 0000000000..13b9da133c --- /dev/null +++ b/docs/data/EasterEggsSettings/badApple.html @@ -0,0 +1,115 @@ + + + + + + + + badApple property - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
badApple
+ +
+ +
+
+
+
+
+ +

badApple property +

+ + +
+ + bool + badApple +
final
+ +
+ +
+

Whether to render Bad Apple in the Map page.

+
+ + +
+

Implementation

+
final bool badApple;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/enableClippy.html b/docs/data/EasterEggsSettings/enableClippy.html new file mode 100644 index 0000000000..0be7dfba70 --- /dev/null +++ b/docs/data/EasterEggsSettings/enableClippy.html @@ -0,0 +1,115 @@ + + + + + + + + enableClippy property - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
enableClippy
+ +
+ +
+
+
+
+
+ +

enableClippy property +

+ + +
+ + bool + enableClippy +
final
+ +
+ +
+

Whether clippy should appear by log messages.

+
+ + +
+

Implementation

+
final bool enableClippy;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/hashCode.html b/docs/data/EasterEggsSettings/hashCode.html new file mode 100644 index 0000000000..702077ad2e --- /dev/null +++ b/docs/data/EasterEggsSettings/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/noSuchMethod.html b/docs/data/EasterEggsSettings/noSuchMethod.html new file mode 100644 index 0000000000..a63873c3dc --- /dev/null +++ b/docs/data/EasterEggsSettings/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/operator_equals.html b/docs/data/EasterEggsSettings/operator_equals.html new file mode 100644 index 0000000000..0f8c2da6e9 --- /dev/null +++ b/docs/data/EasterEggsSettings/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/runtimeType.html b/docs/data/EasterEggsSettings/runtimeType.html new file mode 100644 index 0000000000..d7cae72f58 --- /dev/null +++ b/docs/data/EasterEggsSettings/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/segaIntro.html b/docs/data/EasterEggsSettings/segaIntro.html new file mode 100644 index 0000000000..aa42b17a15 --- /dev/null +++ b/docs/data/EasterEggsSettings/segaIntro.html @@ -0,0 +1,115 @@ + + + + + + + + segaIntro property - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
segaIntro
+ +
+ +
+
+
+
+
+ +

segaIntro property +

+ + +
+ + bool + segaIntro +
final
+ +
+ +
+

Whether to do a SEGA-like intro during boot.

+
+ + +
+

Implementation

+
final bool segaIntro;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/segaSound.html b/docs/data/EasterEggsSettings/segaSound.html new file mode 100644 index 0000000000..74f41fa6fc --- /dev/null +++ b/docs/data/EasterEggsSettings/segaSound.html @@ -0,0 +1,115 @@ + + + + + + + + segaSound property - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
segaSound
+ +
+ +
+
+
+
+
+ +

segaSound property +

+ + +
+ + bool + segaSound +
final
+ +
+ +
+

Whether to say "Binghamton" in the SEGA style.

+
+ + +
+

Implementation

+
final bool segaSound;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/toJson.html b/docs/data/EasterEggsSettings/toJson.html new file mode 100644 index 0000000000..c43e910f77 --- /dev/null +++ b/docs/data/EasterEggsSettings/toJson.html @@ -0,0 +1,120 @@ + + + + + + + + toJson method - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toJson
+ +
+ +
+
+
+
+
+ +

toJson method +

+ +
+ +Json +toJson() + + + +
+ +
+

Serializes these settings to JSON.

+
+ + + +
+

Implementation

+
Json toJson() => {
+  "segaIntro": segaIntro,
+  "segaSound": segaSound,
+  "enableClippy": enableClippy,
+  "badApple": badApple,
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/EasterEggsSettings/toString.html b/docs/data/EasterEggsSettings/toString.html new file mode 100644 index 0000000000..e561ceb4f8 --- /dev/null +++ b/docs/data/EasterEggsSettings/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates-class-sidebar.html b/docs/data/GpsCoordinates-class-sidebar.html new file mode 100644 index 0000000000..bb023932bf --- /dev/null +++ b/docs/data/GpsCoordinates-class-sidebar.html @@ -0,0 +1,82 @@ +
    + +
  1. Constructors
  2. +
  3. GpsCoordinates
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. altitude
  12. +
  13. eventPlugin
  14. +
  15. hashCode
  16. +
  17. info_
  18. +
  19. isFrozen
  20. +
  21. latitude
  22. +
  23. longitude
  24. +
  25. runtimeType
  26. +
  27. unknownFields
  28. + +
  29. Methods
  30. +
  31. addExtension
  32. +
  33. check
  34. +
  35. clear
  36. +
  37. clearAltitude
  38. +
  39. clearExtension
  40. +
  41. clearField
  42. +
  43. clearLatitude
  44. +
  45. clearLongitude
  46. +
  47. clone
  48. +
  49. copyWith
  50. +
  51. createEmptyInstance
  52. +
  53. createMapField
  54. +
  55. createRepeatedField
  56. +
  57. extensionsAreInitialized
  58. +
  59. freeze
  60. +
  61. getDefaultForField
  62. +
  63. getExtension
  64. +
  65. getField
  66. +
  67. getFieldOrNull
  68. +
  69. getTagNumber
  70. +
  71. hasAltitude
  72. +
  73. hasExtension
  74. +
  75. hasField
  76. +
  77. hasLatitude
  78. +
  79. hasLongitude
  80. +
  81. hasRequiredFields
  82. +
  83. isInitialized
  84. +
  85. mergeFromBuffer
  86. +
  87. mergeFromCodedBufferReader
  88. +
  89. mergeFromJson
  90. +
  91. mergeFromJsonMap
  92. +
  93. mergeFromMessage
  94. +
  95. mergeFromProto3Json
  96. +
  97. mergeUnknownFields
  98. +
  99. noSuchMethod
  100. +
  101. setExtension
  102. +
  103. setField
  104. +
  105. toBuilder
  106. +
  107. toDebugString
  108. +
  109. toProto3Json
  110. +
  111. toString
  112. +
  113. writeToBuffer
  114. +
  115. writeToCodedBufferWriter
  116. +
  117. writeToJson
  118. +
  119. writeToJsonMap
  120. + +
  121. Operators
  122. +
  123. operator ==
  124. + + + + + +
  125. Static methods
  126. +
  127. create
  128. +
  129. createRepeated
  130. +
  131. getDefault
  132. + +
diff --git a/docs/data/GpsCoordinates-class.html b/docs/data/GpsCoordinates-class.html new file mode 100644 index 0000000000..738ed46a9c --- /dev/null +++ b/docs/data/GpsCoordinates-class.html @@ -0,0 +1,934 @@ + + + + + + + + GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GpsCoordinates
+ +
+ +
+
+
+
+
+ +

GpsCoordinates class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ GpsCoordinates({double? latitude, double? longitude, double? altitude}) +
+
+ +
factory
+
+
+ GpsCoordinates.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ GpsCoordinates.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ altitude + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ latitude + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ longitude + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearAltitude() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearLatitude() + → void + + + +
+
+ + + +
+ +
+ clearLongitude() + → void + + + +
+
+ + + +
+ +
+ clone() + GpsCoordinates + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(GpsCoordinates)) + GpsCoordinates + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + GpsCoordinates + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasAltitude() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasLatitude() + → bool + + + +
+
+ + + +
+ +
+ hasLongitude() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + GpsCoordinates + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<GpsCoordinates> + + + +
+
+ + + +
+ +
+ getDefault() + GpsCoordinates + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/GpsCoordinates.fromBuffer.html b/docs/data/GpsCoordinates/GpsCoordinates.fromBuffer.html new file mode 100644 index 0000000000..48fa1cadc7 --- /dev/null +++ b/docs/data/GpsCoordinates/GpsCoordinates.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + GpsCoordinates.fromBuffer constructor - GpsCoordinates - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GpsCoordinates.fromBuffer
+ +
+ +
+
+
+
+
+ +

GpsCoordinates.fromBuffer constructor +

+ +
+ + GpsCoordinates.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory GpsCoordinates.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/GpsCoordinates.fromJson.html b/docs/data/GpsCoordinates/GpsCoordinates.fromJson.html new file mode 100644 index 0000000000..f6d3a335a7 --- /dev/null +++ b/docs/data/GpsCoordinates/GpsCoordinates.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + GpsCoordinates.fromJson constructor - GpsCoordinates - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GpsCoordinates.fromJson
+ +
+ +
+
+
+
+
+ +

GpsCoordinates.fromJson constructor +

+ +
+ + GpsCoordinates.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory GpsCoordinates.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/GpsCoordinates.html b/docs/data/GpsCoordinates/GpsCoordinates.html new file mode 100644 index 0000000000..70568edb41 --- /dev/null +++ b/docs/data/GpsCoordinates/GpsCoordinates.html @@ -0,0 +1,127 @@ + + + + + + + + GpsCoordinates constructor - GpsCoordinates - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GpsCoordinates
+ +
+ +
+
+
+
+
+ +

GpsCoordinates constructor +

+ +
+ + GpsCoordinates({
  1. double? latitude,
  2. +
  3. double? longitude,
  4. +
  5. double? altitude,
  6. +
}) +
+ + + + +
+

Implementation

+
factory GpsCoordinates({
+  $core.double? latitude,
+  $core.double? longitude,
+  $core.double? altitude,
+}) {
+  final $result = create();
+  if (latitude != null) {
+    $result.latitude = latitude;
+  }
+  if (longitude != null) {
+    $result.longitude = longitude;
+  }
+  if (altitude != null) {
+    $result.altitude = altitude;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/altitude.html b/docs/data/GpsCoordinates/altitude.html new file mode 100644 index 0000000000..cb326c8697 --- /dev/null +++ b/docs/data/GpsCoordinates/altitude.html @@ -0,0 +1,150 @@ + + + + + + + + altitude property - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
altitude
+ +
+ +
+
+
+
+
+ +

altitude property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + get + altitude + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get altitude => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + altitude + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set altitude($core.double v) { $_setFloat(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/clearAltitude.html b/docs/data/GpsCoordinates/clearAltitude.html new file mode 100644 index 0000000000..f51be94fbd --- /dev/null +++ b/docs/data/GpsCoordinates/clearAltitude.html @@ -0,0 +1,118 @@ + + + + + + + + clearAltitude method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearAltitude
+ +
+ +
+
+
+
+
+ +

clearAltitude method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearAltitude() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearAltitude() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/clearLatitude.html b/docs/data/GpsCoordinates/clearLatitude.html new file mode 100644 index 0000000000..9d06b4dbcc --- /dev/null +++ b/docs/data/GpsCoordinates/clearLatitude.html @@ -0,0 +1,118 @@ + + + + + + + + clearLatitude method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearLatitude
+ +
+ +
+
+
+
+
+ +

clearLatitude method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearLatitude() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearLatitude() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/clearLongitude.html b/docs/data/GpsCoordinates/clearLongitude.html new file mode 100644 index 0000000000..a9d13c880e --- /dev/null +++ b/docs/data/GpsCoordinates/clearLongitude.html @@ -0,0 +1,118 @@ + + + + + + + + clearLongitude method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearLongitude
+ +
+ +
+
+
+
+
+ +

clearLongitude method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearLongitude() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearLongitude() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/clone.html b/docs/data/GpsCoordinates/clone.html new file mode 100644 index 0000000000..a143d72d63 --- /dev/null +++ b/docs/data/GpsCoordinates/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+GpsCoordinates +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+GpsCoordinates clone() => GpsCoordinates()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/copyWith.html b/docs/data/GpsCoordinates/copyWith.html new file mode 100644 index 0000000000..def511e140 --- /dev/null +++ b/docs/data/GpsCoordinates/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+GpsCoordinates +copyWith(
  1. void updates(
    1. GpsCoordinates
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+GpsCoordinates copyWith(void Function(GpsCoordinates) updates) => super.copyWith((message) => updates(message as GpsCoordinates)) as GpsCoordinates;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/create.html b/docs/data/GpsCoordinates/create.html new file mode 100644 index 0000000000..393480f9a6 --- /dev/null +++ b/docs/data/GpsCoordinates/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +GpsCoordinates +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static GpsCoordinates create() => GpsCoordinates._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/createEmptyInstance.html b/docs/data/GpsCoordinates/createEmptyInstance.html new file mode 100644 index 0000000000..532193181f --- /dev/null +++ b/docs/data/GpsCoordinates/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +GpsCoordinates +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
GpsCoordinates createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/createRepeated.html b/docs/data/GpsCoordinates/createRepeated.html new file mode 100644 index 0000000000..e24e96a4ec --- /dev/null +++ b/docs/data/GpsCoordinates/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<GpsCoordinates> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<GpsCoordinates> createRepeated() => $pb.PbList<GpsCoordinates>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/getDefault.html b/docs/data/GpsCoordinates/getDefault.html new file mode 100644 index 0000000000..35e864a4e4 --- /dev/null +++ b/docs/data/GpsCoordinates/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +GpsCoordinates +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static GpsCoordinates getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<GpsCoordinates>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/hasAltitude.html b/docs/data/GpsCoordinates/hasAltitude.html new file mode 100644 index 0000000000..be64b36d9d --- /dev/null +++ b/docs/data/GpsCoordinates/hasAltitude.html @@ -0,0 +1,118 @@ + + + + + + + + hasAltitude method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasAltitude
+ +
+ +
+
+
+
+
+ +

hasAltitude method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasAltitude() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasAltitude() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/hasLatitude.html b/docs/data/GpsCoordinates/hasLatitude.html new file mode 100644 index 0000000000..02d29b36aa --- /dev/null +++ b/docs/data/GpsCoordinates/hasLatitude.html @@ -0,0 +1,118 @@ + + + + + + + + hasLatitude method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasLatitude
+ +
+ +
+
+
+
+
+ +

hasLatitude method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasLatitude() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasLatitude() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/hasLongitude.html b/docs/data/GpsCoordinates/hasLongitude.html new file mode 100644 index 0000000000..fce76cadca --- /dev/null +++ b/docs/data/GpsCoordinates/hasLongitude.html @@ -0,0 +1,118 @@ + + + + + + + + hasLongitude method - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasLongitude
+ +
+ +
+
+
+
+
+ +

hasLongitude method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasLongitude() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasLongitude() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/info_.html b/docs/data/GpsCoordinates/info_.html new file mode 100644 index 0000000000..f841bed848 --- /dev/null +++ b/docs/data/GpsCoordinates/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/latitude.html b/docs/data/GpsCoordinates/latitude.html new file mode 100644 index 0000000000..6bf96454ca --- /dev/null +++ b/docs/data/GpsCoordinates/latitude.html @@ -0,0 +1,150 @@ + + + + + + + + latitude property - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
latitude
+ +
+ +
+
+
+
+
+ +

latitude property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + get + latitude + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get latitude => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + latitude + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set latitude($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsCoordinates/longitude.html b/docs/data/GpsCoordinates/longitude.html new file mode 100644 index 0000000000..fe43364a02 --- /dev/null +++ b/docs/data/GpsCoordinates/longitude.html @@ -0,0 +1,150 @@ + + + + + + + + longitude property - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
longitude
+ +
+ +
+
+
+
+
+ +

longitude property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + get + longitude + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get longitude => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + longitude + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set longitude($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GpsUtils-extension-sidebar.html b/docs/data/GpsUtils-extension-sidebar.html new file mode 100644 index 0000000000..4ff0c94a16 --- /dev/null +++ b/docs/data/GpsUtils-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + + +
  1. Methods
  2. +
  3. distanceTo
  4. + + + + + +
diff --git a/docs/data/GpsUtils.html b/docs/data/GpsUtils.html new file mode 100644 index 0000000000..9eaba46163 --- /dev/null +++ b/docs/data/GpsUtils.html @@ -0,0 +1,140 @@ + + + + + + + + GpsUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GpsUtils
+ +
+ +
+
+
+
+
+ +

GpsUtils extension + +

+ + +
+

Utilities for Gps Coordinates Data

+
+ +
+
+
on
+
+ +
+
+ + + +
+ + +
+

Methods

+
+
+ distanceTo(GpsCoordinates other) + → double + + + +
+
+ Calculate Euclidean distance between current coordinates and another set of coordinates. + + +
+ +
+
+ + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/GpsUtils/distanceTo.html b/docs/data/GpsUtils/distanceTo.html new file mode 100644 index 0000000000..1cbde13e73 --- /dev/null +++ b/docs/data/GpsUtils/distanceTo.html @@ -0,0 +1,127 @@ + + + + + + + + distanceTo method - GpsUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
distanceTo
+ +
+ +
+
+
+
+
+ +

distanceTo method +

+ +
+ +double +distanceTo(
  1. GpsCoordinates other
  2. +
) + + + +
+ +
+

Calculate Euclidean distance between current coordinates and another set of coordinates.

+

See https://en.wikipedia.org/wiki/Geographic_coordinate_system#Length_of_a_degree

+
+ + + +
+

Implementation

+
double distanceTo(GpsCoordinates other) {
+	// Convert to distance in meters and use Pythagorean theorem
+	final latitudeDistance = 111132.92 - 559.82*cos(2*latitude) + 1.175*cos(4*latitude) - 0.0023*cos(6*latitude);
+	final longitudeDistance = 111412.84*cos(latitude) - 93.5*cos(3*latitude) + 0.118*cos(5*latitude);
+	return pow(
+	    pow((latitude - other.latitude)*latitudeDistance, 2)
+		    + pow((longitude - other.longitude)*longitudeDistance, 2)
+	      + pow(altitude - other.altitude, 2),
+	    0.5,
+	  ).toDouble();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand-class-sidebar.html b/docs/data/GripperCommand-class-sidebar.html new file mode 100644 index 0000000000..0522fbdcb2 --- /dev/null +++ b/docs/data/GripperCommand-class-sidebar.html @@ -0,0 +1,110 @@ +
    + +
  1. Constructors
  2. +
  3. GripperCommand
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. calibrate
  12. +
  13. close
  14. +
  15. eventPlugin
  16. +
  17. hashCode
  18. +
  19. info_
  20. +
  21. isFrozen
  22. +
  23. laserState
  24. +
  25. lift
  26. +
  27. open
  28. +
  29. pinch
  30. +
  31. rotate
  32. +
  33. runtimeType
  34. +
  35. servoAngle
  36. +
  37. spin
  38. +
  39. stop
  40. +
  41. unknownFields
  42. +
  43. version
  44. + +
  45. Methods
  46. +
  47. addExtension
  48. +
  49. check
  50. +
  51. clear
  52. +
  53. clearCalibrate
  54. +
  55. clearClose
  56. +
  57. clearExtension
  58. +
  59. clearField
  60. +
  61. clearLaserState
  62. +
  63. clearLift
  64. +
  65. clearOpen
  66. +
  67. clearPinch
  68. +
  69. clearRotate
  70. +
  71. clearServoAngle
  72. +
  73. clearSpin
  74. +
  75. clearStop
  76. +
  77. clearVersion
  78. +
  79. clone
  80. +
  81. copyWith
  82. +
  83. createEmptyInstance
  84. +
  85. createMapField
  86. +
  87. createRepeatedField
  88. +
  89. ensureLift
  90. +
  91. ensurePinch
  92. +
  93. ensureRotate
  94. +
  95. ensureVersion
  96. +
  97. extensionsAreInitialized
  98. +
  99. freeze
  100. +
  101. getDefaultForField
  102. +
  103. getExtension
  104. +
  105. getField
  106. +
  107. getFieldOrNull
  108. +
  109. getTagNumber
  110. +
  111. hasCalibrate
  112. +
  113. hasClose
  114. +
  115. hasExtension
  116. +
  117. hasField
  118. +
  119. hasLaserState
  120. +
  121. hasLift
  122. +
  123. hasOpen
  124. +
  125. hasPinch
  126. +
  127. hasRequiredFields
  128. +
  129. hasRotate
  130. +
  131. hasServoAngle
  132. +
  133. hasSpin
  134. +
  135. hasStop
  136. +
  137. hasVersion
  138. +
  139. isInitialized
  140. +
  141. mergeFromBuffer
  142. +
  143. mergeFromCodedBufferReader
  144. +
  145. mergeFromJson
  146. +
  147. mergeFromJsonMap
  148. +
  149. mergeFromMessage
  150. +
  151. mergeFromProto3Json
  152. +
  153. mergeUnknownFields
  154. +
  155. noSuchMethod
  156. +
  157. setExtension
  158. +
  159. setField
  160. +
  161. toBuilder
  162. +
  163. toDebugString
  164. +
  165. toProto3Json
  166. +
  167. toString
  168. +
  169. writeToBuffer
  170. +
  171. writeToCodedBufferWriter
  172. +
  173. writeToJson
  174. +
  175. writeToJsonMap
  176. + +
  177. Operators
  178. +
  179. operator ==
  180. + + + + + +
  181. Static methods
  182. +
  183. create
  184. +
  185. createRepeated
  186. +
  187. getDefault
  188. + +
diff --git a/docs/data/GripperCommand-class.html b/docs/data/GripperCommand-class.html new file mode 100644 index 0000000000..3cf6d91f1a --- /dev/null +++ b/docs/data/GripperCommand-class.html @@ -0,0 +1,1289 @@ + + + + + + + + GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GripperCommand
+ +
+ +
+
+
+
+
+ +

GripperCommand class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ GripperCommand({bool? stop, bool? calibrate, MotorCommand? lift, MotorCommand? rotate, MotorCommand? pinch, bool? open, bool? close, bool? spin, Version? version, int? servoAngle, BoolState? laserState}) +
+
+ +
factory
+
+
+ GripperCommand.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ GripperCommand.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ calibrate + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ close + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ laserState + BoolState + + +
+
+ +
getter/setter pair
+ +
+ +
+ lift + MotorCommand + + +
+
+ Move individual motors +
getter/setter pair
+ +
+ +
+ open + ↔ bool + + +
+
+ Custom actions +
getter/setter pair
+ +
+ +
+ pinch + MotorCommand + + +
+
+ +
getter/setter pair
+ +
+ +
+ rotate + MotorCommand + + +
+
+ +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ servoAngle + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ spin + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ stop + ↔ bool + + +
+
+ General commands +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearCalibrate() + → void + + + +
+
+ + + +
+ +
+ clearClose() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearLaserState() + → void + + + +
+
+ + + +
+ +
+ clearLift() + → void + + + +
+
+ + + +
+ +
+ clearOpen() + → void + + + +
+
+ + + +
+ +
+ clearPinch() + → void + + + +
+
+ + + +
+ +
+ clearRotate() + → void + + + +
+
+ + + +
+ +
+ clearServoAngle() + → void + + + +
+
+ + + +
+ +
+ clearSpin() + → void + + + +
+
+ + + +
+ +
+ clearStop() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + GripperCommand + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(GripperCommand)) + GripperCommand + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + GripperCommand + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureLift() + MotorCommand + + + +
+
+ + + +
+ +
+ ensurePinch() + MotorCommand + + + +
+
+ + + +
+ +
+ ensureRotate() + MotorCommand + + + +
+
+ + + +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasCalibrate() + → bool + + + +
+
+ + + +
+ +
+ hasClose() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasLaserState() + → bool + + + +
+
+ + + +
+ +
+ hasLift() + → bool + + + +
+
+ + + +
+ +
+ hasOpen() + → bool + + + +
+
+ + + +
+ +
+ hasPinch() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasRotate() + → bool + + + +
+
+ + + +
+ +
+ hasServoAngle() + → bool + + + +
+
+ + + +
+ +
+ hasSpin() + → bool + + + +
+
+ + + +
+ +
+ hasStop() + → bool + + + +
+
+ + + +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + GripperCommand + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<GripperCommand> + + + +
+
+ + + +
+ +
+ getDefault() + GripperCommand + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/GripperCommand.fromBuffer.html b/docs/data/GripperCommand/GripperCommand.fromBuffer.html new file mode 100644 index 0000000000..66d4f1ec59 --- /dev/null +++ b/docs/data/GripperCommand/GripperCommand.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + GripperCommand.fromBuffer constructor - GripperCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GripperCommand.fromBuffer
+ +
+ +
+
+
+
+
+ +

GripperCommand.fromBuffer constructor +

+ +
+ + GripperCommand.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory GripperCommand.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/GripperCommand.fromJson.html b/docs/data/GripperCommand/GripperCommand.fromJson.html new file mode 100644 index 0000000000..fa1ed10b53 --- /dev/null +++ b/docs/data/GripperCommand/GripperCommand.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + GripperCommand.fromJson constructor - GripperCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GripperCommand.fromJson
+ +
+ +
+
+
+
+
+ +

GripperCommand.fromJson constructor +

+ +
+ + GripperCommand.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory GripperCommand.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/GripperCommand.html b/docs/data/GripperCommand/GripperCommand.html new file mode 100644 index 0000000000..4d597faeda --- /dev/null +++ b/docs/data/GripperCommand/GripperCommand.html @@ -0,0 +1,167 @@ + + + + + + + + GripperCommand constructor - GripperCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GripperCommand
+ +
+ +
+
+
+
+
+ +

GripperCommand constructor +

+ +
+ + GripperCommand({
  1. bool? stop,
  2. +
  3. bool? calibrate,
  4. +
  5. MotorCommand? lift,
  6. +
  7. MotorCommand? rotate,
  8. +
  9. MotorCommand? pinch,
  10. +
  11. bool? open,
  12. +
  13. bool? close,
  14. +
  15. bool? spin,
  16. +
  17. Version? version,
  18. +
  19. int? servoAngle,
  20. +
  21. BoolState? laserState,
  22. +
}) +
+ + + + +
+

Implementation

+
factory GripperCommand({
+  $core.bool? stop,
+  $core.bool? calibrate,
+  MotorCommand? lift,
+  MotorCommand? rotate,
+  MotorCommand? pinch,
+  $core.bool? open,
+  $core.bool? close,
+  $core.bool? spin,
+  $0.Version? version,
+  $core.int? servoAngle,
+  $1.BoolState? laserState,
+}) {
+  final $result = create();
+  if (stop != null) {
+    $result.stop = stop;
+  }
+  if (calibrate != null) {
+    $result.calibrate = calibrate;
+  }
+  if (lift != null) {
+    $result.lift = lift;
+  }
+  if (rotate != null) {
+    $result.rotate = rotate;
+  }
+  if (pinch != null) {
+    $result.pinch = pinch;
+  }
+  if (open != null) {
+    $result.open = open;
+  }
+  if (close != null) {
+    $result.close = close;
+  }
+  if (spin != null) {
+    $result.spin = spin;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  if (servoAngle != null) {
+    $result.servoAngle = servoAngle;
+  }
+  if (laserState != null) {
+    $result.laserState = laserState;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/calibrate.html b/docs/data/GripperCommand/calibrate.html new file mode 100644 index 0000000000..9c42975d6e --- /dev/null +++ b/docs/data/GripperCommand/calibrate.html @@ -0,0 +1,150 @@ + + + + + + + + calibrate property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
calibrate
+ +
+ +
+
+
+
+
+ +

calibrate property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ bool + get + calibrate + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool get calibrate => $_getBF(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + calibrate + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set calibrate($core.bool v) { $_setBool(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clearCalibrate.html b/docs/data/GripperCommand/clearCalibrate.html new file mode 100644 index 0000000000..2131fedba9 --- /dev/null +++ b/docs/data/GripperCommand/clearCalibrate.html @@ -0,0 +1,118 @@ + + + + + + + + clearCalibrate method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearCalibrate
+ +
+ +
+
+
+
+
+ +

clearCalibrate method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearCalibrate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearCalibrate() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clearClose.html b/docs/data/GripperCommand/clearClose.html new file mode 100644 index 0000000000..77852aec38 --- /dev/null +++ b/docs/data/GripperCommand/clearClose.html @@ -0,0 +1,118 @@ + + + + + + + + clearClose method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearClose
+ +
+ +
+
+
+
+
+ +

clearClose method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+void +clearClose() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+void clearClose() => clearField(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clearLaserState.html b/docs/data/GripperCommand/clearLaserState.html new file mode 100644 index 0000000000..53568555d0 --- /dev/null +++ b/docs/data/GripperCommand/clearLaserState.html @@ -0,0 +1,118 @@ + + + + + + + + clearLaserState method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearLaserState
+ +
+ +
+
+
+
+
+ +

clearLaserState method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+void +clearLaserState() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+void clearLaserState() => clearField(11);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clearLift.html b/docs/data/GripperCommand/clearLift.html new file mode 100644 index 0000000000..924cd46147 --- /dev/null +++ b/docs/data/GripperCommand/clearLift.html @@ -0,0 +1,118 @@ + + + + + + + + clearLift method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearLift
+ +
+ +
+
+
+
+
+ +

clearLift method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearLift() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearLift() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clearOpen.html b/docs/data/GripperCommand/clearOpen.html new file mode 100644 index 0000000000..468da6aaf1 --- /dev/null +++ b/docs/data/GripperCommand/clearOpen.html @@ -0,0 +1,118 @@ + + + + + + + + clearOpen method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearOpen
+ +
+ +
+
+
+
+
+ +

clearOpen method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+void +clearOpen() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+void clearOpen() => clearField(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clearPinch.html b/docs/data/GripperCommand/clearPinch.html new file mode 100644 index 0000000000..f40129edc0 --- /dev/null +++ b/docs/data/GripperCommand/clearPinch.html @@ -0,0 +1,118 @@ + + + + + + + + clearPinch method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearPinch
+ +
+ +
+
+
+
+
+ +

clearPinch method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearPinch() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearPinch() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clearRotate.html b/docs/data/GripperCommand/clearRotate.html new file mode 100644 index 0000000000..4d245d9439 --- /dev/null +++ b/docs/data/GripperCommand/clearRotate.html @@ -0,0 +1,118 @@ + + + + + + + + clearRotate method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearRotate
+ +
+ +
+
+
+
+
+ +

clearRotate method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearRotate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearRotate() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clearServoAngle.html b/docs/data/GripperCommand/clearServoAngle.html new file mode 100644 index 0000000000..c1f76cf01e --- /dev/null +++ b/docs/data/GripperCommand/clearServoAngle.html @@ -0,0 +1,118 @@ + + + + + + + + clearServoAngle method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearServoAngle
+ +
+ +
+
+
+
+
+ +

clearServoAngle method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+void +clearServoAngle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+void clearServoAngle() => clearField(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clearSpin.html b/docs/data/GripperCommand/clearSpin.html new file mode 100644 index 0000000000..d8251f809a --- /dev/null +++ b/docs/data/GripperCommand/clearSpin.html @@ -0,0 +1,118 @@ + + + + + + + + clearSpin method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSpin
+ +
+ +
+
+
+
+
+ +

clearSpin method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+void +clearSpin() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+void clearSpin() => clearField(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clearStop.html b/docs/data/GripperCommand/clearStop.html new file mode 100644 index 0000000000..c8a1af5a99 --- /dev/null +++ b/docs/data/GripperCommand/clearStop.html @@ -0,0 +1,118 @@ + + + + + + + + clearStop method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearStop
+ +
+ +
+
+
+
+
+ +

clearStop method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearStop() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearStop() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clearVersion.html b/docs/data/GripperCommand/clearVersion.html new file mode 100644 index 0000000000..520d306500 --- /dev/null +++ b/docs/data/GripperCommand/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+void clearVersion() => clearField(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/clone.html b/docs/data/GripperCommand/clone.html new file mode 100644 index 0000000000..b273cdc8c5 --- /dev/null +++ b/docs/data/GripperCommand/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+GripperCommand +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+GripperCommand clone() => GripperCommand()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/close.html b/docs/data/GripperCommand/close.html new file mode 100644 index 0000000000..e02a76f759 --- /dev/null +++ b/docs/data/GripperCommand/close.html @@ -0,0 +1,150 @@ + + + + + + + + close property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
close
+ +
+ +
+
+
+
+
+ +

close property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ bool + get + close + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.bool get close => $_getBF(6);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ set + close + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+set close($core.bool v) { $_setBool(6, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/copyWith.html b/docs/data/GripperCommand/copyWith.html new file mode 100644 index 0000000000..4dd793acff --- /dev/null +++ b/docs/data/GripperCommand/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+GripperCommand +copyWith(
  1. void updates(
    1. GripperCommand
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+GripperCommand copyWith(void Function(GripperCommand) updates) => super.copyWith((message) => updates(message as GripperCommand)) as GripperCommand;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/create.html b/docs/data/GripperCommand/create.html new file mode 100644 index 0000000000..a325e956ae --- /dev/null +++ b/docs/data/GripperCommand/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +GripperCommand +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static GripperCommand create() => GripperCommand._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/createEmptyInstance.html b/docs/data/GripperCommand/createEmptyInstance.html new file mode 100644 index 0000000000..4f3d4f6d76 --- /dev/null +++ b/docs/data/GripperCommand/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +GripperCommand +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
GripperCommand createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/createRepeated.html b/docs/data/GripperCommand/createRepeated.html new file mode 100644 index 0000000000..e0c51a45af --- /dev/null +++ b/docs/data/GripperCommand/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<GripperCommand> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<GripperCommand> createRepeated() => $pb.PbList<GripperCommand>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/ensureLift.html b/docs/data/GripperCommand/ensureLift.html new file mode 100644 index 0000000000..04220f059d --- /dev/null +++ b/docs/data/GripperCommand/ensureLift.html @@ -0,0 +1,118 @@ + + + + + + + + ensureLift method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureLift
+ +
+ +
+
+
+
+
+ +

ensureLift method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+MotorCommand +ensureLift() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+MotorCommand ensureLift() => $_ensure(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/ensurePinch.html b/docs/data/GripperCommand/ensurePinch.html new file mode 100644 index 0000000000..819c4f80ce --- /dev/null +++ b/docs/data/GripperCommand/ensurePinch.html @@ -0,0 +1,118 @@ + + + + + + + + ensurePinch method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensurePinch
+ +
+ +
+
+
+
+
+ +

ensurePinch method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+MotorCommand +ensurePinch() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+MotorCommand ensurePinch() => $_ensure(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/ensureRotate.html b/docs/data/GripperCommand/ensureRotate.html new file mode 100644 index 0000000000..246d78d251 --- /dev/null +++ b/docs/data/GripperCommand/ensureRotate.html @@ -0,0 +1,118 @@ + + + + + + + + ensureRotate method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureRotate
+ +
+ +
+
+
+
+
+ +

ensureRotate method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+MotorCommand +ensureRotate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+MotorCommand ensureRotate() => $_ensure(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/ensureVersion.html b/docs/data/GripperCommand/ensureVersion.html new file mode 100644 index 0000000000..fb6d8e5056 --- /dev/null +++ b/docs/data/GripperCommand/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+$0.Version ensureVersion() => $_ensure(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/getDefault.html b/docs/data/GripperCommand/getDefault.html new file mode 100644 index 0000000000..0929d07808 --- /dev/null +++ b/docs/data/GripperCommand/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +GripperCommand +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static GripperCommand getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<GripperCommand>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/hasCalibrate.html b/docs/data/GripperCommand/hasCalibrate.html new file mode 100644 index 0000000000..0ab8a528d5 --- /dev/null +++ b/docs/data/GripperCommand/hasCalibrate.html @@ -0,0 +1,118 @@ + + + + + + + + hasCalibrate method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasCalibrate
+ +
+ +
+
+
+
+
+ +

hasCalibrate method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasCalibrate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasCalibrate() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/hasClose.html b/docs/data/GripperCommand/hasClose.html new file mode 100644 index 0000000000..4b18b481bf --- /dev/null +++ b/docs/data/GripperCommand/hasClose.html @@ -0,0 +1,118 @@ + + + + + + + + hasClose method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasClose
+ +
+ +
+
+
+
+
+ +

hasClose method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+bool +hasClose() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.bool hasClose() => $_has(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/hasLaserState.html b/docs/data/GripperCommand/hasLaserState.html new file mode 100644 index 0000000000..24c62b66ad --- /dev/null +++ b/docs/data/GripperCommand/hasLaserState.html @@ -0,0 +1,118 @@ + + + + + + + + hasLaserState method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasLaserState
+ +
+ +
+
+
+
+
+ +

hasLaserState method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+bool +hasLaserState() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+$core.bool hasLaserState() => $_has(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/hasLift.html b/docs/data/GripperCommand/hasLift.html new file mode 100644 index 0000000000..df9a155f85 --- /dev/null +++ b/docs/data/GripperCommand/hasLift.html @@ -0,0 +1,118 @@ + + + + + + + + hasLift method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasLift
+ +
+ +
+
+
+
+
+ +

hasLift method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasLift() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasLift() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/hasOpen.html b/docs/data/GripperCommand/hasOpen.html new file mode 100644 index 0000000000..a08216b456 --- /dev/null +++ b/docs/data/GripperCommand/hasOpen.html @@ -0,0 +1,118 @@ + + + + + + + + hasOpen method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasOpen
+ +
+ +
+
+
+
+
+ +

hasOpen method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+bool +hasOpen() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool hasOpen() => $_has(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/hasPinch.html b/docs/data/GripperCommand/hasPinch.html new file mode 100644 index 0000000000..3cad533b96 --- /dev/null +++ b/docs/data/GripperCommand/hasPinch.html @@ -0,0 +1,118 @@ + + + + + + + + hasPinch method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasPinch
+ +
+ +
+
+
+
+
+ +

hasPinch method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasPinch() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasPinch() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/hasRotate.html b/docs/data/GripperCommand/hasRotate.html new file mode 100644 index 0000000000..5bccf21a10 --- /dev/null +++ b/docs/data/GripperCommand/hasRotate.html @@ -0,0 +1,118 @@ + + + + + + + + hasRotate method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasRotate
+ +
+ +
+
+
+
+
+ +

hasRotate method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasRotate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasRotate() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/hasServoAngle.html b/docs/data/GripperCommand/hasServoAngle.html new file mode 100644 index 0000000000..27df5bb14a --- /dev/null +++ b/docs/data/GripperCommand/hasServoAngle.html @@ -0,0 +1,118 @@ + + + + + + + + hasServoAngle method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasServoAngle
+ +
+ +
+
+
+
+
+ +

hasServoAngle method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+bool +hasServoAngle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.bool hasServoAngle() => $_has(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/hasSpin.html b/docs/data/GripperCommand/hasSpin.html new file mode 100644 index 0000000000..b470f80101 --- /dev/null +++ b/docs/data/GripperCommand/hasSpin.html @@ -0,0 +1,118 @@ + + + + + + + + hasSpin method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSpin
+ +
+ +
+
+
+
+
+ +

hasSpin method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+bool +hasSpin() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.bool hasSpin() => $_has(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/hasStop.html b/docs/data/GripperCommand/hasStop.html new file mode 100644 index 0000000000..7dcbbc32a6 --- /dev/null +++ b/docs/data/GripperCommand/hasStop.html @@ -0,0 +1,118 @@ + + + + + + + + hasStop method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasStop
+ +
+ +
+
+
+
+
+ +

hasStop method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasStop() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasStop() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/hasVersion.html b/docs/data/GripperCommand/hasVersion.html new file mode 100644 index 0000000000..cf3c54ba36 --- /dev/null +++ b/docs/data/GripperCommand/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.bool hasVersion() => $_has(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/info_.html b/docs/data/GripperCommand/info_.html new file mode 100644 index 0000000000..53fe123cc4 --- /dev/null +++ b/docs/data/GripperCommand/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/laserState.html b/docs/data/GripperCommand/laserState.html new file mode 100644 index 0000000000..f0052e12d4 --- /dev/null +++ b/docs/data/GripperCommand/laserState.html @@ -0,0 +1,150 @@ + + + + + + + + laserState property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
laserState
+ +
+ +
+
+
+
+
+ +

laserState property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ BoolState + get + laserState + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(11)
+$1.BoolState get laserState => $_getN(10);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ set + laserState + (BoolState v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(11)
+set laserState($1.BoolState v) { setField(11, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/lift.html b/docs/data/GripperCommand/lift.html new file mode 100644 index 0000000000..b4ee0bf33f --- /dev/null +++ b/docs/data/GripperCommand/lift.html @@ -0,0 +1,153 @@ + + + + + + + + lift property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
lift
+ +
+ +
+
+
+
+
+ +

lift property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ MotorCommand + get + lift + + +
+ +
+

Move individual motors

+
+ + +
+

Implementation

+
@$pb.TagNumber(3)
+MotorCommand get lift => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + lift + (MotorCommand v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set lift(MotorCommand v) { setField(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/open.html b/docs/data/GripperCommand/open.html new file mode 100644 index 0000000000..f7da7c0614 --- /dev/null +++ b/docs/data/GripperCommand/open.html @@ -0,0 +1,153 @@ + + + + + + + + open property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
open
+ +
+ +
+
+
+
+
+ +

open property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ bool + get + open + + +
+ +
+

Custom actions

+
+ + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool get open => $_getBF(5);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ set + open + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+set open($core.bool v) { $_setBool(5, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/pinch.html b/docs/data/GripperCommand/pinch.html new file mode 100644 index 0000000000..cb3cb913e9 --- /dev/null +++ b/docs/data/GripperCommand/pinch.html @@ -0,0 +1,150 @@ + + + + + + + + pinch property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pinch
+ +
+ +
+
+
+
+
+ +

pinch property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ MotorCommand + get + pinch + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+MotorCommand get pinch => $_getN(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + pinch + (MotorCommand v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set pinch(MotorCommand v) { setField(5, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/rotate.html b/docs/data/GripperCommand/rotate.html new file mode 100644 index 0000000000..9715eaa1eb --- /dev/null +++ b/docs/data/GripperCommand/rotate.html @@ -0,0 +1,150 @@ + + + + + + + + rotate property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rotate
+ +
+ +
+
+
+
+
+ +

rotate property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ MotorCommand + get + rotate + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+MotorCommand get rotate => $_getN(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + rotate + (MotorCommand v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set rotate(MotorCommand v) { setField(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/servoAngle.html b/docs/data/GripperCommand/servoAngle.html new file mode 100644 index 0000000000..805ed01295 --- /dev/null +++ b/docs/data/GripperCommand/servoAngle.html @@ -0,0 +1,150 @@ + + + + + + + + servoAngle property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
servoAngle
+ +
+ +
+
+
+
+
+ +

servoAngle property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ int + get + servoAngle + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.int get servoAngle => $_getIZ(9);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ set + servoAngle + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(10)
+set servoAngle($core.int v) { $_setSignedInt32(9, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/spin.html b/docs/data/GripperCommand/spin.html new file mode 100644 index 0000000000..a99c5100c6 --- /dev/null +++ b/docs/data/GripperCommand/spin.html @@ -0,0 +1,150 @@ + + + + + + + + spin property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
spin
+ +
+ +
+
+
+
+
+ +

spin property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ bool + get + spin + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.bool get spin => $_getBF(7);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ set + spin + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(8)
+set spin($core.bool v) { $_setBool(7, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/stop.html b/docs/data/GripperCommand/stop.html new file mode 100644 index 0000000000..ab7e07931e --- /dev/null +++ b/docs/data/GripperCommand/stop.html @@ -0,0 +1,153 @@ + + + + + + + + stop property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
stop
+ +
+ +
+
+
+
+
+ +

stop property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ bool + get + stop + + +
+ +
+

General commands

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool get stop => $_getBF(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + stop + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set stop($core.bool v) { $_setBool(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperCommand/version.html b/docs/data/GripperCommand/version.html new file mode 100644 index 0000000000..98c63f3727 --- /dev/null +++ b/docs/data/GripperCommand/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+$0.Version get version => $_getN(8);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+set version($0.Version v) { setField(9, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData-class-sidebar.html b/docs/data/GripperData-class-sidebar.html new file mode 100644 index 0000000000..6025f776e4 --- /dev/null +++ b/docs/data/GripperData-class-sidebar.html @@ -0,0 +1,95 @@ +
    + +
  1. Constructors
  2. +
  3. GripperData
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. eventPlugin
  12. +
  13. hashCode
  14. +
  15. info_
  16. +
  17. isFrozen
  18. +
  19. laserState
  20. +
  21. lift
  22. +
  23. pinch
  24. +
  25. rotate
  26. +
  27. runtimeType
  28. +
  29. servoAngle
  30. +
  31. unknownFields
  32. +
  33. version
  34. + +
  35. Methods
  36. +
  37. addExtension
  38. +
  39. check
  40. +
  41. clear
  42. +
  43. clearExtension
  44. +
  45. clearField
  46. +
  47. clearLaserState
  48. +
  49. clearLift
  50. +
  51. clearPinch
  52. +
  53. clearRotate
  54. +
  55. clearServoAngle
  56. +
  57. clearVersion
  58. +
  59. clone
  60. +
  61. copyWith
  62. +
  63. createEmptyInstance
  64. +
  65. createMapField
  66. +
  67. createRepeatedField
  68. +
  69. ensureLift
  70. +
  71. ensurePinch
  72. +
  73. ensureRotate
  74. +
  75. ensureVersion
  76. +
  77. extensionsAreInitialized
  78. +
  79. freeze
  80. +
  81. getDefaultForField
  82. +
  83. getExtension
  84. +
  85. getField
  86. +
  87. getFieldOrNull
  88. +
  89. getTagNumber
  90. +
  91. hasExtension
  92. +
  93. hasField
  94. +
  95. hasLaserState
  96. +
  97. hasLift
  98. +
  99. hasPinch
  100. +
  101. hasRequiredFields
  102. +
  103. hasRotate
  104. +
  105. hasServoAngle
  106. +
  107. hasVersion
  108. +
  109. isInitialized
  110. +
  111. mergeFromBuffer
  112. +
  113. mergeFromCodedBufferReader
  114. +
  115. mergeFromJson
  116. +
  117. mergeFromJsonMap
  118. +
  119. mergeFromMessage
  120. +
  121. mergeFromProto3Json
  122. +
  123. mergeUnknownFields
  124. +
  125. noSuchMethod
  126. +
  127. setExtension
  128. +
  129. setField
  130. +
  131. toBuilder
  132. +
  133. toDebugString
  134. +
  135. toProto3Json
  136. +
  137. toString
  138. +
  139. writeToBuffer
  140. +
  141. writeToCodedBufferWriter
  142. +
  143. writeToJson
  144. +
  145. writeToJsonMap
  146. + +
  147. Operators
  148. +
  149. operator ==
  150. + + + + + +
  151. Static methods
  152. +
  153. create
  154. +
  155. createRepeated
  156. +
  157. getDefault
  158. + +
diff --git a/docs/data/GripperData-class.html b/docs/data/GripperData-class.html new file mode 100644 index 0000000000..bf5d437f6c --- /dev/null +++ b/docs/data/GripperData-class.html @@ -0,0 +1,1099 @@ + + + + + + + + GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GripperData
+ +
+ +
+
+
+
+
+ +

GripperData class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ GripperData({MotorData? lift, MotorData? rotate, MotorData? pinch, Version? version, int? servoAngle, BoolState? laserState}) +
+
+ +
factory
+
+
+ GripperData.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ GripperData.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ laserState + BoolState + + +
+
+ +
getter/setter pair
+ +
+ +
+ lift + MotorData + + +
+
+ +
getter/setter pair
+ +
+ +
+ pinch + MotorData + + +
+
+ +
getter/setter pair
+ +
+ +
+ rotate + MotorData + + +
+
+ +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ servoAngle + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearLaserState() + → void + + + +
+
+ + + +
+ +
+ clearLift() + → void + + + +
+
+ + + +
+ +
+ clearPinch() + → void + + + +
+
+ + + +
+ +
+ clearRotate() + → void + + + +
+
+ + + +
+ +
+ clearServoAngle() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + GripperData + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(GripperData)) + GripperData + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + GripperData + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureLift() + MotorData + + + +
+
+ + + +
+ +
+ ensurePinch() + MotorData + + + +
+
+ + + +
+ +
+ ensureRotate() + MotorData + + + +
+
+ + + +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasLaserState() + → bool + + + +
+
+ + + +
+ +
+ hasLift() + → bool + + + +
+
+ + + +
+ +
+ hasPinch() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasRotate() + → bool + + + +
+
+ + + +
+ +
+ hasServoAngle() + → bool + + + +
+
+ + + +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + GripperData + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<GripperData> + + + +
+
+ + + +
+ +
+ getDefault() + GripperData + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/GripperData.fromBuffer.html b/docs/data/GripperData/GripperData.fromBuffer.html new file mode 100644 index 0000000000..2c6b274e58 --- /dev/null +++ b/docs/data/GripperData/GripperData.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + GripperData.fromBuffer constructor - GripperData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GripperData.fromBuffer
+ +
+ +
+
+
+
+
+ +

GripperData.fromBuffer constructor +

+ +
+ + GripperData.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory GripperData.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/GripperData.fromJson.html b/docs/data/GripperData/GripperData.fromJson.html new file mode 100644 index 0000000000..869f267280 --- /dev/null +++ b/docs/data/GripperData/GripperData.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + GripperData.fromJson constructor - GripperData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GripperData.fromJson
+ +
+ +
+
+
+
+
+ +

GripperData.fromJson constructor +

+ +
+ + GripperData.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory GripperData.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/GripperData.html b/docs/data/GripperData/GripperData.html new file mode 100644 index 0000000000..915a19eae0 --- /dev/null +++ b/docs/data/GripperData/GripperData.html @@ -0,0 +1,142 @@ + + + + + + + + GripperData constructor - GripperData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GripperData
+ +
+ +
+
+
+
+
+ +

GripperData constructor +

+ +
+ + GripperData({
  1. MotorData? lift,
  2. +
  3. MotorData? rotate,
  4. +
  5. MotorData? pinch,
  6. +
  7. Version? version,
  8. +
  9. int? servoAngle,
  10. +
  11. BoolState? laserState,
  12. +
}) +
+ + + + +
+

Implementation

+
factory GripperData({
+  MotorData? lift,
+  MotorData? rotate,
+  MotorData? pinch,
+  $0.Version? version,
+  $core.int? servoAngle,
+  $1.BoolState? laserState,
+}) {
+  final $result = create();
+  if (lift != null) {
+    $result.lift = lift;
+  }
+  if (rotate != null) {
+    $result.rotate = rotate;
+  }
+  if (pinch != null) {
+    $result.pinch = pinch;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  if (servoAngle != null) {
+    $result.servoAngle = servoAngle;
+  }
+  if (laserState != null) {
+    $result.laserState = laserState;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/clearLaserState.html b/docs/data/GripperData/clearLaserState.html new file mode 100644 index 0000000000..225342bef4 --- /dev/null +++ b/docs/data/GripperData/clearLaserState.html @@ -0,0 +1,118 @@ + + + + + + + + clearLaserState method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearLaserState
+ +
+ +
+
+
+
+
+ +

clearLaserState method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+void +clearLaserState() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+void clearLaserState() => clearField(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/clearLift.html b/docs/data/GripperData/clearLift.html new file mode 100644 index 0000000000..93ffd2a663 --- /dev/null +++ b/docs/data/GripperData/clearLift.html @@ -0,0 +1,118 @@ + + + + + + + + clearLift method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearLift
+ +
+ +
+
+
+
+
+ +

clearLift method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearLift() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearLift() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/clearPinch.html b/docs/data/GripperData/clearPinch.html new file mode 100644 index 0000000000..e80102711c --- /dev/null +++ b/docs/data/GripperData/clearPinch.html @@ -0,0 +1,118 @@ + + + + + + + + clearPinch method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearPinch
+ +
+ +
+
+
+
+
+ +

clearPinch method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearPinch() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearPinch() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/clearRotate.html b/docs/data/GripperData/clearRotate.html new file mode 100644 index 0000000000..1e36e1b60a --- /dev/null +++ b/docs/data/GripperData/clearRotate.html @@ -0,0 +1,118 @@ + + + + + + + + clearRotate method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearRotate
+ +
+ +
+
+
+
+
+ +

clearRotate method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearRotate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearRotate() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/clearServoAngle.html b/docs/data/GripperData/clearServoAngle.html new file mode 100644 index 0000000000..2b705b707a --- /dev/null +++ b/docs/data/GripperData/clearServoAngle.html @@ -0,0 +1,118 @@ + + + + + + + + clearServoAngle method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearServoAngle
+ +
+ +
+
+
+
+
+ +

clearServoAngle method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearServoAngle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearServoAngle() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/clearVersion.html b/docs/data/GripperData/clearVersion.html new file mode 100644 index 0000000000..45d56a57ce --- /dev/null +++ b/docs/data/GripperData/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearVersion() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/clone.html b/docs/data/GripperData/clone.html new file mode 100644 index 0000000000..4b2d3b8820 --- /dev/null +++ b/docs/data/GripperData/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+GripperData +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+GripperData clone() => GripperData()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/copyWith.html b/docs/data/GripperData/copyWith.html new file mode 100644 index 0000000000..dcaa577980 --- /dev/null +++ b/docs/data/GripperData/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+GripperData +copyWith(
  1. void updates(
    1. GripperData
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+GripperData copyWith(void Function(GripperData) updates) => super.copyWith((message) => updates(message as GripperData)) as GripperData;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/create.html b/docs/data/GripperData/create.html new file mode 100644 index 0000000000..1c47d7be9c --- /dev/null +++ b/docs/data/GripperData/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +GripperData +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static GripperData create() => GripperData._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/createEmptyInstance.html b/docs/data/GripperData/createEmptyInstance.html new file mode 100644 index 0000000000..927c54c7e7 --- /dev/null +++ b/docs/data/GripperData/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +GripperData +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
GripperData createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/createRepeated.html b/docs/data/GripperData/createRepeated.html new file mode 100644 index 0000000000..d4f4273f8a --- /dev/null +++ b/docs/data/GripperData/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<GripperData> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<GripperData> createRepeated() => $pb.PbList<GripperData>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/ensureLift.html b/docs/data/GripperData/ensureLift.html new file mode 100644 index 0000000000..41ac0747f2 --- /dev/null +++ b/docs/data/GripperData/ensureLift.html @@ -0,0 +1,118 @@ + + + + + + + + ensureLift method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureLift
+ +
+ +
+
+
+
+
+ +

ensureLift method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+MotorData +ensureLift() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+MotorData ensureLift() => $_ensure(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/ensurePinch.html b/docs/data/GripperData/ensurePinch.html new file mode 100644 index 0000000000..9c9f7ba195 --- /dev/null +++ b/docs/data/GripperData/ensurePinch.html @@ -0,0 +1,118 @@ + + + + + + + + ensurePinch method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensurePinch
+ +
+ +
+
+
+
+
+ +

ensurePinch method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+MotorData +ensurePinch() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+MotorData ensurePinch() => $_ensure(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/ensureRotate.html b/docs/data/GripperData/ensureRotate.html new file mode 100644 index 0000000000..fa986e5815 --- /dev/null +++ b/docs/data/GripperData/ensureRotate.html @@ -0,0 +1,118 @@ + + + + + + + + ensureRotate method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureRotate
+ +
+ +
+
+
+
+
+ +

ensureRotate method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+MotorData +ensureRotate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+MotorData ensureRotate() => $_ensure(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/ensureVersion.html b/docs/data/GripperData/ensureVersion.html new file mode 100644 index 0000000000..0d08df2ff1 --- /dev/null +++ b/docs/data/GripperData/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$0.Version ensureVersion() => $_ensure(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/getDefault.html b/docs/data/GripperData/getDefault.html new file mode 100644 index 0000000000..99ed410472 --- /dev/null +++ b/docs/data/GripperData/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +GripperData +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static GripperData getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<GripperData>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/hasLaserState.html b/docs/data/GripperData/hasLaserState.html new file mode 100644 index 0000000000..a7690f8029 --- /dev/null +++ b/docs/data/GripperData/hasLaserState.html @@ -0,0 +1,118 @@ + + + + + + + + hasLaserState method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasLaserState
+ +
+ +
+
+
+
+
+ +

hasLaserState method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+bool +hasLaserState() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool hasLaserState() => $_has(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/hasLift.html b/docs/data/GripperData/hasLift.html new file mode 100644 index 0000000000..4a5d5f5df6 --- /dev/null +++ b/docs/data/GripperData/hasLift.html @@ -0,0 +1,118 @@ + + + + + + + + hasLift method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasLift
+ +
+ +
+
+
+
+
+ +

hasLift method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasLift() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasLift() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/hasPinch.html b/docs/data/GripperData/hasPinch.html new file mode 100644 index 0000000000..999d40dd28 --- /dev/null +++ b/docs/data/GripperData/hasPinch.html @@ -0,0 +1,118 @@ + + + + + + + + hasPinch method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasPinch
+ +
+ +
+
+
+
+
+ +

hasPinch method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasPinch() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasPinch() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/hasRotate.html b/docs/data/GripperData/hasRotate.html new file mode 100644 index 0000000000..ef1d291863 --- /dev/null +++ b/docs/data/GripperData/hasRotate.html @@ -0,0 +1,118 @@ + + + + + + + + hasRotate method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasRotate
+ +
+ +
+
+
+
+
+ +

hasRotate method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasRotate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasRotate() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/hasServoAngle.html b/docs/data/GripperData/hasServoAngle.html new file mode 100644 index 0000000000..ed54ebcc08 --- /dev/null +++ b/docs/data/GripperData/hasServoAngle.html @@ -0,0 +1,118 @@ + + + + + + + + hasServoAngle method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasServoAngle
+ +
+ +
+
+
+
+
+ +

hasServoAngle method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasServoAngle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasServoAngle() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/hasVersion.html b/docs/data/GripperData/hasVersion.html new file mode 100644 index 0000000000..017ffe262f --- /dev/null +++ b/docs/data/GripperData/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasVersion() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/info_.html b/docs/data/GripperData/info_.html new file mode 100644 index 0000000000..0728166915 --- /dev/null +++ b/docs/data/GripperData/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/laserState.html b/docs/data/GripperData/laserState.html new file mode 100644 index 0000000000..3b0748b85b --- /dev/null +++ b/docs/data/GripperData/laserState.html @@ -0,0 +1,150 @@ + + + + + + + + laserState property - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
laserState
+ +
+ +
+
+
+
+
+ +

laserState property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ BoolState + get + laserState + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+$1.BoolState get laserState => $_getN(5);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ set + laserState + (BoolState v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+set laserState($1.BoolState v) { setField(6, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/lift.html b/docs/data/GripperData/lift.html new file mode 100644 index 0000000000..8dccb228e4 --- /dev/null +++ b/docs/data/GripperData/lift.html @@ -0,0 +1,150 @@ + + + + + + + + lift property - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
lift
+ +
+ +
+
+
+
+
+ +

lift property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ MotorData + get + lift + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+MotorData get lift => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + lift + (MotorData v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set lift(MotorData v) { setField(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/pinch.html b/docs/data/GripperData/pinch.html new file mode 100644 index 0000000000..872d9277d7 --- /dev/null +++ b/docs/data/GripperData/pinch.html @@ -0,0 +1,150 @@ + + + + + + + + pinch property - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pinch
+ +
+ +
+
+
+
+
+ +

pinch property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ MotorData + get + pinch + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+MotorData get pinch => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + pinch + (MotorData v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set pinch(MotorData v) { setField(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/rotate.html b/docs/data/GripperData/rotate.html new file mode 100644 index 0000000000..ce0d8236a4 --- /dev/null +++ b/docs/data/GripperData/rotate.html @@ -0,0 +1,150 @@ + + + + + + + + rotate property - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rotate
+ +
+ +
+
+
+
+
+ +

rotate property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ MotorData + get + rotate + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+MotorData get rotate => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + rotate + (MotorData v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set rotate(MotorData v) { setField(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/servoAngle.html b/docs/data/GripperData/servoAngle.html new file mode 100644 index 0000000000..2e27528ea0 --- /dev/null +++ b/docs/data/GripperData/servoAngle.html @@ -0,0 +1,150 @@ + + + + + + + + servoAngle property - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
servoAngle
+ +
+ +
+
+
+
+
+ +

servoAngle property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ int + get + servoAngle + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.int get servoAngle => $_getIZ(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + servoAngle + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set servoAngle($core.int v) { $_setSignedInt32(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperData/version.html b/docs/data/GripperData/version.html new file mode 100644 index 0000000000..2cbb053134 --- /dev/null +++ b/docs/data/GripperData/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - GripperData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+$0.Version get version => $_getN(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set version($0.Version v) { setField(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperMetrics-class-sidebar.html b/docs/data/GripperMetrics-class-sidebar.html new file mode 100644 index 0000000000..6447e0e830 --- /dev/null +++ b/docs/data/GripperMetrics-class-sidebar.html @@ -0,0 +1,43 @@ +
    + +
  1. Constructors
  2. +
  3. GripperMetrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. data
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. matchesVersion
  16. +
  17. name
  18. +
  19. overallSeverity
  20. +
  21. runtimeType
  22. +
  23. supportedVersion
  24. +
  25. version
  26. +
  27. versionCommand
  28. + +
  29. Methods
  30. +
  31. addListener
  32. +
  33. checkVersion
  34. +
  35. dispose
  36. +
  37. getMotorData
  38. +
  39. noSuchMethod
  40. +
  41. notifyListeners
  42. +
  43. parseVersion
  44. +
  45. removeListener
  46. +
  47. toString
  48. +
  49. update
  50. + +
  51. Operators
  52. +
  53. operator ==
  54. + + + + + + +
diff --git a/docs/data/GripperMetrics-class.html b/docs/data/GripperMetrics-class.html new file mode 100644 index 0000000000..be75a38973 --- /dev/null +++ b/docs/data/GripperMetrics-class.html @@ -0,0 +1,440 @@ + + + + + + + + GripperMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GripperMetrics
+ +
+ +
+
+
+
+
+ +

GripperMetrics class + +

+ + +
+

Metrics about the gripper on the HREI subsystem.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ GripperMetrics() +
+
+ Metrics about the gripper. +
+
+
+ +
+

Properties

+
+
+ allMetrics + → List<MetricLine> + + +
+
+ A list of user-friendly explanations for each of the metrics. +
no setteroverride
+ +
+ +
+ data + GripperData + + +
+
+ The underlying data used to get these metrics. +
finalinherited
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ matchesVersion + → bool + + +
+
+ Whether the Dashboard is certain the firmware matches the right version. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ A collective name for this group of metrics (usually the name of the subsystem). +
no setteroverride
+ +
+ +
+ overallSeverity + Severity? + + +
+
+ Fetch the overall Security +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ supportedVersion + Version + + +
+
+ The currently-supported version for this Dashboard. +
no setteroverride
+ +
+ +
+ version + Version + + +
+
+ The version of the data that the firmware sends. +
getter/setter pairinherited
+ +
+ +
+ versionCommand + Message + + +
+
+ A command to notify the firmware of the Dashboard's supportedVersion. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ checkVersion(GripperData data) + → bool + + + +
+
+ Checks this message's version and checks for support. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ getMotorData(MotorData motor) + → List<MetricLine> + + + +
+
+ Returns a description of a MotorData. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ parseVersion(GripperData message) + Version + + + +
+
+ Parses the version out of a given data packet. +
override
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(GripperData value) + → void + + + +
+
+ Updates data with new data. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperMetrics/GripperMetrics.html b/docs/data/GripperMetrics/GripperMetrics.html new file mode 100644 index 0000000000..343935c964 --- /dev/null +++ b/docs/data/GripperMetrics/GripperMetrics.html @@ -0,0 +1,111 @@ + + + + + + + + GripperMetrics constructor - GripperMetrics - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GripperMetrics
+ +
+ +
+
+
+
+
+ +

GripperMetrics constructor +

+ +
+ + GripperMetrics() +
+ +
+

Metrics about the gripper.

+
+ + + +
+

Implementation

+
GripperMetrics() : super(GripperData());
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperMetrics/allMetrics.html b/docs/data/GripperMetrics/allMetrics.html new file mode 100644 index 0000000000..7f2500ce50 --- /dev/null +++ b/docs/data/GripperMetrics/allMetrics.html @@ -0,0 +1,141 @@ + + + + + + + + allMetrics property - GripperMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
allMetrics
+ +
+ +
+
+
+
+
+ +

allMetrics property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<MetricLine> + get + allMetrics +
override
+ +
+ +
+

A list of user-friendly explanations for each of the metrics.

+

Be sure to store the actual values as fields. This property should be a list of one +user-friendly explanation per metric.

+
+ + +
+

Implementation

+
@override
+List<MetricLine> get allMetrics => [
+    MetricLine("Camera Angle: ${data.servoAngle} degrees"),
+    MetricLine("Laser: ${data.laserState.displayName}", severity: data.laserState.toBool() ? Severity.critical : null),
+    MetricLine("------------------------------",),
+    MetricLine("Lift:"),
+	...getMotorData(data.lift,),
+	MetricLine("------------------------------",),
+    MetricLine("Rotate"),
+	...getMotorData(data.rotate),
+	MetricLine("------------------------------",),
+    MetricLine("Pinch:"),
+	...getMotorData(data.pinch),
+];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperMetrics/getMotorData.html b/docs/data/GripperMetrics/getMotorData.html new file mode 100644 index 0000000000..cbbf6c119a --- /dev/null +++ b/docs/data/GripperMetrics/getMotorData.html @@ -0,0 +1,122 @@ + + + + + + + + getMotorData method - GripperMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getMotorData
+ +
+ +
+
+
+
+
+ +

getMotorData method +

+ +
+ +List<MetricLine> +getMotorData(
  1. MotorData motor
  2. +
) + + + +
+ +
+

Returns a description of a MotorData.

+
+ + + +
+

Implementation

+
List<MetricLine> getMotorData(MotorData motor) => [
+	MetricLine("  Is moving? ${motor.isMoving.displayName}", severity: motor.isMoving.toBool() ? Severity.info : null),
+	MetricLine("  Limit? ${motor.isLimitSwitchPressed.displayName}", severity: motor.isLimitSwitchPressed.toBool() ? Severity.warning : null),
+	MetricLine("  Direction: ${motor.direction.humanName}"),
+	MetricLine("  Steps: ${motor.currentStep} --> ${motor.targetStep}"),
+	MetricLine("  Angle: ${motor.angle.toDegrees() % 360} degrees"),
+];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperMetrics/name.html b/docs/data/GripperMetrics/name.html new file mode 100644 index 0000000000..bbf549713f --- /dev/null +++ b/docs/data/GripperMetrics/name.html @@ -0,0 +1,127 @@ + + + + + + + + name property - GripperMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ String + get + name +
override
+ +
+ +
+

A collective name for this group of metrics (usually the name of the subsystem).

+
+ + +
+

Implementation

+
@override
+String get name => "Gripper";
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperMetrics/parseVersion.html b/docs/data/GripperMetrics/parseVersion.html new file mode 100644 index 0000000000..9554b3b92e --- /dev/null +++ b/docs/data/GripperMetrics/parseVersion.html @@ -0,0 +1,122 @@ + + + + + + + + parseVersion method - GripperMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseVersion
+ +
+ +
+
+
+
+
+ +

parseVersion method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Version +parseVersion(
  1. GripperData message
  2. +
) + +
override
+ +
+ +
+

Parses the version out of a given data packet.

+
+ + + +
+

Implementation

+
@override
+Version parseVersion(GripperData message) => message.version;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperMetrics/supportedVersion.html b/docs/data/GripperMetrics/supportedVersion.html new file mode 100644 index 0000000000..d2f5eab546 --- /dev/null +++ b/docs/data/GripperMetrics/supportedVersion.html @@ -0,0 +1,127 @@ + + + + + + + + supportedVersion property - GripperMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
supportedVersion
+ +
+ +
+
+
+
+
+ +

supportedVersion property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Version + get + supportedVersion +
override
+ +
+ +
+

The currently-supported version for this Dashboard.

+
+ + +
+

Implementation

+
@override
+Version get supportedVersion => Version(major: 1);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/GripperMetrics/versionCommand.html b/docs/data/GripperMetrics/versionCommand.html new file mode 100644 index 0000000000..88323e13a9 --- /dev/null +++ b/docs/data/GripperMetrics/versionCommand.html @@ -0,0 +1,127 @@ + + + + + + + + versionCommand property - GripperMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
versionCommand
+ +
+ +
+
+
+
+
+ +

versionCommand property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Message + get + versionCommand +
override
+ +
+ +
+

A command to notify the firmware of the Dashboard's supportedVersion.

+
+ + +
+

Implementation

+
@override
+Message get versionCommand => GripperCommand(version: supportedVersion);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Json.html b/docs/data/Json.html new file mode 100644 index 0000000000..27f670e8ca --- /dev/null +++ b/docs/data/Json.html @@ -0,0 +1,111 @@ + + + + + + + + Json typedef - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Json
+ +
+ +
+
+
+
+
+ +

Json typedef + +

+
+ + +Json = Map<String, dynamic> + + +
+ + +
+

JSON data as a map.

+
+ + +
+

Implementation

+
typedef Json = Map<String, dynamic>;
+
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/LimitedList-extension-sidebar.html b/docs/data/LimitedList-extension-sidebar.html new file mode 100644 index 0000000000..d512b66a70 --- /dev/null +++ b/docs/data/LimitedList-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + + +
  1. Methods
  2. +
  3. pushWithLimit
  4. + + + + + +
diff --git a/docs/data/LimitedList.html b/docs/data/LimitedList.html new file mode 100644 index 0000000000..c673637829 --- /dev/null +++ b/docs/data/LimitedList.html @@ -0,0 +1,140 @@ + + + + + + + + LimitedList extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LimitedList
+ +
+ +
+
+
+
+
+ +

LimitedList<E> extension + +

+ + +
+

A list that can manage its own length.

+
+ +
+
+
on
+
+
    +
  • DoubleLinkedQueue<E>
  • +
+
+
+ + + +
+ + +
+

Methods

+
+
+ pushWithLimit(E element, int limit) + → void + + + +
+
+ Adds element to this list and pops an element to keep the total length within limit. + + +
+ +
+
+ + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/LimitedList/pushWithLimit.html b/docs/data/LimitedList/pushWithLimit.html new file mode 100644 index 0000000000..8f89a2bc73 --- /dev/null +++ b/docs/data/LimitedList/pushWithLimit.html @@ -0,0 +1,120 @@ + + + + + + + + pushWithLimit method - LimitedList extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pushWithLimit
+ +
+ +
+
+
+
+
+ +

pushWithLimit method +

+ +
+ +void +pushWithLimit(
  1. E element,
  2. +
  3. int limit
  4. +
) + + + +
+ +
+

Adds element to this list and pops an element to keep the total length within limit.

+
+ + + +
+

Implementation

+
void pushWithLimit(E element, int limit) {
+  if (length >= limit) removeFirst();
+  addLast(element);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/LogFormat-extension-sidebar.html b/docs/data/LogFormat-extension-sidebar.html new file mode 100644 index 0000000000..dca999ef74 --- /dev/null +++ b/docs/data/LogFormat-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + + +
  1. Methods
  2. +
  3. format
  4. + + + + + +
diff --git a/docs/data/LogFormat.html b/docs/data/LogFormat.html new file mode 100644 index 0000000000..1cea037273 --- /dev/null +++ b/docs/data/LogFormat.html @@ -0,0 +1,140 @@ + + + + + + + + LogFormat extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogFormat
+ +
+ +
+
+
+
+
+ +

LogFormat extension + +

+ + +
+

Formats BurtLog messages in plain-text. For the UI, use widgets.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ + +
+

Methods

+
+
+ format() + → String + + + +
+
+ Formats BurtLog messages in plain-text. For the UI, use widgets. + + +
+ +
+
+ + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/LogFormat/format.html b/docs/data/LogFormat/format.html new file mode 100644 index 0000000000..9c01d95089 --- /dev/null +++ b/docs/data/LogFormat/format.html @@ -0,0 +1,124 @@ + + + + + + + + format method - LogFormat extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
format
+ +
+ +
+
+
+
+
+ +

format method +

+ +
+ +String +format() + + + +
+ +
+

Formats BurtLog messages in plain-text. For the UI, use widgets.

+
+ + + +
+

Implementation

+
String format() {
+  final result = StringBuffer()
+    ..write(level.label)
+    ..write(" ")
+    ..write(title);
+  if (body.isNotEmpty) {
+    result..write("\n  ")..write(body);
+  }
+  return result.toString();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/LogLevelUtils-extension-sidebar.html b/docs/data/LogLevelUtils-extension-sidebar.html new file mode 100644 index 0000000000..197421cdd4 --- /dev/null +++ b/docs/data/LogLevelUtils-extension-sidebar.html @@ -0,0 +1,20 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. +
  5. label
  6. + +
  7. Methods
  8. +
  9. isAtLeast
  10. +
  11. isMoreSevereThan
  12. + + + + + +
diff --git a/docs/data/LogLevelUtils.html b/docs/data/LogLevelUtils.html new file mode 100644 index 0000000000..b2fc364332 --- /dev/null +++ b/docs/data/LogLevelUtils.html @@ -0,0 +1,184 @@ + + + + + + + + LogLevelUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogLevelUtils
+ +
+ +
+
+
+
+
+ +

LogLevelUtils extension + +

+ + +
+

More human-friendly fields for BurtLogLevels.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ humanName + → String + + +
+
+ The human-readable name of this level. +
no setter
+ +
+ +
+ label + → String + + +
+
+ The label to represent this log. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ isAtLeast(BurtLogLevel other) + → bool + + + +
+
+ Whether this level is at least as severe as another level. + + +
+ +
+ isMoreSevereThan(BurtLogLevel other) + → bool + + + +
+
+ Whether this level is more severe than another level. + + +
+ +
+
+ + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/LogLevelUtils/humanName.html b/docs/data/LogLevelUtils/humanName.html new file mode 100644 index 0000000000..5276ada373 --- /dev/null +++ b/docs/data/LogLevelUtils/humanName.html @@ -0,0 +1,129 @@ + + + + + + + + humanName property - LogLevelUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

The human-readable name of this level.

+
+ + +
+

Implementation

+
String get humanName => switch(this) {
+  BurtLogLevel.critical => "Critical",
+  BurtLogLevel.error => "Error",
+  BurtLogLevel.warning => "Warning",
+  BurtLogLevel.info => "Info",
+  BurtLogLevel.debug => "Debug",
+  BurtLogLevel.trace => "Trace",
+  _ => "Unknown",
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/LogLevelUtils/isAtLeast.html b/docs/data/LogLevelUtils/isAtLeast.html new file mode 100644 index 0000000000..ab87409ec9 --- /dev/null +++ b/docs/data/LogLevelUtils/isAtLeast.html @@ -0,0 +1,117 @@ + + + + + + + + isAtLeast method - LogLevelUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isAtLeast
+ +
+ +
+
+
+
+
+ +

isAtLeast method +

+ +
+ +bool +isAtLeast(
  1. BurtLogLevel other
  2. +
) + + + +
+ +
+

Whether this level is at least as severe as another level.

+
+ + + +
+

Implementation

+
bool isAtLeast(BurtLogLevel other) =>
+  value <= other.value;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/LogLevelUtils/isMoreSevereThan.html b/docs/data/LogLevelUtils/isMoreSevereThan.html new file mode 100644 index 0000000000..f2160b744b --- /dev/null +++ b/docs/data/LogLevelUtils/isMoreSevereThan.html @@ -0,0 +1,117 @@ + + + + + + + + isMoreSevereThan method - LogLevelUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isMoreSevereThan
+ +
+ +
+
+
+
+
+ +

isMoreSevereThan method +

+ +
+ +bool +isMoreSevereThan(
  1. BurtLogLevel other
  2. +
) + + + +
+ +
+

Whether this level is more severe than another level.

+
+ + + +
+

Implementation

+
bool isMoreSevereThan(BurtLogLevel other) =>
+  value < other.value;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/LogLevelUtils/label.html b/docs/data/LogLevelUtils/label.html new file mode 100644 index 0000000000..953bc0ca29 --- /dev/null +++ b/docs/data/LogLevelUtils/label.html @@ -0,0 +1,129 @@ + + + + + + + + label property - LogLevelUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
label
+ +
+ +
+
+
+
+
+ +

label property +

+ + + + + +
+
+ + String + get + label + + +
+ +
+

The label to represent this log.

+
+ + +
+

Implementation

+
String get label => switch(this) {
+  BurtLogLevel.critical => "[C]",
+  BurtLogLevel.error => "[E]",
+  BurtLogLevel.warning => "[W]",
+  BurtLogLevel.info => "[I]",
+  BurtLogLevel.debug => "[D]",
+  BurtLogLevel.trace => "[T]",
+  _ => "?",
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MapRecords-extension-sidebar.html b/docs/data/MapRecords-extension-sidebar.html new file mode 100644 index 0000000000..6c69cbdfc3 --- /dev/null +++ b/docs/data/MapRecords-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. records
  4. + + + + + + +
diff --git a/docs/data/MapRecords.html b/docs/data/MapRecords.html new file mode 100644 index 0000000000..d198195dcc --- /dev/null +++ b/docs/data/MapRecords.html @@ -0,0 +1,139 @@ + + + + + + + + MapRecords extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MapRecords
+ +
+ +
+
+
+
+
+ +

MapRecords<K, V> extension + +

+ + +
+

Helpful extensions on maps.

+
+ +
+
+
on
+
+
    +
  • Map<K, V>
  • +
+
+
+ + + +
+ +
+

Properties

+
+
+ records + → Iterable<(K, V)> + + +
+
+ A list of key-value records in this map. Allows easier iteration than entries. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/MapRecords/records.html b/docs/data/MapRecords/records.html new file mode 100644 index 0000000000..f94472a864 --- /dev/null +++ b/docs/data/MapRecords/records.html @@ -0,0 +1,125 @@ + + + + + + + + records property - MapRecords extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
records
+ +
+ +
+
+
+
+
+ +

records property +

+ + + + + +
+
+ + Iterable<(K, V)> + get + records + + +
+ +
+

A list of key-value records in this map. Allows easier iteration than entries.

+
+ + +
+

Implementation

+
Iterable<(K, V)> get records sync* {
+  for (final entry in entries) {
+    yield (entry.key, entry.value);
+  }
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand-class-sidebar.html b/docs/data/MarsCommand-class-sidebar.html new file mode 100644 index 0000000000..02589847c8 --- /dev/null +++ b/docs/data/MarsCommand-class-sidebar.html @@ -0,0 +1,87 @@ +
    + +
  1. Constructors
  2. +
  3. MarsCommand
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. baseStationOverride
  12. +
  13. eventPlugin
  14. +
  15. hashCode
  16. +
  17. info_
  18. +
  19. isFrozen
  20. +
  21. rover
  22. +
  23. runtimeType
  24. +
  25. swivel
  26. +
  27. tilt
  28. +
  29. unknownFields
  30. + +
  31. Methods
  32. +
  33. addExtension
  34. +
  35. check
  36. +
  37. clear
  38. +
  39. clearBaseStationOverride
  40. +
  41. clearExtension
  42. +
  43. clearField
  44. +
  45. clearRover
  46. +
  47. clearSwivel
  48. +
  49. clearTilt
  50. +
  51. clone
  52. +
  53. copyWith
  54. +
  55. createEmptyInstance
  56. +
  57. createMapField
  58. +
  59. createRepeatedField
  60. +
  61. ensureBaseStationOverride
  62. +
  63. ensureRover
  64. +
  65. extensionsAreInitialized
  66. +
  67. freeze
  68. +
  69. getDefaultForField
  70. +
  71. getExtension
  72. +
  73. getField
  74. +
  75. getFieldOrNull
  76. +
  77. getTagNumber
  78. +
  79. hasBaseStationOverride
  80. +
  81. hasExtension
  82. +
  83. hasField
  84. +
  85. hasRequiredFields
  86. +
  87. hasRover
  88. +
  89. hasSwivel
  90. +
  91. hasTilt
  92. +
  93. isInitialized
  94. +
  95. mergeFromBuffer
  96. +
  97. mergeFromCodedBufferReader
  98. +
  99. mergeFromJson
  100. +
  101. mergeFromJsonMap
  102. +
  103. mergeFromMessage
  104. +
  105. mergeFromProto3Json
  106. +
  107. mergeUnknownFields
  108. +
  109. noSuchMethod
  110. +
  111. setExtension
  112. +
  113. setField
  114. +
  115. toBuilder
  116. +
  117. toDebugString
  118. +
  119. toProto3Json
  120. +
  121. toString
  122. +
  123. writeToBuffer
  124. +
  125. writeToCodedBufferWriter
  126. +
  127. writeToJson
  128. +
  129. writeToJsonMap
  130. + +
  131. Operators
  132. +
  133. operator ==
  134. + + + + + +
  135. Static methods
  136. +
  137. create
  138. +
  139. createRepeated
  140. +
  141. getDefault
  142. + +
diff --git a/docs/data/MarsCommand-class.html b/docs/data/MarsCommand-class.html new file mode 100644 index 0000000000..0065ea9d91 --- /dev/null +++ b/docs/data/MarsCommand-class.html @@ -0,0 +1,997 @@ + + + + + + + + MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MarsCommand
+ +
+ +
+
+
+
+
+ +

MarsCommand class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ MarsCommand({double? swivel, double? tilt, GpsCoordinates? rover, GpsCoordinates? baseStationOverride}) +
+
+ +
factory
+
+
+ MarsCommand.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ MarsCommand.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ baseStationOverride + GpsCoordinates + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ rover + GpsCoordinates + + +
+
+ Automatic control +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ swivel + ↔ double + + +
+
+ Manual control +
getter/setter pair
+ +
+ +
+ tilt + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearBaseStationOverride() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearRover() + → void + + + +
+
+ + + +
+ +
+ clearSwivel() + → void + + + +
+
+ + + +
+ +
+ clearTilt() + → void + + + +
+
+ + + +
+ +
+ clone() + MarsCommand + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(MarsCommand)) + MarsCommand + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + MarsCommand + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureBaseStationOverride() + GpsCoordinates + + + +
+
+ + + +
+ +
+ ensureRover() + GpsCoordinates + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasBaseStationOverride() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasRover() + → bool + + + +
+
+ + + +
+ +
+ hasSwivel() + → bool + + + +
+
+ + + +
+ +
+ hasTilt() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + MarsCommand + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<MarsCommand> + + + +
+
+ + + +
+ +
+ getDefault() + MarsCommand + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/MarsCommand.fromBuffer.html b/docs/data/MarsCommand/MarsCommand.fromBuffer.html new file mode 100644 index 0000000000..387be86d23 --- /dev/null +++ b/docs/data/MarsCommand/MarsCommand.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + MarsCommand.fromBuffer constructor - MarsCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MarsCommand.fromBuffer
+ +
+ +
+
+
+
+
+ +

MarsCommand.fromBuffer constructor +

+ +
+ + MarsCommand.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory MarsCommand.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/MarsCommand.fromJson.html b/docs/data/MarsCommand/MarsCommand.fromJson.html new file mode 100644 index 0000000000..eeaf510064 --- /dev/null +++ b/docs/data/MarsCommand/MarsCommand.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + MarsCommand.fromJson constructor - MarsCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MarsCommand.fromJson
+ +
+ +
+
+
+
+
+ +

MarsCommand.fromJson constructor +

+ +
+ + MarsCommand.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory MarsCommand.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/MarsCommand.html b/docs/data/MarsCommand/MarsCommand.html new file mode 100644 index 0000000000..c5dcbb652e --- /dev/null +++ b/docs/data/MarsCommand/MarsCommand.html @@ -0,0 +1,132 @@ + + + + + + + + MarsCommand constructor - MarsCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MarsCommand
+ +
+ +
+
+
+
+
+ +

MarsCommand constructor +

+ +
+ + MarsCommand({
  1. double? swivel,
  2. +
  3. double? tilt,
  4. +
  5. GpsCoordinates? rover,
  6. +
  7. GpsCoordinates? baseStationOverride,
  8. +
}) +
+ + + + +
+

Implementation

+
factory MarsCommand({
+  $core.double? swivel,
+  $core.double? tilt,
+  $0.GpsCoordinates? rover,
+  $0.GpsCoordinates? baseStationOverride,
+}) {
+  final $result = create();
+  if (swivel != null) {
+    $result.swivel = swivel;
+  }
+  if (tilt != null) {
+    $result.tilt = tilt;
+  }
+  if (rover != null) {
+    $result.rover = rover;
+  }
+  if (baseStationOverride != null) {
+    $result.baseStationOverride = baseStationOverride;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/baseStationOverride.html b/docs/data/MarsCommand/baseStationOverride.html new file mode 100644 index 0000000000..9d79d997e9 --- /dev/null +++ b/docs/data/MarsCommand/baseStationOverride.html @@ -0,0 +1,150 @@ + + + + + + + + baseStationOverride property - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
baseStationOverride
+ +
+ +
+
+
+
+
+ +

baseStationOverride property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ GpsCoordinates + get + baseStationOverride + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+$0.GpsCoordinates get baseStationOverride => $_getN(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + baseStationOverride + (GpsCoordinates v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set baseStationOverride($0.GpsCoordinates v) { setField(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/clearBaseStationOverride.html b/docs/data/MarsCommand/clearBaseStationOverride.html new file mode 100644 index 0000000000..83eac93014 --- /dev/null +++ b/docs/data/MarsCommand/clearBaseStationOverride.html @@ -0,0 +1,118 @@ + + + + + + + + clearBaseStationOverride method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearBaseStationOverride
+ +
+ +
+
+
+
+
+ +

clearBaseStationOverride method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearBaseStationOverride() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearBaseStationOverride() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/clearRover.html b/docs/data/MarsCommand/clearRover.html new file mode 100644 index 0000000000..8281f98cea --- /dev/null +++ b/docs/data/MarsCommand/clearRover.html @@ -0,0 +1,118 @@ + + + + + + + + clearRover method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearRover
+ +
+ +
+
+
+
+
+ +

clearRover method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearRover() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearRover() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/clearSwivel.html b/docs/data/MarsCommand/clearSwivel.html new file mode 100644 index 0000000000..4813aed899 --- /dev/null +++ b/docs/data/MarsCommand/clearSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + clearSwivel method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSwivel
+ +
+ +
+
+
+
+
+ +

clearSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearSwivel() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/clearTilt.html b/docs/data/MarsCommand/clearTilt.html new file mode 100644 index 0000000000..27ddbba59b --- /dev/null +++ b/docs/data/MarsCommand/clearTilt.html @@ -0,0 +1,118 @@ + + + + + + + + clearTilt method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearTilt
+ +
+ +
+
+
+
+
+ +

clearTilt method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearTilt() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/clone.html b/docs/data/MarsCommand/clone.html new file mode 100644 index 0000000000..faef6cf764 --- /dev/null +++ b/docs/data/MarsCommand/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+MarsCommand +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+MarsCommand clone() => MarsCommand()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/copyWith.html b/docs/data/MarsCommand/copyWith.html new file mode 100644 index 0000000000..bd2c292d11 --- /dev/null +++ b/docs/data/MarsCommand/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+MarsCommand +copyWith(
  1. void updates(
    1. MarsCommand
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+MarsCommand copyWith(void Function(MarsCommand) updates) => super.copyWith((message) => updates(message as MarsCommand)) as MarsCommand;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/create.html b/docs/data/MarsCommand/create.html new file mode 100644 index 0000000000..79721b06dd --- /dev/null +++ b/docs/data/MarsCommand/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +MarsCommand +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static MarsCommand create() => MarsCommand._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/createEmptyInstance.html b/docs/data/MarsCommand/createEmptyInstance.html new file mode 100644 index 0000000000..86e3e92e37 --- /dev/null +++ b/docs/data/MarsCommand/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +MarsCommand +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
MarsCommand createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/createRepeated.html b/docs/data/MarsCommand/createRepeated.html new file mode 100644 index 0000000000..3a3337cfda --- /dev/null +++ b/docs/data/MarsCommand/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<MarsCommand> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<MarsCommand> createRepeated() => $pb.PbList<MarsCommand>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/ensureBaseStationOverride.html b/docs/data/MarsCommand/ensureBaseStationOverride.html new file mode 100644 index 0000000000..b97d056e2a --- /dev/null +++ b/docs/data/MarsCommand/ensureBaseStationOverride.html @@ -0,0 +1,118 @@ + + + + + + + + ensureBaseStationOverride method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureBaseStationOverride
+ +
+ +
+
+
+
+
+ +

ensureBaseStationOverride method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+GpsCoordinates +ensureBaseStationOverride() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$0.GpsCoordinates ensureBaseStationOverride() => $_ensure(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/ensureRover.html b/docs/data/MarsCommand/ensureRover.html new file mode 100644 index 0000000000..f76f9f74b2 --- /dev/null +++ b/docs/data/MarsCommand/ensureRover.html @@ -0,0 +1,118 @@ + + + + + + + + ensureRover method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureRover
+ +
+ +
+
+
+
+
+ +

ensureRover method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+GpsCoordinates +ensureRover() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$0.GpsCoordinates ensureRover() => $_ensure(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/getDefault.html b/docs/data/MarsCommand/getDefault.html new file mode 100644 index 0000000000..666b7caf5d --- /dev/null +++ b/docs/data/MarsCommand/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +MarsCommand +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static MarsCommand getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<MarsCommand>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/hasBaseStationOverride.html b/docs/data/MarsCommand/hasBaseStationOverride.html new file mode 100644 index 0000000000..96692a4207 --- /dev/null +++ b/docs/data/MarsCommand/hasBaseStationOverride.html @@ -0,0 +1,118 @@ + + + + + + + + hasBaseStationOverride method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasBaseStationOverride
+ +
+ +
+
+
+
+
+ +

hasBaseStationOverride method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasBaseStationOverride() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasBaseStationOverride() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/hasRover.html b/docs/data/MarsCommand/hasRover.html new file mode 100644 index 0000000000..bb02c0e87e --- /dev/null +++ b/docs/data/MarsCommand/hasRover.html @@ -0,0 +1,118 @@ + + + + + + + + hasRover method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasRover
+ +
+ +
+
+
+
+
+ +

hasRover method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasRover() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasRover() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/hasSwivel.html b/docs/data/MarsCommand/hasSwivel.html new file mode 100644 index 0000000000..1ecd4ea479 --- /dev/null +++ b/docs/data/MarsCommand/hasSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + hasSwivel method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSwivel
+ +
+ +
+
+
+
+
+ +

hasSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasSwivel() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/hasTilt.html b/docs/data/MarsCommand/hasTilt.html new file mode 100644 index 0000000000..7249ba7efb --- /dev/null +++ b/docs/data/MarsCommand/hasTilt.html @@ -0,0 +1,118 @@ + + + + + + + + hasTilt method - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasTilt
+ +
+ +
+
+
+
+
+ +

hasTilt method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasTilt() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/info_.html b/docs/data/MarsCommand/info_.html new file mode 100644 index 0000000000..f379df028d --- /dev/null +++ b/docs/data/MarsCommand/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/rover.html b/docs/data/MarsCommand/rover.html new file mode 100644 index 0000000000..55509d2dfd --- /dev/null +++ b/docs/data/MarsCommand/rover.html @@ -0,0 +1,153 @@ + + + + + + + + rover property - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rover
+ +
+ +
+
+
+
+
+ +

rover property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ GpsCoordinates + get + rover + + +
+ +
+

Automatic control

+
+ + +
+

Implementation

+
@$pb.TagNumber(3)
+$0.GpsCoordinates get rover => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + rover + (GpsCoordinates v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set rover($0.GpsCoordinates v) { setField(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/swivel.html b/docs/data/MarsCommand/swivel.html new file mode 100644 index 0000000000..1165628688 --- /dev/null +++ b/docs/data/MarsCommand/swivel.html @@ -0,0 +1,153 @@ + + + + + + + + swivel property - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
swivel
+ +
+ +
+
+
+
+
+ +

swivel property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + get + swivel + + +
+ +
+

Manual control

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get swivel => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + swivel + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set swivel($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsCommand/tilt.html b/docs/data/MarsCommand/tilt.html new file mode 100644 index 0000000000..232505ce21 --- /dev/null +++ b/docs/data/MarsCommand/tilt.html @@ -0,0 +1,150 @@ + + + + + + + + tilt property - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
tilt
+ +
+ +
+
+
+
+
+ +

tilt property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + get + tilt + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get tilt => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + tilt + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set tilt($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData-class-sidebar.html b/docs/data/MarsData-class-sidebar.html new file mode 100644 index 0000000000..6abb83c5f3 --- /dev/null +++ b/docs/data/MarsData-class-sidebar.html @@ -0,0 +1,86 @@ +
    + +
  1. Constructors
  2. +
  3. MarsData
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. coordinates
  12. +
  13. eventPlugin
  14. +
  15. hashCode
  16. +
  17. info_
  18. +
  19. isFrozen
  20. +
  21. runtimeType
  22. +
  23. status
  24. +
  25. swivel
  26. +
  27. tilt
  28. +
  29. unknownFields
  30. + +
  31. Methods
  32. +
  33. addExtension
  34. +
  35. check
  36. +
  37. clear
  38. +
  39. clearCoordinates
  40. +
  41. clearExtension
  42. +
  43. clearField
  44. +
  45. clearStatus
  46. +
  47. clearSwivel
  48. +
  49. clearTilt
  50. +
  51. clone
  52. +
  53. copyWith
  54. +
  55. createEmptyInstance
  56. +
  57. createMapField
  58. +
  59. createRepeatedField
  60. +
  61. ensureCoordinates
  62. +
  63. extensionsAreInitialized
  64. +
  65. freeze
  66. +
  67. getDefaultForField
  68. +
  69. getExtension
  70. +
  71. getField
  72. +
  73. getFieldOrNull
  74. +
  75. getTagNumber
  76. +
  77. hasCoordinates
  78. +
  79. hasExtension
  80. +
  81. hasField
  82. +
  83. hasRequiredFields
  84. +
  85. hasStatus
  86. +
  87. hasSwivel
  88. +
  89. hasTilt
  90. +
  91. isInitialized
  92. +
  93. mergeFromBuffer
  94. +
  95. mergeFromCodedBufferReader
  96. +
  97. mergeFromJson
  98. +
  99. mergeFromJsonMap
  100. +
  101. mergeFromMessage
  102. +
  103. mergeFromProto3Json
  104. +
  105. mergeUnknownFields
  106. +
  107. noSuchMethod
  108. +
  109. setExtension
  110. +
  111. setField
  112. +
  113. toBuilder
  114. +
  115. toDebugString
  116. +
  117. toProto3Json
  118. +
  119. toString
  120. +
  121. writeToBuffer
  122. +
  123. writeToCodedBufferWriter
  124. +
  125. writeToJson
  126. +
  127. writeToJsonMap
  128. + +
  129. Operators
  130. +
  131. operator ==
  132. + + + + + +
  133. Static methods
  134. +
  135. create
  136. +
  137. createRepeated
  138. +
  139. getDefault
  140. + +
diff --git a/docs/data/MarsData-class.html b/docs/data/MarsData-class.html new file mode 100644 index 0000000000..b8c290ed46 --- /dev/null +++ b/docs/data/MarsData-class.html @@ -0,0 +1,984 @@ + + + + + + + + MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MarsData
+ +
+ +
+
+
+
+
+ +

MarsData class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ MarsData({double? swivel, double? tilt, GpsCoordinates? coordinates, MarsStatus? status}) +
+
+ +
factory
+
+
+ MarsData.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ MarsData.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ coordinates + GpsCoordinates + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ status + MarsStatus + + +
+
+ +
getter/setter pair
+ +
+ +
+ swivel + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ tilt + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearCoordinates() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearStatus() + → void + + + +
+
+ + + +
+ +
+ clearSwivel() + → void + + + +
+
+ + + +
+ +
+ clearTilt() + → void + + + +
+
+ + + +
+ +
+ clone() + MarsData + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(MarsData)) + MarsData + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + MarsData + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureCoordinates() + GpsCoordinates + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasCoordinates() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasStatus() + → bool + + + +
+
+ + + +
+ +
+ hasSwivel() + → bool + + + +
+
+ + + +
+ +
+ hasTilt() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + MarsData + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<MarsData> + + + +
+
+ + + +
+ +
+ getDefault() + MarsData + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/MarsData.fromBuffer.html b/docs/data/MarsData/MarsData.fromBuffer.html new file mode 100644 index 0000000000..5363dd6c83 --- /dev/null +++ b/docs/data/MarsData/MarsData.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + MarsData.fromBuffer constructor - MarsData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MarsData.fromBuffer
+ +
+ +
+
+
+
+
+ +

MarsData.fromBuffer constructor +

+ +
+ + MarsData.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory MarsData.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/MarsData.fromJson.html b/docs/data/MarsData/MarsData.fromJson.html new file mode 100644 index 0000000000..047fd69c2e --- /dev/null +++ b/docs/data/MarsData/MarsData.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + MarsData.fromJson constructor - MarsData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MarsData.fromJson
+ +
+ +
+
+
+
+
+ +

MarsData.fromJson constructor +

+ +
+ + MarsData.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory MarsData.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/MarsData.html b/docs/data/MarsData/MarsData.html new file mode 100644 index 0000000000..ae95dc0c1c --- /dev/null +++ b/docs/data/MarsData/MarsData.html @@ -0,0 +1,132 @@ + + + + + + + + MarsData constructor - MarsData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MarsData
+ +
+ +
+
+
+
+
+ +

MarsData constructor +

+ +
+ + MarsData({
  1. double? swivel,
  2. +
  3. double? tilt,
  4. +
  5. GpsCoordinates? coordinates,
  6. +
  7. MarsStatus? status,
  8. +
}) +
+ + + + +
+

Implementation

+
factory MarsData({
+  $core.double? swivel,
+  $core.double? tilt,
+  $0.GpsCoordinates? coordinates,
+  MarsStatus? status,
+}) {
+  final $result = create();
+  if (swivel != null) {
+    $result.swivel = swivel;
+  }
+  if (tilt != null) {
+    $result.tilt = tilt;
+  }
+  if (coordinates != null) {
+    $result.coordinates = coordinates;
+  }
+  if (status != null) {
+    $result.status = status;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/clearCoordinates.html b/docs/data/MarsData/clearCoordinates.html new file mode 100644 index 0000000000..eec9c77b89 --- /dev/null +++ b/docs/data/MarsData/clearCoordinates.html @@ -0,0 +1,118 @@ + + + + + + + + clearCoordinates method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearCoordinates
+ +
+ +
+
+
+
+
+ +

clearCoordinates method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearCoordinates() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearCoordinates() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/clearStatus.html b/docs/data/MarsData/clearStatus.html new file mode 100644 index 0000000000..3322eb0052 --- /dev/null +++ b/docs/data/MarsData/clearStatus.html @@ -0,0 +1,118 @@ + + + + + + + + clearStatus method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearStatus
+ +
+ +
+
+
+
+
+ +

clearStatus method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearStatus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearStatus() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/clearSwivel.html b/docs/data/MarsData/clearSwivel.html new file mode 100644 index 0000000000..c48501a8d3 --- /dev/null +++ b/docs/data/MarsData/clearSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + clearSwivel method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSwivel
+ +
+ +
+
+
+
+
+ +

clearSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearSwivel() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/clearTilt.html b/docs/data/MarsData/clearTilt.html new file mode 100644 index 0000000000..3e3b1e3377 --- /dev/null +++ b/docs/data/MarsData/clearTilt.html @@ -0,0 +1,118 @@ + + + + + + + + clearTilt method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearTilt
+ +
+ +
+
+
+
+
+ +

clearTilt method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearTilt() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/clone.html b/docs/data/MarsData/clone.html new file mode 100644 index 0000000000..2e988a33aa --- /dev/null +++ b/docs/data/MarsData/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+MarsData +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+MarsData clone() => MarsData()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/coordinates.html b/docs/data/MarsData/coordinates.html new file mode 100644 index 0000000000..565d2ad5da --- /dev/null +++ b/docs/data/MarsData/coordinates.html @@ -0,0 +1,150 @@ + + + + + + + + coordinates property - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
coordinates
+ +
+ +
+
+
+
+
+ +

coordinates property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ GpsCoordinates + get + coordinates + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$0.GpsCoordinates get coordinates => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + coordinates + (GpsCoordinates v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set coordinates($0.GpsCoordinates v) { setField(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/copyWith.html b/docs/data/MarsData/copyWith.html new file mode 100644 index 0000000000..1171d022de --- /dev/null +++ b/docs/data/MarsData/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+MarsData +copyWith(
  1. void updates(
    1. MarsData
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+MarsData copyWith(void Function(MarsData) updates) => super.copyWith((message) => updates(message as MarsData)) as MarsData;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/create.html b/docs/data/MarsData/create.html new file mode 100644 index 0000000000..7c2bd1e708 --- /dev/null +++ b/docs/data/MarsData/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +MarsData +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static MarsData create() => MarsData._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/createEmptyInstance.html b/docs/data/MarsData/createEmptyInstance.html new file mode 100644 index 0000000000..826f9f4151 --- /dev/null +++ b/docs/data/MarsData/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +MarsData +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
MarsData createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/createRepeated.html b/docs/data/MarsData/createRepeated.html new file mode 100644 index 0000000000..120b65a586 --- /dev/null +++ b/docs/data/MarsData/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<MarsData> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<MarsData> createRepeated() => $pb.PbList<MarsData>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/ensureCoordinates.html b/docs/data/MarsData/ensureCoordinates.html new file mode 100644 index 0000000000..99fe085ddd --- /dev/null +++ b/docs/data/MarsData/ensureCoordinates.html @@ -0,0 +1,118 @@ + + + + + + + + ensureCoordinates method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureCoordinates
+ +
+ +
+
+
+
+
+ +

ensureCoordinates method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+GpsCoordinates +ensureCoordinates() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$0.GpsCoordinates ensureCoordinates() => $_ensure(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/getDefault.html b/docs/data/MarsData/getDefault.html new file mode 100644 index 0000000000..ae1da2c54d --- /dev/null +++ b/docs/data/MarsData/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +MarsData +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static MarsData getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<MarsData>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/hasCoordinates.html b/docs/data/MarsData/hasCoordinates.html new file mode 100644 index 0000000000..557e2cf87a --- /dev/null +++ b/docs/data/MarsData/hasCoordinates.html @@ -0,0 +1,118 @@ + + + + + + + + hasCoordinates method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasCoordinates
+ +
+ +
+
+
+
+
+ +

hasCoordinates method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasCoordinates() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasCoordinates() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/hasStatus.html b/docs/data/MarsData/hasStatus.html new file mode 100644 index 0000000000..095b504bd4 --- /dev/null +++ b/docs/data/MarsData/hasStatus.html @@ -0,0 +1,118 @@ + + + + + + + + hasStatus method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasStatus
+ +
+ +
+
+
+
+
+ +

hasStatus method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasStatus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasStatus() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/hasSwivel.html b/docs/data/MarsData/hasSwivel.html new file mode 100644 index 0000000000..4f5ce98f57 --- /dev/null +++ b/docs/data/MarsData/hasSwivel.html @@ -0,0 +1,118 @@ + + + + + + + + hasSwivel method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSwivel
+ +
+ +
+
+
+
+
+ +

hasSwivel method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasSwivel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasSwivel() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/hasTilt.html b/docs/data/MarsData/hasTilt.html new file mode 100644 index 0000000000..3cd3e31be8 --- /dev/null +++ b/docs/data/MarsData/hasTilt.html @@ -0,0 +1,118 @@ + + + + + + + + hasTilt method - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasTilt
+ +
+ +
+
+
+
+
+ +

hasTilt method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasTilt() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasTilt() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/info_.html b/docs/data/MarsData/info_.html new file mode 100644 index 0000000000..e0cb03ef5a --- /dev/null +++ b/docs/data/MarsData/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/status.html b/docs/data/MarsData/status.html new file mode 100644 index 0000000000..cffb8e2c7f --- /dev/null +++ b/docs/data/MarsData/status.html @@ -0,0 +1,150 @@ + + + + + + + + status property - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
status
+ +
+ +
+
+
+
+
+ +

status property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ MarsStatus + get + status + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+MarsStatus get status => $_getN(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + status + (MarsStatus v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set status(MarsStatus v) { setField(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/swivel.html b/docs/data/MarsData/swivel.html new file mode 100644 index 0000000000..449af162a8 --- /dev/null +++ b/docs/data/MarsData/swivel.html @@ -0,0 +1,150 @@ + + + + + + + + swivel property - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
swivel
+ +
+ +
+
+
+
+
+ +

swivel property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + get + swivel + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get swivel => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + swivel + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set swivel($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsData/tilt.html b/docs/data/MarsData/tilt.html new file mode 100644 index 0000000000..64a2fcebba --- /dev/null +++ b/docs/data/MarsData/tilt.html @@ -0,0 +1,150 @@ + + + + + + + + tilt property - MarsData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
tilt
+ +
+ +
+
+
+
+
+ +

tilt property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + get + tilt + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get tilt => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + tilt + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set tilt($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsStatus-class-sidebar.html b/docs/data/MarsStatus-class-sidebar.html new file mode 100644 index 0000000000..7a0980297f --- /dev/null +++ b/docs/data/MarsStatus-class-sidebar.html @@ -0,0 +1,35 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. FAILED_HANDSHAKE
  28. +
  29. MARS_STATUS_UNDEFINED
  30. +
  31. PORT_NOT_FOUND
  32. +
  33. TEENSY_CONNECTED
  34. +
  35. TEENSY_UNRESPONSIVE
  36. +
  37. values
  38. +
diff --git a/docs/data/MarsStatus-class.html b/docs/data/MarsStatus-class.html new file mode 100644 index 0000000000..262f7926e2 --- /dev/null +++ b/docs/data/MarsStatus-class.html @@ -0,0 +1,330 @@ + + + + + + + + MarsStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MarsStatus
+ +
+ +
+
+
+
+
+ +

MarsStatus class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + MarsStatus? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ FAILED_HANDSHAKE + → const MarsStatus + + +
+
+ + + +
+ +
+ MARS_STATUS_UNDEFINED + → const MarsStatus + + +
+
+ + + +
+ +
+ PORT_NOT_FOUND + → const MarsStatus + + +
+
+ + + +
+ +
+ TEENSY_CONNECTED + → const MarsStatus + + +
+
+ + + +
+ +
+ TEENSY_UNRESPONSIVE + → const MarsStatus + + +
+
+ + + +
+ +
+ values + → const List<MarsStatus> + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsStatus/FAILED_HANDSHAKE-constant.html b/docs/data/MarsStatus/FAILED_HANDSHAKE-constant.html new file mode 100644 index 0000000000..c97af56104 --- /dev/null +++ b/docs/data/MarsStatus/FAILED_HANDSHAKE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + FAILED_HANDSHAKE constant - MarsStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
FAILED_HANDSHAKE
+ +
+ +
+
+
+
+
+ +

FAILED_HANDSHAKE constant +

+ + +
+ + MarsStatus + const FAILED_HANDSHAKE + + +
+ + + +
+

Implementation

+
static const MarsStatus FAILED_HANDSHAKE = MarsStatus._(3, _omitEnumNames ? '' : 'FAILED_HANDSHAKE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsStatus/MARS_STATUS_UNDEFINED-constant.html b/docs/data/MarsStatus/MARS_STATUS_UNDEFINED-constant.html new file mode 100644 index 0000000000..6b81bae14f --- /dev/null +++ b/docs/data/MarsStatus/MARS_STATUS_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + MARS_STATUS_UNDEFINED constant - MarsStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MARS_STATUS_UNDEFINED
+ +
+ +
+
+
+
+
+ +

MARS_STATUS_UNDEFINED constant +

+ + +
+ + MarsStatus + const MARS_STATUS_UNDEFINED + + +
+ + + +
+

Implementation

+
static const MarsStatus MARS_STATUS_UNDEFINED = MarsStatus._(0, _omitEnumNames ? '' : 'MARS_STATUS_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsStatus/PORT_NOT_FOUND-constant.html b/docs/data/MarsStatus/PORT_NOT_FOUND-constant.html new file mode 100644 index 0000000000..a8f247b8ea --- /dev/null +++ b/docs/data/MarsStatus/PORT_NOT_FOUND-constant.html @@ -0,0 +1,112 @@ + + + + + + + + PORT_NOT_FOUND constant - MarsStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PORT_NOT_FOUND
+ +
+ +
+
+
+
+
+ +

PORT_NOT_FOUND constant +

+ + +
+ + MarsStatus + const PORT_NOT_FOUND + + +
+ + + +
+

Implementation

+
static const MarsStatus PORT_NOT_FOUND = MarsStatus._(1, _omitEnumNames ? '' : 'PORT_NOT_FOUND');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsStatus/TEENSY_CONNECTED-constant.html b/docs/data/MarsStatus/TEENSY_CONNECTED-constant.html new file mode 100644 index 0000000000..d0685974da --- /dev/null +++ b/docs/data/MarsStatus/TEENSY_CONNECTED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + TEENSY_CONNECTED constant - MarsStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TEENSY_CONNECTED
+ +
+ +
+
+
+
+
+ +

TEENSY_CONNECTED constant +

+ + +
+ + MarsStatus + const TEENSY_CONNECTED + + +
+ + + +
+

Implementation

+
static const MarsStatus TEENSY_CONNECTED = MarsStatus._(4, _omitEnumNames ? '' : 'TEENSY_CONNECTED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsStatus/TEENSY_UNRESPONSIVE-constant.html b/docs/data/MarsStatus/TEENSY_UNRESPONSIVE-constant.html new file mode 100644 index 0000000000..01a5cb94b6 --- /dev/null +++ b/docs/data/MarsStatus/TEENSY_UNRESPONSIVE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + TEENSY_UNRESPONSIVE constant - MarsStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TEENSY_UNRESPONSIVE
+ +
+ +
+
+
+
+
+ +

TEENSY_UNRESPONSIVE constant +

+ + +
+ + MarsStatus + const TEENSY_UNRESPONSIVE + + +
+ + + +
+

Implementation

+
static const MarsStatus TEENSY_UNRESPONSIVE = MarsStatus._(2, _omitEnumNames ? '' : 'TEENSY_UNRESPONSIVE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsStatus/valueOf.html b/docs/data/MarsStatus/valueOf.html new file mode 100644 index 0000000000..e8b7506db3 --- /dev/null +++ b/docs/data/MarsStatus/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - MarsStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +MarsStatus? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static MarsStatus? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MarsStatus/values-constant.html b/docs/data/MarsStatus/values-constant.html new file mode 100644 index 0000000000..adb66acdf4 --- /dev/null +++ b/docs/data/MarsStatus/values-constant.html @@ -0,0 +1,118 @@ + + + + + + + + values constant - MarsStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<MarsStatus> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<MarsStatus> values = <MarsStatus> [
+  MARS_STATUS_UNDEFINED,
+  PORT_NOT_FOUND,
+  TEENSY_UNRESPONSIVE,
+  FAILED_HANDSHAKE,
+  TEENSY_CONNECTED,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Message.html b/docs/data/Message.html new file mode 100644 index 0000000000..071a1ea3e2 --- /dev/null +++ b/docs/data/Message.html @@ -0,0 +1,111 @@ + + + + + + + + Message typedef - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Message
+ +
+ +
+
+
+
+
+ +

Message typedef + +

+
+ + +Message = GeneratedMessage + + +
+ + +
+

A cleaner name for any message generated by Protobuf.

+
+ + +
+

Implementation

+
typedef Message = proto.GeneratedMessage;
+
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MessageDecoder.html b/docs/data/MessageDecoder.html new file mode 100644 index 0000000000..046aa211ea --- /dev/null +++ b/docs/data/MessageDecoder.html @@ -0,0 +1,110 @@ + + + + + + + + MessageDecoder typedef - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MessageDecoder
+ +
+ +
+
+
+
+
+ +

MessageDecoder<T extends Message> typedef + +

+
+ MessageDecoder<T extends Message> = + T Function(List<int> data) + +
+ + +
+

A function that decodes a Protobuf messages serialized form.

+

The .fromBuffer constructor is a type of MessageDecoder.

+
+ + +
+

Implementation

+
typedef MessageDecoder<T extends Message> = T Function(List<int> data);
+
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MessageHandler.html b/docs/data/MessageHandler.html new file mode 100644 index 0000000000..bded30bf97 --- /dev/null +++ b/docs/data/MessageHandler.html @@ -0,0 +1,109 @@ + + + + + + + + MessageHandler typedef - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MessageHandler
+ +
+ +
+
+
+
+
+ +

MessageHandler<T extends Message> typedef + +

+
+ MessageHandler<T extends Message> = + void Function(T) + +
+ + +
+

A callback to execute with a specific serialized Protobuf message.

+
+ + +
+

Implementation

+
typedef MessageHandler<T extends Message> = void Function(T);
+
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MessageUtils-extension-sidebar.html b/docs/data/MessageUtils-extension-sidebar.html new file mode 100644 index 0000000000..ef32154833 --- /dev/null +++ b/docs/data/MessageUtils-extension-sidebar.html @@ -0,0 +1,18 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. messageName
  4. + +
  5. Methods
  6. +
  7. wrap
  8. + + + + + +
diff --git a/docs/data/MessageUtils.html b/docs/data/MessageUtils.html new file mode 100644 index 0000000000..5148e89f36 --- /dev/null +++ b/docs/data/MessageUtils.html @@ -0,0 +1,159 @@ + + + + + + + + MessageUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MessageUtils
+ +
+ +
+
+
+
+
+ +

MessageUtils extension + +

+ + +
+

Defines a friendlier method for getting the name of a message.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ messageName + → String + + +
+
+ The name of the message as declared in the .proto file. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ wrap([DateTime? timestamp]) + WrappedMessage + + + +
+
+ Returns a WrappedMessage representing this message with a timestamp + + +
+ +
+
+ + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/MessageUtils/messageName.html b/docs/data/MessageUtils/messageName.html new file mode 100644 index 0000000000..7b1ecd4add --- /dev/null +++ b/docs/data/MessageUtils/messageName.html @@ -0,0 +1,121 @@ + + + + + + + + messageName property - MessageUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
messageName
+ +
+ +
+
+
+
+
+ +

messageName property +

+ + + + + +
+
+ + String + get + messageName + + +
+ +
+

The name of the message as declared in the .proto file.

+
+ + +
+

Implementation

+
String get messageName => info_.messageName;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MessageUtils/wrap.html b/docs/data/MessageUtils/wrap.html new file mode 100644 index 0000000000..6cbc817956 --- /dev/null +++ b/docs/data/MessageUtils/wrap.html @@ -0,0 +1,120 @@ + + + + + + + + wrap method - MessageUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
wrap
+ +
+ +
+
+
+
+
+ +

wrap method +

+ +
+ +WrappedMessage +wrap([
  1. DateTime? timestamp
  2. +
]) + + + +
+ +
+

Returns a WrappedMessage representing this message with a timestamp

+
+ + + +
+

Implementation

+
WrappedMessage wrap([DateTime? timestamp]) => WrappedMessage(
+  data: writeToBuffer(),
+  name: messageName,
+  timestamp: Timestamp.fromDateTime(timestamp ?? DateTime.now()),
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MetricLine-class-sidebar.html b/docs/data/MetricLine-class-sidebar.html new file mode 100644 index 0000000000..663ca91436 --- /dev/null +++ b/docs/data/MetricLine-class-sidebar.html @@ -0,0 +1,28 @@ +
    + +
  1. Constructors
  2. +
  3. MetricLine
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. +
  11. severity
  12. +
  13. text
  14. + +
  15. Methods
  16. +
  17. noSuchMethod
  18. +
  19. toString
  20. + +
  21. Operators
  22. +
  23. operator ==
  24. + + + + + + +
diff --git a/docs/data/MetricLine-class.html b/docs/data/MetricLine-class.html new file mode 100644 index 0000000000..f68addb73f --- /dev/null +++ b/docs/data/MetricLine-class.html @@ -0,0 +1,227 @@ + + + + + + + + MetricLine class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MetricLine
+ +
+ +
+
+
+
+
+ +

MetricLine class + +

+ + +
+

Class to construct a Metric

+
+ + + + +
+

Constructors

+
+
+ MetricLine(String text, {Severity? severity}) +
+
+ Constructor for the MetricLine class +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ severity + Severity? + + +
+
+ Severity of the Metric +
final
+ +
+ +
+ text + → String + + +
+
+ Message for the Metric +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MetricLine/MetricLine.html b/docs/data/MetricLine/MetricLine.html new file mode 100644 index 0000000000..ba1c97d57a --- /dev/null +++ b/docs/data/MetricLine/MetricLine.html @@ -0,0 +1,113 @@ + + + + + + + + MetricLine constructor - MetricLine - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MetricLine
+ +
+ +
+
+
+
+
+ +

MetricLine constructor +

+ +
+ + MetricLine(
  1. String text, {
  2. +
  3. Severity? severity,
  4. +
}) +
+ +
+

Constructor for the MetricLine class

+
+ + + +
+

Implementation

+
MetricLine(this.text, {this.severity});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MetricLine/hashCode.html b/docs/data/MetricLine/hashCode.html new file mode 100644 index 0000000000..2ea07ac9bc --- /dev/null +++ b/docs/data/MetricLine/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - MetricLine class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MetricLine/noSuchMethod.html b/docs/data/MetricLine/noSuchMethod.html new file mode 100644 index 0000000000..33f4879167 --- /dev/null +++ b/docs/data/MetricLine/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - MetricLine class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MetricLine/operator_equals.html b/docs/data/MetricLine/operator_equals.html new file mode 100644 index 0000000000..33b7479d25 --- /dev/null +++ b/docs/data/MetricLine/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - MetricLine class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MetricLine/runtimeType.html b/docs/data/MetricLine/runtimeType.html new file mode 100644 index 0000000000..58a842e3ee --- /dev/null +++ b/docs/data/MetricLine/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - MetricLine class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MetricLine/severity.html b/docs/data/MetricLine/severity.html new file mode 100644 index 0000000000..340bc8e9bb --- /dev/null +++ b/docs/data/MetricLine/severity.html @@ -0,0 +1,115 @@ + + + + + + + + severity property - MetricLine class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
severity
+ +
+ +
+
+
+
+
+ +

severity property +

+ + +
+ + Severity? + severity +
final
+ +
+ +
+

Severity of the Metric

+
+ + +
+

Implementation

+
final Severity? severity;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MetricLine/text.html b/docs/data/MetricLine/text.html new file mode 100644 index 0000000000..683bcdec22 --- /dev/null +++ b/docs/data/MetricLine/text.html @@ -0,0 +1,115 @@ + + + + + + + + text property - MetricLine class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
text
+ +
+ +
+
+
+
+
+ +

text property +

+ + +
+ + String + text +
final
+ +
+ +
+

Message for the Metric

+
+ + +
+

Implementation

+
final String text;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MetricLine/toString.html b/docs/data/MetricLine/toString.html new file mode 100644 index 0000000000..22de264952 --- /dev/null +++ b/docs/data/MetricLine/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - MetricLine class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics-class-sidebar.html b/docs/data/Metrics-class-sidebar.html new file mode 100644 index 0000000000..51658fbcaa --- /dev/null +++ b/docs/data/Metrics-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. Metrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. data
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. matchesVersion
  16. +
  17. name
  18. +
  19. overallSeverity
  20. +
  21. runtimeType
  22. +
  23. supportedVersion
  24. +
  25. version
  26. +
  27. versionCommand
  28. + +
  29. Methods
  30. +
  31. addListener
  32. +
  33. checkVersion
  34. +
  35. dispose
  36. +
  37. noSuchMethod
  38. +
  39. notifyListeners
  40. +
  41. parseVersion
  42. +
  43. removeListener
  44. +
  45. toString
  46. +
  47. update
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/data/Metrics-class.html b/docs/data/Metrics-class.html new file mode 100644 index 0000000000..95f74d5bf1 --- /dev/null +++ b/docs/data/Metrics-class.html @@ -0,0 +1,439 @@ + + + + + + + + Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Metrics
+ +
+ +
+
+
+
+
+ +

Metrics<T extends Message> class + abstract + +

+ + +
+

A readout of metrics reported by one of the rover's subsystems.

+

To use this class, create a subclass that extends this class with T as the generated +Protobuf class. For example, to create metrics for the science subsystem, use:

+
class ScienceMetrics extends Metrics<ScienceMessage> { }
+
+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ +
Implementers
+
+ + + + + +
+
+ + +
+

Constructors

+
+
+ Metrics(T data) +
+
+ A const constructor for metrics. +
+
+
+ +
+

Properties

+
+
+ allMetrics + → List<MetricLine> + + +
+
+ A list of user-friendly explanations for each of the metrics. +
no setter
+ +
+ +
+ data + → T + + +
+
+ The underlying data used to get these metrics. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ matchesVersion + → bool + + +
+
+ Whether the Dashboard is certain the firmware matches the right version. +
no setter
+ +
+ +
+ name + → String + + +
+
+ A collective name for this group of metrics (usually the name of the subsystem). +
no setter
+ +
+ +
+ overallSeverity + Severity? + + +
+
+ Fetch the overall Security +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ supportedVersion + Version + + +
+
+ The currently-supported version for this Dashboard. +
no setter
+ +
+ +
+ version + Version + + +
+
+ The version of the data that the firmware sends. +
getter/setter pair
+ +
+ +
+ versionCommand + Message + + +
+
+ A command to notify the firmware of the Dashboard's supportedVersion. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ checkVersion(T data) + → bool + + + +
+
+ Checks this message's version and checks for support. + + +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ parseVersion(T message) + Version + + + +
+
+ Parses the version out of a given data packet. + + +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(T value) + → void + + + +
+
+ Updates data with new data. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/Metrics.html b/docs/data/Metrics/Metrics.html new file mode 100644 index 0000000000..910b381860 --- /dev/null +++ b/docs/data/Metrics/Metrics.html @@ -0,0 +1,112 @@ + + + + + + + + Metrics constructor - Metrics - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Metrics
+ +
+ +
+
+
+
+
+ +

Metrics<T extends Message> constructor +

+ +
+ + Metrics<T extends Message>(
  1. T data
  2. +
) +
+ +
+

A const constructor for metrics.

+
+ + + +
+

Implementation

+
Metrics(this.data);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/allMetrics.html b/docs/data/Metrics/allMetrics.html new file mode 100644 index 0000000000..405b1229ba --- /dev/null +++ b/docs/data/Metrics/allMetrics.html @@ -0,0 +1,123 @@ + + + + + + + + allMetrics property - Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
allMetrics
+ +
+ +
+
+
+
+
+ +

allMetrics property +

+ + + + + +
+
+ + List<MetricLine> + get + allMetrics + + +
+ +
+

A list of user-friendly explanations for each of the metrics.

+

Be sure to store the actual values as fields. This property should be a list of one +user-friendly explanation per metric.

+
+ + +
+

Implementation

+
List<MetricLine> get allMetrics;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/checkVersion.html b/docs/data/Metrics/checkVersion.html new file mode 100644 index 0000000000..68d2879292 --- /dev/null +++ b/docs/data/Metrics/checkVersion.html @@ -0,0 +1,125 @@ + + + + + + + + checkVersion method - Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
checkVersion
+ +
+ +
+
+
+
+
+ +

checkVersion method +

+ +
+ +bool +checkVersion(
  1. T data
  2. +
) + + + +
+ +
+

Checks this message's version and checks for support.

+
+ + + +
+

Implementation

+
bool checkVersion(T data) {
+  if (!models.settings.dashboard.versionChecking) return true;
+  if (data is RoverPosition) return true;
+  final newVersion = parseVersion(data);
+  if (newVersion.hasMajor()) version = newVersion;
+  if (!matchesVersion && newVersion.hasMajor()) {
+    models.home.setMessage(severity: Severity.critical, text: "Received $name v${version.format()}, expected ^${supportedVersion.format()}", permanent: true);
+  }
+  return matchesVersion;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/data.html b/docs/data/Metrics/data.html new file mode 100644 index 0000000000..71854db029 --- /dev/null +++ b/docs/data/Metrics/data.html @@ -0,0 +1,115 @@ + + + + + + + + data property - Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
data
+ +
+ +
+
+
+
+
+ +

data property +

+ + +
+ + T + data +
final
+ +
+ +
+

The underlying data used to get these metrics.

+
+ + +
+

Implementation

+
final T data;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/matchesVersion.html b/docs/data/Metrics/matchesVersion.html new file mode 100644 index 0000000000..beee6875d5 --- /dev/null +++ b/docs/data/Metrics/matchesVersion.html @@ -0,0 +1,121 @@ + + + + + + + + matchesVersion property - Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
matchesVersion
+ +
+ +
+
+
+
+
+ +

matchesVersion property +

+ + + + + +
+
+ + bool + get + matchesVersion + + +
+ +
+

Whether the Dashboard is certain the firmware matches the right version.

+
+ + +
+

Implementation

+
bool get matchesVersion => supportedVersion.isCompatible(version);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/name.html b/docs/data/Metrics/name.html new file mode 100644 index 0000000000..0e58c21488 --- /dev/null +++ b/docs/data/Metrics/name.html @@ -0,0 +1,121 @@ + + + + + + + + name property - Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + + + + +
+
+ + String + get + name + + +
+ +
+

A collective name for this group of metrics (usually the name of the subsystem).

+
+ + +
+

Implementation

+
String get name;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/overallSeverity.html b/docs/data/Metrics/overallSeverity.html new file mode 100644 index 0000000000..bd641dc667 --- /dev/null +++ b/docs/data/Metrics/overallSeverity.html @@ -0,0 +1,126 @@ + + + + + + + + overallSeverity property - Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
overallSeverity
+ +
+ +
+
+
+
+
+ +

overallSeverity property +

+ + + + + +
+
+ + Severity? + get + overallSeverity + + +
+ +
+

Fetch the overall Security

+
+ + +
+

Implementation

+
Severity? get overallSeverity {
+		final indexes = [for (final metric in allMetrics) metric.severity?.index ?? -1];
+		final index = indexes.reduce(max);
+  if (index == -1) return null;
+		return Severity.values[index];
+	}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/parseVersion.html b/docs/data/Metrics/parseVersion.html new file mode 100644 index 0000000000..7bbbc708bd --- /dev/null +++ b/docs/data/Metrics/parseVersion.html @@ -0,0 +1,116 @@ + + + + + + + + parseVersion method - Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseVersion
+ +
+ +
+
+
+
+
+ +

parseVersion abstract method +

+ +
+ +Version +parseVersion(
  1. T message
  2. +
) + + + +
+ +
+

Parses the version out of a given data packet.

+
+ + + +
+

Implementation

+
Version parseVersion(T message);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/supportedVersion.html b/docs/data/Metrics/supportedVersion.html new file mode 100644 index 0000000000..aa0a5652a8 --- /dev/null +++ b/docs/data/Metrics/supportedVersion.html @@ -0,0 +1,121 @@ + + + + + + + + supportedVersion property - Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
supportedVersion
+ +
+ +
+
+
+
+
+ +

supportedVersion property +

+ + + + + +
+
+ + Version + get + supportedVersion + + +
+ +
+

The currently-supported version for this Dashboard.

+
+ + +
+

Implementation

+
Version get supportedVersion;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/update.html b/docs/data/Metrics/update.html new file mode 100644 index 0000000000..f5596aa3f3 --- /dev/null +++ b/docs/data/Metrics/update.html @@ -0,0 +1,121 @@ + + + + + + + + update method - Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
update
+ +
+ +
+
+
+
+
+ +

update method +

+ +
+ +void +update(
  1. T value
  2. +
) + + + +
+ +
+

Updates data with new data.

+
+ + + +
+

Implementation

+
void update(T value) {
+    if (!checkVersion(value)) return;
+	services.files.logData(value);
+	data.mergeFromMessage(value);
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/version.html b/docs/data/Metrics/version.html new file mode 100644 index 0000000000..4b99dde5ce --- /dev/null +++ b/docs/data/Metrics/version.html @@ -0,0 +1,115 @@ + + + + + + + + version property - Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + +
+ + Version + version +
getter/setter pair
+ +
+ +
+

The version of the data that the firmware sends.

+
+ + +
+

Implementation

+
Version version = Version();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Metrics/versionCommand.html b/docs/data/Metrics/versionCommand.html new file mode 100644 index 0000000000..5196341c9f --- /dev/null +++ b/docs/data/Metrics/versionCommand.html @@ -0,0 +1,121 @@ + + + + + + + + versionCommand property - Metrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
versionCommand
+ +
+ +
+
+
+
+
+ +

versionCommand property +

+ + + + + +
+
+ + Message + get + versionCommand + + +
+ +
+

A command to notify the firmware of the Dashboard's supportedVersion.

+
+ + +
+

Implementation

+
Message get versionCommand;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand-class-sidebar.html b/docs/data/MotorCommand-class-sidebar.html new file mode 100644 index 0000000000..c9a2e53242 --- /dev/null +++ b/docs/data/MotorCommand-class-sidebar.html @@ -0,0 +1,82 @@ +
    + +
  1. Constructors
  2. +
  3. MotorCommand
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. angle
  12. +
  13. eventPlugin
  14. +
  15. hashCode
  16. +
  17. info_
  18. +
  19. isFrozen
  20. +
  21. moveRadians
  22. +
  23. moveSteps
  24. +
  25. runtimeType
  26. +
  27. unknownFields
  28. + +
  29. Methods
  30. +
  31. addExtension
  32. +
  33. check
  34. +
  35. clear
  36. +
  37. clearAngle
  38. +
  39. clearExtension
  40. +
  41. clearField
  42. +
  43. clearMoveRadians
  44. +
  45. clearMoveSteps
  46. +
  47. clone
  48. +
  49. copyWith
  50. +
  51. createEmptyInstance
  52. +
  53. createMapField
  54. +
  55. createRepeatedField
  56. +
  57. extensionsAreInitialized
  58. +
  59. freeze
  60. +
  61. getDefaultForField
  62. +
  63. getExtension
  64. +
  65. getField
  66. +
  67. getFieldOrNull
  68. +
  69. getTagNumber
  70. +
  71. hasAngle
  72. +
  73. hasExtension
  74. +
  75. hasField
  76. +
  77. hasMoveRadians
  78. +
  79. hasMoveSteps
  80. +
  81. hasRequiredFields
  82. +
  83. isInitialized
  84. +
  85. mergeFromBuffer
  86. +
  87. mergeFromCodedBufferReader
  88. +
  89. mergeFromJson
  90. +
  91. mergeFromJsonMap
  92. +
  93. mergeFromMessage
  94. +
  95. mergeFromProto3Json
  96. +
  97. mergeUnknownFields
  98. +
  99. noSuchMethod
  100. +
  101. setExtension
  102. +
  103. setField
  104. +
  105. toBuilder
  106. +
  107. toDebugString
  108. +
  109. toProto3Json
  110. +
  111. toString
  112. +
  113. writeToBuffer
  114. +
  115. writeToCodedBufferWriter
  116. +
  117. writeToJson
  118. +
  119. writeToJsonMap
  120. + +
  121. Operators
  122. +
  123. operator ==
  124. + + + + + +
  125. Static methods
  126. +
  127. create
  128. +
  129. createRepeated
  130. +
  131. getDefault
  132. + +
diff --git a/docs/data/MotorCommand-class.html b/docs/data/MotorCommand-class.html new file mode 100644 index 0000000000..1740c961e5 --- /dev/null +++ b/docs/data/MotorCommand-class.html @@ -0,0 +1,933 @@ + + + + + + + + MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MotorCommand
+ +
+ +
+
+
+
+
+ +

MotorCommand class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ MotorCommand({int? moveSteps, double? moveRadians, double? angle}) +
+
+ +
factory
+
+
+ MotorCommand.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ MotorCommand.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ angle + ↔ double + + +
+
+ / An angle to go to. Useful in IK. +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ moveRadians + ↔ double + + +
+
+ Precise control: Move by radians +
getter/setter pair
+ +
+ +
+ moveSteps + ↔ int + + +
+
+ Debug control: Move by individual steps +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearAngle() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearMoveRadians() + → void + + + +
+
+ + + +
+ +
+ clearMoveSteps() + → void + + + +
+
+ + + +
+ +
+ clone() + MotorCommand + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(MotorCommand)) + MotorCommand + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + MotorCommand + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasAngle() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasMoveRadians() + → bool + + + +
+
+ + + +
+ +
+ hasMoveSteps() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + MotorCommand + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<MotorCommand> + + + +
+
+ + + +
+ +
+ getDefault() + MotorCommand + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/MotorCommand.fromBuffer.html b/docs/data/MotorCommand/MotorCommand.fromBuffer.html new file mode 100644 index 0000000000..81ae2370f8 --- /dev/null +++ b/docs/data/MotorCommand/MotorCommand.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + MotorCommand.fromBuffer constructor - MotorCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MotorCommand.fromBuffer
+ +
+ +
+
+
+
+
+ +

MotorCommand.fromBuffer constructor +

+ +
+ + MotorCommand.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory MotorCommand.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/MotorCommand.fromJson.html b/docs/data/MotorCommand/MotorCommand.fromJson.html new file mode 100644 index 0000000000..f14213228e --- /dev/null +++ b/docs/data/MotorCommand/MotorCommand.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + MotorCommand.fromJson constructor - MotorCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MotorCommand.fromJson
+ +
+ +
+
+
+
+
+ +

MotorCommand.fromJson constructor +

+ +
+ + MotorCommand.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory MotorCommand.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/MotorCommand.html b/docs/data/MotorCommand/MotorCommand.html new file mode 100644 index 0000000000..2c9d0e956c --- /dev/null +++ b/docs/data/MotorCommand/MotorCommand.html @@ -0,0 +1,127 @@ + + + + + + + + MotorCommand constructor - MotorCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MotorCommand
+ +
+ +
+
+
+
+
+ +

MotorCommand constructor +

+ +
+ + MotorCommand({
  1. int? moveSteps,
  2. +
  3. double? moveRadians,
  4. +
  5. double? angle,
  6. +
}) +
+ + + + +
+

Implementation

+
factory MotorCommand({
+  $core.int? moveSteps,
+  $core.double? moveRadians,
+  $core.double? angle,
+}) {
+  final $result = create();
+  if (moveSteps != null) {
+    $result.moveSteps = moveSteps;
+  }
+  if (moveRadians != null) {
+    $result.moveRadians = moveRadians;
+  }
+  if (angle != null) {
+    $result.angle = angle;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/angle.html b/docs/data/MotorCommand/angle.html new file mode 100644 index 0000000000..ce8a27ed40 --- /dev/null +++ b/docs/data/MotorCommand/angle.html @@ -0,0 +1,153 @@ + + + + + + + + angle property - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
angle
+ +
+ +
+
+
+
+
+ +

angle property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + get + angle + + +
+ +
+

/ An angle to go to. Useful in IK.

+
+ + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get angle => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + angle + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set angle($core.double v) { $_setFloat(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/clearAngle.html b/docs/data/MotorCommand/clearAngle.html new file mode 100644 index 0000000000..46a1dd4ae3 --- /dev/null +++ b/docs/data/MotorCommand/clearAngle.html @@ -0,0 +1,118 @@ + + + + + + + + clearAngle method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearAngle
+ +
+ +
+
+
+
+
+ +

clearAngle method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearAngle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearAngle() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/clearMoveRadians.html b/docs/data/MotorCommand/clearMoveRadians.html new file mode 100644 index 0000000000..3618130aee --- /dev/null +++ b/docs/data/MotorCommand/clearMoveRadians.html @@ -0,0 +1,118 @@ + + + + + + + + clearMoveRadians method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearMoveRadians
+ +
+ +
+
+
+
+
+ +

clearMoveRadians method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearMoveRadians() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearMoveRadians() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/clearMoveSteps.html b/docs/data/MotorCommand/clearMoveSteps.html new file mode 100644 index 0000000000..353ef67702 --- /dev/null +++ b/docs/data/MotorCommand/clearMoveSteps.html @@ -0,0 +1,118 @@ + + + + + + + + clearMoveSteps method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearMoveSteps
+ +
+ +
+
+
+
+
+ +

clearMoveSteps method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearMoveSteps() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearMoveSteps() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/clone.html b/docs/data/MotorCommand/clone.html new file mode 100644 index 0000000000..1eeda0bca2 --- /dev/null +++ b/docs/data/MotorCommand/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+MotorCommand +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+MotorCommand clone() => MotorCommand()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/copyWith.html b/docs/data/MotorCommand/copyWith.html new file mode 100644 index 0000000000..d022a51710 --- /dev/null +++ b/docs/data/MotorCommand/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+MotorCommand +copyWith(
  1. void updates(
    1. MotorCommand
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+MotorCommand copyWith(void Function(MotorCommand) updates) => super.copyWith((message) => updates(message as MotorCommand)) as MotorCommand;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/create.html b/docs/data/MotorCommand/create.html new file mode 100644 index 0000000000..66113273cb --- /dev/null +++ b/docs/data/MotorCommand/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +MotorCommand +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static MotorCommand create() => MotorCommand._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/createEmptyInstance.html b/docs/data/MotorCommand/createEmptyInstance.html new file mode 100644 index 0000000000..524727cf1a --- /dev/null +++ b/docs/data/MotorCommand/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +MotorCommand +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
MotorCommand createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/createRepeated.html b/docs/data/MotorCommand/createRepeated.html new file mode 100644 index 0000000000..03a6c98d29 --- /dev/null +++ b/docs/data/MotorCommand/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<MotorCommand> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<MotorCommand> createRepeated() => $pb.PbList<MotorCommand>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/getDefault.html b/docs/data/MotorCommand/getDefault.html new file mode 100644 index 0000000000..e1b3565b66 --- /dev/null +++ b/docs/data/MotorCommand/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +MotorCommand +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static MotorCommand getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<MotorCommand>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/hasAngle.html b/docs/data/MotorCommand/hasAngle.html new file mode 100644 index 0000000000..42aaf2e4ad --- /dev/null +++ b/docs/data/MotorCommand/hasAngle.html @@ -0,0 +1,118 @@ + + + + + + + + hasAngle method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasAngle
+ +
+ +
+
+
+
+
+ +

hasAngle method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasAngle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasAngle() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/hasMoveRadians.html b/docs/data/MotorCommand/hasMoveRadians.html new file mode 100644 index 0000000000..30f0bf6c80 --- /dev/null +++ b/docs/data/MotorCommand/hasMoveRadians.html @@ -0,0 +1,118 @@ + + + + + + + + hasMoveRadians method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasMoveRadians
+ +
+ +
+
+
+
+
+ +

hasMoveRadians method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasMoveRadians() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasMoveRadians() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/hasMoveSteps.html b/docs/data/MotorCommand/hasMoveSteps.html new file mode 100644 index 0000000000..54bf9d60ee --- /dev/null +++ b/docs/data/MotorCommand/hasMoveSteps.html @@ -0,0 +1,118 @@ + + + + + + + + hasMoveSteps method - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasMoveSteps
+ +
+ +
+
+
+
+
+ +

hasMoveSteps method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasMoveSteps() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasMoveSteps() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/info_.html b/docs/data/MotorCommand/info_.html new file mode 100644 index 0000000000..62be31eeb9 --- /dev/null +++ b/docs/data/MotorCommand/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/moveRadians.html b/docs/data/MotorCommand/moveRadians.html new file mode 100644 index 0000000000..07ff2cd36a --- /dev/null +++ b/docs/data/MotorCommand/moveRadians.html @@ -0,0 +1,153 @@ + + + + + + + + moveRadians property - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
moveRadians
+ +
+ +
+
+
+
+
+ +

moveRadians property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + get + moveRadians + + +
+ +
+

Precise control: Move by radians

+
+ + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get moveRadians => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + moveRadians + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set moveRadians($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorCommand/moveSteps.html b/docs/data/MotorCommand/moveSteps.html new file mode 100644 index 0000000000..d13bf463ee --- /dev/null +++ b/docs/data/MotorCommand/moveSteps.html @@ -0,0 +1,153 @@ + + + + + + + + moveSteps property - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
moveSteps
+ +
+ +
+
+
+
+
+ +

moveSteps property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ int + get + moveSteps + + +
+ +
+

Debug control: Move by individual steps

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.int get moveSteps => $_getIZ(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + moveSteps + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set moveSteps($core.int v) { $_setSignedInt32(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData-class-sidebar.html b/docs/data/MotorData-class-sidebar.html new file mode 100644 index 0000000000..38862e4076 --- /dev/null +++ b/docs/data/MotorData-class-sidebar.html @@ -0,0 +1,91 @@ +
    + +
  1. Constructors
  2. +
  3. MotorData
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. angle
  12. +
  13. currentStep
  14. +
  15. direction
  16. +
  17. eventPlugin
  18. +
  19. hashCode
  20. +
  21. info_
  22. +
  23. isFrozen
  24. +
  25. isLimitSwitchPressed
  26. +
  27. isMoving
  28. +
  29. runtimeType
  30. +
  31. targetStep
  32. +
  33. unknownFields
  34. + +
  35. Methods
  36. +
  37. addExtension
  38. +
  39. check
  40. +
  41. clear
  42. +
  43. clearAngle
  44. +
  45. clearCurrentStep
  46. +
  47. clearDirection
  48. +
  49. clearExtension
  50. +
  51. clearField
  52. +
  53. clearIsLimitSwitchPressed
  54. +
  55. clearIsMoving
  56. +
  57. clearTargetStep
  58. +
  59. clone
  60. +
  61. copyWith
  62. +
  63. createEmptyInstance
  64. +
  65. createMapField
  66. +
  67. createRepeatedField
  68. +
  69. extensionsAreInitialized
  70. +
  71. freeze
  72. +
  73. getDefaultForField
  74. +
  75. getExtension
  76. +
  77. getField
  78. +
  79. getFieldOrNull
  80. +
  81. getTagNumber
  82. +
  83. hasAngle
  84. +
  85. hasCurrentStep
  86. +
  87. hasDirection
  88. +
  89. hasExtension
  90. +
  91. hasField
  92. +
  93. hasIsLimitSwitchPressed
  94. +
  95. hasIsMoving
  96. +
  97. hasRequiredFields
  98. +
  99. hasTargetStep
  100. +
  101. isInitialized
  102. +
  103. mergeFromBuffer
  104. +
  105. mergeFromCodedBufferReader
  106. +
  107. mergeFromJson
  108. +
  109. mergeFromJsonMap
  110. +
  111. mergeFromMessage
  112. +
  113. mergeFromProto3Json
  114. +
  115. mergeUnknownFields
  116. +
  117. noSuchMethod
  118. +
  119. setExtension
  120. +
  121. setField
  122. +
  123. toBuilder
  124. +
  125. toDebugString
  126. +
  127. toProto3Json
  128. +
  129. toString
  130. +
  131. writeToBuffer
  132. +
  133. writeToCodedBufferWriter
  134. +
  135. writeToJson
  136. +
  137. writeToJsonMap
  138. + +
  139. Operators
  140. +
  141. operator ==
  142. + + + + + +
  143. Static methods
  144. +
  145. create
  146. +
  147. createRepeated
  148. +
  149. getDefault
  150. + +
diff --git a/docs/data/MotorData-class.html b/docs/data/MotorData-class.html new file mode 100644 index 0000000000..4ac763c0a0 --- /dev/null +++ b/docs/data/MotorData-class.html @@ -0,0 +1,1047 @@ + + + + + + + + MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MotorData
+ +
+ +
+
+
+
+
+ +

MotorData class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ MotorData({BoolState? isMoving, BoolState? isLimitSwitchPressed, MotorDirection? direction, int? currentStep, int? targetStep, double? angle}) +
+
+ +
factory
+
+
+ MotorData.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ MotorData.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ angle + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ currentStep + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ direction + MotorDirection + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ isLimitSwitchPressed + BoolState + + +
+
+ +
getter/setter pair
+ +
+ +
+ isMoving + BoolState + + +
+
+ +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ targetStep + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearAngle() + → void + + + +
+
+ + + +
+ +
+ clearCurrentStep() + → void + + + +
+
+ + + +
+ +
+ clearDirection() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearIsLimitSwitchPressed() + → void + + + +
+
+ + + +
+ +
+ clearIsMoving() + → void + + + +
+
+ + + +
+ +
+ clearTargetStep() + → void + + + +
+
+ + + +
+ +
+ clone() + MotorData + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(MotorData)) + MotorData + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + MotorData + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasAngle() + → bool + + + +
+
+ + + +
+ +
+ hasCurrentStep() + → bool + + + +
+
+ + + +
+ +
+ hasDirection() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasIsLimitSwitchPressed() + → bool + + + +
+
+ + + +
+ +
+ hasIsMoving() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasTargetStep() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + MotorData + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<MotorData> + + + +
+
+ + + +
+ +
+ getDefault() + MotorData + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/MotorData.fromBuffer.html b/docs/data/MotorData/MotorData.fromBuffer.html new file mode 100644 index 0000000000..cfcb4279ea --- /dev/null +++ b/docs/data/MotorData/MotorData.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + MotorData.fromBuffer constructor - MotorData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MotorData.fromBuffer
+ +
+ +
+
+
+
+
+ +

MotorData.fromBuffer constructor +

+ +
+ + MotorData.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory MotorData.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/MotorData.fromJson.html b/docs/data/MotorData/MotorData.fromJson.html new file mode 100644 index 0000000000..83bec0cd2e --- /dev/null +++ b/docs/data/MotorData/MotorData.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + MotorData.fromJson constructor - MotorData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MotorData.fromJson
+ +
+ +
+
+
+
+
+ +

MotorData.fromJson constructor +

+ +
+ + MotorData.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory MotorData.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/MotorData.html b/docs/data/MotorData/MotorData.html new file mode 100644 index 0000000000..15106fc19d --- /dev/null +++ b/docs/data/MotorData/MotorData.html @@ -0,0 +1,142 @@ + + + + + + + + MotorData constructor - MotorData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MotorData
+ +
+ +
+
+
+
+
+ +

MotorData constructor +

+ +
+ + MotorData({
  1. BoolState? isMoving,
  2. +
  3. BoolState? isLimitSwitchPressed,
  4. +
  5. MotorDirection? direction,
  6. +
  7. int? currentStep,
  8. +
  9. int? targetStep,
  10. +
  11. double? angle,
  12. +
}) +
+ + + + +
+

Implementation

+
factory MotorData({
+  $1.BoolState? isMoving,
+  $1.BoolState? isLimitSwitchPressed,
+  MotorDirection? direction,
+  $core.int? currentStep,
+  $core.int? targetStep,
+  $core.double? angle,
+}) {
+  final $result = create();
+  if (isMoving != null) {
+    $result.isMoving = isMoving;
+  }
+  if (isLimitSwitchPressed != null) {
+    $result.isLimitSwitchPressed = isLimitSwitchPressed;
+  }
+  if (direction != null) {
+    $result.direction = direction;
+  }
+  if (currentStep != null) {
+    $result.currentStep = currentStep;
+  }
+  if (targetStep != null) {
+    $result.targetStep = targetStep;
+  }
+  if (angle != null) {
+    $result.angle = angle;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/angle.html b/docs/data/MotorData/angle.html new file mode 100644 index 0000000000..a19b52e6fe --- /dev/null +++ b/docs/data/MotorData/angle.html @@ -0,0 +1,150 @@ + + + + + + + + angle property - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
angle
+ +
+ +
+
+
+
+
+ +

angle property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ double + get + angle + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.double get angle => $_getN(5);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ set + angle + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+set angle($core.double v) { $_setFloat(5, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/clearAngle.html b/docs/data/MotorData/clearAngle.html new file mode 100644 index 0000000000..0220ea29c1 --- /dev/null +++ b/docs/data/MotorData/clearAngle.html @@ -0,0 +1,118 @@ + + + + + + + + clearAngle method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearAngle
+ +
+ +
+
+
+
+
+ +

clearAngle method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+void +clearAngle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+void clearAngle() => clearField(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/clearCurrentStep.html b/docs/data/MotorData/clearCurrentStep.html new file mode 100644 index 0000000000..e3948e5890 --- /dev/null +++ b/docs/data/MotorData/clearCurrentStep.html @@ -0,0 +1,118 @@ + + + + + + + + clearCurrentStep method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearCurrentStep
+ +
+ +
+
+
+
+
+ +

clearCurrentStep method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearCurrentStep() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearCurrentStep() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/clearDirection.html b/docs/data/MotorData/clearDirection.html new file mode 100644 index 0000000000..1d39c6d49d --- /dev/null +++ b/docs/data/MotorData/clearDirection.html @@ -0,0 +1,118 @@ + + + + + + + + clearDirection method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearDirection
+ +
+ +
+
+
+
+
+ +

clearDirection method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearDirection() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearDirection() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/clearIsLimitSwitchPressed.html b/docs/data/MotorData/clearIsLimitSwitchPressed.html new file mode 100644 index 0000000000..75e5905869 --- /dev/null +++ b/docs/data/MotorData/clearIsLimitSwitchPressed.html @@ -0,0 +1,118 @@ + + + + + + + + clearIsLimitSwitchPressed method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearIsLimitSwitchPressed
+ +
+ +
+
+
+
+
+ +

clearIsLimitSwitchPressed method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearIsLimitSwitchPressed() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearIsLimitSwitchPressed() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/clearIsMoving.html b/docs/data/MotorData/clearIsMoving.html new file mode 100644 index 0000000000..bb2c6cd778 --- /dev/null +++ b/docs/data/MotorData/clearIsMoving.html @@ -0,0 +1,118 @@ + + + + + + + + clearIsMoving method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearIsMoving
+ +
+ +
+
+
+
+
+ +

clearIsMoving method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearIsMoving() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearIsMoving() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/clearTargetStep.html b/docs/data/MotorData/clearTargetStep.html new file mode 100644 index 0000000000..b1abe29052 --- /dev/null +++ b/docs/data/MotorData/clearTargetStep.html @@ -0,0 +1,118 @@ + + + + + + + + clearTargetStep method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearTargetStep
+ +
+ +
+
+
+
+
+ +

clearTargetStep method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearTargetStep() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearTargetStep() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/clone.html b/docs/data/MotorData/clone.html new file mode 100644 index 0000000000..9f389a9a72 --- /dev/null +++ b/docs/data/MotorData/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+MotorData +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+MotorData clone() => MotorData()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/copyWith.html b/docs/data/MotorData/copyWith.html new file mode 100644 index 0000000000..a79bf5bc73 --- /dev/null +++ b/docs/data/MotorData/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+MotorData +copyWith(
  1. void updates(
    1. MotorData
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+MotorData copyWith(void Function(MotorData) updates) => super.copyWith((message) => updates(message as MotorData)) as MotorData;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/create.html b/docs/data/MotorData/create.html new file mode 100644 index 0000000000..879fbe7811 --- /dev/null +++ b/docs/data/MotorData/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +MotorData +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static MotorData create() => MotorData._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/createEmptyInstance.html b/docs/data/MotorData/createEmptyInstance.html new file mode 100644 index 0000000000..fd86844ad1 --- /dev/null +++ b/docs/data/MotorData/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +MotorData +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
MotorData createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/createRepeated.html b/docs/data/MotorData/createRepeated.html new file mode 100644 index 0000000000..0ef25f500c --- /dev/null +++ b/docs/data/MotorData/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<MotorData> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<MotorData> createRepeated() => $pb.PbList<MotorData>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/currentStep.html b/docs/data/MotorData/currentStep.html new file mode 100644 index 0000000000..736e7b1565 --- /dev/null +++ b/docs/data/MotorData/currentStep.html @@ -0,0 +1,150 @@ + + + + + + + + currentStep property - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
currentStep
+ +
+ +
+
+
+
+
+ +

currentStep property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ int + get + currentStep + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.int get currentStep => $_getIZ(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + currentStep + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set currentStep($core.int v) { $_setSignedInt32(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/direction.html b/docs/data/MotorData/direction.html new file mode 100644 index 0000000000..c107bd491c --- /dev/null +++ b/docs/data/MotorData/direction.html @@ -0,0 +1,150 @@ + + + + + + + + direction property - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
direction
+ +
+ +
+
+
+
+
+ +

direction property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ MotorDirection + get + direction + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+MotorDirection get direction => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + direction + (MotorDirection v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set direction(MotorDirection v) { setField(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/getDefault.html b/docs/data/MotorData/getDefault.html new file mode 100644 index 0000000000..1dbb41673c --- /dev/null +++ b/docs/data/MotorData/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +MotorData +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static MotorData getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<MotorData>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/hasAngle.html b/docs/data/MotorData/hasAngle.html new file mode 100644 index 0000000000..d9074aeb6a --- /dev/null +++ b/docs/data/MotorData/hasAngle.html @@ -0,0 +1,118 @@ + + + + + + + + hasAngle method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasAngle
+ +
+ +
+
+
+
+
+ +

hasAngle method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+bool +hasAngle() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool hasAngle() => $_has(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/hasCurrentStep.html b/docs/data/MotorData/hasCurrentStep.html new file mode 100644 index 0000000000..f0185d3d56 --- /dev/null +++ b/docs/data/MotorData/hasCurrentStep.html @@ -0,0 +1,118 @@ + + + + + + + + hasCurrentStep method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasCurrentStep
+ +
+ +
+
+
+
+
+ +

hasCurrentStep method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasCurrentStep() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasCurrentStep() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/hasDirection.html b/docs/data/MotorData/hasDirection.html new file mode 100644 index 0000000000..5e5828ef0b --- /dev/null +++ b/docs/data/MotorData/hasDirection.html @@ -0,0 +1,118 @@ + + + + + + + + hasDirection method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasDirection
+ +
+ +
+
+
+
+
+ +

hasDirection method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasDirection() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasDirection() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/hasIsLimitSwitchPressed.html b/docs/data/MotorData/hasIsLimitSwitchPressed.html new file mode 100644 index 0000000000..6d04c912fd --- /dev/null +++ b/docs/data/MotorData/hasIsLimitSwitchPressed.html @@ -0,0 +1,118 @@ + + + + + + + + hasIsLimitSwitchPressed method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasIsLimitSwitchPressed
+ +
+ +
+
+
+
+
+ +

hasIsLimitSwitchPressed method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasIsLimitSwitchPressed() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasIsLimitSwitchPressed() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/hasIsMoving.html b/docs/data/MotorData/hasIsMoving.html new file mode 100644 index 0000000000..1ff03e211c --- /dev/null +++ b/docs/data/MotorData/hasIsMoving.html @@ -0,0 +1,118 @@ + + + + + + + + hasIsMoving method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasIsMoving
+ +
+ +
+
+
+
+
+ +

hasIsMoving method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasIsMoving() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasIsMoving() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/hasTargetStep.html b/docs/data/MotorData/hasTargetStep.html new file mode 100644 index 0000000000..c0d2725caa --- /dev/null +++ b/docs/data/MotorData/hasTargetStep.html @@ -0,0 +1,118 @@ + + + + + + + + hasTargetStep method - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasTargetStep
+ +
+ +
+
+
+
+
+ +

hasTargetStep method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasTargetStep() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasTargetStep() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/info_.html b/docs/data/MotorData/info_.html new file mode 100644 index 0000000000..8c1b5755c1 --- /dev/null +++ b/docs/data/MotorData/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/isLimitSwitchPressed.html b/docs/data/MotorData/isLimitSwitchPressed.html new file mode 100644 index 0000000000..02c0f5e12d --- /dev/null +++ b/docs/data/MotorData/isLimitSwitchPressed.html @@ -0,0 +1,150 @@ + + + + + + + + isLimitSwitchPressed property - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isLimitSwitchPressed
+ +
+ +
+
+
+
+
+ +

isLimitSwitchPressed property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ BoolState + get + isLimitSwitchPressed + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$1.BoolState get isLimitSwitchPressed => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + isLimitSwitchPressed + (BoolState v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set isLimitSwitchPressed($1.BoolState v) { setField(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/isMoving.html b/docs/data/MotorData/isMoving.html new file mode 100644 index 0000000000..a8e8112dcc --- /dev/null +++ b/docs/data/MotorData/isMoving.html @@ -0,0 +1,150 @@ + + + + + + + + isMoving property - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isMoving
+ +
+ +
+
+
+
+
+ +

isMoving property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ BoolState + get + isMoving + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+$1.BoolState get isMoving => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + isMoving + (BoolState v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set isMoving($1.BoolState v) { setField(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorData/targetStep.html b/docs/data/MotorData/targetStep.html new file mode 100644 index 0000000000..fcf95c2188 --- /dev/null +++ b/docs/data/MotorData/targetStep.html @@ -0,0 +1,150 @@ + + + + + + + + targetStep property - MotorData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
targetStep
+ +
+ +
+
+
+
+
+ +

targetStep property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ int + get + targetStep + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.int get targetStep => $_getIZ(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + targetStep + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set targetStep($core.int v) { $_setSignedInt32(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection-class-sidebar.html b/docs/data/MotorDirection-class-sidebar.html new file mode 100644 index 0000000000..b8abbcb0bc --- /dev/null +++ b/docs/data/MotorDirection-class-sidebar.html @@ -0,0 +1,40 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. CLOCKWISE
  28. +
  29. CLOSING
  30. +
  31. COUNTER_CLOCKWISE
  32. +
  33. DOWN
  34. +
  35. LEFT
  36. +
  37. MOTOR_DIRECTION_UNDEFINED
  38. +
  39. NOT_MOVING
  40. +
  41. OPENING
  42. +
  43. RIGHT
  44. +
  45. UP
  46. +
  47. values
  48. +
diff --git a/docs/data/MotorDirection-class.html b/docs/data/MotorDirection-class.html new file mode 100644 index 0000000000..ee951fac4d --- /dev/null +++ b/docs/data/MotorDirection-class.html @@ -0,0 +1,394 @@ + + + + + + + + MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MotorDirection
+ +
+ +
+
+
+
+
+ +

MotorDirection class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + MotorDirection? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ CLOCKWISE + → const MotorDirection + + +
+
+ + + +
+ +
+ CLOSING + → const MotorDirection + + +
+
+ + + +
+ +
+ COUNTER_CLOCKWISE + → const MotorDirection + + +
+
+ + + +
+ +
+ DOWN + → const MotorDirection + + +
+
+ + + +
+ +
+ LEFT + → const MotorDirection + + +
+
+ + + +
+ +
+ MOTOR_DIRECTION_UNDEFINED + → const MotorDirection + + +
+
+ + + +
+ +
+ NOT_MOVING + → const MotorDirection + + +
+
+ + + +
+ +
+ OPENING + → const MotorDirection + + +
+
+ + + +
+ + +
+ + + +
+ +
+ UP + → const MotorDirection + + +
+
+ + + +
+ +
+ values + → const List<MotorDirection> + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/CLOCKWISE-constant.html b/docs/data/MotorDirection/CLOCKWISE-constant.html new file mode 100644 index 0000000000..a98d7c9afc --- /dev/null +++ b/docs/data/MotorDirection/CLOCKWISE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CLOCKWISE constant - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CLOCKWISE
+ +
+ +
+
+
+
+
+ +

CLOCKWISE constant +

+ + +
+ + MotorDirection + const CLOCKWISE + + +
+ + + +
+

Implementation

+
static const MotorDirection CLOCKWISE = MotorDirection._(5, _omitEnumNames ? '' : 'CLOCKWISE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/CLOSING-constant.html b/docs/data/MotorDirection/CLOSING-constant.html new file mode 100644 index 0000000000..9e3a43fc3b --- /dev/null +++ b/docs/data/MotorDirection/CLOSING-constant.html @@ -0,0 +1,112 @@ + + + + + + + + CLOSING constant - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CLOSING
+ +
+ +
+
+
+
+
+ +

CLOSING constant +

+ + +
+ + MotorDirection + const CLOSING + + +
+ + + +
+

Implementation

+
static const MotorDirection CLOSING = MotorDirection._(8, _omitEnumNames ? '' : 'CLOSING');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/COUNTER_CLOCKWISE-constant.html b/docs/data/MotorDirection/COUNTER_CLOCKWISE-constant.html new file mode 100644 index 0000000000..8b69839fff --- /dev/null +++ b/docs/data/MotorDirection/COUNTER_CLOCKWISE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + COUNTER_CLOCKWISE constant - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
COUNTER_CLOCKWISE
+ +
+ +
+
+
+
+
+ +

COUNTER_CLOCKWISE constant +

+ + +
+ + MotorDirection + const COUNTER_CLOCKWISE + + +
+ + + +
+

Implementation

+
static const MotorDirection COUNTER_CLOCKWISE = MotorDirection._(6, _omitEnumNames ? '' : 'COUNTER_CLOCKWISE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/DOWN-constant.html b/docs/data/MotorDirection/DOWN-constant.html new file mode 100644 index 0000000000..40a3fb0877 --- /dev/null +++ b/docs/data/MotorDirection/DOWN-constant.html @@ -0,0 +1,112 @@ + + + + + + + + DOWN constant - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DOWN
+ +
+ +
+
+
+
+
+ +

DOWN constant +

+ + +
+ + MotorDirection + const DOWN + + +
+ + + +
+

Implementation

+
static const MotorDirection DOWN = MotorDirection._(2, _omitEnumNames ? '' : 'DOWN');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/LEFT-constant.html b/docs/data/MotorDirection/LEFT-constant.html new file mode 100644 index 0000000000..0847094d63 --- /dev/null +++ b/docs/data/MotorDirection/LEFT-constant.html @@ -0,0 +1,112 @@ + + + + + + + + LEFT constant - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LEFT
+ +
+ +
+
+
+
+
+ +

LEFT constant +

+ + +
+ + MotorDirection + const LEFT + + +
+ + + +
+

Implementation

+
static const MotorDirection LEFT = MotorDirection._(3, _omitEnumNames ? '' : 'LEFT');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/MOTOR_DIRECTION_UNDEFINED-constant.html b/docs/data/MotorDirection/MOTOR_DIRECTION_UNDEFINED-constant.html new file mode 100644 index 0000000000..0e1f529845 --- /dev/null +++ b/docs/data/MotorDirection/MOTOR_DIRECTION_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + MOTOR_DIRECTION_UNDEFINED constant - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MOTOR_DIRECTION_UNDEFINED
+ +
+ +
+
+
+
+
+ +

MOTOR_DIRECTION_UNDEFINED constant +

+ + +
+ + MotorDirection + const MOTOR_DIRECTION_UNDEFINED + + +
+ + + +
+

Implementation

+
static const MotorDirection MOTOR_DIRECTION_UNDEFINED = MotorDirection._(0, _omitEnumNames ? '' : 'MOTOR_DIRECTION_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/NOT_MOVING-constant.html b/docs/data/MotorDirection/NOT_MOVING-constant.html new file mode 100644 index 0000000000..f5193c9b8f --- /dev/null +++ b/docs/data/MotorDirection/NOT_MOVING-constant.html @@ -0,0 +1,112 @@ + + + + + + + + NOT_MOVING constant - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NOT_MOVING
+ +
+ +
+
+
+
+
+ +

NOT_MOVING constant +

+ + +
+ + MotorDirection + const NOT_MOVING + + +
+ + + +
+

Implementation

+
static const MotorDirection NOT_MOVING = MotorDirection._(9, _omitEnumNames ? '' : 'NOT_MOVING');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/OPENING-constant.html b/docs/data/MotorDirection/OPENING-constant.html new file mode 100644 index 0000000000..64960a8490 --- /dev/null +++ b/docs/data/MotorDirection/OPENING-constant.html @@ -0,0 +1,112 @@ + + + + + + + + OPENING constant - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
OPENING
+ +
+ +
+
+
+
+
+ +

OPENING constant +

+ + +
+ + MotorDirection + const OPENING + + +
+ + + +
+

Implementation

+
static const MotorDirection OPENING = MotorDirection._(7, _omitEnumNames ? '' : 'OPENING');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/RIGHT-constant.html b/docs/data/MotorDirection/RIGHT-constant.html new file mode 100644 index 0000000000..1d383ed642 --- /dev/null +++ b/docs/data/MotorDirection/RIGHT-constant.html @@ -0,0 +1,112 @@ + + + + + + + + RIGHT constant - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RIGHT
+ +
+ +
+
+
+
+
+ +

RIGHT constant +

+ + +
+ + MotorDirection + const RIGHT + + +
+ + + +
+

Implementation

+
static const MotorDirection RIGHT = MotorDirection._(4, _omitEnumNames ? '' : 'RIGHT');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/UP-constant.html b/docs/data/MotorDirection/UP-constant.html new file mode 100644 index 0000000000..996bc46a5d --- /dev/null +++ b/docs/data/MotorDirection/UP-constant.html @@ -0,0 +1,112 @@ + + + + + + + + UP constant - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
UP
+ +
+ +
+
+
+
+
+ +

UP constant +

+ + +
+ + MotorDirection + const UP + + +
+ + + +
+

Implementation

+
static const MotorDirection UP = MotorDirection._(1, _omitEnumNames ? '' : 'UP');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/valueOf.html b/docs/data/MotorDirection/valueOf.html new file mode 100644 index 0000000000..a7cc442a95 --- /dev/null +++ b/docs/data/MotorDirection/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +MotorDirection? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static MotorDirection? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirection/values-constant.html b/docs/data/MotorDirection/values-constant.html new file mode 100644 index 0000000000..6d52d43f56 --- /dev/null +++ b/docs/data/MotorDirection/values-constant.html @@ -0,0 +1,123 @@ + + + + + + + + values constant - MotorDirection class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<MotorDirection> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<MotorDirection> values = <MotorDirection> [
+  MOTOR_DIRECTION_UNDEFINED,
+  UP,
+  DOWN,
+  LEFT,
+  RIGHT,
+  CLOCKWISE,
+  COUNTER_CLOCKWISE,
+  OPENING,
+  CLOSING,
+  NOT_MOVING,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/MotorDirectionUtils-extension-sidebar.html b/docs/data/MotorDirectionUtils-extension-sidebar.html new file mode 100644 index 0000000000..766a783258 --- /dev/null +++ b/docs/data/MotorDirectionUtils-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. + + + + + + +
diff --git a/docs/data/MotorDirectionUtils.html b/docs/data/MotorDirectionUtils.html new file mode 100644 index 0000000000..2866751a95 --- /dev/null +++ b/docs/data/MotorDirectionUtils.html @@ -0,0 +1,139 @@ + + + + + + + + MotorDirectionUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MotorDirectionUtils
+ +
+ +
+
+
+
+
+ +

MotorDirectionUtils extension + +

+ + +
+

Utilities for MotorDirections.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ humanName + → String + + +
+
+ The human-readable name of the direction +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/MotorDirectionUtils/humanName.html b/docs/data/MotorDirectionUtils/humanName.html new file mode 100644 index 0000000000..a5bfdb188a --- /dev/null +++ b/docs/data/MotorDirectionUtils/humanName.html @@ -0,0 +1,136 @@ + + + + + + + + humanName property - MotorDirectionUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

The human-readable name of the direction

+
+ + +
+

Implementation

+
String get humanName {
+	switch (this) {
+		case MotorDirection.MOTOR_DIRECTION_UNDEFINED: return "Unknown";
+		case MotorDirection.UP: return "Up";
+		case MotorDirection.DOWN: return "Down";
+		case MotorDirection.LEFT: return "Left";
+		case MotorDirection.RIGHT: return "Right";
+		case MotorDirection.CLOCKWISE: return "Clockwise";
+		case MotorDirection.COUNTER_CLOCKWISE: return "Counter clockwise";
+		case MotorDirection.OPENING: return "Opening";
+		case MotorDirection.CLOSING: return "Closing";
+		case MotorDirection.NOT_MOVING: return "Not moving";
+	}
+	// Do not use default or else you'll lose exhaustiveness checking.
+	throw ArgumentError("Unrecognized MotorDirection: $this");
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings-class-sidebar.html b/docs/data/NetworkSettings-class-sidebar.html new file mode 100644 index 0000000000..3fc9c70339 --- /dev/null +++ b/docs/data/NetworkSettings-class-sidebar.html @@ -0,0 +1,33 @@ +
    + +
  1. Constructors
  2. +
  3. NetworkSettings
  4. +
  5. fromJson
  6. + + + +
  7. + Properties +
  8. +
  9. autonomySocket
  10. +
  11. connectionTimeout
  12. +
  13. hashCode
  14. +
  15. runtimeType
  16. +
  17. subsystemsSocket
  18. +
  19. tankSocket
  20. +
  21. videoSocket
  22. + +
  23. Methods
  24. +
  25. noSuchMethod
  26. +
  27. toJson
  28. +
  29. toString
  30. + +
  31. Operators
  32. +
  33. operator ==
  34. + + + + + + +
diff --git a/docs/data/NetworkSettings-class.html b/docs/data/NetworkSettings-class.html new file mode 100644 index 0000000000..cb3dc3c464 --- /dev/null +++ b/docs/data/NetworkSettings-class.html @@ -0,0 +1,284 @@ + + + + + + + + NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NetworkSettings
+ +
+ +
+
+
+
+
+ +

NetworkSettings class + +

+ + +
+

Settings related to network configuration.

+
+ + + + +
+

Constructors

+
+
+ NetworkSettings({required SocketInfo subsystemsSocket, required SocketInfo videoSocket, required SocketInfo autonomySocket, required SocketInfo tankSocket, required double connectionTimeout}) +
+
+ Creates a new network settings object. +
+
+ NetworkSettings.fromJson(Json? json) +
+
+ Parses network settings from a JSON map. +
+
+
+ +
+

Properties

+
+
+ autonomySocket + SocketInfo + + +
+
+ The address and port of the autonomy program. +
final
+ +
+ +
+ connectionTimeout + → double + + +
+
+ The amount of time, in seconds, the dashboard should wait before determining it's +lost connection to the rover. For reference, the rover should be sending messages +at least once per second. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ subsystemsSocket + SocketInfo + + +
+
+ The address and port of the subsystems program. +
final
+ +
+ +
+ tankSocket + SocketInfo + + +
+
+ The address of the tank. The port is ignored. +
final
+ +
+ +
+ videoSocket + SocketInfo + + +
+
+ The address and port of the video program. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toJson() + Json + + + +
+
+ Serializes these settings to JSON. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/NetworkSettings.fromJson.html b/docs/data/NetworkSettings/NetworkSettings.fromJson.html new file mode 100644 index 0000000000..ae8ea8db0d --- /dev/null +++ b/docs/data/NetworkSettings/NetworkSettings.fromJson.html @@ -0,0 +1,117 @@ + + + + + + + + NetworkSettings.fromJson constructor - NetworkSettings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NetworkSettings.fromJson
+ +
+ +
+
+
+
+
+ +

NetworkSettings.fromJson constructor +

+ +
+ + NetworkSettings.fromJson(
  1. Json? json
  2. +
) +
+ +
+

Parses network settings from a JSON map.

+
+ + + +
+

Implementation

+
NetworkSettings.fromJson(Json? json) :
+  subsystemsSocket = json?.getSocket("subsystemsSocket") ?? SocketInfo.raw("192.168.1.20", 8001),
+  videoSocket = json?.getSocket("videoSocket") ?? SocketInfo.raw("192.168.1.30", 8002),
+  autonomySocket = json?.getSocket("autonomySocket") ?? SocketInfo.raw("192.168.1.30", 8003),
+  tankSocket = json?.getSocket("tankSocket") ?? SocketInfo.raw("192.168.1.40", 8000),
+  connectionTimeout = json?["connectionTimeout"] ?? 5;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/NetworkSettings.html b/docs/data/NetworkSettings/NetworkSettings.html new file mode 100644 index 0000000000..efeddd0df1 --- /dev/null +++ b/docs/data/NetworkSettings/NetworkSettings.html @@ -0,0 +1,122 @@ + + + + + + + + NetworkSettings constructor - NetworkSettings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NetworkSettings
+ +
+ +
+
+
+
+
+ +

NetworkSettings constructor +

+ +
+ + NetworkSettings({
  1. required SocketInfo subsystemsSocket,
  2. +
  3. required SocketInfo videoSocket,
  4. +
  5. required SocketInfo autonomySocket,
  6. +
  7. required SocketInfo tankSocket,
  8. +
  9. required double connectionTimeout,
  10. +
}) +
+ +
+

Creates a new network settings object.

+
+ + + +
+

Implementation

+
NetworkSettings({
+  required this.subsystemsSocket,
+  required this.videoSocket,
+  required this.autonomySocket,
+  required this.tankSocket,
+  required this.connectionTimeout,
+});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/autonomySocket.html b/docs/data/NetworkSettings/autonomySocket.html new file mode 100644 index 0000000000..27287f08f9 --- /dev/null +++ b/docs/data/NetworkSettings/autonomySocket.html @@ -0,0 +1,115 @@ + + + + + + + + autonomySocket property - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
autonomySocket
+ +
+ +
+
+
+
+
+ +

autonomySocket property +

+ + +
+ + SocketInfo + autonomySocket +
final
+ +
+ +
+

The address and port of the autonomy program.

+
+ + +
+

Implementation

+
final SocketInfo autonomySocket;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/connectionTimeout.html b/docs/data/NetworkSettings/connectionTimeout.html new file mode 100644 index 0000000000..bc04ba44e1 --- /dev/null +++ b/docs/data/NetworkSettings/connectionTimeout.html @@ -0,0 +1,117 @@ + + + + + + + + connectionTimeout property - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
connectionTimeout
+ +
+ +
+
+
+
+
+ +

connectionTimeout property +

+ + +
+ + double + connectionTimeout +
final
+ +
+ +
+

The amount of time, in seconds, the dashboard should wait before determining it's +lost connection to the rover. For reference, the rover should be sending messages +at least once per second.

+
+ + +
+

Implementation

+
final double connectionTimeout;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/hashCode.html b/docs/data/NetworkSettings/hashCode.html new file mode 100644 index 0000000000..2c5f604e55 --- /dev/null +++ b/docs/data/NetworkSettings/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/noSuchMethod.html b/docs/data/NetworkSettings/noSuchMethod.html new file mode 100644 index 0000000000..74fe7423b6 --- /dev/null +++ b/docs/data/NetworkSettings/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/operator_equals.html b/docs/data/NetworkSettings/operator_equals.html new file mode 100644 index 0000000000..6534a13aa0 --- /dev/null +++ b/docs/data/NetworkSettings/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/runtimeType.html b/docs/data/NetworkSettings/runtimeType.html new file mode 100644 index 0000000000..f075f984e4 --- /dev/null +++ b/docs/data/NetworkSettings/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/subsystemsSocket.html b/docs/data/NetworkSettings/subsystemsSocket.html new file mode 100644 index 0000000000..bcae41e7f9 --- /dev/null +++ b/docs/data/NetworkSettings/subsystemsSocket.html @@ -0,0 +1,115 @@ + + + + + + + + subsystemsSocket property - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
subsystemsSocket
+ +
+ +
+
+
+
+
+ +

subsystemsSocket property +

+ + +
+ + SocketInfo + subsystemsSocket +
final
+ +
+ +
+

The address and port of the subsystems program.

+
+ + +
+

Implementation

+
final SocketInfo subsystemsSocket;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/tankSocket.html b/docs/data/NetworkSettings/tankSocket.html new file mode 100644 index 0000000000..7f563c1ddf --- /dev/null +++ b/docs/data/NetworkSettings/tankSocket.html @@ -0,0 +1,119 @@ + + + + + + + + tankSocket property - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
tankSocket
+ +
+ +
+
+
+
+
+ +

tankSocket property +

+ + +
+ + SocketInfo + tankSocket +
final
+ +
+ +
+

The address of the tank. The port is ignored.

+

The Tank is a model rover that has all the same programs as the rover. This field does not +include port numbers because ports are specific to the program, and the tank will have many +programs running. Instead, the IP address of all the other programs should be swapped with +the tank when it's being used.

+
+ + +
+

Implementation

+
final SocketInfo tankSocket;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/toJson.html b/docs/data/NetworkSettings/toJson.html new file mode 100644 index 0000000000..8c35ad64d0 --- /dev/null +++ b/docs/data/NetworkSettings/toJson.html @@ -0,0 +1,121 @@ + + + + + + + + toJson method - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toJson
+ +
+ +
+
+
+
+
+ +

toJson method +

+ +
+ +Json +toJson() + + + +
+ +
+

Serializes these settings to JSON.

+
+ + + +
+

Implementation

+
Json toJson() => {
+  "subsystemsSocket": subsystemsSocket.toJson(),
+  "videoSocket": videoSocket.toJson(),
+  "autonomySocket": autonomySocket.toJson(),
+  "tankSocket": tankSocket.toJson(),
+  "connectionTimeout": connectionTimeout,
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/toString.html b/docs/data/NetworkSettings/toString.html new file mode 100644 index 0000000000..17bc8fb2e7 --- /dev/null +++ b/docs/data/NetworkSettings/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NetworkSettings/videoSocket.html b/docs/data/NetworkSettings/videoSocket.html new file mode 100644 index 0000000000..00e4e3cd36 --- /dev/null +++ b/docs/data/NetworkSettings/videoSocket.html @@ -0,0 +1,115 @@ + + + + + + + + videoSocket property - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
videoSocket
+ +
+ +
+
+
+
+
+ +

videoSocket property +

+ + +
+ + SocketInfo + videoSocket +
final
+ +
+ +
+

The address and port of the video program.

+
+ + +
+

Implementation

+
final SocketInfo videoSocket;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NumUtils-extension-sidebar.html b/docs/data/NumUtils-extension-sidebar.html new file mode 100644 index 0000000000..27fa0a761c --- /dev/null +++ b/docs/data/NumUtils-extension-sidebar.html @@ -0,0 +1,17 @@ +
    + + + + + + + +
  1. Methods
  2. +
  3. format
  4. +
  5. toDegrees
  6. + + + + + +
diff --git a/docs/data/NumUtils.html b/docs/data/NumUtils.html new file mode 100644 index 0000000000..38c1e0c3ee --- /dev/null +++ b/docs/data/NumUtils.html @@ -0,0 +1,153 @@ + + + + + + + + NumUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NumUtils
+ +
+ +
+
+
+
+
+ +

NumUtils extension + +

+ + +
+

Helpful utils on doubles.

+
+ +
+
+
on
+
+
    +
  • double
  • +
+
+
+ + + +
+ + +
+

Methods

+
+
+ format() + → String + + + +
+
+ Formats this number by rounding to 2 decimal points. + + +
+ +
+ toDegrees() + → int + + + +
+
+ Converts this number (as radians) to degrees. + + +
+ +
+
+ + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/NumUtils/format.html b/docs/data/NumUtils/format.html new file mode 100644 index 0000000000..39a48489fd --- /dev/null +++ b/docs/data/NumUtils/format.html @@ -0,0 +1,115 @@ + + + + + + + + format method - NumUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
format
+ +
+ +
+
+
+
+
+ +

format method +

+ +
+ +String +format() + + + +
+ +
+

Formats this number by rounding to 2 decimal points.

+
+ + + +
+

Implementation

+
String format() => toStringAsFixed(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/NumUtils/toDegrees.html b/docs/data/NumUtils/toDegrees.html new file mode 100644 index 0000000000..8019041c37 --- /dev/null +++ b/docs/data/NumUtils/toDegrees.html @@ -0,0 +1,115 @@ + + + + + + + + toDegrees method - NumUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toDegrees
+ +
+ +
+
+
+
+
+ +

toDegrees method +

+ +
+ +int +toDegrees() + + + +
+ +
+

Converts this number (as radians) to degrees.

+
+ + + +
+

Implementation

+
int toDegrees() => (this * (180 / pi)).truncate();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/OperatingMode-enum-sidebar.html b/docs/data/OperatingMode-enum-sidebar.html new file mode 100644 index 0000000000..64a8af0abd --- /dev/null +++ b/docs/data/OperatingMode-enum-sidebar.html @@ -0,0 +1,35 @@ +
    + + +
  1. Values
  2. +
  3. none
  4. +
  5. drive
  6. +
  7. modernDrive
  8. +
  9. cameras
  10. +
  11. science
  12. +
  13. arm
  14. + + +
  15. + Properties +
  16. +
  17. hashCode
  18. +
  19. index
  20. +
  21. name
  22. +
  23. runtimeType
  24. + +
  25. Methods
  26. +
  27. noSuchMethod
  28. +
  29. toString
  30. + +
  31. Operators
  32. +
  33. operator ==
  34. + + + + + + +
  35. Constants
  36. +
  37. values
  38. +
diff --git a/docs/data/OperatingMode.html b/docs/data/OperatingMode.html new file mode 100644 index 0000000000..31b86cd717 --- /dev/null +++ b/docs/data/OperatingMode.html @@ -0,0 +1,344 @@ + + + + + + + + OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
OperatingMode
+ +
+ +
+
+
+
+
+ + +

+ OperatingMode + enum + + +

+
+ + +
+

A mode for operating the rover.

+

The operator can switch between modes which will:

+
    +
  • change the controller inputs to match the current mode
  • +
  • change the on-screen UI to provide information useful in this context
  • +
  • highlight the relevant metrics
  • +
+
+ + + +
+

Values

+
+
+ none + → const OperatingMode + + +
+
+

No controls. Allows the user to "disable" a gamepad.

+ + +
+ const OperatingMode("None") +
+
+ +
+ drive + → const OperatingMode + + +
+
+

Skid-steer drive controls.

+

Focus on helping the user drive the rover with as much manual control.

+ + +
+ const OperatingMode("Tank drive") +
+
+ +
+ modernDrive + → const OperatingMode + + +
+
+

Modern drive controls.

+

Focus on driving intuitively with simple controls

+ + +
+ const OperatingMode("Modern Drive") +
+
+ +
+ cameras + → const OperatingMode + + +
+
+

Camera mode.

+

The on-board cameras are on servo mounts. This mode controls those mounts.

+ + +
+ const OperatingMode("Cameras") +
+
+ +
+ science + → const OperatingMode + + +
+
+

Science mode.

+

Focus cameras on the science chamber and allow the user to collect samples and data.

+ + +
+ const OperatingMode("Science") +
+
+ +
+ arm + → const OperatingMode + + +
+
+

Arm mode.

+

Focus on helping the user manipulate the arm.

+ + +
+ const OperatingMode("Arm") +
+
+ +
+
+ + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ A numeric identifier for the enumerated value. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ The name of this mode. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ values + → const List<OperatingMode> + + +
+
+ A constant List of the values in this enum, in order of their declaration. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/OperatingMode/hashCode.html b/docs/data/OperatingMode/hashCode.html new file mode 100644 index 0000000000..aaf7e12f39 --- /dev/null +++ b/docs/data/OperatingMode/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/OperatingMode/index.html b/docs/data/OperatingMode/index.html new file mode 100644 index 0000000000..61c591de87 --- /dev/null +++ b/docs/data/OperatingMode/index.html @@ -0,0 +1,125 @@ + + + + + + + + index property - OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+

index property +

+ + + + + +
+
+ + int + get + index +
inherited
+ +
+ +
+

A numeric identifier for the enumerated value.

+

The values of a single enumeration are numbered +consecutively from zero to one less than the +number of values. +This is also the index of the value in the +enumerated type's static values list.

+
+ + +
+

Implementation

+
int get index;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/OperatingMode/name.html b/docs/data/OperatingMode/name.html new file mode 100644 index 0000000000..87decd2748 --- /dev/null +++ b/docs/data/OperatingMode/name.html @@ -0,0 +1,116 @@ + + + + + + + + name property - OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + +
+ + String + name +
final
+ +
+ +
+

The name of this mode.

+

Use this instead of EnumName.name so we can use a longer name.

+
+ + +
+

Implementation

+
final String name;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/OperatingMode/noSuchMethod.html b/docs/data/OperatingMode/noSuchMethod.html new file mode 100644 index 0000000000..5b5c59463b --- /dev/null +++ b/docs/data/OperatingMode/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/OperatingMode/operator_equals.html b/docs/data/OperatingMode/operator_equals.html new file mode 100644 index 0000000000..23764f6cad --- /dev/null +++ b/docs/data/OperatingMode/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/OperatingMode/runtimeType.html b/docs/data/OperatingMode/runtimeType.html new file mode 100644 index 0000000000..bac8f85556 --- /dev/null +++ b/docs/data/OperatingMode/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/OperatingMode/toString.html b/docs/data/OperatingMode/toString.html new file mode 100644 index 0000000000..127c05bff4 --- /dev/null +++ b/docs/data/OperatingMode/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/OperatingMode/values-constant.html b/docs/data/OperatingMode/values-constant.html new file mode 100644 index 0000000000..32203473b6 --- /dev/null +++ b/docs/data/OperatingMode/values-constant.html @@ -0,0 +1,111 @@ + + + + + + + + values constant - OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<OperatingMode> + const values + + +
+ +
+

A constant List of the values in this enum, in order of their declaration.

+
+ + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation-class-sidebar.html b/docs/data/Orientation-class-sidebar.html new file mode 100644 index 0000000000..fc3b2997d2 --- /dev/null +++ b/docs/data/Orientation-class-sidebar.html @@ -0,0 +1,82 @@ +
    + +
  1. Constructors
  2. +
  3. Orientation
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. eventPlugin
  12. +
  13. hashCode
  14. +
  15. info_
  16. +
  17. isFrozen
  18. +
  19. runtimeType
  20. +
  21. unknownFields
  22. +
  23. x
  24. +
  25. y
  26. +
  27. z
  28. + +
  29. Methods
  30. +
  31. addExtension
  32. +
  33. check
  34. +
  35. clear
  36. +
  37. clearExtension
  38. +
  39. clearField
  40. +
  41. clearX
  42. +
  43. clearY
  44. +
  45. clearZ
  46. +
  47. clone
  48. +
  49. copyWith
  50. +
  51. createEmptyInstance
  52. +
  53. createMapField
  54. +
  55. createRepeatedField
  56. +
  57. extensionsAreInitialized
  58. +
  59. freeze
  60. +
  61. getDefaultForField
  62. +
  63. getExtension
  64. +
  65. getField
  66. +
  67. getFieldOrNull
  68. +
  69. getTagNumber
  70. +
  71. hasExtension
  72. +
  73. hasField
  74. +
  75. hasRequiredFields
  76. +
  77. hasX
  78. +
  79. hasY
  80. +
  81. hasZ
  82. +
  83. isInitialized
  84. +
  85. mergeFromBuffer
  86. +
  87. mergeFromCodedBufferReader
  88. +
  89. mergeFromJson
  90. +
  91. mergeFromJsonMap
  92. +
  93. mergeFromMessage
  94. +
  95. mergeFromProto3Json
  96. +
  97. mergeUnknownFields
  98. +
  99. noSuchMethod
  100. +
  101. setExtension
  102. +
  103. setField
  104. +
  105. toBuilder
  106. +
  107. toDebugString
  108. +
  109. toProto3Json
  110. +
  111. toString
  112. +
  113. writeToBuffer
  114. +
  115. writeToCodedBufferWriter
  116. +
  117. writeToJson
  118. +
  119. writeToJsonMap
  120. + +
  121. Operators
  122. +
  123. operator ==
  124. + + + + + +
  125. Static methods
  126. +
  127. create
  128. +
  129. createRepeated
  130. +
  131. getDefault
  132. + +
diff --git a/docs/data/Orientation-class.html b/docs/data/Orientation-class.html new file mode 100644 index 0000000000..b179d31242 --- /dev/null +++ b/docs/data/Orientation-class.html @@ -0,0 +1,933 @@ + + + + + + + + Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Orientation
+ +
+ +
+
+
+
+
+ +

Orientation class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ Orientation({double? x, double? y, double? z}) +
+
+ +
factory
+
+
+ Orientation.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ Orientation.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ x + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ y + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ z + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearX() + → void + + + +
+
+ + + +
+ +
+ clearY() + → void + + + +
+
+ + + +
+ +
+ clearZ() + → void + + + +
+
+ + + +
+ +
+ clone() + Orientation + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(Orientation)) + Orientation + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + Orientation + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasX() + → bool + + + +
+
+ + + +
+ +
+ hasY() + → bool + + + +
+
+ + + +
+ +
+ hasZ() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + Orientation + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<Orientation> + + + +
+
+ + + +
+ +
+ getDefault() + Orientation + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/Orientation.fromBuffer.html b/docs/data/Orientation/Orientation.fromBuffer.html new file mode 100644 index 0000000000..8ff67e16a2 --- /dev/null +++ b/docs/data/Orientation/Orientation.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + Orientation.fromBuffer constructor - Orientation - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Orientation.fromBuffer
+ +
+ +
+
+
+
+
+ +

Orientation.fromBuffer constructor +

+ +
+ + Orientation.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Orientation.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/Orientation.fromJson.html b/docs/data/Orientation/Orientation.fromJson.html new file mode 100644 index 0000000000..b613682e0b --- /dev/null +++ b/docs/data/Orientation/Orientation.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + Orientation.fromJson constructor - Orientation - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Orientation.fromJson
+ +
+ +
+
+
+
+
+ +

Orientation.fromJson constructor +

+ +
+ + Orientation.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Orientation.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/Orientation.html b/docs/data/Orientation/Orientation.html new file mode 100644 index 0000000000..c7027ed2b8 --- /dev/null +++ b/docs/data/Orientation/Orientation.html @@ -0,0 +1,127 @@ + + + + + + + + Orientation constructor - Orientation - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Orientation
+ +
+ +
+
+
+
+
+ +

Orientation constructor +

+ +
+ + Orientation({
  1. double? x,
  2. +
  3. double? y,
  4. +
  5. double? z,
  6. +
}) +
+ + + + +
+

Implementation

+
factory Orientation({
+  $core.double? x,
+  $core.double? y,
+  $core.double? z,
+}) {
+  final $result = create();
+  if (x != null) {
+    $result.x = x;
+  }
+  if (y != null) {
+    $result.y = y;
+  }
+  if (z != null) {
+    $result.z = z;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/clearX.html b/docs/data/Orientation/clearX.html new file mode 100644 index 0000000000..e78abcf5a3 --- /dev/null +++ b/docs/data/Orientation/clearX.html @@ -0,0 +1,118 @@ + + + + + + + + clearX method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearX
+ +
+ +
+
+
+
+
+ +

clearX method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearX() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearX() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/clearY.html b/docs/data/Orientation/clearY.html new file mode 100644 index 0000000000..f868571b63 --- /dev/null +++ b/docs/data/Orientation/clearY.html @@ -0,0 +1,118 @@ + + + + + + + + clearY method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearY
+ +
+ +
+
+
+
+
+ +

clearY method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearY() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearY() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/clearZ.html b/docs/data/Orientation/clearZ.html new file mode 100644 index 0000000000..e187f66bce --- /dev/null +++ b/docs/data/Orientation/clearZ.html @@ -0,0 +1,118 @@ + + + + + + + + clearZ method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearZ
+ +
+ +
+
+
+
+
+ +

clearZ method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearZ() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearZ() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/clone.html b/docs/data/Orientation/clone.html new file mode 100644 index 0000000000..ec588fb576 --- /dev/null +++ b/docs/data/Orientation/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+Orientation +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+Orientation clone() => Orientation()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/copyWith.html b/docs/data/Orientation/copyWith.html new file mode 100644 index 0000000000..a739e42874 --- /dev/null +++ b/docs/data/Orientation/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+Orientation +copyWith(
  1. void updates(
    1. Orientation
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+Orientation copyWith(void Function(Orientation) updates) => super.copyWith((message) => updates(message as Orientation)) as Orientation;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/create.html b/docs/data/Orientation/create.html new file mode 100644 index 0000000000..f7796090e9 --- /dev/null +++ b/docs/data/Orientation/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +Orientation +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Orientation create() => Orientation._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/createEmptyInstance.html b/docs/data/Orientation/createEmptyInstance.html new file mode 100644 index 0000000000..b76c067cd4 --- /dev/null +++ b/docs/data/Orientation/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +Orientation +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
Orientation createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/createRepeated.html b/docs/data/Orientation/createRepeated.html new file mode 100644 index 0000000000..d899b4a117 --- /dev/null +++ b/docs/data/Orientation/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<Orientation> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<Orientation> createRepeated() => $pb.PbList<Orientation>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/getDefault.html b/docs/data/Orientation/getDefault.html new file mode 100644 index 0000000000..b795f8fcc9 --- /dev/null +++ b/docs/data/Orientation/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +Orientation +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Orientation getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Orientation>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/hasX.html b/docs/data/Orientation/hasX.html new file mode 100644 index 0000000000..3f5545a935 --- /dev/null +++ b/docs/data/Orientation/hasX.html @@ -0,0 +1,118 @@ + + + + + + + + hasX method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasX
+ +
+ +
+
+
+
+
+ +

hasX method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasX() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasX() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/hasY.html b/docs/data/Orientation/hasY.html new file mode 100644 index 0000000000..8b8ad536e1 --- /dev/null +++ b/docs/data/Orientation/hasY.html @@ -0,0 +1,118 @@ + + + + + + + + hasY method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasY
+ +
+ +
+
+
+
+
+ +

hasY method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasY() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasY() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/hasZ.html b/docs/data/Orientation/hasZ.html new file mode 100644 index 0000000000..79c6b0a65e --- /dev/null +++ b/docs/data/Orientation/hasZ.html @@ -0,0 +1,118 @@ + + + + + + + + hasZ method - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasZ
+ +
+ +
+
+
+
+
+ +

hasZ method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasZ() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasZ() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/info_.html b/docs/data/Orientation/info_.html new file mode 100644 index 0000000000..2747fea56c --- /dev/null +++ b/docs/data/Orientation/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/x.html b/docs/data/Orientation/x.html new file mode 100644 index 0000000000..76e47ef429 --- /dev/null +++ b/docs/data/Orientation/x.html @@ -0,0 +1,150 @@ + + + + + + + + x property - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
x
+ +
+ +
+
+
+
+
+ +

x property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + get + x + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get x => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + x + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set x($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/y.html b/docs/data/Orientation/y.html new file mode 100644 index 0000000000..dce218a17d --- /dev/null +++ b/docs/data/Orientation/y.html @@ -0,0 +1,150 @@ + + + + + + + + y property - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
y
+ +
+ +
+
+
+
+
+ +

y property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + get + y + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get y => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + y + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set y($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/Orientation/z.html b/docs/data/Orientation/z.html new file mode 100644 index 0000000000..70fd60e73c --- /dev/null +++ b/docs/data/Orientation/z.html @@ -0,0 +1,150 @@ + + + + + + + + z property - Orientation class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
z
+ +
+ +
+
+
+
+
+ +

z property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + get + z + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get z => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + z + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set z($core.double v) { $_setFloat(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics-class-sidebar.html b/docs/data/PositionMetrics-class-sidebar.html new file mode 100644 index 0000000000..0d90e3e845 --- /dev/null +++ b/docs/data/PositionMetrics-class-sidebar.html @@ -0,0 +1,47 @@ +
    + +
  1. Constructors
  2. +
  3. PositionMetrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. angle
  10. +
  11. baseStation
  12. +
  13. data
  14. +
  15. hashCode
  16. +
  17. hasListeners
  18. +
  19. matchesVersion
  20. +
  21. name
  22. +
  23. overallSeverity
  24. +
  25. pitch
  26. +
  27. roll
  28. +
  29. runtimeType
  30. +
  31. supportedVersion
  32. +
  33. version
  34. +
  35. versionCommand
  36. + +
  37. Methods
  38. +
  39. addListener
  40. +
  41. checkVersion
  42. +
  43. dispose
  44. +
  45. getRotationSeverity
  46. +
  47. noSuchMethod
  48. +
  49. notifyListeners
  50. +
  51. parseVersion
  52. +
  53. removeListener
  54. +
  55. toString
  56. +
  57. update
  58. + +
  59. Operators
  60. +
  61. operator ==
  62. + + + + + + +
diff --git a/docs/data/PositionMetrics-class.html b/docs/data/PositionMetrics-class.html new file mode 100644 index 0000000000..0cbd9dba23 --- /dev/null +++ b/docs/data/PositionMetrics-class.html @@ -0,0 +1,489 @@ + + + + + + + + PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PositionMetrics
+ +
+ +
+
+
+
+
+ +

PositionMetrics class + +

+ + +
+

Metrics about the rover's position and orientation.

+

For simplicity, these metrics also track the first recorded GPS position as the base station.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ PositionMetrics() +
+
+ A collection of metrics relevant for monitoring the rover's GPS location. +
+
+
+ +
+

Properties

+
+
+ allMetrics + → List<MetricLine> + + +
+
+ A list of user-friendly explanations for each of the metrics. +
no setteroverride
+ +
+ +
+ angle + → double + + +
+
+ The angle to orient the rover on the top-down map. +
no setter
+ +
+ +
+ baseStation + GpsCoordinates + + +
+
+ The position of the base station. Setting this value updates the UI. +
getter/setter pair
+ +
+ +
+ data + RoverPosition + + +
+
+ The underlying data used to get these metrics. +
finalinherited
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ matchesVersion + → bool + + +
+
+ Whether the Dashboard is certain the firmware matches the right version. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ A collective name for this group of metrics (usually the name of the subsystem). +
no setteroverride
+ +
+ +
+ overallSeverity + Severity? + + +
+
+ Fetch the overall Security +
no setterinherited
+ +
+ +
+ pitch + → double + + +
+
+ The angle to orient the rover on a side view map +
no setter
+ +
+ +
+ roll + → double + + +
+
+ The angle to orient the rover on a front view map +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ supportedVersion + Version + + +
+
+ The currently-supported version for this Dashboard. +
no setteroverride
+ +
+ +
+ version + Version + + +
+
+ The version of the data that the firmware sends. +
getter/setter pairinherited
+ +
+ +
+ versionCommand + Message + + +
+
+ A command to notify the firmware of the Dashboard's supportedVersion. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ checkVersion(RoverPosition data) + → bool + + + +
+
+ Checks this message's version and checks for support. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ getRotationSeverity(double orientation) + Severity? + + + +
+
+ Gets the severity of the rover's orientation for both pitch and roll. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ parseVersion(RoverPosition message) + Version + + + +
+
+ Parses the version out of a given data packet. +
override
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(RoverPosition value) + → void + + + +
+
+ Updates data with new data. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics/PositionMetrics.html b/docs/data/PositionMetrics/PositionMetrics.html new file mode 100644 index 0000000000..2b3b24cc55 --- /dev/null +++ b/docs/data/PositionMetrics/PositionMetrics.html @@ -0,0 +1,111 @@ + + + + + + + + PositionMetrics constructor - PositionMetrics - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PositionMetrics
+ +
+ +
+
+
+
+
+ +

PositionMetrics constructor +

+ +
+ + PositionMetrics() +
+ +
+

A collection of metrics relevant for monitoring the rover's GPS location.

+
+ + + +
+

Implementation

+
PositionMetrics() : super(RoverPosition());
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics/allMetrics.html b/docs/data/PositionMetrics/allMetrics.html new file mode 100644 index 0000000000..8beec73aec --- /dev/null +++ b/docs/data/PositionMetrics/allMetrics.html @@ -0,0 +1,139 @@ + + + + + + + + allMetrics property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
allMetrics
+ +
+ +
+
+
+
+
+ +

allMetrics property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<MetricLine> + get + allMetrics +
override
+ +
+ +
+

A list of user-friendly explanations for each of the metrics.

+

Be sure to store the actual values as fields. This property should be a list of one +user-friendly explanation per metric.

+
+ + +
+

Implementation

+
@override
+List<MetricLine> get allMetrics => [
+    MetricLine("GPS: "),
+    MetricLine("  Latitude: ${data.gps.latitude.toStringAsFixed(6)}°",),
+	MetricLine("  Longitude: ${data.gps.longitude.toStringAsFixed(6)}°",),
+	MetricLine("  Altitude: ${data.gps.altitude.toStringAsFixed(2)} m"),
+	MetricLine("Orientation:",),
+	MetricLine("  X: ${data.orientation.x.toStringAsFixed(2)}°", severity: getRotationSeverity(data.orientation.x)),
+	MetricLine("  Y: ${data.orientation.y.toStringAsFixed(2)}°", severity: getRotationSeverity(data.orientation.y)),
+	MetricLine("  Z: ${data.orientation.z.toStringAsFixed(2)}°"),
+    MetricLine("Distance: ${data.gps.distanceTo(baseStation).toStringAsFixed(2)} m",),
+];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics/angle.html b/docs/data/PositionMetrics/angle.html new file mode 100644 index 0000000000..b3b408ed14 --- /dev/null +++ b/docs/data/PositionMetrics/angle.html @@ -0,0 +1,121 @@ + + + + + + + + angle property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
angle
+ +
+ +
+
+
+
+
+ +

angle property +

+ + + + + +
+
+ + double + get + angle + + +
+ +
+

The angle to orient the rover on the top-down map.

+
+ + +
+

Implementation

+
double get angle => data.orientation.z;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics/baseStation.html b/docs/data/PositionMetrics/baseStation.html new file mode 100644 index 0000000000..7af172e4d7 --- /dev/null +++ b/docs/data/PositionMetrics/baseStation.html @@ -0,0 +1,144 @@ + + + + + + + + baseStation property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
baseStation
+ +
+ +
+
+
+
+
+ +

baseStation property +

+ + + + + +
+
+ + GpsCoordinates + get + baseStation + + +
+ +
+

The position of the base station. Setting this value updates the UI.

+
+ + +
+

Implementation

+
GpsCoordinates get baseStation => _baseStation ?? data.gps;
+
+ +
+ + + +
+
+ + set + baseStation + (GpsCoordinates value) + + +
+ + + +
+

Implementation

+
set baseStation(GpsCoordinates value) {
+	_baseStation = value;
+	notifyListeners();
+}
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics/getRotationSeverity.html b/docs/data/PositionMetrics/getRotationSeverity.html new file mode 100644 index 0000000000..b51d59bc22 --- /dev/null +++ b/docs/data/PositionMetrics/getRotationSeverity.html @@ -0,0 +1,127 @@ + + + + + + + + getRotationSeverity method - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getRotationSeverity
+ +
+ +
+
+
+
+
+ +

getRotationSeverity method +

+ +
+ +Severity? +getRotationSeverity(
  1. double orientation
  2. +
) + + + +
+ +
+

Gets the severity of the rover's orientation for both pitch and roll.

+
+ + + +
+

Implementation

+
Severity? getRotationSeverity(double orientation) {
+  final abs = orientation.abs();
+  if (abs >= 30) {
+    return Severity.critical;
+  } else if (abs >= 15) {
+    return Severity.warning;
+  } else if (abs >= 10) {
+    return Severity.info;
+  } else {
+    return null;
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics/name.html b/docs/data/PositionMetrics/name.html new file mode 100644 index 0000000000..7788ff8b93 --- /dev/null +++ b/docs/data/PositionMetrics/name.html @@ -0,0 +1,127 @@ + + + + + + + + name property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ String + get + name +
override
+ +
+ +
+

A collective name for this group of metrics (usually the name of the subsystem).

+
+ + +
+

Implementation

+
@override
+String get name => "Position";
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics/parseVersion.html b/docs/data/PositionMetrics/parseVersion.html new file mode 100644 index 0000000000..9e75efc484 --- /dev/null +++ b/docs/data/PositionMetrics/parseVersion.html @@ -0,0 +1,122 @@ + + + + + + + + parseVersion method - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseVersion
+ +
+ +
+
+
+
+
+ +

parseVersion method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Version +parseVersion(
  1. RoverPosition message
  2. +
) + +
override
+ +
+ +
+

Parses the version out of a given data packet.

+
+ + + +
+

Implementation

+
@override
+Version parseVersion(RoverPosition message) => message.version;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics/pitch.html b/docs/data/PositionMetrics/pitch.html new file mode 100644 index 0000000000..f8dae91a00 --- /dev/null +++ b/docs/data/PositionMetrics/pitch.html @@ -0,0 +1,121 @@ + + + + + + + + pitch property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pitch
+ +
+ +
+
+
+
+
+ +

pitch property +

+ + + + + +
+
+ + double + get + pitch + + +
+ +
+

The angle to orient the rover on a side view map

+
+ + +
+

Implementation

+
double get pitch => data.orientation.y;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics/roll.html b/docs/data/PositionMetrics/roll.html new file mode 100644 index 0000000000..69b0a65277 --- /dev/null +++ b/docs/data/PositionMetrics/roll.html @@ -0,0 +1,121 @@ + + + + + + + + roll property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
roll
+ +
+ +
+
+
+
+
+ +

roll property +

+ + + + + +
+
+ + double + get + roll + + +
+ +
+

The angle to orient the rover on a front view map

+
+ + +
+

Implementation

+
double get roll => data.orientation.x;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics/supportedVersion.html b/docs/data/PositionMetrics/supportedVersion.html new file mode 100644 index 0000000000..1e27ca07b7 --- /dev/null +++ b/docs/data/PositionMetrics/supportedVersion.html @@ -0,0 +1,127 @@ + + + + + + + + supportedVersion property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
supportedVersion
+ +
+ +
+
+
+
+
+ +

supportedVersion property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Version + get + supportedVersion +
override
+ +
+ +
+

The currently-supported version for this Dashboard.

+
+ + +
+

Implementation

+
@override
+Version get supportedVersion => Version(major: 1);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PositionMetrics/versionCommand.html b/docs/data/PositionMetrics/versionCommand.html new file mode 100644 index 0000000000..2bc8b16add --- /dev/null +++ b/docs/data/PositionMetrics/versionCommand.html @@ -0,0 +1,127 @@ + + + + + + + + versionCommand property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
versionCommand
+ +
+ +
+
+
+
+
+ +

versionCommand property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Message + get + versionCommand +
override
+ +
+ +
+

A command to notify the firmware of the Dashboard's supportedVersion.

+
+ + +
+

Implementation

+
@override
+Message get versionCommand => RoverPosition(version: supportedVersion);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ProtoColor-class-sidebar.html b/docs/data/ProtoColor-class-sidebar.html new file mode 100644 index 0000000000..215dce3de3 --- /dev/null +++ b/docs/data/ProtoColor-class-sidebar.html @@ -0,0 +1,35 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. BLUE
  28. +
  29. GREEN
  30. +
  31. PROTO_COLOR_UNDEFINED
  32. +
  33. RED
  34. +
  35. UNLIT
  36. +
  37. values
  38. +
diff --git a/docs/data/ProtoColor-class.html b/docs/data/ProtoColor-class.html new file mode 100644 index 0000000000..559b9f4939 --- /dev/null +++ b/docs/data/ProtoColor-class.html @@ -0,0 +1,330 @@ + + + + + + + + ProtoColor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ProtoColor
+ +
+ +
+
+
+
+
+ +

ProtoColor class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + ProtoColor? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ BLUE + → const ProtoColor + + +
+
+ + + +
+ +
+ GREEN + → const ProtoColor + + +
+
+ + + +
+ +
+ PROTO_COLOR_UNDEFINED + → const ProtoColor + + +
+
+ + + +
+ +
+ RED + → const ProtoColor + + +
+
+ + + +
+ +
+ UNLIT + → const ProtoColor + + +
+
+ + + +
+ +
+ values + → const List<ProtoColor> + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/ProtoColor/BLUE-constant.html b/docs/data/ProtoColor/BLUE-constant.html new file mode 100644 index 0000000000..c3948de412 --- /dev/null +++ b/docs/data/ProtoColor/BLUE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + BLUE constant - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BLUE
+ +
+ +
+
+
+
+
+ +

BLUE constant +

+ + +
+ + ProtoColor + const BLUE + + +
+ + + +
+

Implementation

+
static const ProtoColor BLUE = ProtoColor._(3, _omitEnumNames ? '' : 'BLUE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ProtoColor/GREEN-constant.html b/docs/data/ProtoColor/GREEN-constant.html new file mode 100644 index 0000000000..7235d6e82e --- /dev/null +++ b/docs/data/ProtoColor/GREEN-constant.html @@ -0,0 +1,112 @@ + + + + + + + + GREEN constant - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GREEN
+ +
+ +
+
+
+
+
+ +

GREEN constant +

+ + +
+ + ProtoColor + const GREEN + + +
+ + + +
+

Implementation

+
static const ProtoColor GREEN = ProtoColor._(2, _omitEnumNames ? '' : 'GREEN');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ProtoColor/PROTO_COLOR_UNDEFINED-constant.html b/docs/data/ProtoColor/PROTO_COLOR_UNDEFINED-constant.html new file mode 100644 index 0000000000..e14c2b5ba3 --- /dev/null +++ b/docs/data/ProtoColor/PROTO_COLOR_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + PROTO_COLOR_UNDEFINED constant - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PROTO_COLOR_UNDEFINED
+ +
+ +
+
+
+
+
+ +

PROTO_COLOR_UNDEFINED constant +

+ + +
+ + ProtoColor + const PROTO_COLOR_UNDEFINED + + +
+ + + +
+

Implementation

+
static const ProtoColor PROTO_COLOR_UNDEFINED = ProtoColor._(0, _omitEnumNames ? '' : 'PROTO_COLOR_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ProtoColor/RED-constant.html b/docs/data/ProtoColor/RED-constant.html new file mode 100644 index 0000000000..415bcd05ed --- /dev/null +++ b/docs/data/ProtoColor/RED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + RED constant - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RED
+ +
+ +
+
+
+
+
+ +

RED constant +

+ + +
+ + ProtoColor + const RED + + +
+ + + +
+

Implementation

+
static const ProtoColor RED = ProtoColor._(1, _omitEnumNames ? '' : 'RED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ProtoColor/UNLIT-constant.html b/docs/data/ProtoColor/UNLIT-constant.html new file mode 100644 index 0000000000..57a9c73f8d --- /dev/null +++ b/docs/data/ProtoColor/UNLIT-constant.html @@ -0,0 +1,112 @@ + + + + + + + + UNLIT constant - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
UNLIT
+ +
+ +
+
+
+
+
+ +

UNLIT constant +

+ + +
+ + ProtoColor + const UNLIT + + +
+ + + +
+

Implementation

+
static const ProtoColor UNLIT = ProtoColor._(4, _omitEnumNames ? '' : 'UNLIT');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ProtoColor/valueOf.html b/docs/data/ProtoColor/valueOf.html new file mode 100644 index 0000000000..46b9d3c4d3 --- /dev/null +++ b/docs/data/ProtoColor/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +ProtoColor? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static ProtoColor? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ProtoColor/values-constant.html b/docs/data/ProtoColor/values-constant.html new file mode 100644 index 0000000000..6e911ea75c --- /dev/null +++ b/docs/data/ProtoColor/values-constant.html @@ -0,0 +1,118 @@ + + + + + + + + values constant - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<ProtoColor> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<ProtoColor> values = <ProtoColor> [
+  PROTO_COLOR_UNDEFINED,
+  RED,
+  GREEN,
+  BLUE,
+  UNLIT,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PumpState-class-sidebar.html b/docs/data/PumpState-class-sidebar.html new file mode 100644 index 0000000000..5fc85eb5e5 --- /dev/null +++ b/docs/data/PumpState-class-sidebar.html @@ -0,0 +1,34 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. FILL
  28. +
  29. PUMP_OFF
  30. +
  31. PUMP_ON
  32. +
  33. PUMP_STATE_UNDEFINED
  34. +
  35. values
  36. +
diff --git a/docs/data/PumpState-class.html b/docs/data/PumpState-class.html new file mode 100644 index 0000000000..951d2a9931 --- /dev/null +++ b/docs/data/PumpState-class.html @@ -0,0 +1,321 @@ + + + + + + + + PumpState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PumpState
+ +
+ +
+
+
+
+
+ +

PumpState class + +

+ + +
+

/ The state of a pump. If undefined: don't do anything. If fill: turn on, wait, then turn off.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + PumpState? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ FILL + → const PumpState + + +
+
+ + + +
+ +
+ PUMP_OFF + → const PumpState + + +
+
+ + + +
+ +
+ PUMP_ON + → const PumpState + + +
+
+ + + +
+ +
+ PUMP_STATE_UNDEFINED + → const PumpState + + +
+
+ + + +
+ +
+ values + → const List<PumpState> + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/PumpState/FILL-constant.html b/docs/data/PumpState/FILL-constant.html new file mode 100644 index 0000000000..5b7662b0e9 --- /dev/null +++ b/docs/data/PumpState/FILL-constant.html @@ -0,0 +1,112 @@ + + + + + + + + FILL constant - PumpState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
FILL
+ +
+ +
+
+
+
+
+ +

FILL constant +

+ + +
+ + PumpState + const FILL + + +
+ + + +
+

Implementation

+
static const PumpState FILL = PumpState._(3, _omitEnumNames ? '' : 'FILL');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PumpState/PUMP_OFF-constant.html b/docs/data/PumpState/PUMP_OFF-constant.html new file mode 100644 index 0000000000..06f4cd8192 --- /dev/null +++ b/docs/data/PumpState/PUMP_OFF-constant.html @@ -0,0 +1,112 @@ + + + + + + + + PUMP_OFF constant - PumpState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PUMP_OFF
+ +
+ +
+
+
+
+
+ +

PUMP_OFF constant +

+ + +
+ + PumpState + const PUMP_OFF + + +
+ + + +
+

Implementation

+
static const PumpState PUMP_OFF = PumpState._(2, _omitEnumNames ? '' : 'PUMP_OFF');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PumpState/PUMP_ON-constant.html b/docs/data/PumpState/PUMP_ON-constant.html new file mode 100644 index 0000000000..1d45848188 --- /dev/null +++ b/docs/data/PumpState/PUMP_ON-constant.html @@ -0,0 +1,112 @@ + + + + + + + + PUMP_ON constant - PumpState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PUMP_ON
+ +
+ +
+
+
+
+
+ +

PUMP_ON constant +

+ + +
+ + PumpState + const PUMP_ON + + +
+ + + +
+

Implementation

+
static const PumpState PUMP_ON = PumpState._(1, _omitEnumNames ? '' : 'PUMP_ON');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PumpState/PUMP_STATE_UNDEFINED-constant.html b/docs/data/PumpState/PUMP_STATE_UNDEFINED-constant.html new file mode 100644 index 0000000000..7503024266 --- /dev/null +++ b/docs/data/PumpState/PUMP_STATE_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + PUMP_STATE_UNDEFINED constant - PumpState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PUMP_STATE_UNDEFINED
+ +
+ +
+
+
+
+
+ +

PUMP_STATE_UNDEFINED constant +

+ + +
+ + PumpState + const PUMP_STATE_UNDEFINED + + +
+ + + +
+

Implementation

+
static const PumpState PUMP_STATE_UNDEFINED = PumpState._(0, _omitEnumNames ? '' : 'PUMP_STATE_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PumpState/valueOf.html b/docs/data/PumpState/valueOf.html new file mode 100644 index 0000000000..2e365cacd2 --- /dev/null +++ b/docs/data/PumpState/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - PumpState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +PumpState? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static PumpState? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/PumpState/values-constant.html b/docs/data/PumpState/values-constant.html new file mode 100644 index 0000000000..9a804147a2 --- /dev/null +++ b/docs/data/PumpState/values-constant.html @@ -0,0 +1,117 @@ + + + + + + + + values constant - PumpState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<PumpState> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<PumpState> values = <PumpState> [
+  PUMP_STATE_UNDEFINED,
+  PUMP_ON,
+  PUMP_OFF,
+  FILL,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RawDataHandler.html b/docs/data/RawDataHandler.html new file mode 100644 index 0000000000..5e912b777f --- /dev/null +++ b/docs/data/RawDataHandler.html @@ -0,0 +1,109 @@ + + + + + + + + RawDataHandler typedef - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RawDataHandler
+ +
+ +
+
+
+
+
+ +

RawDataHandler typedef + +

+
+ RawDataHandler = + void Function(List<int> data) + +
+ + +
+

A callback to execute with raw Protobuf data.

+
+ + +
+

Implementation

+
typedef RawDataHandler = void Function(List<int> data);
+
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition-class-sidebar.html b/docs/data/RoverPosition-class-sidebar.html new file mode 100644 index 0000000000..47e6d76eb1 --- /dev/null +++ b/docs/data/RoverPosition-class-sidebar.html @@ -0,0 +1,85 @@ +
    + +
  1. Constructors
  2. +
  3. RoverPosition
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. eventPlugin
  12. +
  13. gps
  14. +
  15. hashCode
  16. +
  17. info_
  18. +
  19. isFrozen
  20. +
  21. orientation
  22. +
  23. runtimeType
  24. +
  25. unknownFields
  26. +
  27. version
  28. + +
  29. Methods
  30. +
  31. addExtension
  32. +
  33. check
  34. +
  35. clear
  36. +
  37. clearExtension
  38. +
  39. clearField
  40. +
  41. clearGps
  42. +
  43. clearOrientation
  44. +
  45. clearVersion
  46. +
  47. clone
  48. +
  49. copyWith
  50. +
  51. createEmptyInstance
  52. +
  53. createMapField
  54. +
  55. createRepeatedField
  56. +
  57. ensureGps
  58. +
  59. ensureOrientation
  60. +
  61. ensureVersion
  62. +
  63. extensionsAreInitialized
  64. +
  65. freeze
  66. +
  67. getDefaultForField
  68. +
  69. getExtension
  70. +
  71. getField
  72. +
  73. getFieldOrNull
  74. +
  75. getTagNumber
  76. +
  77. hasExtension
  78. +
  79. hasField
  80. +
  81. hasGps
  82. +
  83. hasOrientation
  84. +
  85. hasRequiredFields
  86. +
  87. hasVersion
  88. +
  89. isInitialized
  90. +
  91. mergeFromBuffer
  92. +
  93. mergeFromCodedBufferReader
  94. +
  95. mergeFromJson
  96. +
  97. mergeFromJsonMap
  98. +
  99. mergeFromMessage
  100. +
  101. mergeFromProto3Json
  102. +
  103. mergeUnknownFields
  104. +
  105. noSuchMethod
  106. +
  107. setExtension
  108. +
  109. setField
  110. +
  111. toBuilder
  112. +
  113. toDebugString
  114. +
  115. toProto3Json
  116. +
  117. toString
  118. +
  119. writeToBuffer
  120. +
  121. writeToCodedBufferWriter
  122. +
  123. writeToJson
  124. +
  125. writeToJsonMap
  126. + +
  127. Operators
  128. +
  129. operator ==
  130. + + + + + +
  131. Static methods
  132. +
  133. create
  134. +
  135. createRepeated
  136. +
  137. getDefault
  138. + +
diff --git a/docs/data/RoverPosition-class.html b/docs/data/RoverPosition-class.html new file mode 100644 index 0000000000..c65986d3c7 --- /dev/null +++ b/docs/data/RoverPosition-class.html @@ -0,0 +1,972 @@ + + + + + + + + RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverPosition
+ +
+ +
+
+
+
+
+ +

RoverPosition class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ RoverPosition({GpsCoordinates? gps, Orientation? orientation, Version? version}) +
+
+ +
factory
+
+
+ RoverPosition.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ RoverPosition.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ gps + GpsCoordinates + + +
+
+ +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ orientation + Orientation + + +
+
+ +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearGps() + → void + + + +
+
+ + + +
+ +
+ clearOrientation() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + RoverPosition + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(RoverPosition)) + RoverPosition + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + RoverPosition + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureGps() + GpsCoordinates + + + +
+
+ + + +
+ +
+ ensureOrientation() + Orientation + + + +
+
+ + + +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasGps() + → bool + + + +
+
+ + + +
+ +
+ hasOrientation() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + RoverPosition + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<RoverPosition> + + + +
+
+ + + +
+ +
+ getDefault() + RoverPosition + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/RoverPosition.fromBuffer.html b/docs/data/RoverPosition/RoverPosition.fromBuffer.html new file mode 100644 index 0000000000..db325fc371 --- /dev/null +++ b/docs/data/RoverPosition/RoverPosition.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + RoverPosition.fromBuffer constructor - RoverPosition - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverPosition.fromBuffer
+ +
+ +
+
+
+
+
+ +

RoverPosition.fromBuffer constructor +

+ +
+ + RoverPosition.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory RoverPosition.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/RoverPosition.fromJson.html b/docs/data/RoverPosition/RoverPosition.fromJson.html new file mode 100644 index 0000000000..9386ca5d02 --- /dev/null +++ b/docs/data/RoverPosition/RoverPosition.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + RoverPosition.fromJson constructor - RoverPosition - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverPosition.fromJson
+ +
+ +
+
+
+
+
+ +

RoverPosition.fromJson constructor +

+ +
+ + RoverPosition.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory RoverPosition.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/RoverPosition.html b/docs/data/RoverPosition/RoverPosition.html new file mode 100644 index 0000000000..7846a04592 --- /dev/null +++ b/docs/data/RoverPosition/RoverPosition.html @@ -0,0 +1,127 @@ + + + + + + + + RoverPosition constructor - RoverPosition - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverPosition
+ +
+ +
+
+
+
+
+ +

RoverPosition constructor +

+ +
+ + RoverPosition({
  1. GpsCoordinates? gps,
  2. +
  3. Orientation? orientation,
  4. +
  5. Version? version,
  6. +
}) +
+ + + + +
+

Implementation

+
factory RoverPosition({
+  GpsCoordinates? gps,
+  Orientation? orientation,
+  $0.Version? version,
+}) {
+  final $result = create();
+  if (gps != null) {
+    $result.gps = gps;
+  }
+  if (orientation != null) {
+    $result.orientation = orientation;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/clearGps.html b/docs/data/RoverPosition/clearGps.html new file mode 100644 index 0000000000..c59974b5a8 --- /dev/null +++ b/docs/data/RoverPosition/clearGps.html @@ -0,0 +1,118 @@ + + + + + + + + clearGps method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearGps
+ +
+ +
+
+
+
+
+ +

clearGps method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearGps() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearGps() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/clearOrientation.html b/docs/data/RoverPosition/clearOrientation.html new file mode 100644 index 0000000000..6492dc6731 --- /dev/null +++ b/docs/data/RoverPosition/clearOrientation.html @@ -0,0 +1,118 @@ + + + + + + + + clearOrientation method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearOrientation
+ +
+ +
+
+
+
+
+ +

clearOrientation method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearOrientation() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearOrientation() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/clearVersion.html b/docs/data/RoverPosition/clearVersion.html new file mode 100644 index 0000000000..cc88c3803e --- /dev/null +++ b/docs/data/RoverPosition/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearVersion() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/clone.html b/docs/data/RoverPosition/clone.html new file mode 100644 index 0000000000..7192a3d515 --- /dev/null +++ b/docs/data/RoverPosition/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+RoverPosition +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+RoverPosition clone() => RoverPosition()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/copyWith.html b/docs/data/RoverPosition/copyWith.html new file mode 100644 index 0000000000..f33e632560 --- /dev/null +++ b/docs/data/RoverPosition/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+RoverPosition +copyWith(
  1. void updates(
    1. RoverPosition
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+RoverPosition copyWith(void Function(RoverPosition) updates) => super.copyWith((message) => updates(message as RoverPosition)) as RoverPosition;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/create.html b/docs/data/RoverPosition/create.html new file mode 100644 index 0000000000..000218541b --- /dev/null +++ b/docs/data/RoverPosition/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +RoverPosition +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static RoverPosition create() => RoverPosition._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/createEmptyInstance.html b/docs/data/RoverPosition/createEmptyInstance.html new file mode 100644 index 0000000000..59ec69d42b --- /dev/null +++ b/docs/data/RoverPosition/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +RoverPosition +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
RoverPosition createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/createRepeated.html b/docs/data/RoverPosition/createRepeated.html new file mode 100644 index 0000000000..c32ad97338 --- /dev/null +++ b/docs/data/RoverPosition/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<RoverPosition> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<RoverPosition> createRepeated() => $pb.PbList<RoverPosition>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/ensureGps.html b/docs/data/RoverPosition/ensureGps.html new file mode 100644 index 0000000000..5f552949a6 --- /dev/null +++ b/docs/data/RoverPosition/ensureGps.html @@ -0,0 +1,118 @@ + + + + + + + + ensureGps method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureGps
+ +
+ +
+
+
+
+
+ +

ensureGps method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+GpsCoordinates +ensureGps() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+GpsCoordinates ensureGps() => $_ensure(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/ensureOrientation.html b/docs/data/RoverPosition/ensureOrientation.html new file mode 100644 index 0000000000..4ac4788eb1 --- /dev/null +++ b/docs/data/RoverPosition/ensureOrientation.html @@ -0,0 +1,118 @@ + + + + + + + + ensureOrientation method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureOrientation
+ +
+ +
+
+
+
+
+ +

ensureOrientation method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+Orientation +ensureOrientation() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+Orientation ensureOrientation() => $_ensure(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/ensureVersion.html b/docs/data/RoverPosition/ensureVersion.html new file mode 100644 index 0000000000..8eda673ae9 --- /dev/null +++ b/docs/data/RoverPosition/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$0.Version ensureVersion() => $_ensure(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/getDefault.html b/docs/data/RoverPosition/getDefault.html new file mode 100644 index 0000000000..f406c17bd7 --- /dev/null +++ b/docs/data/RoverPosition/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +RoverPosition +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static RoverPosition getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<RoverPosition>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/gps.html b/docs/data/RoverPosition/gps.html new file mode 100644 index 0000000000..e7d04c490e --- /dev/null +++ b/docs/data/RoverPosition/gps.html @@ -0,0 +1,150 @@ + + + + + + + + gps property - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gps
+ +
+ +
+
+
+
+
+ +

gps property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ GpsCoordinates + get + gps + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+GpsCoordinates get gps => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + gps + (GpsCoordinates v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set gps(GpsCoordinates v) { setField(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/hasGps.html b/docs/data/RoverPosition/hasGps.html new file mode 100644 index 0000000000..7463f985f3 --- /dev/null +++ b/docs/data/RoverPosition/hasGps.html @@ -0,0 +1,118 @@ + + + + + + + + hasGps method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasGps
+ +
+ +
+
+
+
+
+ +

hasGps method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasGps() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasGps() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/hasOrientation.html b/docs/data/RoverPosition/hasOrientation.html new file mode 100644 index 0000000000..43105e1563 --- /dev/null +++ b/docs/data/RoverPosition/hasOrientation.html @@ -0,0 +1,118 @@ + + + + + + + + hasOrientation method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasOrientation
+ +
+ +
+
+
+
+
+ +

hasOrientation method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasOrientation() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasOrientation() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/hasVersion.html b/docs/data/RoverPosition/hasVersion.html new file mode 100644 index 0000000000..c26b527b0c --- /dev/null +++ b/docs/data/RoverPosition/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasVersion() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/info_.html b/docs/data/RoverPosition/info_.html new file mode 100644 index 0000000000..f896746db4 --- /dev/null +++ b/docs/data/RoverPosition/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/orientation.html b/docs/data/RoverPosition/orientation.html new file mode 100644 index 0000000000..75e5dac2de --- /dev/null +++ b/docs/data/RoverPosition/orientation.html @@ -0,0 +1,150 @@ + + + + + + + + orientation property - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
orientation
+ +
+ +
+
+
+
+
+ +

orientation property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ Orientation + get + orientation + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+Orientation get orientation => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + orientation + (Orientation v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set orientation(Orientation v) { setField(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverPosition/version.html b/docs/data/RoverPosition/version.html new file mode 100644 index 0000000000..1ec173da3b --- /dev/null +++ b/docs/data/RoverPosition/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$0.Version get version => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set version($0.Version v) { setField(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverStatus-class-sidebar.html b/docs/data/RoverStatus-class-sidebar.html new file mode 100644 index 0000000000..94e5cfac44 --- /dev/null +++ b/docs/data/RoverStatus-class-sidebar.html @@ -0,0 +1,36 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. AUTONOMOUS
  28. +
  29. DISCONNECTED
  30. +
  31. IDLE
  32. +
  33. MANUAL
  34. +
  35. POWER_OFF
  36. +
  37. RESTART
  38. +
  39. values
  40. +
diff --git a/docs/data/RoverStatus-class.html b/docs/data/RoverStatus-class.html new file mode 100644 index 0000000000..a70d67177a --- /dev/null +++ b/docs/data/RoverStatus-class.html @@ -0,0 +1,353 @@ + + + + + + + + RoverStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverStatus
+ +
+ +
+
+
+
+
+ +

RoverStatus class + +

+ + +
+

/ Changes the way the rover listens to incoming commands. +/ +/ - When IDLE, all subsystems will ignore all commands +/ - When MANUAL, all subsystems will accept all commands +/ - When AUTONOMOUS, the rover will ignore commands from the dashboard

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + RoverStatus? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ AUTONOMOUS + → const RoverStatus + + +
+
+ + + +
+ +
+ DISCONNECTED + → const RoverStatus + + +
+
+ + + +
+ +
+ IDLE + → const RoverStatus + + +
+
+ + + +
+ +
+ MANUAL + → const RoverStatus + + +
+
+ + + +
+ +
+ POWER_OFF + → const RoverStatus + + +
+
+ + + +
+ +
+ RESTART + → const RoverStatus + + +
+
+ + + +
+ +
+ values + → const List<RoverStatus> + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverStatus/AUTONOMOUS-constant.html b/docs/data/RoverStatus/AUTONOMOUS-constant.html new file mode 100644 index 0000000000..e63eb0de16 --- /dev/null +++ b/docs/data/RoverStatus/AUTONOMOUS-constant.html @@ -0,0 +1,112 @@ + + + + + + + + AUTONOMOUS constant - RoverStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AUTONOMOUS
+ +
+ +
+
+
+
+
+ +

AUTONOMOUS constant +

+ + +
+ + RoverStatus + const AUTONOMOUS + + +
+ + + +
+

Implementation

+
static const RoverStatus AUTONOMOUS = RoverStatus._(3, _omitEnumNames ? '' : 'AUTONOMOUS');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverStatus/DISCONNECTED-constant.html b/docs/data/RoverStatus/DISCONNECTED-constant.html new file mode 100644 index 0000000000..9c8be2ec92 --- /dev/null +++ b/docs/data/RoverStatus/DISCONNECTED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + DISCONNECTED constant - RoverStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DISCONNECTED
+ +
+ +
+
+
+
+
+ +

DISCONNECTED constant +

+ + +
+ + RoverStatus + const DISCONNECTED + + +
+ + + +
+

Implementation

+
static const RoverStatus DISCONNECTED = RoverStatus._(0, _omitEnumNames ? '' : 'DISCONNECTED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverStatus/IDLE-constant.html b/docs/data/RoverStatus/IDLE-constant.html new file mode 100644 index 0000000000..f65dda9037 --- /dev/null +++ b/docs/data/RoverStatus/IDLE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + IDLE constant - RoverStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
IDLE
+ +
+ +
+
+
+
+
+ +

IDLE constant +

+ + +
+ + RoverStatus + const IDLE + + +
+ + + +
+

Implementation

+
static const RoverStatus IDLE = RoverStatus._(1, _omitEnumNames ? '' : 'IDLE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverStatus/MANUAL-constant.html b/docs/data/RoverStatus/MANUAL-constant.html new file mode 100644 index 0000000000..c0914d67e1 --- /dev/null +++ b/docs/data/RoverStatus/MANUAL-constant.html @@ -0,0 +1,112 @@ + + + + + + + + MANUAL constant - RoverStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MANUAL
+ +
+ +
+
+
+
+
+ +

MANUAL constant +

+ + +
+ + RoverStatus + const MANUAL + + +
+ + + +
+

Implementation

+
static const RoverStatus MANUAL = RoverStatus._(2, _omitEnumNames ? '' : 'MANUAL');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverStatus/POWER_OFF-constant.html b/docs/data/RoverStatus/POWER_OFF-constant.html new file mode 100644 index 0000000000..4567a6bfdf --- /dev/null +++ b/docs/data/RoverStatus/POWER_OFF-constant.html @@ -0,0 +1,112 @@ + + + + + + + + POWER_OFF constant - RoverStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
POWER_OFF
+ +
+ +
+
+
+
+
+ +

POWER_OFF constant +

+ + +
+ + RoverStatus + const POWER_OFF + + +
+ + + +
+

Implementation

+
static const RoverStatus POWER_OFF = RoverStatus._(4, _omitEnumNames ? '' : 'POWER_OFF');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverStatus/RESTART-constant.html b/docs/data/RoverStatus/RESTART-constant.html new file mode 100644 index 0000000000..1d0d1b2f11 --- /dev/null +++ b/docs/data/RoverStatus/RESTART-constant.html @@ -0,0 +1,112 @@ + + + + + + + + RESTART constant - RoverStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RESTART
+ +
+ +
+
+
+
+
+ +

RESTART constant +

+ + +
+ + RoverStatus + const RESTART + + +
+ + + +
+

Implementation

+
static const RoverStatus RESTART = RoverStatus._(5, _omitEnumNames ? '' : 'RESTART');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverStatus/valueOf.html b/docs/data/RoverStatus/valueOf.html new file mode 100644 index 0000000000..a1fb0973aa --- /dev/null +++ b/docs/data/RoverStatus/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - RoverStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +RoverStatus? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static RoverStatus? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverStatus/values-constant.html b/docs/data/RoverStatus/values-constant.html new file mode 100644 index 0000000000..d4c3e84c94 --- /dev/null +++ b/docs/data/RoverStatus/values-constant.html @@ -0,0 +1,119 @@ + + + + + + + + values constant - RoverStatus class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<RoverStatus> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<RoverStatus> values = <RoverStatus> [
+  DISCONNECTED,
+  IDLE,
+  MANUAL,
+  AUTONOMOUS,
+  POWER_OFF,
+  RESTART,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverStatusHumanName-extension-sidebar.html b/docs/data/RoverStatusHumanName-extension-sidebar.html new file mode 100644 index 0000000000..cde40691fc --- /dev/null +++ b/docs/data/RoverStatusHumanName-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. + + + + + + +
diff --git a/docs/data/RoverStatusHumanName.html b/docs/data/RoverStatusHumanName.html new file mode 100644 index 0000000000..3b3a6737f9 --- /dev/null +++ b/docs/data/RoverStatusHumanName.html @@ -0,0 +1,139 @@ + + + + + + + + RoverStatusHumanName extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverStatusHumanName
+ +
+ +
+
+
+
+
+ +

RoverStatusHumanName extension + +

+ + +
+

Gets a user-friendly name for a RoverStatus.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ humanName + → String + + +
+
+ Gets a user-friendly name for a RoverStatus. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/RoverStatusHumanName/humanName.html b/docs/data/RoverStatusHumanName/humanName.html new file mode 100644 index 0000000000..4661d31192 --- /dev/null +++ b/docs/data/RoverStatusHumanName/humanName.html @@ -0,0 +1,132 @@ + + + + + + + + humanName property - RoverStatusHumanName extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

Gets a user-friendly name for a RoverStatus.

+
+ + +
+

Implementation

+
String get humanName {
+	switch (this) {
+		case RoverStatus.DISCONNECTED: return "Disconnected";
+		case RoverStatus.IDLE: return "Idle";
+		case RoverStatus.MANUAL: return "Manual";
+		case RoverStatus.AUTONOMOUS: return "Autonomous";
+		case RoverStatus.POWER_OFF: return "Off";
+      case RoverStatus.RESTART: return "Restart";
+	}
+	// Do not use default or else you'll lose exhaustiveness checking.
+	throw ArgumentError("Unrecognized rover status: $this");
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverType-enum-sidebar.html b/docs/data/RoverType-enum-sidebar.html new file mode 100644 index 0000000000..cef23face4 --- /dev/null +++ b/docs/data/RoverType-enum-sidebar.html @@ -0,0 +1,32 @@ +
    + + +
  1. Values
  2. +
  3. rover
  4. +
  5. localhost
  6. +
  7. tank
  8. + + +
  9. + Properties +
  10. +
  11. hashCode
  12. +
  13. humanName
  14. +
  15. index
  16. +
  17. runtimeType
  18. + +
  19. Methods
  20. +
  21. noSuchMethod
  22. +
  23. toString
  24. + +
  25. Operators
  26. +
  27. operator ==
  28. + + + + + + +
  29. Constants
  30. +
  31. values
  32. +
diff --git a/docs/data/RoverType.html b/docs/data/RoverType.html new file mode 100644 index 0000000000..95c783f20e --- /dev/null +++ b/docs/data/RoverType.html @@ -0,0 +1,283 @@ + + + + + + + + RoverType enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverType
+ +
+ +
+
+
+
+
+ + +

+ RoverType + enum + + +

+
+ + +
+

Which rover-like system to communicate with.

+

The ports on each SocketInfo will remain the same, but the IP addresses may vary.

+
+ + + +
+

Values

+
+
+ rover + → const RoverType + + +
+
+

The rover itself.

+

The rover has multiple computers with multiple IP addresses.

+ + +
+ +
+ localhost + → const RoverType + + +
+
+

The user's own computer.

+

Useful when debugging and running the rover programs locally.

+ + +
+ +
+ tank + → const RoverType + + +
+
+

The smaller rover used for autonomy.

+

The tank only has one computer with one static IP address.

+ + +
+ +
+
+ + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ humanName + → String + + +
+
+ The human-friendly name for this RoverType. +
no setter
+ +
+ +
+ index + → int + + +
+
+ A numeric identifier for the enumerated value. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ values + → const List<RoverType> + + +
+
+ A constant List of the values in this enum, in order of their declaration. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverType/hashCode.html b/docs/data/RoverType/hashCode.html new file mode 100644 index 0000000000..0284da7e19 --- /dev/null +++ b/docs/data/RoverType/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - RoverType enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverType/humanName.html b/docs/data/RoverType/humanName.html new file mode 100644 index 0000000000..dafd930d42 --- /dev/null +++ b/docs/data/RoverType/humanName.html @@ -0,0 +1,127 @@ + + + + + + + + humanName property - RoverType enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

The human-friendly name for this RoverType.

+
+ + +
+

Implementation

+
String get humanName {
+  switch(this) {
+    case rover: return "Rover";
+    case tank: return "Tank";
+    case localhost: return "Local";
+  }
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverType/index.html b/docs/data/RoverType/index.html new file mode 100644 index 0000000000..7a1ca6f559 --- /dev/null +++ b/docs/data/RoverType/index.html @@ -0,0 +1,125 @@ + + + + + + + + index property - RoverType enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+

index property +

+ + + + + +
+
+ + int + get + index +
inherited
+ +
+ +
+

A numeric identifier for the enumerated value.

+

The values of a single enumeration are numbered +consecutively from zero to one less than the +number of values. +This is also the index of the value in the +enumerated type's static values list.

+
+ + +
+

Implementation

+
int get index;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverType/noSuchMethod.html b/docs/data/RoverType/noSuchMethod.html new file mode 100644 index 0000000000..f52afbe01b --- /dev/null +++ b/docs/data/RoverType/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - RoverType enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverType/operator_equals.html b/docs/data/RoverType/operator_equals.html new file mode 100644 index 0000000000..004774764b --- /dev/null +++ b/docs/data/RoverType/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - RoverType enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverType/runtimeType.html b/docs/data/RoverType/runtimeType.html new file mode 100644 index 0000000000..4eb397983c --- /dev/null +++ b/docs/data/RoverType/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - RoverType enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverType/toString.html b/docs/data/RoverType/toString.html new file mode 100644 index 0000000000..948e520718 --- /dev/null +++ b/docs/data/RoverType/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - RoverType enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/RoverType/values-constant.html b/docs/data/RoverType/values-constant.html new file mode 100644 index 0000000000..2e2db9ba41 --- /dev/null +++ b/docs/data/RoverType/values-constant.html @@ -0,0 +1,111 @@ + + + + + + + + values constant - RoverType enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<RoverType> + const values + + +
+ +
+

A constant List of the values in this enum, in order of their declaration.

+
+ + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData-class-sidebar.html b/docs/data/SampleData-class-sidebar.html new file mode 100644 index 0000000000..a123e80fba --- /dev/null +++ b/docs/data/SampleData-class-sidebar.html @@ -0,0 +1,34 @@ +
    + +
  1. Constructors
  2. +
  3. SampleData
  4. + + + +
  5. + Properties +
  6. +
  7. average
  8. +
  9. firstTimestamp
  10. +
  11. hashCode
  12. +
  13. max
  14. +
  15. min
  16. +
  17. readings
  18. +
  19. runtimeType
  20. +
  21. sum
  22. + +
  23. Methods
  24. +
  25. addReading
  26. +
  27. clear
  28. +
  29. noSuchMethod
  30. +
  31. toString
  32. + +
  33. Operators
  34. +
  35. operator ==
  36. + + + + + + +
diff --git a/docs/data/SampleData-class.html b/docs/data/SampleData-class.html new file mode 100644 index 0000000000..b6d6a2cad8 --- /dev/null +++ b/docs/data/SampleData-class.html @@ -0,0 +1,301 @@ + + + + + + + + SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SampleData
+ +
+ +
+
+
+
+
+ +

SampleData class + +

+ + +
+

Stores all the readings of one sensor for one sample.

+
+ + + + +
+

Constructors

+
+
+ SampleData() +
+
+ +
+
+
+ +
+

Properties

+
+
+ average + ↔ double? + + +
+
+ The average value of readings. +
getter/setter pair
+ +
+ +
+ firstTimestamp + Timestamp? + + +
+
+ The Timestamp of the first reading. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ max + ↔ double? + + +
+
+ The maximum value of readings. +
getter/setter pair
+ +
+ +
+ min + ↔ double? + + +
+
+ The minimum value of readings. +
getter/setter pair
+ +
+ +
+ readings + → List<SensorReading> + + +
+
+ A list of the readings for this sample and sensor. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ sum + ↔ double + + +
+
+ The sum total of all the readings. Used to update average. +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addReading(Timestamp timestamp, double value) + → void + + + +
+
+ Adds a new SensorReading with timestamp relative to firstTimestamp. + + +
+ +
+ clear() + → void + + + +
+
+ Clears all readings. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/SampleData.html b/docs/data/SampleData/SampleData.html new file mode 100644 index 0000000000..1aa1fb7db4 --- /dev/null +++ b/docs/data/SampleData/SampleData.html @@ -0,0 +1,104 @@ + + + + + + + + SampleData constructor - SampleData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SampleData
+ +
+ +
+
+
+
+
+ +

SampleData constructor +

+ +
+ + SampleData() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/addReading.html b/docs/data/SampleData/addReading.html new file mode 100644 index 0000000000..1507192504 --- /dev/null +++ b/docs/data/SampleData/addReading.html @@ -0,0 +1,125 @@ + + + + + + + + addReading method - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
addReading
+ +
+ +
+
+
+
+
+ +

addReading method +

+ +
+ +void +addReading(
  1. Timestamp timestamp,
  2. +
  3. double value
  4. +
) + + + +
+ +
+

Adds a new SensorReading with timestamp relative to firstTimestamp.

+

min, max, and average are updated here.

+
+ + + +
+

Implementation

+
void addReading(Timestamp timestamp, double value) {
+	firstTimestamp ??= timestamp;
+	readings.add(SensorReading(time: timestamp - firstTimestamp!, value: value));
+	if (min == null || value < min!) min = value;
+	if (max == null || value > max!) max = value;
+	sum += value;
+	average = sum / readings.length;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/average.html b/docs/data/SampleData/average.html new file mode 100644 index 0000000000..3a157f576b --- /dev/null +++ b/docs/data/SampleData/average.html @@ -0,0 +1,116 @@ + + + + + + + + average property - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
average
+ +
+ +
+
+
+
+
+ +

average property +

+ + +
+ + double? + average +
getter/setter pair
+ +
+ +
+

The average value of readings.

+

Because there may be many readings, this is updated efficiently in addReading.

+
+ + +
+

Implementation

+
double? average;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/clear.html b/docs/data/SampleData/clear.html new file mode 100644 index 0000000000..664a553fbc --- /dev/null +++ b/docs/data/SampleData/clear.html @@ -0,0 +1,120 @@ + + + + + + + + clear method - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clear
+ +
+ +
+
+
+
+
+ +

clear method +

+ +
+ +void +clear() + + + +
+ +
+

Clears all readings.

+
+ + + +
+

Implementation

+
void clear() {
+	readings.clear();
+	firstTimestamp = null;
+	min = average = max = null;
+	sum = 0;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/firstTimestamp.html b/docs/data/SampleData/firstTimestamp.html new file mode 100644 index 0000000000..73b5336743 --- /dev/null +++ b/docs/data/SampleData/firstTimestamp.html @@ -0,0 +1,116 @@ + + + + + + + + firstTimestamp property - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
firstTimestamp
+ +
+ +
+
+
+
+
+ +

firstTimestamp property +

+ + +
+ + Timestamp? + firstTimestamp +
getter/setter pair
+ +
+ +
+

The Timestamp of the first reading.

+

All other SensorReading.times are relative to this.

+
+ + +
+

Implementation

+
Timestamp? firstTimestamp;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/hashCode.html b/docs/data/SampleData/hashCode.html new file mode 100644 index 0000000000..9a95951832 --- /dev/null +++ b/docs/data/SampleData/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/max.html b/docs/data/SampleData/max.html new file mode 100644 index 0000000000..24ed4721d5 --- /dev/null +++ b/docs/data/SampleData/max.html @@ -0,0 +1,115 @@ + + + + + + + + max property - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
max
+ +
+ +
+
+
+
+
+ +

max property +

+ + +
+ + double? + max +
getter/setter pair
+ +
+ +
+

The maximum value of readings.

+
+ + +
+

Implementation

+
double? max;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/min.html b/docs/data/SampleData/min.html new file mode 100644 index 0000000000..af846b9613 --- /dev/null +++ b/docs/data/SampleData/min.html @@ -0,0 +1,115 @@ + + + + + + + + min property - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
min
+ +
+ +
+
+
+
+
+ +

min property +

+ + +
+ + double? + min +
getter/setter pair
+ +
+ +
+

The minimum value of readings.

+
+ + +
+

Implementation

+
double? min;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/noSuchMethod.html b/docs/data/SampleData/noSuchMethod.html new file mode 100644 index 0000000000..06f1633f6c --- /dev/null +++ b/docs/data/SampleData/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/operator_equals.html b/docs/data/SampleData/operator_equals.html new file mode 100644 index 0000000000..b4ad9defc5 --- /dev/null +++ b/docs/data/SampleData/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/readings.html b/docs/data/SampleData/readings.html new file mode 100644 index 0000000000..985f2d8de0 --- /dev/null +++ b/docs/data/SampleData/readings.html @@ -0,0 +1,115 @@ + + + + + + + + readings property - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
readings
+ +
+ +
+
+
+
+
+ +

readings property +

+ + +
+ + List<SensorReading> + readings +
final
+ +
+ +
+

A list of the readings for this sample and sensor.

+
+ + +
+

Implementation

+
final List<SensorReading> readings = [];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/runtimeType.html b/docs/data/SampleData/runtimeType.html new file mode 100644 index 0000000000..3e8209391a --- /dev/null +++ b/docs/data/SampleData/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/sum.html b/docs/data/SampleData/sum.html new file mode 100644 index 0000000000..45cc774462 --- /dev/null +++ b/docs/data/SampleData/sum.html @@ -0,0 +1,115 @@ + + + + + + + + sum property - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sum
+ +
+ +
+
+
+
+
+ +

sum property +

+ + +
+ + double + sum +
getter/setter pair
+ +
+ +
+

The sum total of all the readings. Used to update average.

+
+ + +
+

Implementation

+
double sum = 0;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SampleData/toString.html b/docs/data/SampleData/toString.html new file mode 100644 index 0000000000..96c6f9b263 --- /dev/null +++ b/docs/data/SampleData/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - SampleData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand-class-sidebar.html b/docs/data/ScienceCommand-class-sidebar.html new file mode 100644 index 0000000000..1d23b0b6bd --- /dev/null +++ b/docs/data/ScienceCommand-class-sidebar.html @@ -0,0 +1,110 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceCommand
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. calibrate
  12. +
  13. carousel
  14. +
  15. carouselMotor
  16. +
  17. eventPlugin
  18. +
  19. funnel
  20. +
  21. hashCode
  22. +
  23. info_
  24. +
  25. isFrozen
  26. +
  27. pumps
  28. +
  29. runtimeType
  30. +
  31. sample
  32. +
  33. scoop
  34. +
  35. scoopMotor
  36. +
  37. state
  38. +
  39. stop
  40. +
  41. subsurfaceMotor
  42. +
  43. unknownFields
  44. +
  45. version
  46. + +
  47. Methods
  48. +
  49. addExtension
  50. +
  51. check
  52. +
  53. clear
  54. +
  55. clearCalibrate
  56. +
  57. clearCarousel
  58. +
  59. clearCarouselMotor
  60. +
  61. clearExtension
  62. +
  63. clearField
  64. +
  65. clearFunnel
  66. +
  67. clearPumps
  68. +
  69. clearSample
  70. +
  71. clearScoop
  72. +
  73. clearScoopMotor
  74. +
  75. clearState
  76. +
  77. clearStop
  78. +
  79. clearSubsurfaceMotor
  80. +
  81. clearVersion
  82. +
  83. clone
  84. +
  85. copyWith
  86. +
  87. createEmptyInstance
  88. +
  89. createMapField
  90. +
  91. createRepeatedField
  92. +
  93. ensureVersion
  94. +
  95. extensionsAreInitialized
  96. +
  97. freeze
  98. +
  99. getDefaultForField
  100. +
  101. getExtension
  102. +
  103. getField
  104. +
  105. getFieldOrNull
  106. +
  107. getTagNumber
  108. +
  109. hasCalibrate
  110. +
  111. hasCarousel
  112. +
  113. hasCarouselMotor
  114. +
  115. hasExtension
  116. +
  117. hasField
  118. +
  119. hasFunnel
  120. +
  121. hasPumps
  122. +
  123. hasRequiredFields
  124. +
  125. hasSample
  126. +
  127. hasScoop
  128. +
  129. hasScoopMotor
  130. +
  131. hasState
  132. +
  133. hasStop
  134. +
  135. hasSubsurfaceMotor
  136. +
  137. hasVersion
  138. +
  139. isInitialized
  140. +
  141. mergeFromBuffer
  142. +
  143. mergeFromCodedBufferReader
  144. +
  145. mergeFromJson
  146. +
  147. mergeFromJsonMap
  148. +
  149. mergeFromMessage
  150. +
  151. mergeFromProto3Json
  152. +
  153. mergeUnknownFields
  154. +
  155. noSuchMethod
  156. +
  157. setExtension
  158. +
  159. setField
  160. +
  161. toBuilder
  162. +
  163. toDebugString
  164. +
  165. toProto3Json
  166. +
  167. toString
  168. +
  169. writeToBuffer
  170. +
  171. writeToCodedBufferWriter
  172. +
  173. writeToJson
  174. +
  175. writeToJsonMap
  176. + +
  177. Operators
  178. +
  179. operator ==
  180. + + + + + +
  181. Static methods
  182. +
  183. create
  184. +
  185. createRepeated
  186. +
  187. getDefault
  188. + +
diff --git a/docs/data/ScienceCommand-class.html b/docs/data/ScienceCommand-class.html new file mode 100644 index 0000000000..adec745bd9 --- /dev/null +++ b/docs/data/ScienceCommand-class.html @@ -0,0 +1,1291 @@ + + + + + + + + ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceCommand
+ +
+ +
+
+
+
+
+ +

ScienceCommand class + +

+ + +
+

/ A command to the science subsystem.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ ScienceCommand({double? carouselMotor, double? scoopMotor, double? subsurfaceMotor, PumpState? pumps, ServoState? funnel, ServoState? scoop, CarouselCommand? carousel, bool? calibrate, bool? stop, int? sample, ScienceState? state, Version? version}) +
+
+ +
factory
+
+
+ ScienceCommand.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ ScienceCommand.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ calibrate + ↔ bool + + +
+
+ High level commands +
getter/setter pair
+ +
+ + +
+ +
getter/setter pair
+ +
+ +
+ carouselMotor + ↔ double + + +
+
+ Individual control over each motor. Indicates steps to move +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ funnel + ServoState + + +
+
+ +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ pumps + PumpState + + +
+
+ Control over other hardware +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ sample + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ scoop + ServoState + + +
+
+ +
getter/setter pair
+ +
+ +
+ scoopMotor + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ state + ScienceState + + +
+
+ +
getter/setter pair
+ +
+ +
+ stop + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ subsurfaceMotor + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearCalibrate() + → void + + + +
+
+ + + +
+ +
+ clearCarousel() + → void + + + +
+
+ + + +
+ +
+ clearCarouselMotor() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearFunnel() + → void + + + +
+
+ + + +
+ +
+ clearPumps() + → void + + + +
+
+ + + +
+ +
+ clearSample() + → void + + + +
+
+ + + +
+ +
+ clearScoop() + → void + + + +
+
+ + + +
+ +
+ clearScoopMotor() + → void + + + +
+
+ + + +
+ +
+ clearState() + → void + + + +
+
+ + + +
+ +
+ clearStop() + → void + + + +
+
+ + + +
+ +
+ clearSubsurfaceMotor() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + ScienceCommand + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(ScienceCommand)) + ScienceCommand + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + ScienceCommand + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasCalibrate() + → bool + + + +
+
+ + + +
+ +
+ hasCarousel() + → bool + + + +
+
+ + + +
+ +
+ hasCarouselMotor() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasFunnel() + → bool + + + +
+
+ + + +
+ +
+ hasPumps() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasSample() + → bool + + + +
+
+ + + +
+ +
+ hasScoop() + → bool + + + +
+
+ + + +
+ +
+ hasScoopMotor() + → bool + + + +
+
+ + + +
+ +
+ hasState() + → bool + + + +
+
+ + + +
+ +
+ hasStop() + → bool + + + +
+
+ + + +
+ +
+ hasSubsurfaceMotor() + → bool + + + +
+
+ + + +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + ScienceCommand + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<ScienceCommand> + + + +
+
+ + + +
+ +
+ getDefault() + ScienceCommand + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/ScienceCommand.fromBuffer.html b/docs/data/ScienceCommand/ScienceCommand.fromBuffer.html new file mode 100644 index 0000000000..a9a3e88bc2 --- /dev/null +++ b/docs/data/ScienceCommand/ScienceCommand.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + ScienceCommand.fromBuffer constructor - ScienceCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceCommand.fromBuffer
+ +
+ +
+
+
+
+
+ +

ScienceCommand.fromBuffer constructor +

+ +
+ + ScienceCommand.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory ScienceCommand.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/ScienceCommand.fromJson.html b/docs/data/ScienceCommand/ScienceCommand.fromJson.html new file mode 100644 index 0000000000..39e7c051da --- /dev/null +++ b/docs/data/ScienceCommand/ScienceCommand.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + ScienceCommand.fromJson constructor - ScienceCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceCommand.fromJson
+ +
+ +
+
+
+
+
+ +

ScienceCommand.fromJson constructor +

+ +
+ + ScienceCommand.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory ScienceCommand.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/ScienceCommand.html b/docs/data/ScienceCommand/ScienceCommand.html new file mode 100644 index 0000000000..9788d0ad77 --- /dev/null +++ b/docs/data/ScienceCommand/ScienceCommand.html @@ -0,0 +1,172 @@ + + + + + + + + ScienceCommand constructor - ScienceCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceCommand
+ +
+ +
+
+
+
+
+ +

ScienceCommand constructor +

+ +
+ + ScienceCommand({
  1. double? carouselMotor,
  2. +
  3. double? scoopMotor,
  4. +
  5. double? subsurfaceMotor,
  6. +
  7. PumpState? pumps,
  8. +
  9. ServoState? funnel,
  10. +
  11. ServoState? scoop,
  12. +
  13. CarouselCommand? carousel,
  14. +
  15. bool? calibrate,
  16. +
  17. bool? stop,
  18. +
  19. int? sample,
  20. +
  21. ScienceState? state,
  22. +
  23. Version? version,
  24. +
}) +
+ + + + +
+

Implementation

+
factory ScienceCommand({
+  $core.double? carouselMotor,
+  $core.double? scoopMotor,
+  $core.double? subsurfaceMotor,
+  PumpState? pumps,
+  ServoState? funnel,
+  ServoState? scoop,
+  CarouselCommand? carousel,
+  $core.bool? calibrate,
+  $core.bool? stop,
+  $core.int? sample,
+  ScienceState? state,
+  $0.Version? version,
+}) {
+  final $result = create();
+  if (carouselMotor != null) {
+    $result.carouselMotor = carouselMotor;
+  }
+  if (scoopMotor != null) {
+    $result.scoopMotor = scoopMotor;
+  }
+  if (subsurfaceMotor != null) {
+    $result.subsurfaceMotor = subsurfaceMotor;
+  }
+  if (pumps != null) {
+    $result.pumps = pumps;
+  }
+  if (funnel != null) {
+    $result.funnel = funnel;
+  }
+  if (scoop != null) {
+    $result.scoop = scoop;
+  }
+  if (carousel != null) {
+    $result.carousel = carousel;
+  }
+  if (calibrate != null) {
+    $result.calibrate = calibrate;
+  }
+  if (stop != null) {
+    $result.stop = stop;
+  }
+  if (sample != null) {
+    $result.sample = sample;
+  }
+  if (state != null) {
+    $result.state = state;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/calibrate.html b/docs/data/ScienceCommand/calibrate.html new file mode 100644 index 0000000000..6810424bbf --- /dev/null +++ b/docs/data/ScienceCommand/calibrate.html @@ -0,0 +1,153 @@ + + + + + + + + calibrate property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
calibrate
+ +
+ +
+
+
+
+
+ +

calibrate property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ bool + get + calibrate + + +
+ +
+

High level commands

+
+ + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.bool get calibrate => $_getBF(7);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ set + calibrate + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(8)
+set calibrate($core.bool v) { $_setBool(7, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/carousel.html b/docs/data/ScienceCommand/carousel.html new file mode 100644 index 0000000000..bede31529e --- /dev/null +++ b/docs/data/ScienceCommand/carousel.html @@ -0,0 +1,150 @@ + + + + + + + + carousel property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
carousel
+ +
+ +
+
+
+
+
+ +

carousel property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ CarouselCommand + get + carousel + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+CarouselCommand get carousel => $_getN(6);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ set + carousel + (CarouselCommand v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(7)
+set carousel(CarouselCommand v) { setField(7, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/carouselMotor.html b/docs/data/ScienceCommand/carouselMotor.html new file mode 100644 index 0000000000..39653c10f1 --- /dev/null +++ b/docs/data/ScienceCommand/carouselMotor.html @@ -0,0 +1,153 @@ + + + + + + + + carouselMotor property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
carouselMotor
+ +
+ +
+
+
+
+
+ +

carouselMotor property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + get + carouselMotor + + +
+ +
+

Individual control over each motor. Indicates steps to move

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get carouselMotor => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + carouselMotor + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set carouselMotor($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearCalibrate.html b/docs/data/ScienceCommand/clearCalibrate.html new file mode 100644 index 0000000000..8e998d4cb4 --- /dev/null +++ b/docs/data/ScienceCommand/clearCalibrate.html @@ -0,0 +1,118 @@ + + + + + + + + clearCalibrate method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearCalibrate
+ +
+ +
+
+
+
+
+ +

clearCalibrate method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+void +clearCalibrate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+void clearCalibrate() => clearField(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearCarousel.html b/docs/data/ScienceCommand/clearCarousel.html new file mode 100644 index 0000000000..65871b4fce --- /dev/null +++ b/docs/data/ScienceCommand/clearCarousel.html @@ -0,0 +1,118 @@ + + + + + + + + clearCarousel method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearCarousel
+ +
+ +
+
+
+
+
+ +

clearCarousel method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+void +clearCarousel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+void clearCarousel() => clearField(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearCarouselMotor.html b/docs/data/ScienceCommand/clearCarouselMotor.html new file mode 100644 index 0000000000..a879a6ebac --- /dev/null +++ b/docs/data/ScienceCommand/clearCarouselMotor.html @@ -0,0 +1,118 @@ + + + + + + + + clearCarouselMotor method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearCarouselMotor
+ +
+ +
+
+
+
+
+ +

clearCarouselMotor method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearCarouselMotor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearCarouselMotor() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearFunnel.html b/docs/data/ScienceCommand/clearFunnel.html new file mode 100644 index 0000000000..8a303e39dd --- /dev/null +++ b/docs/data/ScienceCommand/clearFunnel.html @@ -0,0 +1,118 @@ + + + + + + + + clearFunnel method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearFunnel
+ +
+ +
+
+
+
+
+ +

clearFunnel method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearFunnel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearFunnel() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearPumps.html b/docs/data/ScienceCommand/clearPumps.html new file mode 100644 index 0000000000..7aafbbbb70 --- /dev/null +++ b/docs/data/ScienceCommand/clearPumps.html @@ -0,0 +1,118 @@ + + + + + + + + clearPumps method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearPumps
+ +
+ +
+
+
+
+
+ +

clearPumps method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearPumps() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearPumps() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearSample.html b/docs/data/ScienceCommand/clearSample.html new file mode 100644 index 0000000000..7ea54b79ab --- /dev/null +++ b/docs/data/ScienceCommand/clearSample.html @@ -0,0 +1,118 @@ + + + + + + + + clearSample method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSample
+ +
+ +
+
+
+
+
+ +

clearSample method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+void +clearSample() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+void clearSample() => clearField(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearScoop.html b/docs/data/ScienceCommand/clearScoop.html new file mode 100644 index 0000000000..f1dbcaafc9 --- /dev/null +++ b/docs/data/ScienceCommand/clearScoop.html @@ -0,0 +1,118 @@ + + + + + + + + clearScoop method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearScoop
+ +
+ +
+
+
+
+
+ +

clearScoop method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+void +clearScoop() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+void clearScoop() => clearField(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearScoopMotor.html b/docs/data/ScienceCommand/clearScoopMotor.html new file mode 100644 index 0000000000..db4029481a --- /dev/null +++ b/docs/data/ScienceCommand/clearScoopMotor.html @@ -0,0 +1,118 @@ + + + + + + + + clearScoopMotor method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearScoopMotor
+ +
+ +
+
+
+
+
+ +

clearScoopMotor method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearScoopMotor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearScoopMotor() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearState.html b/docs/data/ScienceCommand/clearState.html new file mode 100644 index 0000000000..ad843a6c50 --- /dev/null +++ b/docs/data/ScienceCommand/clearState.html @@ -0,0 +1,118 @@ + + + + + + + + clearState method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearState
+ +
+ +
+
+
+
+
+ +

clearState method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+void +clearState() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+void clearState() => clearField(11);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearStop.html b/docs/data/ScienceCommand/clearStop.html new file mode 100644 index 0000000000..266370495d --- /dev/null +++ b/docs/data/ScienceCommand/clearStop.html @@ -0,0 +1,118 @@ + + + + + + + + clearStop method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearStop
+ +
+ +
+
+
+
+
+ +

clearStop method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+void +clearStop() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+void clearStop() => clearField(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearSubsurfaceMotor.html b/docs/data/ScienceCommand/clearSubsurfaceMotor.html new file mode 100644 index 0000000000..8c1fe90a29 --- /dev/null +++ b/docs/data/ScienceCommand/clearSubsurfaceMotor.html @@ -0,0 +1,118 @@ + + + + + + + + clearSubsurfaceMotor method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSubsurfaceMotor
+ +
+ +
+
+
+
+
+ +

clearSubsurfaceMotor method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearSubsurfaceMotor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearSubsurfaceMotor() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clearVersion.html b/docs/data/ScienceCommand/clearVersion.html new file mode 100644 index 0000000000..29e7320610 --- /dev/null +++ b/docs/data/ScienceCommand/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(12)
+void clearVersion() => clearField(12);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/clone.html b/docs/data/ScienceCommand/clone.html new file mode 100644 index 0000000000..c9c562d767 --- /dev/null +++ b/docs/data/ScienceCommand/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+ScienceCommand +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+ScienceCommand clone() => ScienceCommand()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/copyWith.html b/docs/data/ScienceCommand/copyWith.html new file mode 100644 index 0000000000..fdc63ece52 --- /dev/null +++ b/docs/data/ScienceCommand/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+ScienceCommand +copyWith(
  1. void updates(
    1. ScienceCommand
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+ScienceCommand copyWith(void Function(ScienceCommand) updates) => super.copyWith((message) => updates(message as ScienceCommand)) as ScienceCommand;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/create.html b/docs/data/ScienceCommand/create.html new file mode 100644 index 0000000000..11531c6227 --- /dev/null +++ b/docs/data/ScienceCommand/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +ScienceCommand +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static ScienceCommand create() => ScienceCommand._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/createEmptyInstance.html b/docs/data/ScienceCommand/createEmptyInstance.html new file mode 100644 index 0000000000..12e0717af7 --- /dev/null +++ b/docs/data/ScienceCommand/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +ScienceCommand +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
ScienceCommand createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/createRepeated.html b/docs/data/ScienceCommand/createRepeated.html new file mode 100644 index 0000000000..aabeebc923 --- /dev/null +++ b/docs/data/ScienceCommand/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<ScienceCommand> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<ScienceCommand> createRepeated() => $pb.PbList<ScienceCommand>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/ensureVersion.html b/docs/data/ScienceCommand/ensureVersion.html new file mode 100644 index 0000000000..98c783161c --- /dev/null +++ b/docs/data/ScienceCommand/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(12)
+$0.Version ensureVersion() => $_ensure(11);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/funnel.html b/docs/data/ScienceCommand/funnel.html new file mode 100644 index 0000000000..cc1b8b0c26 --- /dev/null +++ b/docs/data/ScienceCommand/funnel.html @@ -0,0 +1,150 @@ + + + + + + + + funnel property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
funnel
+ +
+ +
+
+
+
+
+ +

funnel property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ ServoState + get + funnel + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+ServoState get funnel => $_getN(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + funnel + (ServoState v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set funnel(ServoState v) { setField(5, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/getDefault.html b/docs/data/ScienceCommand/getDefault.html new file mode 100644 index 0000000000..5d77c1585f --- /dev/null +++ b/docs/data/ScienceCommand/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +ScienceCommand +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static ScienceCommand getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ScienceCommand>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasCalibrate.html b/docs/data/ScienceCommand/hasCalibrate.html new file mode 100644 index 0000000000..1cea1296fe --- /dev/null +++ b/docs/data/ScienceCommand/hasCalibrate.html @@ -0,0 +1,118 @@ + + + + + + + + hasCalibrate method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasCalibrate
+ +
+ +
+
+
+
+
+ +

hasCalibrate method +

+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+bool +hasCalibrate() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.bool hasCalibrate() => $_has(7);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasCarousel.html b/docs/data/ScienceCommand/hasCarousel.html new file mode 100644 index 0000000000..86f658ec76 --- /dev/null +++ b/docs/data/ScienceCommand/hasCarousel.html @@ -0,0 +1,118 @@ + + + + + + + + hasCarousel method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasCarousel
+ +
+ +
+
+
+
+
+ +

hasCarousel method +

+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+bool +hasCarousel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.bool hasCarousel() => $_has(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasCarouselMotor.html b/docs/data/ScienceCommand/hasCarouselMotor.html new file mode 100644 index 0000000000..16512cf8dc --- /dev/null +++ b/docs/data/ScienceCommand/hasCarouselMotor.html @@ -0,0 +1,118 @@ + + + + + + + + hasCarouselMotor method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasCarouselMotor
+ +
+ +
+
+
+
+
+ +

hasCarouselMotor method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasCarouselMotor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasCarouselMotor() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasFunnel.html b/docs/data/ScienceCommand/hasFunnel.html new file mode 100644 index 0000000000..4656a786ef --- /dev/null +++ b/docs/data/ScienceCommand/hasFunnel.html @@ -0,0 +1,118 @@ + + + + + + + + hasFunnel method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasFunnel
+ +
+ +
+
+
+
+
+ +

hasFunnel method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasFunnel() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasFunnel() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasPumps.html b/docs/data/ScienceCommand/hasPumps.html new file mode 100644 index 0000000000..4b0724a230 --- /dev/null +++ b/docs/data/ScienceCommand/hasPumps.html @@ -0,0 +1,118 @@ + + + + + + + + hasPumps method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasPumps
+ +
+ +
+
+
+
+
+ +

hasPumps method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasPumps() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasPumps() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasSample.html b/docs/data/ScienceCommand/hasSample.html new file mode 100644 index 0000000000..3212a9ff5b --- /dev/null +++ b/docs/data/ScienceCommand/hasSample.html @@ -0,0 +1,118 @@ + + + + + + + + hasSample method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSample
+ +
+ +
+
+
+
+
+ +

hasSample method +

+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+bool +hasSample() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.bool hasSample() => $_has(9);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasScoop.html b/docs/data/ScienceCommand/hasScoop.html new file mode 100644 index 0000000000..dfd0aeb9ba --- /dev/null +++ b/docs/data/ScienceCommand/hasScoop.html @@ -0,0 +1,118 @@ + + + + + + + + hasScoop method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasScoop
+ +
+ +
+
+
+
+
+ +

hasScoop method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+bool +hasScoop() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool hasScoop() => $_has(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasScoopMotor.html b/docs/data/ScienceCommand/hasScoopMotor.html new file mode 100644 index 0000000000..ee27a68cdc --- /dev/null +++ b/docs/data/ScienceCommand/hasScoopMotor.html @@ -0,0 +1,118 @@ + + + + + + + + hasScoopMotor method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasScoopMotor
+ +
+ +
+
+
+
+
+ +

hasScoopMotor method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasScoopMotor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasScoopMotor() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasState.html b/docs/data/ScienceCommand/hasState.html new file mode 100644 index 0000000000..487d343a27 --- /dev/null +++ b/docs/data/ScienceCommand/hasState.html @@ -0,0 +1,118 @@ + + + + + + + + hasState method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasState
+ +
+ +
+
+
+
+
+ +

hasState method +

+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+bool +hasState() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+$core.bool hasState() => $_has(10);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasStop.html b/docs/data/ScienceCommand/hasStop.html new file mode 100644 index 0000000000..0d31297965 --- /dev/null +++ b/docs/data/ScienceCommand/hasStop.html @@ -0,0 +1,118 @@ + + + + + + + + hasStop method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasStop
+ +
+ +
+
+
+
+
+ +

hasStop method +

+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+bool +hasStop() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.bool hasStop() => $_has(8);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasSubsurfaceMotor.html b/docs/data/ScienceCommand/hasSubsurfaceMotor.html new file mode 100644 index 0000000000..090bd18494 --- /dev/null +++ b/docs/data/ScienceCommand/hasSubsurfaceMotor.html @@ -0,0 +1,118 @@ + + + + + + + + hasSubsurfaceMotor method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSubsurfaceMotor
+ +
+ +
+
+
+
+
+ +

hasSubsurfaceMotor method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasSubsurfaceMotor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasSubsurfaceMotor() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/hasVersion.html b/docs/data/ScienceCommand/hasVersion.html new file mode 100644 index 0000000000..edc7dea236 --- /dev/null +++ b/docs/data/ScienceCommand/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(12)
+$core.bool hasVersion() => $_has(11);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/info_.html b/docs/data/ScienceCommand/info_.html new file mode 100644 index 0000000000..7f7c64810a --- /dev/null +++ b/docs/data/ScienceCommand/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/pumps.html b/docs/data/ScienceCommand/pumps.html new file mode 100644 index 0000000000..7eb6ea72e2 --- /dev/null +++ b/docs/data/ScienceCommand/pumps.html @@ -0,0 +1,153 @@ + + + + + + + + pumps property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pumps
+ +
+ +
+
+
+
+
+ +

pumps property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ PumpState + get + pumps + + +
+ +
+

Control over other hardware

+
+ + +
+

Implementation

+
@$pb.TagNumber(4)
+PumpState get pumps => $_getN(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + pumps + (PumpState v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set pumps(PumpState v) { setField(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/sample.html b/docs/data/ScienceCommand/sample.html new file mode 100644 index 0000000000..5f444b01a4 --- /dev/null +++ b/docs/data/ScienceCommand/sample.html @@ -0,0 +1,150 @@ + + + + + + + + sample property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sample
+ +
+ +
+
+
+
+
+ +

sample property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ int + get + sample + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.int get sample => $_getIZ(9);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ set + sample + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(10)
+set sample($core.int v) { $_setSignedInt32(9, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/scoop.html b/docs/data/ScienceCommand/scoop.html new file mode 100644 index 0000000000..5039596c00 --- /dev/null +++ b/docs/data/ScienceCommand/scoop.html @@ -0,0 +1,150 @@ + + + + + + + + scoop property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
scoop
+ +
+ +
+
+
+
+
+ +

scoop property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ ServoState + get + scoop + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+ServoState get scoop => $_getN(5);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ set + scoop + (ServoState v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+set scoop(ServoState v) { setField(6, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/scoopMotor.html b/docs/data/ScienceCommand/scoopMotor.html new file mode 100644 index 0000000000..acc8938e38 --- /dev/null +++ b/docs/data/ScienceCommand/scoopMotor.html @@ -0,0 +1,150 @@ + + + + + + + + scoopMotor property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
scoopMotor
+ +
+ +
+
+
+
+
+ +

scoopMotor property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + get + scoopMotor + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get scoopMotor => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + scoopMotor + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set scoopMotor($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/state.html b/docs/data/ScienceCommand/state.html new file mode 100644 index 0000000000..ac4e0ee859 --- /dev/null +++ b/docs/data/ScienceCommand/state.html @@ -0,0 +1,150 @@ + + + + + + + + state property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
state
+ +
+ +
+
+
+
+
+ +

state property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ ScienceState + get + state + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(11)
+ScienceState get state => $_getN(10);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ set + state + (ScienceState v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(11)
+set state(ScienceState v) { setField(11, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/stop.html b/docs/data/ScienceCommand/stop.html new file mode 100644 index 0000000000..aa8cd056e1 --- /dev/null +++ b/docs/data/ScienceCommand/stop.html @@ -0,0 +1,150 @@ + + + + + + + + stop property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
stop
+ +
+ +
+
+
+
+
+ +

stop property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ bool + get + stop + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.bool get stop => $_getBF(8);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ set + stop + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(9)
+set stop($core.bool v) { $_setBool(8, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/subsurfaceMotor.html b/docs/data/ScienceCommand/subsurfaceMotor.html new file mode 100644 index 0000000000..0d027ca5a9 --- /dev/null +++ b/docs/data/ScienceCommand/subsurfaceMotor.html @@ -0,0 +1,150 @@ + + + + + + + + subsurfaceMotor property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
subsurfaceMotor
+ +
+ +
+
+
+
+
+ +

subsurfaceMotor property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + get + subsurfaceMotor + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get subsurfaceMotor => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + subsurfaceMotor + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set subsurfaceMotor($core.double v) { $_setFloat(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceCommand/version.html b/docs/data/ScienceCommand/version.html new file mode 100644 index 0000000000..4322b44655 --- /dev/null +++ b/docs/data/ScienceCommand/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(12)
+$0.Version get version => $_getN(11);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(12)
+set version($0.Version v) { setField(12, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData-class-sidebar.html b/docs/data/ScienceData-class-sidebar.html new file mode 100644 index 0000000000..1a2ba85892 --- /dev/null +++ b/docs/data/ScienceData-class-sidebar.html @@ -0,0 +1,92 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceData
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. co2
  12. +
  13. eventPlugin
  14. +
  15. hashCode
  16. +
  17. humidity
  18. +
  19. info_
  20. +
  21. isFrozen
  22. +
  23. runtimeType
  24. +
  25. sample
  26. +
  27. state
  28. +
  29. temperature
  30. +
  31. unknownFields
  32. +
  33. version
  34. + +
  35. Methods
  36. +
  37. addExtension
  38. +
  39. check
  40. +
  41. clear
  42. +
  43. clearCo2
  44. +
  45. clearExtension
  46. +
  47. clearField
  48. +
  49. clearHumidity
  50. +
  51. clearSample
  52. +
  53. clearState
  54. +
  55. clearTemperature
  56. +
  57. clearVersion
  58. +
  59. clone
  60. +
  61. copyWith
  62. +
  63. createEmptyInstance
  64. +
  65. createMapField
  66. +
  67. createRepeatedField
  68. +
  69. ensureVersion
  70. +
  71. extensionsAreInitialized
  72. +
  73. freeze
  74. +
  75. getDefaultForField
  76. +
  77. getExtension
  78. +
  79. getField
  80. +
  81. getFieldOrNull
  82. +
  83. getTagNumber
  84. +
  85. hasCo2
  86. +
  87. hasExtension
  88. +
  89. hasField
  90. +
  91. hasHumidity
  92. +
  93. hasRequiredFields
  94. +
  95. hasSample
  96. +
  97. hasState
  98. +
  99. hasTemperature
  100. +
  101. hasVersion
  102. +
  103. isInitialized
  104. +
  105. mergeFromBuffer
  106. +
  107. mergeFromCodedBufferReader
  108. +
  109. mergeFromJson
  110. +
  111. mergeFromJsonMap
  112. +
  113. mergeFromMessage
  114. +
  115. mergeFromProto3Json
  116. +
  117. mergeUnknownFields
  118. +
  119. noSuchMethod
  120. +
  121. setExtension
  122. +
  123. setField
  124. +
  125. toBuilder
  126. +
  127. toDebugString
  128. +
  129. toProto3Json
  130. +
  131. toString
  132. +
  133. writeToBuffer
  134. +
  135. writeToCodedBufferWriter
  136. +
  137. writeToJson
  138. +
  139. writeToJsonMap
  140. + +
  141. Operators
  142. +
  143. operator ==
  144. + + + + + +
  145. Static methods
  146. +
  147. create
  148. +
  149. createRepeated
  150. +
  151. getDefault
  152. + +
diff --git a/docs/data/ScienceData-class.html b/docs/data/ScienceData-class.html new file mode 100644 index 0000000000..be63de37c0 --- /dev/null +++ b/docs/data/ScienceData-class.html @@ -0,0 +1,1063 @@ + + + + + + + + ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceData
+ +
+ +
+
+
+
+
+ +

ScienceData class + +

+ + +
+

/ Data coming from the science subsystem.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ ScienceData({int? sample, ScienceState? state, double? co2, double? humidity, double? temperature, Version? version}) +
+
+ +
factory
+
+
+ ScienceData.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ ScienceData.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ co2 + ↔ double + + +
+
+ Sensor data +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ humidity + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ sample + ↔ int + + +
+
+ High-level data +
getter/setter pair
+ +
+ +
+ state + ScienceState + + +
+
+ +
getter/setter pair
+ +
+ +
+ temperature + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearCo2() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearHumidity() + → void + + + +
+
+ + + +
+ +
+ clearSample() + → void + + + +
+
+ + + +
+ +
+ clearState() + → void + + + +
+
+ + + +
+ +
+ clearTemperature() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + ScienceData + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(ScienceData)) + ScienceData + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + ScienceData + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasCo2() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasHumidity() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasSample() + → bool + + + +
+
+ + + +
+ +
+ hasState() + → bool + + + +
+
+ + + +
+ +
+ hasTemperature() + → bool + + + +
+
+ + + +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + ScienceData + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<ScienceData> + + + +
+
+ + + +
+ +
+ getDefault() + ScienceData + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/ScienceData.fromBuffer.html b/docs/data/ScienceData/ScienceData.fromBuffer.html new file mode 100644 index 0000000000..96916e4b3f --- /dev/null +++ b/docs/data/ScienceData/ScienceData.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + ScienceData.fromBuffer constructor - ScienceData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceData.fromBuffer
+ +
+ +
+
+
+
+
+ +

ScienceData.fromBuffer constructor +

+ +
+ + ScienceData.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory ScienceData.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/ScienceData.fromJson.html b/docs/data/ScienceData/ScienceData.fromJson.html new file mode 100644 index 0000000000..a9e3676fbd --- /dev/null +++ b/docs/data/ScienceData/ScienceData.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + ScienceData.fromJson constructor - ScienceData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceData.fromJson
+ +
+ +
+
+
+
+
+ +

ScienceData.fromJson constructor +

+ +
+ + ScienceData.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory ScienceData.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/ScienceData.html b/docs/data/ScienceData/ScienceData.html new file mode 100644 index 0000000000..84d0c3794c --- /dev/null +++ b/docs/data/ScienceData/ScienceData.html @@ -0,0 +1,142 @@ + + + + + + + + ScienceData constructor - ScienceData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceData
+ +
+ +
+
+
+
+
+ +

ScienceData constructor +

+ +
+ + ScienceData({
  1. int? sample,
  2. +
  3. ScienceState? state,
  4. +
  5. double? co2,
  6. +
  7. double? humidity,
  8. +
  9. double? temperature,
  10. +
  11. Version? version,
  12. +
}) +
+ + + + +
+

Implementation

+
factory ScienceData({
+  $core.int? sample,
+  ScienceState? state,
+  $core.double? co2,
+  $core.double? humidity,
+  $core.double? temperature,
+  $0.Version? version,
+}) {
+  final $result = create();
+  if (sample != null) {
+    $result.sample = sample;
+  }
+  if (state != null) {
+    $result.state = state;
+  }
+  if (co2 != null) {
+    $result.co2 = co2;
+  }
+  if (humidity != null) {
+    $result.humidity = humidity;
+  }
+  if (temperature != null) {
+    $result.temperature = temperature;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/clearCo2.html b/docs/data/ScienceData/clearCo2.html new file mode 100644 index 0000000000..9d1e1d81ae --- /dev/null +++ b/docs/data/ScienceData/clearCo2.html @@ -0,0 +1,118 @@ + + + + + + + + clearCo2 method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearCo2
+ +
+ +
+
+
+
+
+ +

clearCo2 method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearCo2() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearCo2() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/clearHumidity.html b/docs/data/ScienceData/clearHumidity.html new file mode 100644 index 0000000000..80a1dbfdd8 --- /dev/null +++ b/docs/data/ScienceData/clearHumidity.html @@ -0,0 +1,118 @@ + + + + + + + + clearHumidity method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearHumidity
+ +
+ +
+
+
+
+
+ +

clearHumidity method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearHumidity() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearHumidity() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/clearSample.html b/docs/data/ScienceData/clearSample.html new file mode 100644 index 0000000000..ae5d13e2fa --- /dev/null +++ b/docs/data/ScienceData/clearSample.html @@ -0,0 +1,118 @@ + + + + + + + + clearSample method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSample
+ +
+ +
+
+
+
+
+ +

clearSample method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearSample() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearSample() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/clearState.html b/docs/data/ScienceData/clearState.html new file mode 100644 index 0000000000..f3e3100b7b --- /dev/null +++ b/docs/data/ScienceData/clearState.html @@ -0,0 +1,118 @@ + + + + + + + + clearState method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearState
+ +
+ +
+
+
+
+
+ +

clearState method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearState() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearState() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/clearTemperature.html b/docs/data/ScienceData/clearTemperature.html new file mode 100644 index 0000000000..4a35ceb1df --- /dev/null +++ b/docs/data/ScienceData/clearTemperature.html @@ -0,0 +1,118 @@ + + + + + + + + clearTemperature method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearTemperature
+ +
+ +
+
+
+
+
+ +

clearTemperature method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearTemperature() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearTemperature() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/clearVersion.html b/docs/data/ScienceData/clearVersion.html new file mode 100644 index 0000000000..7c8ff235a3 --- /dev/null +++ b/docs/data/ScienceData/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+void clearVersion() => clearField(6);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/clone.html b/docs/data/ScienceData/clone.html new file mode 100644 index 0000000000..af3892b1a2 --- /dev/null +++ b/docs/data/ScienceData/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+ScienceData +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+ScienceData clone() => ScienceData()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/co2.html b/docs/data/ScienceData/co2.html new file mode 100644 index 0000000000..9d13cdfc43 --- /dev/null +++ b/docs/data/ScienceData/co2.html @@ -0,0 +1,153 @@ + + + + + + + + co2 property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
co2
+ +
+ +
+
+
+
+
+ +

co2 property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + get + co2 + + +
+ +
+

Sensor data

+
+ + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get co2 => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + co2 + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set co2($core.double v) { $_setFloat(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/copyWith.html b/docs/data/ScienceData/copyWith.html new file mode 100644 index 0000000000..696504b0cd --- /dev/null +++ b/docs/data/ScienceData/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+ScienceData +copyWith(
  1. void updates(
    1. ScienceData
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+ScienceData copyWith(void Function(ScienceData) updates) => super.copyWith((message) => updates(message as ScienceData)) as ScienceData;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/create.html b/docs/data/ScienceData/create.html new file mode 100644 index 0000000000..87a585b2be --- /dev/null +++ b/docs/data/ScienceData/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +ScienceData +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static ScienceData create() => ScienceData._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/createEmptyInstance.html b/docs/data/ScienceData/createEmptyInstance.html new file mode 100644 index 0000000000..fe88b955a3 --- /dev/null +++ b/docs/data/ScienceData/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +ScienceData +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
ScienceData createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/createRepeated.html b/docs/data/ScienceData/createRepeated.html new file mode 100644 index 0000000000..475283fb5d --- /dev/null +++ b/docs/data/ScienceData/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<ScienceData> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<ScienceData> createRepeated() => $pb.PbList<ScienceData>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/ensureVersion.html b/docs/data/ScienceData/ensureVersion.html new file mode 100644 index 0000000000..8ad81b8a93 --- /dev/null +++ b/docs/data/ScienceData/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$0.Version ensureVersion() => $_ensure(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/getDefault.html b/docs/data/ScienceData/getDefault.html new file mode 100644 index 0000000000..09a95689ff --- /dev/null +++ b/docs/data/ScienceData/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +ScienceData +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static ScienceData getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ScienceData>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/hasCo2.html b/docs/data/ScienceData/hasCo2.html new file mode 100644 index 0000000000..ae97e28792 --- /dev/null +++ b/docs/data/ScienceData/hasCo2.html @@ -0,0 +1,118 @@ + + + + + + + + hasCo2 method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasCo2
+ +
+ +
+
+
+
+
+ +

hasCo2 method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasCo2() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasCo2() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/hasHumidity.html b/docs/data/ScienceData/hasHumidity.html new file mode 100644 index 0000000000..cea8960ef8 --- /dev/null +++ b/docs/data/ScienceData/hasHumidity.html @@ -0,0 +1,118 @@ + + + + + + + + hasHumidity method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasHumidity
+ +
+ +
+
+
+
+
+ +

hasHumidity method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasHumidity() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasHumidity() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/hasSample.html b/docs/data/ScienceData/hasSample.html new file mode 100644 index 0000000000..4efc285be7 --- /dev/null +++ b/docs/data/ScienceData/hasSample.html @@ -0,0 +1,118 @@ + + + + + + + + hasSample method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSample
+ +
+ +
+
+
+
+
+ +

hasSample method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasSample() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasSample() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/hasState.html b/docs/data/ScienceData/hasState.html new file mode 100644 index 0000000000..e323160b00 --- /dev/null +++ b/docs/data/ScienceData/hasState.html @@ -0,0 +1,118 @@ + + + + + + + + hasState method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasState
+ +
+ +
+
+
+
+
+ +

hasState method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasState() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasState() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/hasTemperature.html b/docs/data/ScienceData/hasTemperature.html new file mode 100644 index 0000000000..2e322f6c00 --- /dev/null +++ b/docs/data/ScienceData/hasTemperature.html @@ -0,0 +1,118 @@ + + + + + + + + hasTemperature method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasTemperature
+ +
+ +
+
+
+
+
+ +

hasTemperature method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasTemperature() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasTemperature() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/hasVersion.html b/docs/data/ScienceData/hasVersion.html new file mode 100644 index 0000000000..9220ca0fbc --- /dev/null +++ b/docs/data/ScienceData/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool hasVersion() => $_has(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/humidity.html b/docs/data/ScienceData/humidity.html new file mode 100644 index 0000000000..b3607888bf --- /dev/null +++ b/docs/data/ScienceData/humidity.html @@ -0,0 +1,150 @@ + + + + + + + + humidity property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humidity
+ +
+ +
+
+
+
+
+ +

humidity property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ double + get + humidity + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.double get humidity => $_getN(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + humidity + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set humidity($core.double v) { $_setFloat(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/info_.html b/docs/data/ScienceData/info_.html new file mode 100644 index 0000000000..8e27df4690 --- /dev/null +++ b/docs/data/ScienceData/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/sample.html b/docs/data/ScienceData/sample.html new file mode 100644 index 0000000000..c35e52be6d --- /dev/null +++ b/docs/data/ScienceData/sample.html @@ -0,0 +1,153 @@ + + + + + + + + sample property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sample
+ +
+ +
+
+
+
+
+ +

sample property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ int + get + sample + + +
+ +
+

High-level data

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.int get sample => $_getIZ(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + sample + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set sample($core.int v) { $_setSignedInt32(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/state.html b/docs/data/ScienceData/state.html new file mode 100644 index 0000000000..a84dea3145 --- /dev/null +++ b/docs/data/ScienceData/state.html @@ -0,0 +1,150 @@ + + + + + + + + state property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
state
+ +
+ +
+
+
+
+
+ +

state property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ ScienceState + get + state + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+ScienceState get state => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + state + (ScienceState v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set state(ScienceState v) { setField(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/temperature.html b/docs/data/ScienceData/temperature.html new file mode 100644 index 0000000000..00fbb0e1b9 --- /dev/null +++ b/docs/data/ScienceData/temperature.html @@ -0,0 +1,150 @@ + + + + + + + + temperature property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
temperature
+ +
+ +
+
+
+
+
+ +

temperature property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ double + get + temperature + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.double get temperature => $_getN(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + temperature + (double v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set temperature($core.double v) { $_setFloat(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceData/version.html b/docs/data/ScienceData/version.html new file mode 100644 index 0000000000..868f6c7048 --- /dev/null +++ b/docs/data/ScienceData/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+$0.Version get version => $_getN(5);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(6)
+set version($0.Version v) { setField(6, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceMetrics-class-sidebar.html b/docs/data/ScienceMetrics-class-sidebar.html new file mode 100644 index 0000000000..a9db47186c --- /dev/null +++ b/docs/data/ScienceMetrics-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceMetrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. data
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. matchesVersion
  16. +
  17. name
  18. +
  19. overallSeverity
  20. +
  21. runtimeType
  22. +
  23. supportedVersion
  24. +
  25. version
  26. +
  27. versionCommand
  28. + +
  29. Methods
  30. +
  31. addListener
  32. +
  33. checkVersion
  34. +
  35. dispose
  36. +
  37. noSuchMethod
  38. +
  39. notifyListeners
  40. +
  41. parseVersion
  42. +
  43. removeListener
  44. +
  45. toString
  46. +
  47. update
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/data/ScienceMetrics-class.html b/docs/data/ScienceMetrics-class.html new file mode 100644 index 0000000000..758253642e --- /dev/null +++ b/docs/data/ScienceMetrics-class.html @@ -0,0 +1,429 @@ + + + + + + + + ScienceMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceMetrics
+ +
+ +
+
+
+
+
+ +

ScienceMetrics class + +

+ + +
+

Metrics reported by the science subsystem.

+

These metrics represent analysis of dirt samples extracted by the science subsystem. They need +to not only be recorded but logged as well so the science team can generate charts out of it.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ScienceMetrics() +
+
+ A collection of metrics relevant for monitoring the rover's electrical status. +
+
+
+ +
+

Properties

+
+
+ allMetrics + → List<MetricLine> + + +
+
+ A list of user-friendly explanations for each of the metrics. +
no setteroverride
+ +
+ +
+ data + ScienceData + + +
+
+ The underlying data used to get these metrics. +
finalinherited
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ matchesVersion + → bool + + +
+
+ Whether the Dashboard is certain the firmware matches the right version. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ A collective name for this group of metrics (usually the name of the subsystem). +
no setteroverride
+ +
+ +
+ overallSeverity + Severity? + + +
+
+ Fetch the overall Security +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ supportedVersion + Version + + +
+
+ The currently-supported version for this Dashboard. +
no setteroverride
+ +
+ +
+ version + Version + + +
+
+ The version of the data that the firmware sends. +
getter/setter pairinherited
+ +
+ +
+ versionCommand + Message + + +
+
+ A command to notify the firmware of the Dashboard's supportedVersion. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ checkVersion(ScienceData data) + → bool + + + +
+
+ Checks this message's version and checks for support. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ parseVersion(ScienceData message) + Version + + + +
+
+ Parses the version out of a given data packet. +
override
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(ScienceData value) + → void + + + +
+
+ Updates data with new data. +
override
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceMetrics/ScienceMetrics.html b/docs/data/ScienceMetrics/ScienceMetrics.html new file mode 100644 index 0000000000..05798ec0cf --- /dev/null +++ b/docs/data/ScienceMetrics/ScienceMetrics.html @@ -0,0 +1,111 @@ + + + + + + + + ScienceMetrics constructor - ScienceMetrics - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceMetrics
+ +
+ +
+
+
+
+
+ +

ScienceMetrics constructor +

+ +
+ + ScienceMetrics() +
+ +
+

A collection of metrics relevant for monitoring the rover's electrical status.

+
+ + + +
+

Implementation

+
ScienceMetrics() : super(ScienceData());
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceMetrics/allMetrics.html b/docs/data/ScienceMetrics/allMetrics.html new file mode 100644 index 0000000000..5d719df316 --- /dev/null +++ b/docs/data/ScienceMetrics/allMetrics.html @@ -0,0 +1,133 @@ + + + + + + + + allMetrics property - ScienceMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
allMetrics
+ +
+ +
+
+
+
+
+ +

allMetrics property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<MetricLine> + get + allMetrics +
override
+ +
+ +
+

A list of user-friendly explanations for each of the metrics.

+

Be sure to store the actual values as fields. This property should be a list of one +user-friendly explanation per metric.

+
+ + +
+

Implementation

+
@override
+List<MetricLine> get allMetrics => [
+	MetricLine("CO2: ${data.co2.toStringAsFixed(3)}"),
+	MetricLine("Temperature: ${data.temperature.toStringAsFixed(3)}"),
+	MetricLine("Humidity: ${data.humidity.toStringAsFixed(3)}"),
+];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceMetrics/name.html b/docs/data/ScienceMetrics/name.html new file mode 100644 index 0000000000..1cba1967e4 --- /dev/null +++ b/docs/data/ScienceMetrics/name.html @@ -0,0 +1,127 @@ + + + + + + + + name property - ScienceMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ String + get + name +
override
+ +
+ +
+

A collective name for this group of metrics (usually the name of the subsystem).

+
+ + +
+

Implementation

+
@override
+String get name => "Science";
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceMetrics/parseVersion.html b/docs/data/ScienceMetrics/parseVersion.html new file mode 100644 index 0000000000..9d865844fa --- /dev/null +++ b/docs/data/ScienceMetrics/parseVersion.html @@ -0,0 +1,122 @@ + + + + + + + + parseVersion method - ScienceMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseVersion
+ +
+ +
+
+
+
+
+ +

parseVersion method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Version +parseVersion(
  1. ScienceData message
  2. +
) + +
override
+ +
+ +
+

Parses the version out of a given data packet.

+
+ + + +
+

Implementation

+
@override
+Version parseVersion(ScienceData message) => message.version;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceMetrics/supportedVersion.html b/docs/data/ScienceMetrics/supportedVersion.html new file mode 100644 index 0000000000..c32a43a39e --- /dev/null +++ b/docs/data/ScienceMetrics/supportedVersion.html @@ -0,0 +1,127 @@ + + + + + + + + supportedVersion property - ScienceMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
supportedVersion
+ +
+ +
+
+
+
+
+ +

supportedVersion property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Version + get + supportedVersion +
override
+ +
+ +
+

The currently-supported version for this Dashboard.

+
+ + +
+

Implementation

+
@override
+Version get supportedVersion => Version(major: 1);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceMetrics/update.html b/docs/data/ScienceMetrics/update.html new file mode 100644 index 0000000000..390d9979b5 --- /dev/null +++ b/docs/data/ScienceMetrics/update.html @@ -0,0 +1,126 @@ + + + + + + + + update method - ScienceMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
update
+ +
+ +
+
+
+
+
+ +

update method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +update(
  1. ScienceData value
  2. +
) + +
override
+ +
+ +
+

Updates data with new data.

+
+ + + +
+

Implementation

+
@override
+void update(ScienceData value){
+    if (!checkVersion(value)) return;
+	if (value.state == ScienceState.STOP_COLLECTING) return;
+	super.update(value);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceMetrics/versionCommand.html b/docs/data/ScienceMetrics/versionCommand.html new file mode 100644 index 0000000000..2ca88418a8 --- /dev/null +++ b/docs/data/ScienceMetrics/versionCommand.html @@ -0,0 +1,127 @@ + + + + + + + + versionCommand property - ScienceMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
versionCommand
+ +
+ +
+
+
+
+
+ +

versionCommand property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Message + get + versionCommand +
override
+ +
+ +
+

A command to notify the firmware of the Dashboard's supportedVersion.

+
+ + +
+

Implementation

+
@override
+Message get versionCommand => ScienceCommand(version: supportedVersion);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceResult-enum-sidebar.html b/docs/data/ScienceResult-enum-sidebar.html new file mode 100644 index 0000000000..0ea4fc2f3b --- /dev/null +++ b/docs/data/ScienceResult-enum-sidebar.html @@ -0,0 +1,33 @@ +
    + + +
  1. Values
  2. +
  3. extinct
  4. +
  5. extant
  6. +
  7. notPresent
  8. +
  9. inconclusive
  10. +
  11. loading
  12. + + +
  13. + Properties +
  14. +
  15. hashCode
  16. +
  17. index
  18. +
  19. runtimeType
  20. + +
  21. Methods
  22. +
  23. noSuchMethod
  24. +
  25. toString
  26. + +
  27. Operators
  28. +
  29. operator ==
  30. + + + + + + +
  31. Constants
  32. +
  33. values
  34. +
diff --git a/docs/data/ScienceResult.html b/docs/data/ScienceResult.html new file mode 100644 index 0000000000..7ddac0d0f6 --- /dev/null +++ b/docs/data/ScienceResult.html @@ -0,0 +1,291 @@ + + + + + + + + ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceResult
+ +
+ +
+
+
+
+
+ + +

+ ScienceResult + enum + + +

+
+ + +
+

The result of a science test.

+
+ + + +
+

Values

+
+
+ extinct + → const ScienceResult + + +
+
+

There was never life in this ecosystem.

+ + +
+ +
+ extant + → const ScienceResult + + +
+
+

There is currently life in this ecosystem.

+ + +
+ +
+ notPresent + → const ScienceResult + + +
+
+

There used to be life in this ecosystem, but not anymore.

+ + +
+ +
+ inconclusive + → const ScienceResult + + +
+
+

This test cannot determine the presence of life.

+ + +
+ +
+ loading + → const ScienceResult + + +
+
+

This test is awaiting more data.

+ + +
+ +
+
+ + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ A numeric identifier for the enumerated value. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ values + → const List<ScienceResult> + + +
+
+ A constant List of the values in this enum, in order of their declaration. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceResult/hashCode.html b/docs/data/ScienceResult/hashCode.html new file mode 100644 index 0000000000..d9004c17fe --- /dev/null +++ b/docs/data/ScienceResult/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceResult/index.html b/docs/data/ScienceResult/index.html new file mode 100644 index 0000000000..b2ef92811e --- /dev/null +++ b/docs/data/ScienceResult/index.html @@ -0,0 +1,125 @@ + + + + + + + + index property - ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+

index property +

+ + + + + +
+
+ + int + get + index +
inherited
+ +
+ +
+

A numeric identifier for the enumerated value.

+

The values of a single enumeration are numbered +consecutively from zero to one less than the +number of values. +This is also the index of the value in the +enumerated type's static values list.

+
+ + +
+

Implementation

+
int get index;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceResult/noSuchMethod.html b/docs/data/ScienceResult/noSuchMethod.html new file mode 100644 index 0000000000..bbee43a4f1 --- /dev/null +++ b/docs/data/ScienceResult/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceResult/operator_equals.html b/docs/data/ScienceResult/operator_equals.html new file mode 100644 index 0000000000..4545c218de --- /dev/null +++ b/docs/data/ScienceResult/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceResult/runtimeType.html b/docs/data/ScienceResult/runtimeType.html new file mode 100644 index 0000000000..8af8c12e0d --- /dev/null +++ b/docs/data/ScienceResult/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceResult/toString.html b/docs/data/ScienceResult/toString.html new file mode 100644 index 0000000000..6027dbf7cd --- /dev/null +++ b/docs/data/ScienceResult/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceResult/values-constant.html b/docs/data/ScienceResult/values-constant.html new file mode 100644 index 0000000000..ac05d8eb24 --- /dev/null +++ b/docs/data/ScienceResult/values-constant.html @@ -0,0 +1,111 @@ + + + + + + + + values constant - ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<ScienceResult> + const values + + +
+ +
+

A constant List of the values in this enum, in order of their declaration.

+
+ + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSensor-class-sidebar.html b/docs/data/ScienceSensor-class-sidebar.html new file mode 100644 index 0000000000..a2da21d3b4 --- /dev/null +++ b/docs/data/ScienceSensor-class-sidebar.html @@ -0,0 +1,29 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceSensor
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. name
  10. +
  11. runtimeType
  12. +
  13. test
  14. +
  15. testDescription
  16. + +
  17. Methods
  18. +
  19. noSuchMethod
  20. +
  21. toString
  22. + +
  23. Operators
  24. +
  25. operator ==
  26. + + + + + + +
diff --git a/docs/data/ScienceSensor-class.html b/docs/data/ScienceSensor-class.html new file mode 100644 index 0000000000..1d62328b73 --- /dev/null +++ b/docs/data/ScienceSensor-class.html @@ -0,0 +1,240 @@ + + + + + + + + ScienceSensor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceSensor
+ +
+ +
+
+
+
+
+ +

ScienceSensor class + +

+ + +
+

A sensor in the science subsystem.

+
+ + + + +
+

Constructors

+
+
+ ScienceSensor({required String name, required ScienceTest test, required String testDescription}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ The name of this sensor. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ test + ScienceTest + + +
+
+ The test to determine the presence of life based on data from this sensor. +
final
+ +
+ +
+ testDescription + → String + + +
+
+ A human-readable description of tests. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSensor/ScienceSensor.html b/docs/data/ScienceSensor/ScienceSensor.html new file mode 100644 index 0000000000..b4fd5fa943 --- /dev/null +++ b/docs/data/ScienceSensor/ScienceSensor.html @@ -0,0 +1,118 @@ + + + + + + + + ScienceSensor constructor - ScienceSensor - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceSensor
+ +
+ +
+
+
+
+
+ +

ScienceSensor constructor +

+ +
+ const + ScienceSensor({
  1. required String name,
  2. +
  3. required ScienceTest test,
  4. +
  5. required String testDescription,
  6. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const ScienceSensor({
+	required this.name,
+	required this.test,
+	required this.testDescription,
+});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSensor/hashCode.html b/docs/data/ScienceSensor/hashCode.html new file mode 100644 index 0000000000..81df2aad4a --- /dev/null +++ b/docs/data/ScienceSensor/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - ScienceSensor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSensor/name.html b/docs/data/ScienceSensor/name.html new file mode 100644 index 0000000000..de16006468 --- /dev/null +++ b/docs/data/ScienceSensor/name.html @@ -0,0 +1,115 @@ + + + + + + + + name property - ScienceSensor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + +
+ + String + name +
final
+ +
+ +
+

The name of this sensor.

+
+ + +
+

Implementation

+
final String name;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSensor/noSuchMethod.html b/docs/data/ScienceSensor/noSuchMethod.html new file mode 100644 index 0000000000..d3d57643a9 --- /dev/null +++ b/docs/data/ScienceSensor/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - ScienceSensor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSensor/operator_equals.html b/docs/data/ScienceSensor/operator_equals.html new file mode 100644 index 0000000000..7c55228532 --- /dev/null +++ b/docs/data/ScienceSensor/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - ScienceSensor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSensor/runtimeType.html b/docs/data/ScienceSensor/runtimeType.html new file mode 100644 index 0000000000..69e790848a --- /dev/null +++ b/docs/data/ScienceSensor/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - ScienceSensor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSensor/test.html b/docs/data/ScienceSensor/test.html new file mode 100644 index 0000000000..32b2e1e631 --- /dev/null +++ b/docs/data/ScienceSensor/test.html @@ -0,0 +1,115 @@ + + + + + + + + test property - ScienceSensor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
test
+ +
+ +
+
+
+
+
+ +

test property +

+ + +
+ + ScienceTest + test +
final
+ +
+ +
+

The test to determine the presence of life based on data from this sensor.

+
+ + +
+

Implementation

+
final ScienceTest test;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSensor/testDescription.html b/docs/data/ScienceSensor/testDescription.html new file mode 100644 index 0000000000..c1074a648d --- /dev/null +++ b/docs/data/ScienceSensor/testDescription.html @@ -0,0 +1,115 @@ + + + + + + + + testDescription property - ScienceSensor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
testDescription
+ +
+ +
+
+
+
+
+ +

testDescription property +

+ + +
+ + String + testDescription +
final
+ +
+ +
+

A human-readable description of tests.

+
+ + +
+

Implementation

+
final String testDescription;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSensor/toString.html b/docs/data/ScienceSensor/toString.html new file mode 100644 index 0000000000..d98d07fcfe --- /dev/null +++ b/docs/data/ScienceSensor/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - ScienceSensor class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSettings-class-sidebar.html b/docs/data/ScienceSettings-class-sidebar.html new file mode 100644 index 0000000000..04264f26ec --- /dev/null +++ b/docs/data/ScienceSettings-class-sidebar.html @@ -0,0 +1,30 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceSettings
  4. +
  5. fromJson
  6. + + + +
  7. + Properties +
  8. +
  9. hashCode
  10. +
  11. numSamples
  12. +
  13. runtimeType
  14. +
  15. scrollableGraphs
  16. + +
  17. Methods
  18. +
  19. noSuchMethod
  20. +
  21. toJson
  22. +
  23. toString
  24. + +
  25. Operators
  26. +
  27. operator ==
  28. + + + + + + +
diff --git a/docs/data/ScienceSettings-class.html b/docs/data/ScienceSettings-class.html new file mode 100644 index 0000000000..d9d2119aaa --- /dev/null +++ b/docs/data/ScienceSettings-class.html @@ -0,0 +1,247 @@ + + + + + + + + ScienceSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceSettings
+ +
+ +
+
+
+
+
+ +

ScienceSettings class + +

+ + +
+

Settings relating to science.

+
+ + + + +
+

Constructors

+
+
+ ScienceSettings({required bool scrollableGraphs, required int numSamples}) +
+
+ A const constructor. +
const
+
+
+ ScienceSettings.fromJson(Json? json) +
+
+ Parses a ScienceSettings from JSON. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ numSamples + → int + + +
+
+ The number of samples collected by the science subsystem. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ scrollableGraphs + → bool + + +
+
+ How many frames to render per second. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toJson() + Json + + + +
+
+ Serializes these settings in JSON format. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSettings/ScienceSettings.fromJson.html b/docs/data/ScienceSettings/ScienceSettings.fromJson.html new file mode 100644 index 0000000000..a074b0f1e6 --- /dev/null +++ b/docs/data/ScienceSettings/ScienceSettings.fromJson.html @@ -0,0 +1,114 @@ + + + + + + + + ScienceSettings.fromJson constructor - ScienceSettings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceSettings.fromJson
+ +
+ +
+
+
+
+
+ +

ScienceSettings.fromJson constructor +

+ +
+ + ScienceSettings.fromJson(
  1. Json? json
  2. +
) +
+ +
+

Parses a ScienceSettings from JSON.

+
+ + + +
+

Implementation

+
ScienceSettings.fromJson(Json? json) :
+  numSamples = json?["numSamples"] ?? 3,
+  scrollableGraphs = json?["scrollableGraphs"] ?? false;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSettings/ScienceSettings.html b/docs/data/ScienceSettings/ScienceSettings.html new file mode 100644 index 0000000000..035dfeddaf --- /dev/null +++ b/docs/data/ScienceSettings/ScienceSettings.html @@ -0,0 +1,113 @@ + + + + + + + + ScienceSettings constructor - ScienceSettings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceSettings
+ +
+ +
+
+
+
+
+ +

ScienceSettings constructor +

+ +
+ const + ScienceSettings({
  1. required bool scrollableGraphs,
  2. +
  3. required int numSamples,
  4. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const ScienceSettings({required this.scrollableGraphs, required this.numSamples});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSettings/hashCode.html b/docs/data/ScienceSettings/hashCode.html new file mode 100644 index 0000000000..cb69fe9890 --- /dev/null +++ b/docs/data/ScienceSettings/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - ScienceSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSettings/noSuchMethod.html b/docs/data/ScienceSettings/noSuchMethod.html new file mode 100644 index 0000000000..468e8850d9 --- /dev/null +++ b/docs/data/ScienceSettings/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - ScienceSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSettings/numSamples.html b/docs/data/ScienceSettings/numSamples.html new file mode 100644 index 0000000000..539d167c3f --- /dev/null +++ b/docs/data/ScienceSettings/numSamples.html @@ -0,0 +1,115 @@ + + + + + + + + numSamples property - ScienceSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
numSamples
+ +
+ +
+
+
+
+
+ +

numSamples property +

+ + +
+ + int + numSamples +
final
+ +
+ +
+

The number of samples collected by the science subsystem.

+
+ + +
+

Implementation

+
final int numSamples;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSettings/operator_equals.html b/docs/data/ScienceSettings/operator_equals.html new file mode 100644 index 0000000000..fe5e229ff2 --- /dev/null +++ b/docs/data/ScienceSettings/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - ScienceSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSettings/runtimeType.html b/docs/data/ScienceSettings/runtimeType.html new file mode 100644 index 0000000000..bb7417a21b --- /dev/null +++ b/docs/data/ScienceSettings/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - ScienceSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSettings/scrollableGraphs.html b/docs/data/ScienceSettings/scrollableGraphs.html new file mode 100644 index 0000000000..c452f875ad --- /dev/null +++ b/docs/data/ScienceSettings/scrollableGraphs.html @@ -0,0 +1,116 @@ + + + + + + + + scrollableGraphs property - ScienceSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
scrollableGraphs
+ +
+ +
+
+
+
+
+ +

scrollableGraphs property +

+ + +
+ + bool + scrollableGraphs +
final
+ +
+ +
+

How many frames to render per second.

+

This does not affect how many frames are sent by the rover per second.

+
+ + +
+

Implementation

+
final bool scrollableGraphs;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSettings/toJson.html b/docs/data/ScienceSettings/toJson.html new file mode 100644 index 0000000000..1a9244de50 --- /dev/null +++ b/docs/data/ScienceSettings/toJson.html @@ -0,0 +1,118 @@ + + + + + + + + toJson method - ScienceSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toJson
+ +
+ +
+
+
+
+
+ +

toJson method +

+ +
+ +Json +toJson() + + + +
+ +
+

Serializes these settings in JSON format.

+
+ + + +
+

Implementation

+
Json toJson() => {
+  "scrollableGraphs": scrollableGraphs,
+  "numSamples": numSamples,
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceSettings/toString.html b/docs/data/ScienceSettings/toString.html new file mode 100644 index 0000000000..7f14a3675e --- /dev/null +++ b/docs/data/ScienceSettings/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - ScienceSettings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceState-class-sidebar.html b/docs/data/ScienceState-class-sidebar.html new file mode 100644 index 0000000000..fd510ce43a --- /dev/null +++ b/docs/data/ScienceState-class-sidebar.html @@ -0,0 +1,33 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. COLLECT_DATA
  28. +
  29. SCIENCE_STATE_UNDEFINED
  30. +
  31. STOP_COLLECTING
  32. +
  33. values
  34. +
diff --git a/docs/data/ScienceState-class.html b/docs/data/ScienceState-class.html new file mode 100644 index 0000000000..07cc52844d --- /dev/null +++ b/docs/data/ScienceState-class.html @@ -0,0 +1,313 @@ + + + + + + + + ScienceState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceState
+ +
+ +
+
+
+
+
+ +

ScienceState class + +

+ + +
+

/ The state of the science subsystem. If not COLLECT_DATA, don't stream data at all.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + ScienceState? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ COLLECT_DATA + → const ScienceState + + +
+
+ + + +
+ +
+ SCIENCE_STATE_UNDEFINED + → const ScienceState + + +
+
+ + + +
+ +
+ STOP_COLLECTING + → const ScienceState + + +
+
+ + + +
+ +
+ values + → const List<ScienceState> + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceState/COLLECT_DATA-constant.html b/docs/data/ScienceState/COLLECT_DATA-constant.html new file mode 100644 index 0000000000..fcc801145c --- /dev/null +++ b/docs/data/ScienceState/COLLECT_DATA-constant.html @@ -0,0 +1,112 @@ + + + + + + + + COLLECT_DATA constant - ScienceState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
COLLECT_DATA
+ +
+ +
+
+
+
+
+ +

COLLECT_DATA constant +

+ + +
+ + ScienceState + const COLLECT_DATA + + +
+ + + +
+

Implementation

+
static const ScienceState COLLECT_DATA = ScienceState._(1, _omitEnumNames ? '' : 'COLLECT_DATA');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceState/SCIENCE_STATE_UNDEFINED-constant.html b/docs/data/ScienceState/SCIENCE_STATE_UNDEFINED-constant.html new file mode 100644 index 0000000000..07a4a6c020 --- /dev/null +++ b/docs/data/ScienceState/SCIENCE_STATE_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + SCIENCE_STATE_UNDEFINED constant - ScienceState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SCIENCE_STATE_UNDEFINED
+ +
+ +
+
+
+
+
+ +

SCIENCE_STATE_UNDEFINED constant +

+ + +
+ + ScienceState + const SCIENCE_STATE_UNDEFINED + + +
+ + + +
+

Implementation

+
static const ScienceState SCIENCE_STATE_UNDEFINED = ScienceState._(0, _omitEnumNames ? '' : 'SCIENCE_STATE_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceState/STOP_COLLECTING-constant.html b/docs/data/ScienceState/STOP_COLLECTING-constant.html new file mode 100644 index 0000000000..8e27cccd61 --- /dev/null +++ b/docs/data/ScienceState/STOP_COLLECTING-constant.html @@ -0,0 +1,112 @@ + + + + + + + + STOP_COLLECTING constant - ScienceState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
STOP_COLLECTING
+ +
+ +
+
+
+
+
+ +

STOP_COLLECTING constant +

+ + +
+ + ScienceState + const STOP_COLLECTING + + +
+ + + +
+

Implementation

+
static const ScienceState STOP_COLLECTING = ScienceState._(2, _omitEnumNames ? '' : 'STOP_COLLECTING');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceState/valueOf.html b/docs/data/ScienceState/valueOf.html new file mode 100644 index 0000000000..36ed7d6588 --- /dev/null +++ b/docs/data/ScienceState/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - ScienceState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +ScienceState? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static ScienceState? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceState/values-constant.html b/docs/data/ScienceState/values-constant.html new file mode 100644 index 0000000000..c70ec2757c --- /dev/null +++ b/docs/data/ScienceState/values-constant.html @@ -0,0 +1,116 @@ + + + + + + + + values constant - ScienceState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<ScienceState> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<ScienceState> values = <ScienceState> [
+  SCIENCE_STATE_UNDEFINED,
+  COLLECT_DATA,
+  STOP_COLLECTING,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceStateUtils-extension-sidebar.html b/docs/data/ScienceStateUtils-extension-sidebar.html new file mode 100644 index 0000000000..2ee0ab2449 --- /dev/null +++ b/docs/data/ScienceStateUtils-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. + + + + + + +
diff --git a/docs/data/ScienceStateUtils.html b/docs/data/ScienceStateUtils.html new file mode 100644 index 0000000000..b8945f78f9 --- /dev/null +++ b/docs/data/ScienceStateUtils.html @@ -0,0 +1,139 @@ + + + + + + + + ScienceStateUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceStateUtils
+ +
+ +
+
+
+
+
+ +

ScienceStateUtils extension + +

+ + +
+

Utilities for ScienceStates.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ humanName + → String + + +
+
+ The human-readable name of the task. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/ScienceStateUtils/humanName.html b/docs/data/ScienceStateUtils/humanName.html new file mode 100644 index 0000000000..0ff1971310 --- /dev/null +++ b/docs/data/ScienceStateUtils/humanName.html @@ -0,0 +1,129 @@ + + + + + + + + humanName property - ScienceStateUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

The human-readable name of the task.

+
+ + +
+

Implementation

+
String get humanName {
+	switch (this) {
+		case ScienceState.SCIENCE_STATE_UNDEFINED: return "Unknown";
+		case ScienceState.STOP_COLLECTING: return "Idle";
+		case ScienceState.COLLECT_DATA: return "Collecting data";
+	}
+	// Do not use default or else you'll lose exhaustiveness checking.
+	throw ArgumentError("Unrecognized task: $this");
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ScienceTest.html b/docs/data/ScienceTest.html new file mode 100644 index 0000000000..4f58839240 --- /dev/null +++ b/docs/data/ScienceTest.html @@ -0,0 +1,109 @@ + + + + + + + + ScienceTest typedef - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceTest
+ +
+ +
+
+
+
+
+ +

ScienceTest typedef + +

+
+ ScienceTest = + ScienceResult Function(SampleData) + +
+ + +
+

A function that determines the presence of life based on sensor data.

+
+ + +
+

Implementation

+
typedef ScienceTest = ScienceResult Function(SampleData);
+
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/SensorReading-class-sidebar.html b/docs/data/SensorReading-class-sidebar.html new file mode 100644 index 0000000000..323e623dc9 --- /dev/null +++ b/docs/data/SensorReading-class-sidebar.html @@ -0,0 +1,28 @@ +
    + +
  1. Constructors
  2. +
  3. SensorReading
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. +
  11. time
  12. +
  13. value
  14. + +
  15. Methods
  16. +
  17. noSuchMethod
  18. +
  19. toString
  20. + +
  21. Operators
  22. +
  23. operator ==
  24. + + + + + + +
diff --git a/docs/data/SensorReading-class.html b/docs/data/SensorReading-class.html new file mode 100644 index 0000000000..d2dfa2a49f --- /dev/null +++ b/docs/data/SensorReading-class.html @@ -0,0 +1,228 @@ + + + + + + + + SensorReading class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SensorReading
+ +
+ +
+
+
+
+
+ +

SensorReading class + +

+ + +
+

A sensor reading with a timestamp.

+
+ + + + +
+

Constructors

+
+
+ SensorReading({required double time, required double value}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ time + → double + + +
+
+ The time this reading was taken, relative to the first reading. +
final
+ +
+ +
+ value + → double + + +
+
+ The value from the sensor. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SensorReading/SensorReading.html b/docs/data/SensorReading/SensorReading.html new file mode 100644 index 0000000000..701d420741 --- /dev/null +++ b/docs/data/SensorReading/SensorReading.html @@ -0,0 +1,113 @@ + + + + + + + + SensorReading constructor - SensorReading - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SensorReading
+ +
+ +
+
+
+
+
+ +

SensorReading constructor +

+ +
+ const + SensorReading({
  1. required double time,
  2. +
  3. required double value,
  4. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const SensorReading({required this.time, required this.value});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SensorReading/hashCode.html b/docs/data/SensorReading/hashCode.html new file mode 100644 index 0000000000..62ed6d79ea --- /dev/null +++ b/docs/data/SensorReading/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - SensorReading class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SensorReading/noSuchMethod.html b/docs/data/SensorReading/noSuchMethod.html new file mode 100644 index 0000000000..e7f4745259 --- /dev/null +++ b/docs/data/SensorReading/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - SensorReading class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SensorReading/operator_equals.html b/docs/data/SensorReading/operator_equals.html new file mode 100644 index 0000000000..4f38d26d71 --- /dev/null +++ b/docs/data/SensorReading/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - SensorReading class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SensorReading/runtimeType.html b/docs/data/SensorReading/runtimeType.html new file mode 100644 index 0000000000..ca200ccd6c --- /dev/null +++ b/docs/data/SensorReading/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - SensorReading class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SensorReading/time.html b/docs/data/SensorReading/time.html new file mode 100644 index 0000000000..b0ef5867a0 --- /dev/null +++ b/docs/data/SensorReading/time.html @@ -0,0 +1,115 @@ + + + + + + + + time property - SensorReading class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
time
+ +
+ +
+
+
+
+
+ +

time property +

+ + +
+ + double + time +
final
+ +
+ +
+

The time this reading was taken, relative to the first reading.

+
+ + +
+

Implementation

+
final double time;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SensorReading/toString.html b/docs/data/SensorReading/toString.html new file mode 100644 index 0000000000..180a0063dc --- /dev/null +++ b/docs/data/SensorReading/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - SensorReading class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SensorReading/value.html b/docs/data/SensorReading/value.html new file mode 100644 index 0000000000..ab8f93a6aa --- /dev/null +++ b/docs/data/SensorReading/value.html @@ -0,0 +1,115 @@ + + + + + + + + value property - SensorReading class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + +
+ + double + value +
final
+ +
+ +
+

The value from the sensor.

+
+ + +
+

Implementation

+
final double value;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ServoState-class-sidebar.html b/docs/data/ServoState-class-sidebar.html new file mode 100644 index 0000000000..ebceb55caa --- /dev/null +++ b/docs/data/ServoState-class-sidebar.html @@ -0,0 +1,33 @@ +
    + + + + +
  1. + Properties +
  2. +
  3. hashCode
  4. +
  5. name
  6. +
  7. runtimeType
  8. +
  9. value
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + +
  21. Static methods
  22. +
  23. valueOf
  24. + +
  25. Constants
  26. +
  27. SERVO_CLOSE
  28. +
  29. SERVO_OPEN
  30. +
  31. SERVO_STATE_UNDEFINED
  32. +
  33. values
  34. +
diff --git a/docs/data/ServoState-class.html b/docs/data/ServoState-class.html new file mode 100644 index 0000000000..7ff3938f03 --- /dev/null +++ b/docs/data/ServoState-class.html @@ -0,0 +1,309 @@ + + + + + + + + ServoState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ServoState
+ +
+ +
+
+
+
+
+ +

ServoState class + +

+ + +
+

/ The state of a servo. If undefined, don't open or close.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ This enum's name, as specified in the .proto file. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → int + + +
+
+ This enum's integer value, as specified in the .proto file. +
finalinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns this enum's name or the value if names are not represented. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ valueOf(int value) + ServoState? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+
+
+ SERVO_CLOSE + → const ServoState + + +
+
+ + + +
+ +
+ SERVO_OPEN + → const ServoState + + +
+
+ + + +
+ +
+ SERVO_STATE_UNDEFINED + → const ServoState + + +
+
+ + + +
+ +
+ values + → const List<ServoState> + + +
+
+ + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/ServoState/SERVO_CLOSE-constant.html b/docs/data/ServoState/SERVO_CLOSE-constant.html new file mode 100644 index 0000000000..8fb164493a --- /dev/null +++ b/docs/data/ServoState/SERVO_CLOSE-constant.html @@ -0,0 +1,112 @@ + + + + + + + + SERVO_CLOSE constant - ServoState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SERVO_CLOSE
+ +
+ +
+
+
+
+
+ +

SERVO_CLOSE constant +

+ + +
+ + ServoState + const SERVO_CLOSE + + +
+ + + +
+

Implementation

+
static const ServoState SERVO_CLOSE = ServoState._(2, _omitEnumNames ? '' : 'SERVO_CLOSE');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ServoState/SERVO_OPEN-constant.html b/docs/data/ServoState/SERVO_OPEN-constant.html new file mode 100644 index 0000000000..7e3825164e --- /dev/null +++ b/docs/data/ServoState/SERVO_OPEN-constant.html @@ -0,0 +1,112 @@ + + + + + + + + SERVO_OPEN constant - ServoState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SERVO_OPEN
+ +
+ +
+
+
+
+
+ +

SERVO_OPEN constant +

+ + +
+ + ServoState + const SERVO_OPEN + + +
+ + + +
+

Implementation

+
static const ServoState SERVO_OPEN = ServoState._(1, _omitEnumNames ? '' : 'SERVO_OPEN');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ServoState/SERVO_STATE_UNDEFINED-constant.html b/docs/data/ServoState/SERVO_STATE_UNDEFINED-constant.html new file mode 100644 index 0000000000..b3aea3b975 --- /dev/null +++ b/docs/data/ServoState/SERVO_STATE_UNDEFINED-constant.html @@ -0,0 +1,112 @@ + + + + + + + + SERVO_STATE_UNDEFINED constant - ServoState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SERVO_STATE_UNDEFINED
+ +
+ +
+
+
+
+
+ +

SERVO_STATE_UNDEFINED constant +

+ + +
+ + ServoState + const SERVO_STATE_UNDEFINED + + +
+ + + +
+

Implementation

+
static const ServoState SERVO_STATE_UNDEFINED = ServoState._(0, _omitEnumNames ? '' : 'SERVO_STATE_UNDEFINED');
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ServoState/valueOf.html b/docs/data/ServoState/valueOf.html new file mode 100644 index 0000000000..7774a734a4 --- /dev/null +++ b/docs/data/ServoState/valueOf.html @@ -0,0 +1,113 @@ + + + + + + + + valueOf method - ServoState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
valueOf
+ +
+ +
+
+
+
+
+ +

valueOf static method +

+ +
+ +ServoState? +valueOf(
  1. int value
  2. +
) + + + +
+ + + + +
+

Implementation

+
static ServoState? valueOf($core.int value) => _byValue[value];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ServoState/values-constant.html b/docs/data/ServoState/values-constant.html new file mode 100644 index 0000000000..c78c499b49 --- /dev/null +++ b/docs/data/ServoState/values-constant.html @@ -0,0 +1,116 @@ + + + + + + + + values constant - ServoState class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<ServoState> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<ServoState> values = <ServoState> [
+  SERVO_STATE_UNDEFINED,
+  SERVO_OPEN,
+  SERVO_CLOSE,
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings-class-sidebar.html b/docs/data/Settings-class-sidebar.html new file mode 100644 index 0000000000..2eef78ce7c --- /dev/null +++ b/docs/data/Settings-class-sidebar.html @@ -0,0 +1,33 @@ +
    + +
  1. Constructors
  2. +
  3. Settings
  4. +
  5. fromJson
  6. + + + +
  7. + Properties +
  8. +
  9. arm
  10. +
  11. dashboard
  12. +
  13. easterEggs
  14. +
  15. hashCode
  16. +
  17. network
  18. +
  19. runtimeType
  20. +
  21. science
  22. + +
  23. Methods
  24. +
  25. noSuchMethod
  26. +
  27. toJson
  28. +
  29. toString
  30. + +
  31. Operators
  32. +
  33. operator ==
  34. + + + + + + +
diff --git a/docs/data/Settings-class.html b/docs/data/Settings-class.html new file mode 100644 index 0000000000..98a48c7c97 --- /dev/null +++ b/docs/data/Settings-class.html @@ -0,0 +1,283 @@ + + + + + + + + Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Settings
+ +
+ +
+
+
+
+
+ +

Settings class + +

+ + +
+

Contains the settings for running the dashboard and the rover.

+
+ + + + +
+

Constructors

+
+
+ Settings({required NetworkSettings network, required EasterEggsSettings easterEggs, required ScienceSettings science, required ArmSettings arm, required DashboardSettings dashboard}) +
+
+ A const constructor. +
const
+
+
+ Settings.fromJson(Json json) +
+
+ Initialize settings from Json. +
+
+
+ +
+

Properties

+
+
+ arm + ArmSettings + + +
+
+ Settings for the arm. +
final
+ +
+ +
+ dashboard + DashboardSettings + + +
+
+ Settings related to the dashboard itself. +
final
+ +
+ +
+ easterEggs + EasterEggsSettings + + +
+
+ Settings for easter eggs. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ network + NetworkSettings + + +
+
+ Settings for the network, like IP addresses and ports. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ science + ScienceSettings + + +
+
+ Settings for the science analysis. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toJson() + Json + + + +
+
+ Converts the data from the settings instance to Json. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/Settings.fromJson.html b/docs/data/Settings/Settings.fromJson.html new file mode 100644 index 0000000000..ad699b4fce --- /dev/null +++ b/docs/data/Settings/Settings.fromJson.html @@ -0,0 +1,117 @@ + + + + + + + + Settings.fromJson constructor - Settings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Settings.fromJson
+ +
+ +
+
+
+
+
+ +

Settings.fromJson constructor +

+ +
+ + Settings.fromJson(
  1. Json json
  2. +
) +
+ +
+

Initialize settings from Json.

+
+ + + +
+

Implementation

+
Settings.fromJson(Json json) :
+  network = NetworkSettings.fromJson(json["network"]),
+  easterEggs = EasterEggsSettings.fromJson(json["easterEggs"]),
+  science = ScienceSettings.fromJson(json["science"]),
+  arm = ArmSettings.fromJson(json["arm"]),
+  dashboard = DashboardSettings.fromJson(json["dashboard"]);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/Settings.html b/docs/data/Settings/Settings.html new file mode 100644 index 0000000000..2b2a40126f --- /dev/null +++ b/docs/data/Settings/Settings.html @@ -0,0 +1,122 @@ + + + + + + + + Settings constructor - Settings - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Settings
+ +
+ +
+
+
+
+
+ +

Settings constructor +

+ +
+ const + Settings({
  1. required NetworkSettings network,
  2. +
  3. required EasterEggsSettings easterEggs,
  4. +
  5. required ScienceSettings science,
  6. +
  7. required ArmSettings arm,
  8. +
  9. required DashboardSettings dashboard,
  10. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const Settings({
+  required this.network,
+  required this.easterEggs,
+  required this.science,
+  required this.arm,
+  required this.dashboard,
+});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/arm.html b/docs/data/Settings/arm.html new file mode 100644 index 0000000000..083c9e46e9 --- /dev/null +++ b/docs/data/Settings/arm.html @@ -0,0 +1,115 @@ + + + + + + + + arm property - Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
arm
+ +
+ +
+
+
+
+
+ +

arm property +

+ + +
+ + ArmSettings + arm +
final
+ +
+ +
+

Settings for the arm.

+
+ + +
+

Implementation

+
final ArmSettings arm;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/dashboard.html b/docs/data/Settings/dashboard.html new file mode 100644 index 0000000000..d46838cb4b --- /dev/null +++ b/docs/data/Settings/dashboard.html @@ -0,0 +1,115 @@ + + + + + + + + dashboard property - Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dashboard
+ +
+ +
+
+
+
+
+ +

dashboard property +

+ + +
+ + DashboardSettings + dashboard +
final
+ +
+ +
+

Settings related to the dashboard itself.

+
+ + +
+

Implementation

+
final DashboardSettings dashboard;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/easterEggs.html b/docs/data/Settings/easterEggs.html new file mode 100644 index 0000000000..d8531a8e34 --- /dev/null +++ b/docs/data/Settings/easterEggs.html @@ -0,0 +1,116 @@ + + + + + + + + easterEggs property - Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
easterEggs
+ +
+ +
+
+
+
+
+ +

easterEggs property +

+ + +
+ + EasterEggsSettings + easterEggs +
final
+ +
+ +
+

Settings for easter eggs.

+

Please, please, please -- do not remove these (Levi Lesches, '25).

+
+ + +
+

Implementation

+
final EasterEggsSettings easterEggs;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/hashCode.html b/docs/data/Settings/hashCode.html new file mode 100644 index 0000000000..778933543b --- /dev/null +++ b/docs/data/Settings/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/network.html b/docs/data/Settings/network.html new file mode 100644 index 0000000000..040fbae039 --- /dev/null +++ b/docs/data/Settings/network.html @@ -0,0 +1,115 @@ + + + + + + + + network property - Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
network
+ +
+ +
+
+
+
+
+ +

network property +

+ + +
+ + NetworkSettings + network +
final
+ +
+ +
+

Settings for the network, like IP addresses and ports.

+
+ + +
+

Implementation

+
final NetworkSettings network;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/noSuchMethod.html b/docs/data/Settings/noSuchMethod.html new file mode 100644 index 0000000000..4e7ead5560 --- /dev/null +++ b/docs/data/Settings/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/operator_equals.html b/docs/data/Settings/operator_equals.html new file mode 100644 index 0000000000..b88315cfc0 --- /dev/null +++ b/docs/data/Settings/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/runtimeType.html b/docs/data/Settings/runtimeType.html new file mode 100644 index 0000000000..027f593273 --- /dev/null +++ b/docs/data/Settings/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/science.html b/docs/data/Settings/science.html new file mode 100644 index 0000000000..e138f3a60c --- /dev/null +++ b/docs/data/Settings/science.html @@ -0,0 +1,115 @@ + + + + + + + + science property - Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
science
+ +
+ +
+
+
+
+
+ +

science property +

+ + +
+ + ScienceSettings + science +
final
+ +
+ +
+

Settings for the science analysis.

+
+ + +
+

Implementation

+
final ScienceSettings science;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/toJson.html b/docs/data/Settings/toJson.html new file mode 100644 index 0000000000..d6a3c81be4 --- /dev/null +++ b/docs/data/Settings/toJson.html @@ -0,0 +1,121 @@ + + + + + + + + toJson method - Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toJson
+ +
+ +
+
+
+
+
+ +

toJson method +

+ +
+ +Json +toJson() + + + +
+ +
+

Converts the data from the settings instance to Json.

+
+ + + +
+

Implementation

+
Json toJson() => {
+  "network": network.toJson(),
+  "easterEggs": easterEggs.toJson(),
+  "science": science.toJson(),
+  "arm": arm.toJson(),
+  "dashboard": dashboard.toJson(),
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Settings/toString.html b/docs/data/Settings/toString.html new file mode 100644 index 0000000000..6649b91a58 --- /dev/null +++ b/docs/data/Settings/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - Settings class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SettingsParser-extension-sidebar.html b/docs/data/SettingsParser-extension-sidebar.html new file mode 100644 index 0000000000..62e6934932 --- /dev/null +++ b/docs/data/SettingsParser-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + + +
  1. Methods
  2. +
  3. getSocket
  4. + + + + + +
diff --git a/docs/data/SettingsParser.html b/docs/data/SettingsParser.html new file mode 100644 index 0000000000..acafe6853d --- /dev/null +++ b/docs/data/SettingsParser.html @@ -0,0 +1,140 @@ + + + + + + + + SettingsParser extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SettingsParser
+ +
+ +
+
+
+
+
+ +

SettingsParser extension + +

+ + +
+

A collection of functions for parsing Settings.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ + +
+

Methods

+
+
+ getSocket(String key) + SocketInfo? + + + +
+
+ Parses a SocketInfo that may not be present. + + +
+ +
+
+ + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/SettingsParser/getSocket.html b/docs/data/SettingsParser/getSocket.html new file mode 100644 index 0000000000..181ef8a244 --- /dev/null +++ b/docs/data/SettingsParser/getSocket.html @@ -0,0 +1,120 @@ + + + + + + + + getSocket method - SettingsParser extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getSocket
+ +
+ +
+
+
+
+
+ +

getSocket method +

+ +
+ +SocketInfo? +getSocket(
  1. String key
  2. +
) + + + +
+ +
+

Parses a SocketInfo that may not be present.

+
+ + + +
+

Implementation

+
SocketInfo? getSocket(String key) {
+  final Json? socket = this[key];
+  if (socket == null) return null;
+  return SocketInfo.fromJson(socket);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Severity-enum-sidebar.html b/docs/data/Severity-enum-sidebar.html new file mode 100644 index 0000000000..e34a39b9ac --- /dev/null +++ b/docs/data/Severity-enum-sidebar.html @@ -0,0 +1,32 @@ +
    + + +
  1. Values
  2. +
  3. info
  4. +
  5. warning
  6. +
  7. error
  8. +
  9. critical
  10. + + +
  11. + Properties +
  12. +
  13. hashCode
  14. +
  15. index
  16. +
  17. runtimeType
  18. + +
  19. Methods
  20. +
  21. noSuchMethod
  22. +
  23. toString
  24. + +
  25. Operators
  26. +
  27. operator ==
  28. + + + + + + +
  29. Constants
  30. +
  31. values
  32. +
diff --git a/docs/data/Severity.html b/docs/data/Severity.html new file mode 100644 index 0000000000..a684a737fb --- /dev/null +++ b/docs/data/Severity.html @@ -0,0 +1,296 @@ + + + + + + + + Severity enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Severity
+ +
+ +
+
+
+
+
+ + +

+ Severity + enum + + +

+
+ + +
+

The level of danger a message represents.

+
+ + +
+
+ + + + + +
Available extensions
+
+ + + +
+
+ +
+

Values

+
+
+ info + → const Severity + + +
+
+

A simple message that doesn't represent an issue.

+ + +
+ +
+ warning + → const Severity + + +
+
+

A warning that something may go wrong soon.

+

This could be used to imply possible damage to the rover, possible disconnects, etc.

+ + +
+ +
+ error + → const Severity + + +
+
+

Some operation did not work and requires manual intervention.

+ + +
+ +
+ critical + → const Severity + + +
+
+

Something went wrong and data or commands may be lost.

+ + +
+ +
+
+ + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ A numeric identifier for the enumerated value. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ values + → const List<Severity> + + +
+
+ A constant List of the values in this enum, in order of their declaration. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/Severity/hashCode.html b/docs/data/Severity/hashCode.html new file mode 100644 index 0000000000..6fe4939921 --- /dev/null +++ b/docs/data/Severity/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - Severity enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Severity/index.html b/docs/data/Severity/index.html new file mode 100644 index 0000000000..e47e339634 --- /dev/null +++ b/docs/data/Severity/index.html @@ -0,0 +1,125 @@ + + + + + + + + index property - Severity enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+

index property +

+ + + + + +
+
+ + int + get + index +
inherited
+ +
+ +
+

A numeric identifier for the enumerated value.

+

The values of a single enumeration are numbered +consecutively from zero to one less than the +number of values. +This is also the index of the value in the +enumerated type's static values list.

+
+ + +
+

Implementation

+
int get index;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Severity/noSuchMethod.html b/docs/data/Severity/noSuchMethod.html new file mode 100644 index 0000000000..2a00e2daeb --- /dev/null +++ b/docs/data/Severity/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - Severity enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Severity/operator_equals.html b/docs/data/Severity/operator_equals.html new file mode 100644 index 0000000000..5a41dd090f --- /dev/null +++ b/docs/data/Severity/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - Severity enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Severity/runtimeType.html b/docs/data/Severity/runtimeType.html new file mode 100644 index 0000000000..213b44a364 --- /dev/null +++ b/docs/data/Severity/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - Severity enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Severity/toString.html b/docs/data/Severity/toString.html new file mode 100644 index 0000000000..28cf57b61d --- /dev/null +++ b/docs/data/Severity/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - Severity enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Severity/values-constant.html b/docs/data/Severity/values-constant.html new file mode 100644 index 0000000000..83b607d8a7 --- /dev/null +++ b/docs/data/Severity/values-constant.html @@ -0,0 +1,111 @@ + + + + + + + + values constant - Severity enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<Severity> + const values + + +
+ +
+

A constant List of the values in this enum, in order of their declaration.

+
+ + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo-class-sidebar.html b/docs/data/SocketInfo-class-sidebar.html new file mode 100644 index 0000000000..f68a48c23d --- /dev/null +++ b/docs/data/SocketInfo-class-sidebar.html @@ -0,0 +1,32 @@ +
    + +
  1. Constructors
  2. +
  3. SocketInfo
  4. +
  5. fromJson
  6. +
  7. raw
  8. + + + +
  9. + Properties +
  10. +
  11. address
  12. +
  13. hashCode
  14. +
  15. port
  16. +
  17. runtimeType
  18. + +
  19. Methods
  20. +
  21. copyWith
  22. +
  23. noSuchMethod
  24. +
  25. toJson
  26. +
  27. toString
  28. + +
  29. Operators
  30. +
  31. operator ==
  32. + + + + + + +
diff --git a/docs/data/SocketInfo-class.html b/docs/data/SocketInfo-class.html new file mode 100644 index 0000000000..8ee8a7877d --- /dev/null +++ b/docs/data/SocketInfo-class.html @@ -0,0 +1,286 @@ + + + + + + + + SocketInfo class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SocketInfo
+ +
+ +
+
+
+
+
+ +

SocketInfo class + +

+ + +
+

Information about a socket.

+
+ + +
+
+ + + + + + + + +
Annotations
+
+ +
+ + +
+
+ + +
+

Constructors

+
+
+ SocketInfo({required InternetAddress address, required int port}) +
+
+ A const constructor. +
const
+
+
+ SocketInfo.fromJson(Json yaml) +
+
+ Parses the socket data from a YAML map. +
+
+ SocketInfo.raw(String host, int port) +
+
+ Use this constructor to pass in a raw String for the address. +
+
+
+ +
+

Properties

+
+
+ address + → InternetAddress + + +
+
+ The IP address of this socket. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setter
+ +
+ +
+ port + → int + + +
+
+ The port that the socket is connected to. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ copyWith({InternetAddress? address, int? port}) + SocketInfo + + + +
+
+ A copy of this configuration, to avoid modifying the original. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toJson() + Json + + + +
+
+ This socket's configuration in JSON format. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. + + +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/SocketInfo.fromJson.html b/docs/data/SocketInfo/SocketInfo.fromJson.html new file mode 100644 index 0000000000..28caa67af2 --- /dev/null +++ b/docs/data/SocketInfo/SocketInfo.fromJson.html @@ -0,0 +1,114 @@ + + + + + + + + SocketInfo.fromJson constructor - SocketInfo - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SocketInfo.fromJson
+ +
+ +
+
+
+
+
+ +

SocketInfo.fromJson constructor +

+ +
+ + SocketInfo.fromJson(
  1. Json yaml
  2. +
) +
+ +
+

Parses the socket data from a YAML map.

+
+ + + +
+

Implementation

+
SocketInfo.fromJson(Json yaml) :
+  address = InternetAddress(yaml["host"]),
+  port = yaml["port"];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/SocketInfo.html b/docs/data/SocketInfo/SocketInfo.html new file mode 100644 index 0000000000..d18f446173 --- /dev/null +++ b/docs/data/SocketInfo/SocketInfo.html @@ -0,0 +1,113 @@ + + + + + + + + SocketInfo constructor - SocketInfo - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SocketInfo
+ +
+ +
+
+
+
+
+ +

SocketInfo constructor +

+ +
+ const + SocketInfo({
  1. required InternetAddress address,
  2. +
  3. required int port,
  4. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const SocketInfo({required this.address, required this.port});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/SocketInfo.raw.html b/docs/data/SocketInfo/SocketInfo.raw.html new file mode 100644 index 0000000000..1b5df42b8c --- /dev/null +++ b/docs/data/SocketInfo/SocketInfo.raw.html @@ -0,0 +1,113 @@ + + + + + + + + SocketInfo.raw constructor - SocketInfo - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SocketInfo.raw
+ +
+ +
+
+
+
+
+ +

SocketInfo.raw constructor +

+ +
+ + SocketInfo.raw(
  1. String host,
  2. +
  3. int port
  4. +
) +
+ +
+

Use this constructor to pass in a raw String for the address.

+
+ + + +
+

Implementation

+
SocketInfo.raw(String host, this.port) : address = InternetAddress(host);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/address.html b/docs/data/SocketInfo/address.html new file mode 100644 index 0000000000..bbbe12c0a4 --- /dev/null +++ b/docs/data/SocketInfo/address.html @@ -0,0 +1,115 @@ + + + + + + + + address property - SocketInfo class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
address
+ +
+ +
+
+
+
+
+ +

address property +

+ + +
+ + InternetAddress + address +
final
+ +
+ +
+

The IP address of this socket.

+
+ + +
+

Implementation

+
final InternetAddress address;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/copyWith.html b/docs/data/SocketInfo/copyWith.html new file mode 100644 index 0000000000..3bd1b94bcf --- /dev/null +++ b/docs/data/SocketInfo/copyWith.html @@ -0,0 +1,120 @@ + + + + + + + + copyWith method - SocketInfo class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +SocketInfo +copyWith({
  1. InternetAddress? address,
  2. +
  3. int? port,
  4. +
}) + + + +
+ +
+

A copy of this configuration, to avoid modifying the original.

+
+ + + +
+

Implementation

+
SocketInfo copyWith({InternetAddress? address, int? port}) => SocketInfo(
+  address: address ?? this.address,
+  port: port ?? this.port,
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/hashCode.html b/docs/data/SocketInfo/hashCode.html new file mode 100644 index 0000000000..b6f137f93b --- /dev/null +++ b/docs/data/SocketInfo/hashCode.html @@ -0,0 +1,152 @@ + + + + + + + + hashCode property - SocketInfo class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+ +

hashCode property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ int + get + hashCode + + +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
@override
+int get hashCode => Object.hash(address, port);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/noSuchMethod.html b/docs/data/SocketInfo/noSuchMethod.html new file mode 100644 index 0000000000..2a7df3ee40 --- /dev/null +++ b/docs/data/SocketInfo/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - SocketInfo class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/operator_equals.html b/docs/data/SocketInfo/operator_equals.html new file mode 100644 index 0000000000..aa2e8d200e --- /dev/null +++ b/docs/data/SocketInfo/operator_equals.html @@ -0,0 +1,150 @@ + + + + + + + + operator == method - SocketInfo class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+ +

operator == method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+bool +operator ==(
  1. Object other
  2. +
) + + + +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
@override
+bool operator ==(Object other) => other is SocketInfo
+  && address == other.address
+  && port == other.port;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/port.html b/docs/data/SocketInfo/port.html new file mode 100644 index 0000000000..9a8a6e31ed --- /dev/null +++ b/docs/data/SocketInfo/port.html @@ -0,0 +1,115 @@ + + + + + + + + port property - SocketInfo class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
port
+ +
+ +
+
+
+
+
+ +

port property +

+ + +
+ + int + port +
final
+ +
+ +
+

The port that the socket is connected to.

+
+ + +
+

Implementation

+
final int port;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/runtimeType.html b/docs/data/SocketInfo/runtimeType.html new file mode 100644 index 0000000000..72f4224df5 --- /dev/null +++ b/docs/data/SocketInfo/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - SocketInfo class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/toJson.html b/docs/data/SocketInfo/toJson.html new file mode 100644 index 0000000000..61df80a0ca --- /dev/null +++ b/docs/data/SocketInfo/toJson.html @@ -0,0 +1,118 @@ + + + + + + + + toJson method - SocketInfo class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toJson
+ +
+ +
+
+
+
+
+ +

toJson method +

+ +
+ +Json +toJson() + + + +
+ +
+

This socket's configuration in JSON format.

+
+ + + +
+

Implementation

+
Json toJson() => {
+  "host": address.address,
+  "port": port,
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SocketInfo/toString.html b/docs/data/SocketInfo/toString.html new file mode 100644 index 0000000000..c436fbd108 --- /dev/null +++ b/docs/data/SocketInfo/toString.html @@ -0,0 +1,130 @@ + + + + + + + + toString method - SocketInfo class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+ +

toString method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+String +toString() + + + +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
@override
+String toString() => "${address.address}:$port";
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SplitMode-enum-sidebar.html b/docs/data/SplitMode-enum-sidebar.html new file mode 100644 index 0000000000..ecfc021837 --- /dev/null +++ b/docs/data/SplitMode-enum-sidebar.html @@ -0,0 +1,31 @@ +
    + + +
  1. Values
  2. +
  3. horizontal
  4. +
  5. vertical
  6. + + +
  7. + Properties +
  8. +
  9. hashCode
  10. +
  11. humanName
  12. +
  13. index
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. noSuchMethod
  20. +
  21. toString
  22. + +
  23. Operators
  24. +
  25. operator ==
  26. + + + + + + +
  27. Constants
  28. +
  29. values
  30. +
diff --git a/docs/data/SplitMode.html b/docs/data/SplitMode.html new file mode 100644 index 0000000000..e1a31579c9 --- /dev/null +++ b/docs/data/SplitMode.html @@ -0,0 +1,273 @@ + + + + + + + + SplitMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SplitMode
+ +
+ +
+
+
+
+
+ + +

+ SplitMode + enum + + +

+
+ + +
+

Controls the way the Dashboard views split.

+
+ + + +
+

Values

+
+
+ horizontal + → const SplitMode + + +
+
+

Two views are split horizontally, one atop the other.

+ + +
+ const SplitMode("Top and bottom") +
+
+ +
+ vertical + → const SplitMode + + +
+
+

Two views are split vertically, side-by-side.

+ + +
+ const SplitMode("Side by side") +
+
+ +
+
+ + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ humanName + → String + + +
+
+ The name to show in the UI. +
final
+ +
+ +
+ index + → int + + +
+
+ A numeric identifier for the enumerated value. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ values + → const List<SplitMode> + + +
+
+ A constant List of the values in this enum, in order of their declaration. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/data/SplitMode/hashCode.html b/docs/data/SplitMode/hashCode.html new file mode 100644 index 0000000000..5aea1e0e5a --- /dev/null +++ b/docs/data/SplitMode/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - SplitMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SplitMode/humanName.html b/docs/data/SplitMode/humanName.html new file mode 100644 index 0000000000..1dae7ac046 --- /dev/null +++ b/docs/data/SplitMode/humanName.html @@ -0,0 +1,115 @@ + + + + + + + + humanName property - SplitMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + +
+ + String + humanName +
final
+ +
+ +
+

The name to show in the UI.

+
+ + +
+

Implementation

+
final String humanName;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SplitMode/index.html b/docs/data/SplitMode/index.html new file mode 100644 index 0000000000..d849b58cab --- /dev/null +++ b/docs/data/SplitMode/index.html @@ -0,0 +1,125 @@ + + + + + + + + index property - SplitMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+

index property +

+ + + + + +
+
+ + int + get + index +
inherited
+ +
+ +
+

A numeric identifier for the enumerated value.

+

The values of a single enumeration are numbered +consecutively from zero to one less than the +number of values. +This is also the index of the value in the +enumerated type's static values list.

+
+ + +
+

Implementation

+
int get index;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SplitMode/noSuchMethod.html b/docs/data/SplitMode/noSuchMethod.html new file mode 100644 index 0000000000..b312df4dc3 --- /dev/null +++ b/docs/data/SplitMode/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - SplitMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SplitMode/operator_equals.html b/docs/data/SplitMode/operator_equals.html new file mode 100644 index 0000000000..ac8751591a --- /dev/null +++ b/docs/data/SplitMode/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - SplitMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SplitMode/runtimeType.html b/docs/data/SplitMode/runtimeType.html new file mode 100644 index 0000000000..aa961aee41 --- /dev/null +++ b/docs/data/SplitMode/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - SplitMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SplitMode/toString.html b/docs/data/SplitMode/toString.html new file mode 100644 index 0000000000..e476888db9 --- /dev/null +++ b/docs/data/SplitMode/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - SplitMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/SplitMode/values-constant.html b/docs/data/SplitMode/values-constant.html new file mode 100644 index 0000000000..eef03411e5 --- /dev/null +++ b/docs/data/SplitMode/values-constant.html @@ -0,0 +1,111 @@ + + + + + + + + values constant - SplitMode enum - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<SplitMode> + const values + + +
+ +
+

A constant List of the values in this enum, in order of their declaration.

+
+ + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TaskbarMessage-class-sidebar.html b/docs/data/TaskbarMessage-class-sidebar.html new file mode 100644 index 0000000000..ffe1a1aa52 --- /dev/null +++ b/docs/data/TaskbarMessage-class-sidebar.html @@ -0,0 +1,28 @@ +
    + +
  1. Constructors
  2. +
  3. TaskbarMessage
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. +
  11. severity
  12. +
  13. text
  14. + +
  15. Methods
  16. +
  17. noSuchMethod
  18. +
  19. toString
  20. + +
  21. Operators
  22. +
  23. operator ==
  24. + + + + + + +
diff --git a/docs/data/TaskbarMessage-class.html b/docs/data/TaskbarMessage-class.html new file mode 100644 index 0000000000..b662131dc5 --- /dev/null +++ b/docs/data/TaskbarMessage-class.html @@ -0,0 +1,227 @@ + + + + + + + + TaskbarMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TaskbarMessage
+ +
+ +
+
+
+
+
+ +

TaskbarMessage class + +

+ + +
+

A message to show on the taskbar, with an associated severity.

+
+ + + + +
+

Constructors

+
+
+ TaskbarMessage({required Severity severity, required String text}) +
+
+ Creates a message to show on the taskbar. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ severity + Severity + + +
+
+ The severity of this message. +
final
+ +
+ +
+ text + → String + + +
+
+ The text of this message. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TaskbarMessage/TaskbarMessage.html b/docs/data/TaskbarMessage/TaskbarMessage.html new file mode 100644 index 0000000000..6c151aa4a7 --- /dev/null +++ b/docs/data/TaskbarMessage/TaskbarMessage.html @@ -0,0 +1,116 @@ + + + + + + + + TaskbarMessage constructor - TaskbarMessage - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TaskbarMessage
+ +
+ +
+
+
+
+
+ +

TaskbarMessage constructor +

+ +
+ + TaskbarMessage({
  1. required Severity severity,
  2. +
  3. required String text,
  4. +
}) +
+ +
+

Creates a message to show on the taskbar.

+
+ + + +
+

Implementation

+
TaskbarMessage({
+	required this.severity,
+	required this.text,
+});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TaskbarMessage/hashCode.html b/docs/data/TaskbarMessage/hashCode.html new file mode 100644 index 0000000000..512a143afb --- /dev/null +++ b/docs/data/TaskbarMessage/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - TaskbarMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TaskbarMessage/noSuchMethod.html b/docs/data/TaskbarMessage/noSuchMethod.html new file mode 100644 index 0000000000..c8f44fdb0e --- /dev/null +++ b/docs/data/TaskbarMessage/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - TaskbarMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TaskbarMessage/operator_equals.html b/docs/data/TaskbarMessage/operator_equals.html new file mode 100644 index 0000000000..d1edc866fe --- /dev/null +++ b/docs/data/TaskbarMessage/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - TaskbarMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TaskbarMessage/runtimeType.html b/docs/data/TaskbarMessage/runtimeType.html new file mode 100644 index 0000000000..7d65275033 --- /dev/null +++ b/docs/data/TaskbarMessage/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - TaskbarMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TaskbarMessage/severity.html b/docs/data/TaskbarMessage/severity.html new file mode 100644 index 0000000000..83c6661784 --- /dev/null +++ b/docs/data/TaskbarMessage/severity.html @@ -0,0 +1,115 @@ + + + + + + + + severity property - TaskbarMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
severity
+ +
+ +
+
+
+
+
+ +

severity property +

+ + +
+ + Severity + severity +
final
+ +
+ +
+

The severity of this message.

+
+ + +
+

Implementation

+
final Severity severity;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TaskbarMessage/text.html b/docs/data/TaskbarMessage/text.html new file mode 100644 index 0000000000..54521b934b --- /dev/null +++ b/docs/data/TaskbarMessage/text.html @@ -0,0 +1,115 @@ + + + + + + + + text property - TaskbarMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
text
+ +
+ +
+
+
+
+
+ +

text property +

+ + +
+ + String + text +
final
+ +
+ +
+

The text of this message.

+
+ + +
+

Implementation

+
final String text;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TaskbarMessage/toString.html b/docs/data/TaskbarMessage/toString.html new file mode 100644 index 0000000000..f4e3f5b031 --- /dev/null +++ b/docs/data/TaskbarMessage/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - TaskbarMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/ThemeModeUtils-extension-sidebar.html b/docs/data/ThemeModeUtils-extension-sidebar.html new file mode 100644 index 0000000000..22c973d491 --- /dev/null +++ b/docs/data/ThemeModeUtils-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. + + + + + + +
diff --git a/docs/data/ThemeModeUtils.html b/docs/data/ThemeModeUtils.html new file mode 100644 index 0000000000..8f0fb347ce --- /dev/null +++ b/docs/data/ThemeModeUtils.html @@ -0,0 +1,139 @@ + + + + + + + + ThemeModeUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ThemeModeUtils
+ +
+ +
+
+
+
+
+ +

ThemeModeUtils extension + +

+ + +
+

Helpful methods on ThemeModes.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ humanName + → String + + +
+
+ A human-friendly name for this mode. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/ThemeModeUtils/humanName.html b/docs/data/ThemeModeUtils/humanName.html new file mode 100644 index 0000000000..fa150e5b04 --- /dev/null +++ b/docs/data/ThemeModeUtils/humanName.html @@ -0,0 +1,125 @@ + + + + + + + + humanName property - ThemeModeUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

A human-friendly name for this mode.

+
+ + +
+

Implementation

+
String get humanName => switch (this) {
+  ThemeMode.system => "Match system",
+  ThemeMode.light => "Light theme",
+  ThemeMode.dark => "Dark theme",
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp-class-sidebar.html b/docs/data/Timestamp-class-sidebar.html new file mode 100644 index 0000000000..221daad784 --- /dev/null +++ b/docs/data/Timestamp-class-sidebar.html @@ -0,0 +1,81 @@ +
    + +
  1. Constructors
  2. +
  3. Timestamp
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. eventPlugin
  12. +
  13. hashCode
  14. +
  15. info_
  16. +
  17. isFrozen
  18. +
  19. nanos
  20. +
  21. runtimeType
  22. +
  23. seconds
  24. +
  25. unknownFields
  26. + +
  27. Methods
  28. +
  29. addExtension
  30. +
  31. check
  32. +
  33. clear
  34. +
  35. clearExtension
  36. +
  37. clearField
  38. +
  39. clearNanos
  40. +
  41. clearSeconds
  42. +
  43. clone
  44. +
  45. copyWith
  46. +
  47. createEmptyInstance
  48. +
  49. createMapField
  50. +
  51. createRepeatedField
  52. +
  53. extensionsAreInitialized
  54. +
  55. freeze
  56. +
  57. getDefaultForField
  58. +
  59. getExtension
  60. +
  61. getField
  62. +
  63. getFieldOrNull
  64. +
  65. getTagNumber
  66. +
  67. hasExtension
  68. +
  69. hasField
  70. +
  71. hasNanos
  72. +
  73. hasRequiredFields
  74. +
  75. hasSeconds
  76. +
  77. isInitialized
  78. +
  79. mergeFromBuffer
  80. +
  81. mergeFromCodedBufferReader
  82. +
  83. mergeFromJson
  84. +
  85. mergeFromJsonMap
  86. +
  87. mergeFromMessage
  88. +
  89. mergeFromProto3Json
  90. +
  91. mergeUnknownFields
  92. +
  93. noSuchMethod
  94. +
  95. setExtension
  96. +
  97. setField
  98. +
  99. toBuilder
  100. +
  101. toDateTime
  102. +
  103. toDebugString
  104. +
  105. toProto3Json
  106. +
  107. toString
  108. +
  109. writeToBuffer
  110. +
  111. writeToCodedBufferWriter
  112. +
  113. writeToJson
  114. +
  115. writeToJsonMap
  116. + +
  117. Operators
  118. +
  119. operator ==
  120. + + + + + +
  121. Static methods
  122. +
  123. create
  124. +
  125. createRepeated
  126. +
  127. fromDateTime
  128. +
  129. getDefault
  130. + +
diff --git a/docs/data/Timestamp-class.html b/docs/data/Timestamp-class.html new file mode 100644 index 0000000000..87620f946a --- /dev/null +++ b/docs/data/Timestamp-class.html @@ -0,0 +1,1003 @@ + + + + + + + + Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Timestamp
+ +
+ +
+
+
+
+
+ +

Timestamp class + +

+ + +
+

A Timestamp represents a point in time independent of any time zone or local +calendar, encoded as a count of seconds and fractions of seconds at +nanosecond resolution. The count is relative to an epoch at UTC midnight on +January 1, 1970, in the proleptic Gregorian calendar which extends the +Gregorian calendar backwards to year one.

+

All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap +second table is needed for interpretation, using a 24-hour linear + smear.

+

The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By +restricting to that range, we ensure that we can convert to and from RFC + 3339 date strings.

+

Examples

+

Example 1: Compute Timestamp from POSIX time().

+
 Timestamp timestamp;
+ timestamp.set_seconds(time(NULL));
+ timestamp.set_nanos(0);
+
+

Example 2: Compute Timestamp from POSIX gettimeofday().

+
 struct timeval tv;
+ gettimeofday(&tv, NULL);
+
+ Timestamp timestamp;
+ timestamp.set_seconds(tv.tv_sec);
+ timestamp.set_nanos(tv.tv_usec * 1000);
+
+

Example 3: Compute Timestamp from Win32 GetSystemTimeAsFileTime().

+
 FILETIME ft;
+ GetSystemTimeAsFileTime(&ft);
+ UINT64 ticks = (((UINT64)ft.dwHighDateTime) << 32) | ft.dwLowDateTime;
+
+ // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z
+ // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z.
+ Timestamp timestamp;
+ timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
+ timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
+
+

Example 4: Compute Timestamp from Java System.currentTimeMillis().

+
 long millis = System.currentTimeMillis();
+
+ Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000)
+     .setNanos((int) ((millis % 1000) * 1000000)).build();
+
+

Example 5: Compute Timestamp from Java Instant.now().

+
 Instant now = Instant.now();
+
+ Timestamp timestamp =
+     Timestamp.newBuilder().setSeconds(now.getEpochSecond())
+         .setNanos(now.getNano()).build();
+
+

Example 6: Compute Timestamp from current time in Python.

+
 timestamp = Timestamp()
+ timestamp.GetCurrentTime()
+
+

JSON Mapping

+

In JSON format, the Timestamp type is encoded as a string in the +RFC 3339 format. That is, the + format is "{year}-{month}-{day}T{hour}:{min}:{sec}.{frac_sec}Z" + where {year} is always expressed using four digits while {month}, {day}, + {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional + seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution), + are optional. The "Z" suffix indicates the timezone ("UTC"); the timezone + is required. A proto3 JSON serializer should always use UTC (as indicated by + "Z") when printing the Timestamp type and a proto3 JSON parser should be + able to accept both UTC and other timezones (as indicated by an offset).

+

For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past +01:30 UTC on January 15, 2017.

+

In JavaScript, one can convert a Date object to this format using the +standard +toISOString() + method. In Python, a standard datetime.datetime object can be converted + to this format using + strftime with + the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use + the Joda Time's ISODateTimeFormat.dateTime() to obtain a formatter capable of generating timestamps in this format.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ Timestamp({Int64? seconds, int? nanos}) +
+
+ +
factory
+
+
+ Timestamp.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ Timestamp.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ nanos + ↔ int + + +
+
+ Non-negative fractions of a second at nanosecond resolution. Negative +second values with fractions must still have non-negative nanos values +that count forward in time. Must be from 0 to 999,999,999 +inclusive. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ seconds + Int64 + + +
+
+ Represents seconds of UTC time since Unix epoch +1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to +9999-12-31T23:59:59Z inclusive. +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearNanos() + → void + + + +
+
+ + + +
+ +
+ clearSeconds() + → void + + + +
+
+ + + +
+ +
+ clone() + Timestamp + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(Timestamp)) + Timestamp + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + Timestamp + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasNanos() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasSeconds() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDateTime({bool toLocal = false}) + → DateTime + + + +
+
+ Converts an instance to DateTime. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + Timestamp + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<Timestamp> + + + +
+
+ + + +
+ +
+ fromDateTime(DateTime dateTime) + Timestamp + + + +
+
+ Creates a new instance from dateTime. + + +
+ +
+ getDefault() + Timestamp + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/Timestamp.fromBuffer.html b/docs/data/Timestamp/Timestamp.fromBuffer.html new file mode 100644 index 0000000000..73d56f64c2 --- /dev/null +++ b/docs/data/Timestamp/Timestamp.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + Timestamp.fromBuffer constructor - Timestamp - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Timestamp.fromBuffer
+ +
+ +
+
+
+
+
+ +

Timestamp.fromBuffer constructor +

+ +
+ + Timestamp.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Timestamp.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/Timestamp.fromJson.html b/docs/data/Timestamp/Timestamp.fromJson.html new file mode 100644 index 0000000000..078bc618d9 --- /dev/null +++ b/docs/data/Timestamp/Timestamp.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + Timestamp.fromJson constructor - Timestamp - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Timestamp.fromJson
+ +
+ +
+
+
+
+
+ +

Timestamp.fromJson constructor +

+ +
+ + Timestamp.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Timestamp.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/Timestamp.html b/docs/data/Timestamp/Timestamp.html new file mode 100644 index 0000000000..4a9aa0f2a8 --- /dev/null +++ b/docs/data/Timestamp/Timestamp.html @@ -0,0 +1,122 @@ + + + + + + + + Timestamp constructor - Timestamp - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Timestamp
+ +
+ +
+
+
+
+
+ +

Timestamp constructor +

+ +
+ + Timestamp({
  1. Int64? seconds,
  2. +
  3. int? nanos,
  4. +
}) +
+ + + + +
+

Implementation

+
factory Timestamp({
+  $fixnum.Int64? seconds,
+  $core.int? nanos,
+}) {
+  final $result = create();
+  if (seconds != null) {
+    $result.seconds = seconds;
+  }
+  if (nanos != null) {
+    $result.nanos = nanos;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/clearNanos.html b/docs/data/Timestamp/clearNanos.html new file mode 100644 index 0000000000..e01d16c284 --- /dev/null +++ b/docs/data/Timestamp/clearNanos.html @@ -0,0 +1,118 @@ + + + + + + + + clearNanos method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearNanos
+ +
+ +
+
+
+
+
+ +

clearNanos method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearNanos() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearNanos() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/clearSeconds.html b/docs/data/Timestamp/clearSeconds.html new file mode 100644 index 0000000000..1c24d4a588 --- /dev/null +++ b/docs/data/Timestamp/clearSeconds.html @@ -0,0 +1,118 @@ + + + + + + + + clearSeconds method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearSeconds
+ +
+ +
+
+
+
+
+ +

clearSeconds method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearSeconds() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearSeconds() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/clone.html b/docs/data/Timestamp/clone.html new file mode 100644 index 0000000000..dac9d9f52a --- /dev/null +++ b/docs/data/Timestamp/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+Timestamp +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+Timestamp clone() => Timestamp()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/copyWith.html b/docs/data/Timestamp/copyWith.html new file mode 100644 index 0000000000..0958af1b7e --- /dev/null +++ b/docs/data/Timestamp/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+Timestamp +copyWith(
  1. void updates(
    1. Timestamp
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+Timestamp copyWith(void Function(Timestamp) updates) => super.copyWith((message) => updates(message as Timestamp)) as Timestamp;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/create.html b/docs/data/Timestamp/create.html new file mode 100644 index 0000000000..9dcb9b9399 --- /dev/null +++ b/docs/data/Timestamp/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +Timestamp +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Timestamp create() => Timestamp._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/createEmptyInstance.html b/docs/data/Timestamp/createEmptyInstance.html new file mode 100644 index 0000000000..f8a9870151 --- /dev/null +++ b/docs/data/Timestamp/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +Timestamp +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
Timestamp createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/createRepeated.html b/docs/data/Timestamp/createRepeated.html new file mode 100644 index 0000000000..a3908ba6b4 --- /dev/null +++ b/docs/data/Timestamp/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<Timestamp> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<Timestamp> createRepeated() => $pb.PbList<Timestamp>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/fromDateTime.html b/docs/data/Timestamp/fromDateTime.html new file mode 100644 index 0000000000..6f84ac0169 --- /dev/null +++ b/docs/data/Timestamp/fromDateTime.html @@ -0,0 +1,121 @@ + + + + + + + + fromDateTime method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
fromDateTime
+ +
+ +
+
+
+
+
+ +

fromDateTime static method +

+ +
+ +Timestamp +fromDateTime(
  1. DateTime dateTime
  2. +
) + + + +
+ +
+

Creates a new instance from dateTime.

+

Time zone information will not be preserved.

+
+ + + +
+

Implementation

+
static Timestamp fromDateTime($core.DateTime dateTime) {
+  final result = create();
+  $mixin.TimestampMixin.setFromDateTime(result, dateTime);
+  return result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/getDefault.html b/docs/data/Timestamp/getDefault.html new file mode 100644 index 0000000000..bb8ad99abc --- /dev/null +++ b/docs/data/Timestamp/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +Timestamp +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Timestamp getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Timestamp>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/hasNanos.html b/docs/data/Timestamp/hasNanos.html new file mode 100644 index 0000000000..87cfd41063 --- /dev/null +++ b/docs/data/Timestamp/hasNanos.html @@ -0,0 +1,118 @@ + + + + + + + + hasNanos method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasNanos
+ +
+ +
+
+
+
+
+ +

hasNanos method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasNanos() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasNanos() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/hasSeconds.html b/docs/data/Timestamp/hasSeconds.html new file mode 100644 index 0000000000..7ee0661bff --- /dev/null +++ b/docs/data/Timestamp/hasSeconds.html @@ -0,0 +1,118 @@ + + + + + + + + hasSeconds method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasSeconds
+ +
+ +
+
+
+
+
+ +

hasSeconds method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasSeconds() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasSeconds() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/info_.html b/docs/data/Timestamp/info_.html new file mode 100644 index 0000000000..289db257b1 --- /dev/null +++ b/docs/data/Timestamp/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/nanos.html b/docs/data/Timestamp/nanos.html new file mode 100644 index 0000000000..9c714e1c65 --- /dev/null +++ b/docs/data/Timestamp/nanos.html @@ -0,0 +1,156 @@ + + + + + + + + nanos property - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
nanos
+ +
+ +
+
+
+
+
+ +

nanos property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ int + get + nanos + + +
+ +
+

Non-negative fractions of a second at nanosecond resolution. Negative +second values with fractions must still have non-negative nanos values +that count forward in time. Must be from 0 to 999,999,999 +inclusive.

+
+ + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.int get nanos => $_getIZ(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + nanos + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set nanos($core.int v) { $_setSignedInt32(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/seconds.html b/docs/data/Timestamp/seconds.html new file mode 100644 index 0000000000..9a08338f98 --- /dev/null +++ b/docs/data/Timestamp/seconds.html @@ -0,0 +1,155 @@ + + + + + + + + seconds property - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
seconds
+ +
+ +
+
+
+
+
+ +

seconds property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ Int64 + get + seconds + + +
+ +
+

Represents seconds of UTC time since Unix epoch +1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to +9999-12-31T23:59:59Z inclusive.

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$fixnum.Int64 get seconds => $_getI64(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + seconds + (Int64 v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set seconds($fixnum.Int64 v) { $_setInt64(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/Timestamp/toDateTime.html b/docs/data/Timestamp/toDateTime.html new file mode 100644 index 0000000000..2cb5e4a31e --- /dev/null +++ b/docs/data/Timestamp/toDateTime.html @@ -0,0 +1,121 @@ + + + + + + + + toDateTime method - Timestamp class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toDateTime
+ +
+ +
+
+
+
+
+

toDateTime method +

+ +
+ +DateTime +toDateTime({
  1. bool toLocal = false,
  2. +
}) + +
inherited
+ +
+ +
+

Converts an instance to DateTime.

+

The result is in UTC time zone and has microsecond precision, as +DateTime does not support nanosecond precision.

+

Use toLocal to convert to local time zone, instead of the default UTC.

+
+ + + +
+

Implementation

+
DateTime toDateTime({bool toLocal = false}) =>
+    DateTime.fromMicrosecondsSinceEpoch(
+        seconds.toInt() * Duration.microsecondsPerSecond + nanos ~/ 1000,
+        isUtc: !toLocal);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TimestampUtils-extension-sidebar.html b/docs/data/TimestampUtils-extension-sidebar.html new file mode 100644 index 0000000000..2712c4e064 --- /dev/null +++ b/docs/data/TimestampUtils-extension-sidebar.html @@ -0,0 +1,19 @@ +
    + + + + + + + +
  1. Methods
  2. +
  3. now
  4. + +
  5. Operators
  6. +
  7. operator +
  8. +
  9. operator -
  10. + + + + +
diff --git a/docs/data/TimestampUtils.html b/docs/data/TimestampUtils.html new file mode 100644 index 0000000000..add725e511 --- /dev/null +++ b/docs/data/TimestampUtils.html @@ -0,0 +1,173 @@ + + + + + + + + TimestampUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TimestampUtils
+ +
+ +
+
+
+
+
+ +

TimestampUtils extension + +

+ + +
+

Utilities for Timestamps.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ + +
+

Methods

+
+
+ now() + Timestamp + + + +
+
+ The Timestamp version of DateTime.now. + + +
+ +
+
+ +
+

Operators

+
+
+ operator +(Duration duration) + Timestamp + + + +
+
+ Adds a Duration to a Timestamp. + + +
+ +
+ operator -(Timestamp other) + → double + + + +
+
+ Subtracts the + + +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/TimestampUtils/now.html b/docs/data/TimestampUtils/now.html new file mode 100644 index 0000000000..e9dda42bee --- /dev/null +++ b/docs/data/TimestampUtils/now.html @@ -0,0 +1,115 @@ + + + + + + + + now method - TimestampUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
now
+ +
+ +
+
+
+
+
+ +

now method +

+ +
+ +Timestamp +now() + + + +
+ +
+

The Timestamp version of DateTime.now.

+
+ + + +
+

Implementation

+
Timestamp now() => Timestamp.fromDateTime(DateTime.now());
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TimestampUtils/operator_minus.html b/docs/data/TimestampUtils/operator_minus.html new file mode 100644 index 0000000000..aae46c6303 --- /dev/null +++ b/docs/data/TimestampUtils/operator_minus.html @@ -0,0 +1,116 @@ + + + + + + + + operator - method - TimestampUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator -
+ +
+ +
+
+
+
+
+ +

operator - method +

+ +
+ +double +operator -(
  1. Timestamp other
  2. +
) + + + +
+ +
+

Subtracts the

+
+ + + +
+

Implementation

+
double operator -(Timestamp other) => (seconds - other.seconds).toDouble();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/TimestampUtils/operator_plus.html b/docs/data/TimestampUtils/operator_plus.html new file mode 100644 index 0000000000..da6c5550ad --- /dev/null +++ b/docs/data/TimestampUtils/operator_plus.html @@ -0,0 +1,116 @@ + + + + + + + + operator + method - TimestampUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator +
+ +
+ +
+
+
+
+
+ +

operator + method +

+ +
+ +Timestamp +operator +(
  1. Duration duration
  2. +
) + + + +
+ +
+

Adds a Duration to a Timestamp.

+
+ + + +
+

Implementation

+
Timestamp operator +(Duration duration) => Timestamp.fromDateTime(toDateTime().add(duration));
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UndefinedFilter-extension-sidebar.html b/docs/data/UndefinedFilter-extension-sidebar.html new file mode 100644 index 0000000000..1a9a755140 --- /dev/null +++ b/docs/data/UndefinedFilter-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. filtered
  4. + + + + + + +
diff --git a/docs/data/UndefinedFilter.html b/docs/data/UndefinedFilter.html new file mode 100644 index 0000000000..1265f2f205 --- /dev/null +++ b/docs/data/UndefinedFilter.html @@ -0,0 +1,139 @@ + + + + + + + + UndefinedFilter extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
UndefinedFilter
+ +
+ +
+
+
+
+
+ +

UndefinedFilter<T extends ProtobufEnum> extension + +

+ + +
+

Utilities for a list of Protobuf enums.

+
+ +
+
+
on
+
+
    +
  • List<T>
  • +
+
+
+ + + +
+ +
+

Properties

+
+
+ filtered + → List<T> + + +
+
+ Filters out _UNDEFINED values from the list. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/UndefinedFilter/filtered.html b/docs/data/UndefinedFilter/filtered.html new file mode 100644 index 0000000000..5de25de254 --- /dev/null +++ b/docs/data/UndefinedFilter/filtered.html @@ -0,0 +1,125 @@ + + + + + + + + filtered property - UndefinedFilter extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
filtered
+ +
+ +
+
+
+
+
+ +

filtered property +

+ + + + + +
+
+ + List<T> + get + filtered + + +
+ +
+

Filters out _UNDEFINED values from the list.

+
+ + +
+

Implementation

+
List<T> get filtered => [
+  for (final value in this)
+    if (value.value != 0)
+      value,
+];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Unwrapper-extension-sidebar.html b/docs/data/Unwrapper-extension-sidebar.html new file mode 100644 index 0000000000..d275d6cc80 --- /dev/null +++ b/docs/data/Unwrapper-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + + +
  1. Methods
  2. +
  3. decode
  4. + + + + + +
diff --git a/docs/data/Unwrapper.html b/docs/data/Unwrapper.html new file mode 100644 index 0000000000..fb7742d94a --- /dev/null +++ b/docs/data/Unwrapper.html @@ -0,0 +1,140 @@ + + + + + + + + Unwrapper extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Unwrapper
+ +
+ +
+
+
+
+
+ +

Unwrapper extension + +

+ + +
+

Decodes a wrapped Protobuf message.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ + +
+

Methods

+
+
+ decode<T extends Message>(MessageDecoder<T> decoder) + → T + + + +
+
+ Decodes the wrapped message into a message of type T. + + +
+ +
+
+ + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/Unwrapper/decode.html b/docs/data/Unwrapper/decode.html new file mode 100644 index 0000000000..18adf27da6 --- /dev/null +++ b/docs/data/Unwrapper/decode.html @@ -0,0 +1,116 @@ + + + + + + + + decode method - Unwrapper extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
decode
+ +
+ +
+
+
+
+
+ +

decode<T extends Message> method +

+ +
+ +T +decode<T extends Message>(
  1. MessageDecoder<T> decoder
  2. +
) + + + +
+ +
+

Decodes the wrapped message into a message of type T.

+
+ + + +
+

Implementation

+
T decode<T extends Message>(MessageDecoder<T> decoder) => decoder(data);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting-class-sidebar.html b/docs/data/UpdateSetting-class-sidebar.html new file mode 100644 index 0000000000..180bf45a78 --- /dev/null +++ b/docs/data/UpdateSetting-class-sidebar.html @@ -0,0 +1,76 @@ +
    + +
  1. Constructors
  2. +
  3. UpdateSetting
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. eventPlugin
  12. +
  13. hashCode
  14. +
  15. info_
  16. +
  17. isFrozen
  18. +
  19. runtimeType
  20. +
  21. status
  22. +
  23. unknownFields
  24. + +
  25. Methods
  26. +
  27. addExtension
  28. +
  29. check
  30. +
  31. clear
  32. +
  33. clearExtension
  34. +
  35. clearField
  36. +
  37. clearStatus
  38. +
  39. clone
  40. +
  41. copyWith
  42. +
  43. createEmptyInstance
  44. +
  45. createMapField
  46. +
  47. createRepeatedField
  48. +
  49. extensionsAreInitialized
  50. +
  51. freeze
  52. +
  53. getDefaultForField
  54. +
  55. getExtension
  56. +
  57. getField
  58. +
  59. getFieldOrNull
  60. +
  61. getTagNumber
  62. +
  63. hasExtension
  64. +
  65. hasField
  66. +
  67. hasRequiredFields
  68. +
  69. hasStatus
  70. +
  71. isInitialized
  72. +
  73. mergeFromBuffer
  74. +
  75. mergeFromCodedBufferReader
  76. +
  77. mergeFromJson
  78. +
  79. mergeFromJsonMap
  80. +
  81. mergeFromMessage
  82. +
  83. mergeFromProto3Json
  84. +
  85. mergeUnknownFields
  86. +
  87. noSuchMethod
  88. +
  89. setExtension
  90. +
  91. setField
  92. +
  93. toBuilder
  94. +
  95. toDebugString
  96. +
  97. toProto3Json
  98. +
  99. toString
  100. +
  101. writeToBuffer
  102. +
  103. writeToCodedBufferWriter
  104. +
  105. writeToJson
  106. +
  107. writeToJsonMap
  108. + +
  109. Operators
  110. +
  111. operator ==
  112. + + + + + +
  113. Static methods
  114. +
  115. create
  116. +
  117. createRepeated
  118. +
  119. getDefault
  120. + +
diff --git a/docs/data/UpdateSetting-class.html b/docs/data/UpdateSetting-class.html new file mode 100644 index 0000000000..9dcb02a5d6 --- /dev/null +++ b/docs/data/UpdateSetting-class.html @@ -0,0 +1,863 @@ + + + + + + + + UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
UpdateSetting
+ +
+ +
+
+
+
+
+ +

UpdateSetting class + +

+ + +
+

/ Update a sensitive setting, such as the rover's status. +/ +/ This message must be triggered manually and the recipient (usually the subsystems Pi) +/ must respond with the exact same message to confirm its receipt.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ UpdateSetting({RoverStatus? status}) +
+
+ +
factory
+
+
+ UpdateSetting.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ UpdateSetting.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ status + RoverStatus + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearStatus() + → void + + + +
+
+ + + +
+ +
+ clone() + UpdateSetting + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(UpdateSetting)) + UpdateSetting + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + UpdateSetting + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasStatus() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + UpdateSetting + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<UpdateSetting> + + + +
+
+ + + +
+ +
+ getDefault() + UpdateSetting + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/UpdateSetting.fromBuffer.html b/docs/data/UpdateSetting/UpdateSetting.fromBuffer.html new file mode 100644 index 0000000000..2ad05592e2 --- /dev/null +++ b/docs/data/UpdateSetting/UpdateSetting.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + UpdateSetting.fromBuffer constructor - UpdateSetting - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
UpdateSetting.fromBuffer
+ +
+ +
+
+
+
+
+ +

UpdateSetting.fromBuffer constructor +

+ +
+ + UpdateSetting.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory UpdateSetting.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/UpdateSetting.fromJson.html b/docs/data/UpdateSetting/UpdateSetting.fromJson.html new file mode 100644 index 0000000000..309f4d68d5 --- /dev/null +++ b/docs/data/UpdateSetting/UpdateSetting.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + UpdateSetting.fromJson constructor - UpdateSetting - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
UpdateSetting.fromJson
+ +
+ +
+
+
+
+
+ +

UpdateSetting.fromJson constructor +

+ +
+ + UpdateSetting.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory UpdateSetting.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/UpdateSetting.html b/docs/data/UpdateSetting/UpdateSetting.html new file mode 100644 index 0000000000..e7d78736d3 --- /dev/null +++ b/docs/data/UpdateSetting/UpdateSetting.html @@ -0,0 +1,117 @@ + + + + + + + + UpdateSetting constructor - UpdateSetting - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
UpdateSetting
+ +
+ +
+
+
+
+
+ +

UpdateSetting constructor +

+ +
+ + UpdateSetting({
  1. RoverStatus? status,
  2. +
}) +
+ + + + +
+

Implementation

+
factory UpdateSetting({
+  RoverStatus? status,
+}) {
+  final $result = create();
+  if (status != null) {
+    $result.status = status;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/clearStatus.html b/docs/data/UpdateSetting/clearStatus.html new file mode 100644 index 0000000000..95446fb665 --- /dev/null +++ b/docs/data/UpdateSetting/clearStatus.html @@ -0,0 +1,118 @@ + + + + + + + + clearStatus method - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearStatus
+ +
+ +
+
+
+
+
+ +

clearStatus method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearStatus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearStatus() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/clone.html b/docs/data/UpdateSetting/clone.html new file mode 100644 index 0000000000..5d7d41a034 --- /dev/null +++ b/docs/data/UpdateSetting/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+UpdateSetting +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+UpdateSetting clone() => UpdateSetting()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/copyWith.html b/docs/data/UpdateSetting/copyWith.html new file mode 100644 index 0000000000..190492b597 --- /dev/null +++ b/docs/data/UpdateSetting/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+UpdateSetting +copyWith(
  1. void updates(
    1. UpdateSetting
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+UpdateSetting copyWith(void Function(UpdateSetting) updates) => super.copyWith((message) => updates(message as UpdateSetting)) as UpdateSetting;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/create.html b/docs/data/UpdateSetting/create.html new file mode 100644 index 0000000000..2f92e4f0c6 --- /dev/null +++ b/docs/data/UpdateSetting/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +UpdateSetting +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static UpdateSetting create() => UpdateSetting._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/createEmptyInstance.html b/docs/data/UpdateSetting/createEmptyInstance.html new file mode 100644 index 0000000000..93542e7890 --- /dev/null +++ b/docs/data/UpdateSetting/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +UpdateSetting +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
UpdateSetting createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/createRepeated.html b/docs/data/UpdateSetting/createRepeated.html new file mode 100644 index 0000000000..ba68276519 --- /dev/null +++ b/docs/data/UpdateSetting/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<UpdateSetting> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<UpdateSetting> createRepeated() => $pb.PbList<UpdateSetting>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/getDefault.html b/docs/data/UpdateSetting/getDefault.html new file mode 100644 index 0000000000..d7062958f2 --- /dev/null +++ b/docs/data/UpdateSetting/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +UpdateSetting +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static UpdateSetting getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<UpdateSetting>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/hasStatus.html b/docs/data/UpdateSetting/hasStatus.html new file mode 100644 index 0000000000..778fdbea78 --- /dev/null +++ b/docs/data/UpdateSetting/hasStatus.html @@ -0,0 +1,118 @@ + + + + + + + + hasStatus method - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasStatus
+ +
+ +
+
+
+
+
+ +

hasStatus method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasStatus() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasStatus() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/info_.html b/docs/data/UpdateSetting/info_.html new file mode 100644 index 0000000000..31bfdd4e4a --- /dev/null +++ b/docs/data/UpdateSetting/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/UpdateSetting/status.html b/docs/data/UpdateSetting/status.html new file mode 100644 index 0000000000..3525486f50 --- /dev/null +++ b/docs/data/UpdateSetting/status.html @@ -0,0 +1,150 @@ + + + + + + + + status property - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
status
+ +
+ +
+
+
+
+
+ +

status property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ RoverStatus + get + status + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+RoverStatus get status => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + status + (RoverStatus v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set status(RoverStatus v) { setField(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version-class-sidebar.html b/docs/data/Version-class-sidebar.html new file mode 100644 index 0000000000..a50a7a9818 --- /dev/null +++ b/docs/data/Version-class-sidebar.html @@ -0,0 +1,79 @@ +
    + +
  1. Constructors
  2. +
  3. Version
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. eventPlugin
  12. +
  13. hashCode
  14. +
  15. info_
  16. +
  17. isFrozen
  18. +
  19. major
  20. +
  21. minor
  22. +
  23. runtimeType
  24. +
  25. unknownFields
  26. + +
  27. Methods
  28. +
  29. addExtension
  30. +
  31. check
  32. +
  33. clear
  34. +
  35. clearExtension
  36. +
  37. clearField
  38. +
  39. clearMajor
  40. +
  41. clearMinor
  42. +
  43. clone
  44. +
  45. copyWith
  46. +
  47. createEmptyInstance
  48. +
  49. createMapField
  50. +
  51. createRepeatedField
  52. +
  53. extensionsAreInitialized
  54. +
  55. freeze
  56. +
  57. getDefaultForField
  58. +
  59. getExtension
  60. +
  61. getField
  62. +
  63. getFieldOrNull
  64. +
  65. getTagNumber
  66. +
  67. hasExtension
  68. +
  69. hasField
  70. +
  71. hasMajor
  72. +
  73. hasMinor
  74. +
  75. hasRequiredFields
  76. +
  77. isInitialized
  78. +
  79. mergeFromBuffer
  80. +
  81. mergeFromCodedBufferReader
  82. +
  83. mergeFromJson
  84. +
  85. mergeFromJsonMap
  86. +
  87. mergeFromMessage
  88. +
  89. mergeFromProto3Json
  90. +
  91. mergeUnknownFields
  92. +
  93. noSuchMethod
  94. +
  95. setExtension
  96. +
  97. setField
  98. +
  99. toBuilder
  100. +
  101. toDebugString
  102. +
  103. toProto3Json
  104. +
  105. toString
  106. +
  107. writeToBuffer
  108. +
  109. writeToCodedBufferWriter
  110. +
  111. writeToJson
  112. +
  113. writeToJsonMap
  114. + +
  115. Operators
  116. +
  117. operator ==
  118. + + + + + +
  119. Static methods
  120. +
  121. create
  122. +
  123. createRepeated
  124. +
  125. getDefault
  126. + +
diff --git a/docs/data/Version-class.html b/docs/data/Version-class.html new file mode 100644 index 0000000000..8ea0734467 --- /dev/null +++ b/docs/data/Version-class.html @@ -0,0 +1,896 @@ + + + + + + + + Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Version
+ +
+ +
+
+
+
+
+ +

Version class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ Version({int? major, int? minor}) +
+
+ +
factory
+
+
+ Version.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ Version.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ major + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ minor + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearMajor() + → void + + + +
+
+ + + +
+ +
+ clearMinor() + → void + + + +
+
+ + + +
+ +
+ clone() + Version + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(Version)) + Version + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + Version + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasMajor() + → bool + + + +
+
+ + + +
+ +
+ hasMinor() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + Version + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<Version> + + + +
+
+ + + +
+ +
+ getDefault() + Version + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/Version.fromBuffer.html b/docs/data/Version/Version.fromBuffer.html new file mode 100644 index 0000000000..e3ce7db015 --- /dev/null +++ b/docs/data/Version/Version.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + Version.fromBuffer constructor - Version - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Version.fromBuffer
+ +
+ +
+
+
+
+
+ +

Version.fromBuffer constructor +

+ +
+ + Version.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Version.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/Version.fromJson.html b/docs/data/Version/Version.fromJson.html new file mode 100644 index 0000000000..d07b872f5f --- /dev/null +++ b/docs/data/Version/Version.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + Version.fromJson constructor - Version - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Version.fromJson
+ +
+ +
+
+
+
+
+ +

Version.fromJson constructor +

+ +
+ + Version.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory Version.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/Version.html b/docs/data/Version/Version.html new file mode 100644 index 0000000000..f89ee83116 --- /dev/null +++ b/docs/data/Version/Version.html @@ -0,0 +1,122 @@ + + + + + + + + Version constructor - Version - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Version
+ +
+ +
+
+
+
+
+ +

Version constructor +

+ +
+ + Version({
  1. int? major,
  2. +
  3. int? minor,
  4. +
}) +
+ + + + +
+

Implementation

+
factory Version({
+  $core.int? major,
+  $core.int? minor,
+}) {
+  final $result = create();
+  if (major != null) {
+    $result.major = major;
+  }
+  if (minor != null) {
+    $result.minor = minor;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/clearMajor.html b/docs/data/Version/clearMajor.html new file mode 100644 index 0000000000..04637c2a6f --- /dev/null +++ b/docs/data/Version/clearMajor.html @@ -0,0 +1,118 @@ + + + + + + + + clearMajor method - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearMajor
+ +
+ +
+
+
+
+
+ +

clearMajor method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearMajor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearMajor() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/clearMinor.html b/docs/data/Version/clearMinor.html new file mode 100644 index 0000000000..4cb0e61c50 --- /dev/null +++ b/docs/data/Version/clearMinor.html @@ -0,0 +1,118 @@ + + + + + + + + clearMinor method - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearMinor
+ +
+ +
+
+
+
+
+ +

clearMinor method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearMinor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearMinor() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/clone.html b/docs/data/Version/clone.html new file mode 100644 index 0000000000..a1adbb24f3 --- /dev/null +++ b/docs/data/Version/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+Version +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+Version clone() => Version()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/copyWith.html b/docs/data/Version/copyWith.html new file mode 100644 index 0000000000..0ff4c7e355 --- /dev/null +++ b/docs/data/Version/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+Version +copyWith(
  1. void updates(
    1. Version
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+Version copyWith(void Function(Version) updates) => super.copyWith((message) => updates(message as Version)) as Version;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/create.html b/docs/data/Version/create.html new file mode 100644 index 0000000000..25b3ab5f5d --- /dev/null +++ b/docs/data/Version/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +Version +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Version create() => Version._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/createEmptyInstance.html b/docs/data/Version/createEmptyInstance.html new file mode 100644 index 0000000000..ce087f832f --- /dev/null +++ b/docs/data/Version/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +Version +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
Version createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/createRepeated.html b/docs/data/Version/createRepeated.html new file mode 100644 index 0000000000..afeede7aa7 --- /dev/null +++ b/docs/data/Version/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<Version> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<Version> createRepeated() => $pb.PbList<Version>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/getDefault.html b/docs/data/Version/getDefault.html new file mode 100644 index 0000000000..f456bdc96d --- /dev/null +++ b/docs/data/Version/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +Version +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static Version getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Version>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/hasMajor.html b/docs/data/Version/hasMajor.html new file mode 100644 index 0000000000..1fe84a682c --- /dev/null +++ b/docs/data/Version/hasMajor.html @@ -0,0 +1,118 @@ + + + + + + + + hasMajor method - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasMajor
+ +
+ +
+
+
+
+
+ +

hasMajor method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasMajor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasMajor() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/hasMinor.html b/docs/data/Version/hasMinor.html new file mode 100644 index 0000000000..7343c62a6c --- /dev/null +++ b/docs/data/Version/hasMinor.html @@ -0,0 +1,118 @@ + + + + + + + + hasMinor method - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasMinor
+ +
+ +
+
+
+
+
+ +

hasMinor method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasMinor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasMinor() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/info_.html b/docs/data/Version/info_.html new file mode 100644 index 0000000000..83f4a30d2f --- /dev/null +++ b/docs/data/Version/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/major.html b/docs/data/Version/major.html new file mode 100644 index 0000000000..cf75b6aedb --- /dev/null +++ b/docs/data/Version/major.html @@ -0,0 +1,150 @@ + + + + + + + + major property - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
major
+ +
+ +
+
+
+
+
+ +

major property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ int + get + major + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.int get major => $_getIZ(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + major + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set major($core.int v) { $_setSignedInt32(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/Version/minor.html b/docs/data/Version/minor.html new file mode 100644 index 0000000000..4d1d8865da --- /dev/null +++ b/docs/data/Version/minor.html @@ -0,0 +1,150 @@ + + + + + + + + minor property - Version class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
minor
+ +
+ +
+
+
+
+
+ +

minor property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ int + get + minor + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.int get minor => $_getIZ(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + minor + (int v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set minor($core.int v) { $_setSignedInt32(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/VersionUtils-extension-sidebar.html b/docs/data/VersionUtils-extension-sidebar.html new file mode 100644 index 0000000000..4e26c344e2 --- /dev/null +++ b/docs/data/VersionUtils-extension-sidebar.html @@ -0,0 +1,17 @@ +
    + + + + + + + +
  1. Methods
  2. +
  3. format
  4. +
  5. isCompatible
  6. + + + + + +
diff --git a/docs/data/VersionUtils.html b/docs/data/VersionUtils.html new file mode 100644 index 0000000000..89338ef16c --- /dev/null +++ b/docs/data/VersionUtils.html @@ -0,0 +1,153 @@ + + + + + + + + VersionUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VersionUtils
+ +
+ +
+
+
+
+
+ +

VersionUtils extension + +

+ + +
+

Helpful methods on Versions.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ + +
+

Methods

+
+
+ format() + → String + + + +
+
+ Formats the version in a human-readable format. + + +
+ +
+ isCompatible(Version other) + → bool + + + +
+
+ Whether another version is compatible with this one. + + +
+ +
+
+ + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/VersionUtils/format.html b/docs/data/VersionUtils/format.html new file mode 100644 index 0000000000..50a1ae7f91 --- /dev/null +++ b/docs/data/VersionUtils/format.html @@ -0,0 +1,115 @@ + + + + + + + + format method - VersionUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
format
+ +
+ +
+
+
+
+
+ +

format method +

+ +
+ +String +format() + + + +
+ +
+

Formats the version in a human-readable format.

+
+ + + +
+

Implementation

+
String format() => hasMajor() ? "$major.$minor" : "unknown";
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VersionUtils/isCompatible.html b/docs/data/VersionUtils/isCompatible.html new file mode 100644 index 0000000000..2883bbd9d8 --- /dev/null +++ b/docs/data/VersionUtils/isCompatible.html @@ -0,0 +1,116 @@ + + + + + + + + isCompatible method - VersionUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isCompatible
+ +
+ +
+
+
+
+
+ +

isCompatible method +

+ +
+ +bool +isCompatible(
  1. Version other
  2. +
) + + + +
+ +
+

Whether another version is compatible with this one.

+
+ + + +
+

Implementation

+
bool isCompatible(Version other) => major == other.major;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand-class-sidebar.html b/docs/data/VideoCommand-class-sidebar.html new file mode 100644 index 0000000000..e8b038774b --- /dev/null +++ b/docs/data/VideoCommand-class-sidebar.html @@ -0,0 +1,87 @@ +
    + +
  1. Constructors
  2. +
  3. VideoCommand
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. details
  12. +
  13. eventPlugin
  14. +
  15. hashCode
  16. +
  17. id
  18. +
  19. info_
  20. +
  21. isFrozen
  22. +
  23. runtimeType
  24. +
  25. takeSnapshot
  26. +
  27. unknownFields
  28. +
  29. version
  30. + +
  31. Methods
  32. +
  33. addExtension
  34. +
  35. check
  36. +
  37. clear
  38. +
  39. clearDetails
  40. +
  41. clearExtension
  42. +
  43. clearField
  44. +
  45. clearId
  46. +
  47. clearTakeSnapshot
  48. +
  49. clearVersion
  50. +
  51. clone
  52. +
  53. copyWith
  54. +
  55. createEmptyInstance
  56. +
  57. createMapField
  58. +
  59. createRepeatedField
  60. +
  61. ensureDetails
  62. +
  63. ensureVersion
  64. +
  65. extensionsAreInitialized
  66. +
  67. freeze
  68. +
  69. getDefaultForField
  70. +
  71. getExtension
  72. +
  73. getField
  74. +
  75. getFieldOrNull
  76. +
  77. getTagNumber
  78. +
  79. hasDetails
  80. +
  81. hasExtension
  82. +
  83. hasField
  84. +
  85. hasId
  86. +
  87. hasRequiredFields
  88. +
  89. hasTakeSnapshot
  90. +
  91. hasVersion
  92. +
  93. isInitialized
  94. +
  95. mergeFromBuffer
  96. +
  97. mergeFromCodedBufferReader
  98. +
  99. mergeFromJson
  100. +
  101. mergeFromJsonMap
  102. +
  103. mergeFromMessage
  104. +
  105. mergeFromProto3Json
  106. +
  107. mergeUnknownFields
  108. +
  109. noSuchMethod
  110. +
  111. setExtension
  112. +
  113. setField
  114. +
  115. toBuilder
  116. +
  117. toDebugString
  118. +
  119. toProto3Json
  120. +
  121. toString
  122. +
  123. writeToBuffer
  124. +
  125. writeToCodedBufferWriter
  126. +
  127. writeToJson
  128. +
  129. writeToJsonMap
  130. + +
  131. Operators
  132. +
  133. operator ==
  134. + + + + + +
  135. Static methods
  136. +
  137. create
  138. +
  139. createRepeated
  140. +
  141. getDefault
  142. + +
diff --git a/docs/data/VideoCommand-class.html b/docs/data/VideoCommand-class.html new file mode 100644 index 0000000000..4fc2a4497e --- /dev/null +++ b/docs/data/VideoCommand-class.html @@ -0,0 +1,1002 @@ + + + + + + + + VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoCommand
+ +
+ +
+
+
+
+
+ +

VideoCommand class + +

+ + +
+

/ Make changes to a camera feed.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ VideoCommand({String? id, CameraDetails? details, Version? version, bool? takeSnapshot}) +
+
+ +
factory
+
+
+ VideoCommand.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ VideoCommand.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ details + CameraDetails + + +
+
+ / The new details for this camera. +/ +/ If changing CameraDetails.status, you cannot set it to CameraStatus.DISCONNECTED. +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ id + ↔ String + + +
+
+ / The unique ID of the camera to change. +
getter/setter pair
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ takeSnapshot + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearDetails() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearId() + → void + + + +
+
+ + + +
+ +
+ clearTakeSnapshot() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + VideoCommand + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(VideoCommand)) + VideoCommand + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + VideoCommand + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureDetails() + CameraDetails + + + +
+
+ + + +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasDetails() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasId() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasTakeSnapshot() + → bool + + + +
+
+ + + +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + VideoCommand + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<VideoCommand> + + + +
+
+ + + +
+ +
+ getDefault() + VideoCommand + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/VideoCommand.fromBuffer.html b/docs/data/VideoCommand/VideoCommand.fromBuffer.html new file mode 100644 index 0000000000..a01e2d6b35 --- /dev/null +++ b/docs/data/VideoCommand/VideoCommand.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + VideoCommand.fromBuffer constructor - VideoCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoCommand.fromBuffer
+ +
+ +
+
+
+
+
+ +

VideoCommand.fromBuffer constructor +

+ +
+ + VideoCommand.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory VideoCommand.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/VideoCommand.fromJson.html b/docs/data/VideoCommand/VideoCommand.fromJson.html new file mode 100644 index 0000000000..e6f98577c2 --- /dev/null +++ b/docs/data/VideoCommand/VideoCommand.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + VideoCommand.fromJson constructor - VideoCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoCommand.fromJson
+ +
+ +
+
+
+
+
+ +

VideoCommand.fromJson constructor +

+ +
+ + VideoCommand.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory VideoCommand.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/VideoCommand.html b/docs/data/VideoCommand/VideoCommand.html new file mode 100644 index 0000000000..da683f9239 --- /dev/null +++ b/docs/data/VideoCommand/VideoCommand.html @@ -0,0 +1,132 @@ + + + + + + + + VideoCommand constructor - VideoCommand - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoCommand
+ +
+ +
+
+
+
+
+ +

VideoCommand constructor +

+ +
+ + VideoCommand({
  1. String? id,
  2. +
  3. CameraDetails? details,
  4. +
  5. Version? version,
  6. +
  7. bool? takeSnapshot,
  8. +
}) +
+ + + + +
+

Implementation

+
factory VideoCommand({
+  $core.String? id,
+  CameraDetails? details,
+  $0.Version? version,
+  $core.bool? takeSnapshot,
+}) {
+  final $result = create();
+  if (id != null) {
+    $result.id = id;
+  }
+  if (details != null) {
+    $result.details = details;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  if (takeSnapshot != null) {
+    $result.takeSnapshot = takeSnapshot;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/clearDetails.html b/docs/data/VideoCommand/clearDetails.html new file mode 100644 index 0000000000..5ebfe4d5bd --- /dev/null +++ b/docs/data/VideoCommand/clearDetails.html @@ -0,0 +1,118 @@ + + + + + + + + clearDetails method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearDetails
+ +
+ +
+
+
+
+
+ +

clearDetails method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearDetails() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearDetails() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/clearId.html b/docs/data/VideoCommand/clearId.html new file mode 100644 index 0000000000..d1d44d56d7 --- /dev/null +++ b/docs/data/VideoCommand/clearId.html @@ -0,0 +1,118 @@ + + + + + + + + clearId method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearId
+ +
+ +
+
+
+
+
+ +

clearId method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearId() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearId() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/clearTakeSnapshot.html b/docs/data/VideoCommand/clearTakeSnapshot.html new file mode 100644 index 0000000000..20c6d08657 --- /dev/null +++ b/docs/data/VideoCommand/clearTakeSnapshot.html @@ -0,0 +1,118 @@ + + + + + + + + clearTakeSnapshot method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearTakeSnapshot
+ +
+ +
+
+
+
+
+ +

clearTakeSnapshot method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearTakeSnapshot() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearTakeSnapshot() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/clearVersion.html b/docs/data/VideoCommand/clearVersion.html new file mode 100644 index 0000000000..6952f21917 --- /dev/null +++ b/docs/data/VideoCommand/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearVersion() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/clone.html b/docs/data/VideoCommand/clone.html new file mode 100644 index 0000000000..2c235d19e3 --- /dev/null +++ b/docs/data/VideoCommand/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+VideoCommand +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+VideoCommand clone() => VideoCommand()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/copyWith.html b/docs/data/VideoCommand/copyWith.html new file mode 100644 index 0000000000..2a6711ce7a --- /dev/null +++ b/docs/data/VideoCommand/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+VideoCommand +copyWith(
  1. void updates(
    1. VideoCommand
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+VideoCommand copyWith(void Function(VideoCommand) updates) => super.copyWith((message) => updates(message as VideoCommand)) as VideoCommand;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/create.html b/docs/data/VideoCommand/create.html new file mode 100644 index 0000000000..93dc089aed --- /dev/null +++ b/docs/data/VideoCommand/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +VideoCommand +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static VideoCommand create() => VideoCommand._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/createEmptyInstance.html b/docs/data/VideoCommand/createEmptyInstance.html new file mode 100644 index 0000000000..51008f35e9 --- /dev/null +++ b/docs/data/VideoCommand/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +VideoCommand +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
VideoCommand createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/createRepeated.html b/docs/data/VideoCommand/createRepeated.html new file mode 100644 index 0000000000..d588bce5e9 --- /dev/null +++ b/docs/data/VideoCommand/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<VideoCommand> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<VideoCommand> createRepeated() => $pb.PbList<VideoCommand>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/details.html b/docs/data/VideoCommand/details.html new file mode 100644 index 0000000000..f1a4b65b03 --- /dev/null +++ b/docs/data/VideoCommand/details.html @@ -0,0 +1,155 @@ + + + + + + + + details property - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
details
+ +
+ +
+
+
+
+
+ +

details property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ CameraDetails + get + details + + +
+ +
+

/ The new details for this camera. +/ +/ If changing CameraDetails.status, you cannot set it to CameraStatus.DISCONNECTED.

+
+ + +
+

Implementation

+
@$pb.TagNumber(2)
+CameraDetails get details => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + details + (CameraDetails v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set details(CameraDetails v) { setField(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/ensureDetails.html b/docs/data/VideoCommand/ensureDetails.html new file mode 100644 index 0000000000..b398aca65c --- /dev/null +++ b/docs/data/VideoCommand/ensureDetails.html @@ -0,0 +1,118 @@ + + + + + + + + ensureDetails method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureDetails
+ +
+ +
+
+
+
+
+ +

ensureDetails method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+CameraDetails +ensureDetails() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+CameraDetails ensureDetails() => $_ensure(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/ensureVersion.html b/docs/data/VideoCommand/ensureVersion.html new file mode 100644 index 0000000000..c9064bb937 --- /dev/null +++ b/docs/data/VideoCommand/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$0.Version ensureVersion() => $_ensure(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/getDefault.html b/docs/data/VideoCommand/getDefault.html new file mode 100644 index 0000000000..e2c2517d0e --- /dev/null +++ b/docs/data/VideoCommand/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +VideoCommand +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static VideoCommand getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<VideoCommand>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/hasDetails.html b/docs/data/VideoCommand/hasDetails.html new file mode 100644 index 0000000000..d6b8841dcc --- /dev/null +++ b/docs/data/VideoCommand/hasDetails.html @@ -0,0 +1,118 @@ + + + + + + + + hasDetails method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasDetails
+ +
+ +
+
+
+
+
+ +

hasDetails method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasDetails() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasDetails() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/hasId.html b/docs/data/VideoCommand/hasId.html new file mode 100644 index 0000000000..9f47c7b3ee --- /dev/null +++ b/docs/data/VideoCommand/hasId.html @@ -0,0 +1,118 @@ + + + + + + + + hasId method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasId
+ +
+ +
+
+
+
+
+ +

hasId method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasId() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasId() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/hasTakeSnapshot.html b/docs/data/VideoCommand/hasTakeSnapshot.html new file mode 100644 index 0000000000..819be1d2e0 --- /dev/null +++ b/docs/data/VideoCommand/hasTakeSnapshot.html @@ -0,0 +1,118 @@ + + + + + + + + hasTakeSnapshot method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasTakeSnapshot
+ +
+ +
+
+
+
+
+ +

hasTakeSnapshot method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasTakeSnapshot() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasTakeSnapshot() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/hasVersion.html b/docs/data/VideoCommand/hasVersion.html new file mode 100644 index 0000000000..cdb10eb53e --- /dev/null +++ b/docs/data/VideoCommand/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasVersion() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/id.html b/docs/data/VideoCommand/id.html new file mode 100644 index 0000000000..03a55b1da6 --- /dev/null +++ b/docs/data/VideoCommand/id.html @@ -0,0 +1,153 @@ + + + + + + + + id property - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
id
+ +
+ +
+
+
+
+
+ +

id property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ String + get + id + + +
+ +
+

/ The unique ID of the camera to change.

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.String get id => $_getSZ(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + id + (String v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set id($core.String v) { $_setString(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/info_.html b/docs/data/VideoCommand/info_.html new file mode 100644 index 0000000000..cef11dc2e7 --- /dev/null +++ b/docs/data/VideoCommand/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/takeSnapshot.html b/docs/data/VideoCommand/takeSnapshot.html new file mode 100644 index 0000000000..1c1c7b0b90 --- /dev/null +++ b/docs/data/VideoCommand/takeSnapshot.html @@ -0,0 +1,150 @@ + + + + + + + + takeSnapshot property - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
takeSnapshot
+ +
+ +
+
+
+
+
+ +

takeSnapshot property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ bool + get + takeSnapshot + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool get takeSnapshot => $_getBF(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + takeSnapshot + (bool v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set takeSnapshot($core.bool v) { $_setBool(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoCommand/version.html b/docs/data/VideoCommand/version.html new file mode 100644 index 0000000000..ee4c320363 --- /dev/null +++ b/docs/data/VideoCommand/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$0.Version get version => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set version($0.Version v) { setField(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData-class-sidebar.html b/docs/data/VideoData-class-sidebar.html new file mode 100644 index 0000000000..29a93d7701 --- /dev/null +++ b/docs/data/VideoData-class-sidebar.html @@ -0,0 +1,90 @@ +
    + +
  1. Constructors
  2. +
  3. VideoData
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. details
  12. +
  13. eventPlugin
  14. +
  15. frame
  16. +
  17. hashCode
  18. +
  19. id
  20. +
  21. imagePath
  22. +
  23. info_
  24. +
  25. isFrozen
  26. +
  27. runtimeType
  28. +
  29. unknownFields
  30. +
  31. version
  32. + +
  33. Methods
  34. +
  35. addExtension
  36. +
  37. check
  38. +
  39. clear
  40. +
  41. clearDetails
  42. +
  43. clearExtension
  44. +
  45. clearField
  46. +
  47. clearFrame
  48. +
  49. clearId
  50. +
  51. clearImagePath
  52. +
  53. clearVersion
  54. +
  55. clone
  56. +
  57. copyWith
  58. +
  59. createEmptyInstance
  60. +
  61. createMapField
  62. +
  63. createRepeatedField
  64. +
  65. ensureDetails
  66. +
  67. ensureVersion
  68. +
  69. extensionsAreInitialized
  70. +
  71. freeze
  72. +
  73. getDefaultForField
  74. +
  75. getExtension
  76. +
  77. getField
  78. +
  79. getFieldOrNull
  80. +
  81. getTagNumber
  82. +
  83. hasDetails
  84. +
  85. hasExtension
  86. +
  87. hasField
  88. +
  89. hasFrame
  90. +
  91. hasId
  92. +
  93. hasImagePath
  94. +
  95. hasRequiredFields
  96. +
  97. hasVersion
  98. +
  99. isInitialized
  100. +
  101. mergeFromBuffer
  102. +
  103. mergeFromCodedBufferReader
  104. +
  105. mergeFromJson
  106. +
  107. mergeFromJsonMap
  108. +
  109. mergeFromMessage
  110. +
  111. mergeFromProto3Json
  112. +
  113. mergeUnknownFields
  114. +
  115. noSuchMethod
  116. +
  117. setExtension
  118. +
  119. setField
  120. +
  121. toBuilder
  122. +
  123. toDebugString
  124. +
  125. toProto3Json
  126. +
  127. toString
  128. +
  129. writeToBuffer
  130. +
  131. writeToCodedBufferWriter
  132. +
  133. writeToJson
  134. +
  135. writeToJsonMap
  136. + +
  137. Operators
  138. +
  139. operator ==
  140. + + + + + +
  141. Static methods
  142. +
  143. create
  144. +
  145. createRepeated
  146. +
  147. getDefault
  148. + +
diff --git a/docs/data/VideoData-class.html b/docs/data/VideoData-class.html new file mode 100644 index 0000000000..ccccc61890 --- /dev/null +++ b/docs/data/VideoData-class.html @@ -0,0 +1,1039 @@ + + + + + + + + VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoData
+ +
+ +
+
+
+
+
+ +

VideoData class + +

+ + +
+

/ Reports data about a camera.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ VideoData({String? id, CameraDetails? details, List<int>? frame, Version? version, String? imagePath}) +
+
+ +
factory
+
+
+ VideoData.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ VideoData.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ details + CameraDetails + + +
+
+ / The details for this camera. +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ frame + ↔ List<int> + + +
+
+ / The latest frame from this camera. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ id + ↔ String + + +
+
+ / The unique ID of this camera. +
getter/setter pair
+ +
+ +
+ imagePath + ↔ String + + +
+
+ +
getter/setter pair
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ version + Version + + +
+
+ +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearDetails() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearFrame() + → void + + + +
+
+ + + +
+ +
+ clearId() + → void + + + +
+
+ + + +
+ +
+ clearImagePath() + → void + + + +
+
+ + + +
+ +
+ clearVersion() + → void + + + +
+
+ + + +
+ +
+ clone() + VideoData + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(VideoData)) + VideoData + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + VideoData + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureDetails() + CameraDetails + + + +
+
+ + + +
+ +
+ ensureVersion() + Version + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasDetails() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasFrame() + → bool + + + +
+
+ + + +
+ +
+ hasId() + → bool + + + +
+
+ + + +
+ +
+ hasImagePath() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasVersion() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + VideoData + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<VideoData> + + + +
+
+ + + +
+ +
+ getDefault() + VideoData + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/VideoData.fromBuffer.html b/docs/data/VideoData/VideoData.fromBuffer.html new file mode 100644 index 0000000000..0ec7a9f5f5 --- /dev/null +++ b/docs/data/VideoData/VideoData.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + VideoData.fromBuffer constructor - VideoData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoData.fromBuffer
+ +
+ +
+
+
+
+
+ +

VideoData.fromBuffer constructor +

+ +
+ + VideoData.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory VideoData.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/VideoData.fromJson.html b/docs/data/VideoData/VideoData.fromJson.html new file mode 100644 index 0000000000..156263f99b --- /dev/null +++ b/docs/data/VideoData/VideoData.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + VideoData.fromJson constructor - VideoData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoData.fromJson
+ +
+ +
+
+
+
+
+ +

VideoData.fromJson constructor +

+ +
+ + VideoData.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory VideoData.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/VideoData.html b/docs/data/VideoData/VideoData.html new file mode 100644 index 0000000000..0641199e57 --- /dev/null +++ b/docs/data/VideoData/VideoData.html @@ -0,0 +1,137 @@ + + + + + + + + VideoData constructor - VideoData - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoData
+ +
+ +
+
+
+
+
+ +

VideoData constructor +

+ +
+ + VideoData({
  1. String? id,
  2. +
  3. CameraDetails? details,
  4. +
  5. List<int>? frame,
  6. +
  7. Version? version,
  8. +
  9. String? imagePath,
  10. +
}) +
+ + + + +
+

Implementation

+
factory VideoData({
+  $core.String? id,
+  CameraDetails? details,
+  $core.List<$core.int>? frame,
+  $0.Version? version,
+  $core.String? imagePath,
+}) {
+  final $result = create();
+  if (id != null) {
+    $result.id = id;
+  }
+  if (details != null) {
+    $result.details = details;
+  }
+  if (frame != null) {
+    $result.frame = frame;
+  }
+  if (version != null) {
+    $result.version = version;
+  }
+  if (imagePath != null) {
+    $result.imagePath = imagePath;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/clearDetails.html b/docs/data/VideoData/clearDetails.html new file mode 100644 index 0000000000..08a84f3f03 --- /dev/null +++ b/docs/data/VideoData/clearDetails.html @@ -0,0 +1,118 @@ + + + + + + + + clearDetails method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearDetails
+ +
+ +
+
+
+
+
+ +

clearDetails method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearDetails() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearDetails() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/clearFrame.html b/docs/data/VideoData/clearFrame.html new file mode 100644 index 0000000000..b755e72871 --- /dev/null +++ b/docs/data/VideoData/clearFrame.html @@ -0,0 +1,118 @@ + + + + + + + + clearFrame method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearFrame
+ +
+ +
+
+
+
+
+ +

clearFrame method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearFrame() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearFrame() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/clearId.html b/docs/data/VideoData/clearId.html new file mode 100644 index 0000000000..1a035583ff --- /dev/null +++ b/docs/data/VideoData/clearId.html @@ -0,0 +1,118 @@ + + + + + + + + clearId method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearId
+ +
+ +
+
+
+
+
+ +

clearId method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearId() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearId() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/clearImagePath.html b/docs/data/VideoData/clearImagePath.html new file mode 100644 index 0000000000..e1f6e7faa1 --- /dev/null +++ b/docs/data/VideoData/clearImagePath.html @@ -0,0 +1,118 @@ + + + + + + + + clearImagePath method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearImagePath
+ +
+ +
+
+
+
+
+ +

clearImagePath method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+void +clearImagePath() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+void clearImagePath() => clearField(5);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/clearVersion.html b/docs/data/VideoData/clearVersion.html new file mode 100644 index 0000000000..4dec419b29 --- /dev/null +++ b/docs/data/VideoData/clearVersion.html @@ -0,0 +1,118 @@ + + + + + + + + clearVersion method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearVersion
+ +
+ +
+
+
+
+
+ +

clearVersion method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+void +clearVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+void clearVersion() => clearField(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/clone.html b/docs/data/VideoData/clone.html new file mode 100644 index 0000000000..3b691a4046 --- /dev/null +++ b/docs/data/VideoData/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+VideoData +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+VideoData clone() => VideoData()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/copyWith.html b/docs/data/VideoData/copyWith.html new file mode 100644 index 0000000000..c784dee41e --- /dev/null +++ b/docs/data/VideoData/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+VideoData +copyWith(
  1. void updates(
    1. VideoData
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+VideoData copyWith(void Function(VideoData) updates) => super.copyWith((message) => updates(message as VideoData)) as VideoData;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/create.html b/docs/data/VideoData/create.html new file mode 100644 index 0000000000..3a5ae753a6 --- /dev/null +++ b/docs/data/VideoData/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +VideoData +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static VideoData create() => VideoData._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/createEmptyInstance.html b/docs/data/VideoData/createEmptyInstance.html new file mode 100644 index 0000000000..364a12e0a6 --- /dev/null +++ b/docs/data/VideoData/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +VideoData +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
VideoData createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/createRepeated.html b/docs/data/VideoData/createRepeated.html new file mode 100644 index 0000000000..54205223d1 --- /dev/null +++ b/docs/data/VideoData/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<VideoData> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<VideoData> createRepeated() => $pb.PbList<VideoData>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/details.html b/docs/data/VideoData/details.html new file mode 100644 index 0000000000..5b7b4233e0 --- /dev/null +++ b/docs/data/VideoData/details.html @@ -0,0 +1,153 @@ + + + + + + + + details property - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
details
+ +
+ +
+
+
+
+
+ +

details property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ CameraDetails + get + details + + +
+ +
+

/ The details for this camera.

+
+ + +
+

Implementation

+
@$pb.TagNumber(2)
+CameraDetails get details => $_getN(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + details + (CameraDetails v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set details(CameraDetails v) { setField(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/ensureDetails.html b/docs/data/VideoData/ensureDetails.html new file mode 100644 index 0000000000..f73bb9bb31 --- /dev/null +++ b/docs/data/VideoData/ensureDetails.html @@ -0,0 +1,118 @@ + + + + + + + + ensureDetails method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureDetails
+ +
+ +
+
+
+
+
+ +

ensureDetails method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+CameraDetails +ensureDetails() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+CameraDetails ensureDetails() => $_ensure(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/ensureVersion.html b/docs/data/VideoData/ensureVersion.html new file mode 100644 index 0000000000..9a9e7c6e69 --- /dev/null +++ b/docs/data/VideoData/ensureVersion.html @@ -0,0 +1,118 @@ + + + + + + + + ensureVersion method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureVersion
+ +
+ +
+
+
+
+
+ +

ensureVersion method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+Version +ensureVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$0.Version ensureVersion() => $_ensure(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/frame.html b/docs/data/VideoData/frame.html new file mode 100644 index 0000000000..9bcc5c8ba9 --- /dev/null +++ b/docs/data/VideoData/frame.html @@ -0,0 +1,153 @@ + + + + + + + + frame property - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frame
+ +
+ +
+
+
+
+
+ +

frame property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ List<int> + get + frame + + +
+ +
+

/ The latest frame from this camera.

+
+ + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.List<$core.int> get frame => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + frame + (List<int> v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set frame($core.List<$core.int> v) { $_setBytes(2, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/getDefault.html b/docs/data/VideoData/getDefault.html new file mode 100644 index 0000000000..f45ea606f2 --- /dev/null +++ b/docs/data/VideoData/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +VideoData +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static VideoData getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<VideoData>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/hasDetails.html b/docs/data/VideoData/hasDetails.html new file mode 100644 index 0000000000..599aa7b226 --- /dev/null +++ b/docs/data/VideoData/hasDetails.html @@ -0,0 +1,118 @@ + + + + + + + + hasDetails method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasDetails
+ +
+ +
+
+
+
+
+ +

hasDetails method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasDetails() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasDetails() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/hasFrame.html b/docs/data/VideoData/hasFrame.html new file mode 100644 index 0000000000..f00306094f --- /dev/null +++ b/docs/data/VideoData/hasFrame.html @@ -0,0 +1,118 @@ + + + + + + + + hasFrame method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasFrame
+ +
+ +
+
+
+
+
+ +

hasFrame method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasFrame() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasFrame() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/hasId.html b/docs/data/VideoData/hasId.html new file mode 100644 index 0000000000..97322c0706 --- /dev/null +++ b/docs/data/VideoData/hasId.html @@ -0,0 +1,118 @@ + + + + + + + + hasId method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasId
+ +
+ +
+
+
+
+
+ +

hasId method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasId() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasId() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/hasImagePath.html b/docs/data/VideoData/hasImagePath.html new file mode 100644 index 0000000000..9527399188 --- /dev/null +++ b/docs/data/VideoData/hasImagePath.html @@ -0,0 +1,118 @@ + + + + + + + + hasImagePath method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasImagePath
+ +
+ +
+
+
+
+
+ +

hasImagePath method +

+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+bool +hasImagePath() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasImagePath() => $_has(4);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/hasVersion.html b/docs/data/VideoData/hasVersion.html new file mode 100644 index 0000000000..abac3a7a88 --- /dev/null +++ b/docs/data/VideoData/hasVersion.html @@ -0,0 +1,118 @@ + + + + + + + + hasVersion method - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasVersion
+ +
+ +
+
+
+
+
+ +

hasVersion method +

+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+bool +hasVersion() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasVersion() => $_has(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/id.html b/docs/data/VideoData/id.html new file mode 100644 index 0000000000..6643f79827 --- /dev/null +++ b/docs/data/VideoData/id.html @@ -0,0 +1,153 @@ + + + + + + + + id property - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
id
+ +
+ +
+
+
+
+
+ +

id property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ String + get + id + + +
+ +
+

/ The unique ID of this camera.

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.String get id => $_getSZ(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + id + (String v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set id($core.String v) { $_setString(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/imagePath.html b/docs/data/VideoData/imagePath.html new file mode 100644 index 0000000000..174004f0bd --- /dev/null +++ b/docs/data/VideoData/imagePath.html @@ -0,0 +1,150 @@ + + + + + + + + imagePath property - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
imagePath
+ +
+ +
+
+
+
+
+ +

imagePath property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ String + get + imagePath + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.String get imagePath => $_getSZ(4);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ set + imagePath + (String v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(5)
+set imagePath($core.String v) { $_setString(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/info_.html b/docs/data/VideoData/info_.html new file mode 100644 index 0000000000..9d5f40fd55 --- /dev/null +++ b/docs/data/VideoData/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoData/version.html b/docs/data/VideoData/version.html new file mode 100644 index 0000000000..9384e8f7ae --- /dev/null +++ b/docs/data/VideoData/version.html @@ -0,0 +1,150 @@ + + + + + + + + version property - VideoData class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ Version + get + version + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+$0.Version get version => $_getN(3);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ set + version + (Version v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(4)
+set version($0.Version v) { setField(4, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/VideoDataUtils-extension-sidebar.html b/docs/data/VideoDataUtils-extension-sidebar.html new file mode 100644 index 0000000000..59cc2159e5 --- /dev/null +++ b/docs/data/VideoDataUtils-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. hasFrame
  4. + + + + + + +
diff --git a/docs/data/VideoDataUtils.html b/docs/data/VideoDataUtils.html new file mode 100644 index 0000000000..bf0fdf52f2 --- /dev/null +++ b/docs/data/VideoDataUtils.html @@ -0,0 +1,139 @@ + + + + + + + + VideoDataUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoDataUtils
+ +
+ +
+
+
+
+
+ +

VideoDataUtils extension + +

+ + +
+

Extensions for VideoData.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ hasFrame + → bool + + +
+
+ Whether this data has a frame to show. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+ + + + + + + + + + + diff --git a/docs/data/VideoDataUtils/hasFrame.html b/docs/data/VideoDataUtils/hasFrame.html new file mode 100644 index 0000000000..1ba7f0d4ec --- /dev/null +++ b/docs/data/VideoDataUtils/hasFrame.html @@ -0,0 +1,122 @@ + + + + + + + + hasFrame property - VideoDataUtils extension - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasFrame
+ +
+ +
+
+
+
+
+ +

hasFrame property +

+ + + + + +
+
+ + bool + get + hasFrame + + +
+ +
+

Whether this data has a frame to show.

+

A Protobuf bytes object is never null, only empty.

+
+ + +
+

Implementation

+
bool get hasFrame => frame.isNotEmpty;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VitalsMetrics-class-sidebar.html b/docs/data/VitalsMetrics-class-sidebar.html new file mode 100644 index 0000000000..cdf063e5e9 --- /dev/null +++ b/docs/data/VitalsMetrics-class-sidebar.html @@ -0,0 +1,45 @@ +
    + +
  1. Constructors
  2. +
  3. VitalsMetrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. data
  10. +
  11. drive
  12. +
  13. hashCode
  14. +
  15. hasListeners
  16. +
  17. matchesVersion
  18. +
  19. name
  20. +
  21. overallSeverity
  22. +
  23. runtimeType
  24. +
  25. supportedVersion
  26. +
  27. temperatureSeverity
  28. +
  29. version
  30. +
  31. versionCommand
  32. +
  33. voltageSeverity
  34. + +
  35. Methods
  36. +
  37. addListener
  38. +
  39. checkVersion
  40. +
  41. dispose
  42. +
  43. noSuchMethod
  44. +
  45. notifyListeners
  46. +
  47. parseVersion
  48. +
  49. removeListener
  50. +
  51. toString
  52. +
  53. update
  54. + +
  55. Operators
  56. +
  57. operator ==
  58. + + + + + + +
diff --git a/docs/data/VitalsMetrics-class.html b/docs/data/VitalsMetrics-class.html new file mode 100644 index 0000000000..80159cb755 --- /dev/null +++ b/docs/data/VitalsMetrics-class.html @@ -0,0 +1,463 @@ + + + + + + + + VitalsMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VitalsMetrics
+ +
+ +
+
+
+
+
+ +

VitalsMetrics class + +

+ + +
+

Metrics about the vitals of the rover.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ VitalsMetrics() +
+
+ A const constructor. +
+
+
+ +
+

Properties

+
+
+ allMetrics + → List<MetricLine> + + +
+
+ A list of user-friendly explanations for each of the metrics. +
no setteroverride
+ +
+ +
+ data + Message + + +
+
+ The underlying data used to get these metrics. +
finalinherited
+ +
+ +
+ drive + DriveData + + +
+
+ Provides access to the drive data. +
no setter
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ matchesVersion + → bool + + +
+
+ Whether the Dashboard is certain the firmware matches the right version. +
no setterinherited
+ +
+ +
+ name + → String + + +
+
+ A collective name for this group of metrics (usually the name of the subsystem). +
no setteroverride
+ +
+ +
+ overallSeverity + Severity? + + +
+
+ Fetch the overall Security +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ supportedVersion + Version + + +
+
+ The currently-supported version for this Dashboard. +
no setteroverride
+ +
+ +
+ temperatureSeverity + Severity? + + +
+
+ The severity of the DriveData.batteryTemperature readings. +
no setter
+ +
+ +
+ version + Version + + +
+
+ The version of the data that the firmware sends. +
getter/setter pairinherited
+ +
+ +
+ versionCommand + DriveCommand + + +
+
+ A command to notify the firmware of the Dashboard's supportedVersion. +
no setteroverride
+ +
+ +
+ voltageSeverity + Severity? + + +
+
+ The severity of the DriveData.batteryVoltage readings. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ checkVersion(Message data) + → bool + + + +
+
+ Checks this message's version and checks for support. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ parseVersion(Message message) + Version + + + +
+
+ Parses the version out of a given data packet. +
override
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(Message value) + → void + + + +
+
+ Updates data with new data. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VitalsMetrics/VitalsMetrics.html b/docs/data/VitalsMetrics/VitalsMetrics.html new file mode 100644 index 0000000000..06da9712e5 --- /dev/null +++ b/docs/data/VitalsMetrics/VitalsMetrics.html @@ -0,0 +1,111 @@ + + + + + + + + VitalsMetrics constructor - VitalsMetrics - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VitalsMetrics
+ +
+ +
+
+
+
+
+ +

VitalsMetrics constructor +

+ +
+ + VitalsMetrics() +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
VitalsMetrics() : super(DriveData());
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VitalsMetrics/allMetrics.html b/docs/data/VitalsMetrics/allMetrics.html new file mode 100644 index 0000000000..3f536ae7d7 --- /dev/null +++ b/docs/data/VitalsMetrics/allMetrics.html @@ -0,0 +1,133 @@ + + + + + + + + allMetrics property - VitalsMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
allMetrics
+ +
+ +
+
+
+
+
+ +

allMetrics property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<MetricLine> + get + allMetrics +
override
+ +
+ +
+

A list of user-friendly explanations for each of the metrics.

+

Be sure to store the actual values as fields. This property should be a list of one +user-friendly explanation per metric.

+
+ + +
+

Implementation

+
@override
+List<MetricLine> get allMetrics => [
+  MetricLine("Voltage: ${drive.batteryVoltage.toStringAsFixed(2)} V", severity: voltageSeverity),
+  MetricLine("Current: ${drive.batteryCurrent.toStringAsFixed(2)} A"),
+  MetricLine("Temperature: ${drive.batteryTemperature.toStringAsFixed(2)} °C", severity: temperatureSeverity),
+];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VitalsMetrics/drive.html b/docs/data/VitalsMetrics/drive.html new file mode 100644 index 0000000000..91c6a24d59 --- /dev/null +++ b/docs/data/VitalsMetrics/drive.html @@ -0,0 +1,121 @@ + + + + + + + + drive property - VitalsMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
drive
+ +
+ +
+
+
+
+
+ +

drive property +

+ + + + + +
+
+ + DriveData + get + drive + + +
+ +
+

Provides access to the drive data.

+
+ + +
+

Implementation

+
DriveData get drive => models.rover.metrics.drive.data;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VitalsMetrics/name.html b/docs/data/VitalsMetrics/name.html new file mode 100644 index 0000000000..4e5f041107 --- /dev/null +++ b/docs/data/VitalsMetrics/name.html @@ -0,0 +1,127 @@ + + + + + + + + name property - VitalsMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ String + get + name +
override
+ +
+ +
+

A collective name for this group of metrics (usually the name of the subsystem).

+
+ + +
+

Implementation

+
@override
+String get name => "Vitals";
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VitalsMetrics/parseVersion.html b/docs/data/VitalsMetrics/parseVersion.html new file mode 100644 index 0000000000..eed810957f --- /dev/null +++ b/docs/data/VitalsMetrics/parseVersion.html @@ -0,0 +1,122 @@ + + + + + + + + parseVersion method - VitalsMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseVersion
+ +
+ +
+
+
+
+
+ +

parseVersion method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Version +parseVersion(
  1. Message message
  2. +
) + +
override
+ +
+ +
+

Parses the version out of a given data packet.

+
+ + + +
+

Implementation

+
@override
+Version parseVersion(Message message) => Version(major: 0, minor: 0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VitalsMetrics/supportedVersion.html b/docs/data/VitalsMetrics/supportedVersion.html new file mode 100644 index 0000000000..41fd03b4ff --- /dev/null +++ b/docs/data/VitalsMetrics/supportedVersion.html @@ -0,0 +1,127 @@ + + + + + + + + supportedVersion property - VitalsMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
supportedVersion
+ +
+ +
+
+
+
+
+ +

supportedVersion property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Version + get + supportedVersion +
override
+ +
+ +
+

The currently-supported version for this Dashboard.

+
+ + +
+

Implementation

+
@override
+Version get supportedVersion => Version(major: 0, minor: 0);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VitalsMetrics/temperatureSeverity.html b/docs/data/VitalsMetrics/temperatureSeverity.html new file mode 100644 index 0000000000..e3ab75ae6b --- /dev/null +++ b/docs/data/VitalsMetrics/temperatureSeverity.html @@ -0,0 +1,131 @@ + + + + + + + + temperatureSeverity property - VitalsMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
temperatureSeverity
+ +
+ +
+
+
+
+
+ +

temperatureSeverity property +

+ + + + + +
+
+ + Severity? + get + temperatureSeverity + + +
+ +
+

The severity of the DriveData.batteryTemperature readings.

+
+ + +
+

Implementation

+
Severity? get temperatureSeverity {
+  if (drive.batteryTemperature == 0) {
+    return null;
+  } else if (drive.batteryTemperature >= 40) {
+    return Severity.critical;
+  } else if (drive.batteryTemperature >= 30) {
+    return Severity.warning;
+  } else {
+    return null;
+  }
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VitalsMetrics/versionCommand.html b/docs/data/VitalsMetrics/versionCommand.html new file mode 100644 index 0000000000..637121f57a --- /dev/null +++ b/docs/data/VitalsMetrics/versionCommand.html @@ -0,0 +1,127 @@ + + + + + + + + versionCommand property - VitalsMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
versionCommand
+ +
+ +
+
+
+
+
+ +

versionCommand property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ DriveCommand + get + versionCommand +
override
+ +
+ +
+

A command to notify the firmware of the Dashboard's supportedVersion.

+
+ + +
+

Implementation

+
@override
+DriveCommand get versionCommand => DriveCommand(version: supportedVersion);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/VitalsMetrics/voltageSeverity.html b/docs/data/VitalsMetrics/voltageSeverity.html new file mode 100644 index 0000000000..9dc7731095 --- /dev/null +++ b/docs/data/VitalsMetrics/voltageSeverity.html @@ -0,0 +1,130 @@ + + + + + + + + voltageSeverity property - VitalsMetrics class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
voltageSeverity
+ +
+ +
+
+
+
+
+ +

voltageSeverity property +

+ + + + + +
+
+ + Severity? + get + voltageSeverity + + +
+ +
+

The severity of the DriveData.batteryVoltage readings.

+
+ + +
+

Implementation

+
Severity? get voltageSeverity {
+  if (drive.batteryVoltage == 0) return null;
+  if (drive.batteryVoltage <= 25) {
+    return Severity.critical;
+  } else if (drive.batteryVoltage <= 26) {
+    return Severity.warning;
+  } else {
+    return null;
+  }
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage-class-sidebar.html b/docs/data/WrappedMessage-class-sidebar.html new file mode 100644 index 0000000000..9746b78caf --- /dev/null +++ b/docs/data/WrappedMessage-class-sidebar.html @@ -0,0 +1,83 @@ +
    + +
  1. Constructors
  2. +
  3. WrappedMessage
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. data
  12. +
  13. eventPlugin
  14. +
  15. hashCode
  16. +
  17. info_
  18. +
  19. isFrozen
  20. +
  21. name
  22. +
  23. runtimeType
  24. +
  25. timestamp
  26. +
  27. unknownFields
  28. + +
  29. Methods
  30. +
  31. addExtension
  32. +
  33. check
  34. +
  35. clear
  36. +
  37. clearData
  38. +
  39. clearExtension
  40. +
  41. clearField
  42. +
  43. clearName
  44. +
  45. clearTimestamp
  46. +
  47. clone
  48. +
  49. copyWith
  50. +
  51. createEmptyInstance
  52. +
  53. createMapField
  54. +
  55. createRepeatedField
  56. +
  57. ensureTimestamp
  58. +
  59. extensionsAreInitialized
  60. +
  61. freeze
  62. +
  63. getDefaultForField
  64. +
  65. getExtension
  66. +
  67. getField
  68. +
  69. getFieldOrNull
  70. +
  71. getTagNumber
  72. +
  73. hasData
  74. +
  75. hasExtension
  76. +
  77. hasField
  78. +
  79. hasName
  80. +
  81. hasRequiredFields
  82. +
  83. hasTimestamp
  84. +
  85. isInitialized
  86. +
  87. mergeFromBuffer
  88. +
  89. mergeFromCodedBufferReader
  90. +
  91. mergeFromJson
  92. +
  93. mergeFromJsonMap
  94. +
  95. mergeFromMessage
  96. +
  97. mergeFromProto3Json
  98. +
  99. mergeUnknownFields
  100. +
  101. noSuchMethod
  102. +
  103. setExtension
  104. +
  105. setField
  106. +
  107. toBuilder
  108. +
  109. toDebugString
  110. +
  111. toProto3Json
  112. +
  113. toString
  114. +
  115. writeToBuffer
  116. +
  117. writeToCodedBufferWriter
  118. +
  119. writeToJson
  120. +
  121. writeToJsonMap
  122. + +
  123. Operators
  124. +
  125. operator ==
  126. + + + + + +
  127. Static methods
  128. +
  129. create
  130. +
  131. createRepeated
  132. +
  133. getDefault
  134. + +
diff --git a/docs/data/WrappedMessage-class.html b/docs/data/WrappedMessage-class.html new file mode 100644 index 0000000000..0a62abf435 --- /dev/null +++ b/docs/data/WrappedMessage-class.html @@ -0,0 +1,947 @@ + + + + + + + + WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
WrappedMessage
+ +
+ +
+
+
+
+
+ +

WrappedMessage class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + +
Available extensions
+
+ + + +
+
+ + +
+

Constructors

+
+
+ WrappedMessage({List<int>? data, String? name, Timestamp? timestamp}) +
+
+ +
factory
+
+
+ WrappedMessage.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ WrappedMessage.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ data + ↔ List<int> + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ Calculates a hash code based on the contents of the protobuf. +
no setterinherited
+ +
+ +
+ info_ + BuilderInfo + + +
+
+ +
no setteroverride
+ +
+ +
+ isFrozen + → bool + + +
+
+ Returns true if this message is marked read-only. Otherwise false. +
no setterinherited
+ +
+ +
+ name + ↔ String + + +
+
+ +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ timestamp + Timestamp + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addExtension(Extension extension, Object? value) + → void + + + +
+
+ Adds an extension field value to a repeated field. +
inherited
+ +
+ +
+ check() + → void + + + +
+
+ +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all data that was set in this message. +
inherited
+ +
+ +
+ clearData() + → void + + + +
+
+ + + +
+ +
+ clearExtension(Extension extension) + → void + + + +
+
+ Clears an extension field and also removes the extension. +
inherited
+ +
+ +
+ clearField(int tagNumber) + → void + + + +
+
+ Clears the contents of a given field. +
inherited
+ +
+ +
+ clearName() + → void + + + +
+
+ + + +
+ +
+ clearTimestamp() + → void + + + +
+
+ + + +
+ +
+ clone() + WrappedMessage + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(WrappedMessage)) + WrappedMessage + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + WrappedMessage + + + +
+
+ Creates an empty instance of the same message type as this. +
override
+ +
+ +
+ createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) + → Map<K, V> + + + +
+
+ Creates a Map representing a map field. +
inherited
+ +
+ +
+ createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) + → List<T> + + + +
+
+ Creates List implementing a mutable repeated field. +
inherited
+ +
+ +
+ ensureTimestamp() + Timestamp + + + +
+
+ + + +
+ +
+ extensionsAreInitialized() + → bool + + + +
+
+ +
inherited
+ +
+ +
+ freeze() + GeneratedMessage + + + +
+
+ Make this message read-only. +
inherited
+ +
+ +
+ getDefaultForField(int tagNumber) + → dynamic + + + +
+
+ Returns the default value for the given field. +
inherited
+ +
+ +
+ getExtension(Extension extension) + → dynamic + + + +
+
+ Returns the value of extension. +
inherited
+ +
+ +
+ getField(int tagNumber) + → dynamic + + + +
+
+ Returns the value of the field associated with tagNumber, or the +default value if it is not set. +
inherited
+ +
+ +
+ getFieldOrNull(int tagNumber) + → dynamic + + + +
+
+ Returns the value of a field, ignoring any defaults. +
inherited
+ +
+ +
+ getTagNumber(String fieldName) + → int? + + + +
+
+ +
inherited
+ +
+ +
+ hasData() + → bool + + + +
+
+ + + +
+ +
+ hasExtension(Extension extension) + → bool + + + +
+
+ Returns true if a value of extension is present. +
inherited
+ +
+ +
+ hasField(int tagNumber) + → bool + + + +
+
+ Whether this message has a field associated with tagNumber. +
inherited
+ +
+ +
+ hasName() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasTimestamp() + → bool + + + +
+
+ + + +
+ +
+ isInitialized() + → bool + + + +
+
+ Whether all required fields in the message and embedded messages are set. +
inherited
+ +
+ +
+ mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges serialized protocol buffer data into this message. +
inherited
+ +
+ +
+ mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ +
inherited
+ +
+ +
+ mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from data, a JSON object, encoded as described by +GeneratedMessage.writeToJson. +
inherited
+ +
+ +
+ mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) + → void + + + +
+
+ Merges field values from a JSON object represented as a Dart map. +
inherited
+ +
+ +
+ mergeFromMessage(GeneratedMessage other) + → void + + + +
+
+ Merges the contents of the other into this message. +
inherited
+ +
+ +
+ mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) + → void + + + +
+
+ Merges field values from json, a JSON object using proto3 encoding. +
inherited
+ +
+ +
+ mergeUnknownFields(UnknownFieldSet unknownFieldSet) + → void + + + +
+
+ +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ setExtension(Extension extension, Object value) + → void + + + +
+
+ Sets the value of a non-repeated extension field to value. +
inherited
+ +
+ +
+ setField(int tagNumber, Object value) + → void + + + +
+
+ Sets the value of a field by its tagNumber. +
inherited
+ +
+ +
+ toBuilder() + GeneratedMessage + + + +
+
+ Creates a writable, shallow copy of this message. +
inherited
+ +
+ +
+ toDebugString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) + → Object? + + + +
+
+ Returns an Object representing Proto3 JSON serialization of this. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ Returns a String representation of this message. +
inherited
+ +
+ +
+ writeToBuffer() + Uint8List + + + +
+
+ +
inherited
+ +
+ +
+ writeToCodedBufferWriter(CodedBufferWriter output) + → void + + + +
+
+ +
inherited
+ +
+ +
+ writeToJson() + → String + + + +
+
+ Returns a JSON string that encodes this message. +
inherited
+ +
+ +
+ writeToJsonMap() + → Map<String, dynamic> + + + +
+
+ Returns the JSON encoding of this message as a Dart Map. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ create() + WrappedMessage + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<WrappedMessage> + + + +
+
+ + + +
+ +
+ getDefault() + WrappedMessage + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/WrappedMessage.fromBuffer.html b/docs/data/WrappedMessage/WrappedMessage.fromBuffer.html new file mode 100644 index 0000000000..0a84fa5169 --- /dev/null +++ b/docs/data/WrappedMessage/WrappedMessage.fromBuffer.html @@ -0,0 +1,110 @@ + + + + + + + + WrappedMessage.fromBuffer constructor - WrappedMessage - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
WrappedMessage.fromBuffer
+ +
+ +
+
+
+
+
+ +

WrappedMessage.fromBuffer constructor +

+ +
+ + WrappedMessage.fromBuffer(
  1. List<int> i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory WrappedMessage.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/WrappedMessage.fromJson.html b/docs/data/WrappedMessage/WrappedMessage.fromJson.html new file mode 100644 index 0000000000..c9090b9e25 --- /dev/null +++ b/docs/data/WrappedMessage/WrappedMessage.fromJson.html @@ -0,0 +1,110 @@ + + + + + + + + WrappedMessage.fromJson constructor - WrappedMessage - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
WrappedMessage.fromJson
+ +
+ +
+
+
+
+
+ +

WrappedMessage.fromJson constructor +

+ +
+ + WrappedMessage.fromJson(
  1. String i, [
  2. +
  3. ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY
  4. +
]) +
+ + + + +
+

Implementation

+
factory WrappedMessage.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/WrappedMessage.html b/docs/data/WrappedMessage/WrappedMessage.html new file mode 100644 index 0000000000..1fde93a77d --- /dev/null +++ b/docs/data/WrappedMessage/WrappedMessage.html @@ -0,0 +1,127 @@ + + + + + + + + WrappedMessage constructor - WrappedMessage - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
WrappedMessage
+ +
+ +
+
+
+
+
+ +

WrappedMessage constructor +

+ +
+ + WrappedMessage({
  1. List<int>? data,
  2. +
  3. String? name,
  4. +
  5. Timestamp? timestamp,
  6. +
}) +
+ + + + +
+

Implementation

+
factory WrappedMessage({
+  $core.List<$core.int>? data,
+  $core.String? name,
+  $5.Timestamp? timestamp,
+}) {
+  final $result = create();
+  if (data != null) {
+    $result.data = data;
+  }
+  if (name != null) {
+    $result.name = name;
+  }
+  if (timestamp != null) {
+    $result.timestamp = timestamp;
+  }
+  return $result;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/clearData.html b/docs/data/WrappedMessage/clearData.html new file mode 100644 index 0000000000..af97b77fff --- /dev/null +++ b/docs/data/WrappedMessage/clearData.html @@ -0,0 +1,118 @@ + + + + + + + + clearData method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearData
+ +
+ +
+
+
+
+
+ +

clearData method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+void +clearData() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+void clearData() => clearField(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/clearName.html b/docs/data/WrappedMessage/clearName.html new file mode 100644 index 0000000000..3fd0532663 --- /dev/null +++ b/docs/data/WrappedMessage/clearName.html @@ -0,0 +1,118 @@ + + + + + + + + clearName method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearName
+ +
+ +
+
+
+
+
+ +

clearName method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+void +clearName() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+void clearName() => clearField(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/clearTimestamp.html b/docs/data/WrappedMessage/clearTimestamp.html new file mode 100644 index 0000000000..1601094761 --- /dev/null +++ b/docs/data/WrappedMessage/clearTimestamp.html @@ -0,0 +1,118 @@ + + + + + + + + clearTimestamp method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearTimestamp
+ +
+ +
+
+
+
+
+ +

clearTimestamp method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+void +clearTimestamp() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+void clearTimestamp() => clearField(3);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/clone.html b/docs/data/WrappedMessage/clone.html new file mode 100644 index 0000000000..6ab9a0643c --- /dev/null +++ b/docs/data/WrappedMessage/clone.html @@ -0,0 +1,125 @@ + + + + + + + + clone method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clone
+ +
+ +
+
+
+
+
+ +

clone method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version')
  2. +
+
+WrappedMessage +clone() + +
override
+ +
+ +
+

Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.)

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
+'Will be removed in next major version')
+WrappedMessage clone() => WrappedMessage()..mergeFromMessage(this);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/copyWith.html b/docs/data/WrappedMessage/copyWith.html new file mode 100644 index 0000000000..a810b5a4a9 --- /dev/null +++ b/docs/data/WrappedMessage/copyWith.html @@ -0,0 +1,128 @@ + + + + + + + + copyWith method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
copyWith
+ +
+ +
+
+
+
+
+ +

copyWith method +

+ +
+ +
+
    +
  1. @Deprecated('Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version')
  2. +
+
+WrappedMessage +copyWith(
  1. void updates(
    1. WrappedMessage
    2. +
    )
  2. +
) + +
override
+ +
+ +
+

Apply updates to a copy of this message.

+

Makes a writable shallow copy of this message, applies the updates to +it, and marks the copy read-only before returning it.

+
+ + + +
+

Implementation

+
@$core.Deprecated(
+'Using this can add significant overhead to your binary. '
+'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
+'Will be removed in next major version')
+WrappedMessage copyWith(void Function(WrappedMessage) updates) => super.copyWith((message) => updates(message as WrappedMessage)) as WrappedMessage;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/create.html b/docs/data/WrappedMessage/create.html new file mode 100644 index 0000000000..8adb3e2eb6 --- /dev/null +++ b/docs/data/WrappedMessage/create.html @@ -0,0 +1,113 @@ + + + + + + + + create method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
create
+ +
+ +
+
+
+
+
+ +

create static method +

+ +
+ +WrappedMessage +create() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static WrappedMessage create() => WrappedMessage._();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/createEmptyInstance.html b/docs/data/WrappedMessage/createEmptyInstance.html new file mode 100644 index 0000000000..0d8336932e --- /dev/null +++ b/docs/data/WrappedMessage/createEmptyInstance.html @@ -0,0 +1,120 @@ + + + + + + + + createEmptyInstance method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createEmptyInstance
+ +
+ +
+
+
+
+
+ +

createEmptyInstance method +

+ +
+ +WrappedMessage +createEmptyInstance() + +
override
+ +
+ +
+

Creates an empty instance of the same message type as this.

+

This method is useful when you have a value of type GeneratedMessage or +T extends GeneratedMessage and you want a new empty message with the +same message type as the value. If you know the actual message type, it's +more direct to use the constructor, and this method creates the same +message as the message's constructor.

+
+ + + +
+

Implementation

+
WrappedMessage createEmptyInstance() => create();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/createRepeated.html b/docs/data/WrappedMessage/createRepeated.html new file mode 100644 index 0000000000..35c971fee4 --- /dev/null +++ b/docs/data/WrappedMessage/createRepeated.html @@ -0,0 +1,112 @@ + + + + + + + + createRepeated method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createRepeated
+ +
+ +
+
+
+
+
+ +

createRepeated static method +

+ +
+ +PbList<WrappedMessage> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<WrappedMessage> createRepeated() => $pb.PbList<WrappedMessage>();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/data.html b/docs/data/WrappedMessage/data.html new file mode 100644 index 0000000000..3db666996c --- /dev/null +++ b/docs/data/WrappedMessage/data.html @@ -0,0 +1,150 @@ + + + + + + + + data property - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
data
+ +
+ +
+
+
+
+
+ +

data property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ List<int> + get + data + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.List<$core.int> get data => $_getN(0);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ set + data + (List<int> v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(1)
+set data($core.List<$core.int> v) { $_setBytes(0, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/ensureTimestamp.html b/docs/data/WrappedMessage/ensureTimestamp.html new file mode 100644 index 0000000000..78f457a17e --- /dev/null +++ b/docs/data/WrappedMessage/ensureTimestamp.html @@ -0,0 +1,118 @@ + + + + + + + + ensureTimestamp method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ensureTimestamp
+ +
+ +
+
+
+
+
+ +

ensureTimestamp method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+Timestamp +ensureTimestamp() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$5.Timestamp ensureTimestamp() => $_ensure(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/getDefault.html b/docs/data/WrappedMessage/getDefault.html new file mode 100644 index 0000000000..aa8ffc469b --- /dev/null +++ b/docs/data/WrappedMessage/getDefault.html @@ -0,0 +1,113 @@ + + + + + + + + getDefault method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDefault
+ +
+ +
+
+
+
+
+ +

getDefault static method +

+ +
+ +WrappedMessage +getDefault() + + + +
+ + + + +
+

Implementation

+
@$core.pragma('dart2js:noInline')
+static WrappedMessage getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<WrappedMessage>(create);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/hasData.html b/docs/data/WrappedMessage/hasData.html new file mode 100644 index 0000000000..b194279609 --- /dev/null +++ b/docs/data/WrappedMessage/hasData.html @@ -0,0 +1,118 @@ + + + + + + + + hasData method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasData
+ +
+ +
+
+
+
+
+ +

hasData method +

+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+bool +hasData() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasData() => $_has(0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/hasName.html b/docs/data/WrappedMessage/hasName.html new file mode 100644 index 0000000000..54f9e09e67 --- /dev/null +++ b/docs/data/WrappedMessage/hasName.html @@ -0,0 +1,118 @@ + + + + + + + + hasName method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasName
+ +
+ +
+
+
+
+
+ +

hasName method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+bool +hasName() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasName() => $_has(1);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/hasTimestamp.html b/docs/data/WrappedMessage/hasTimestamp.html new file mode 100644 index 0000000000..f0e1f5d18e --- /dev/null +++ b/docs/data/WrappedMessage/hasTimestamp.html @@ -0,0 +1,118 @@ + + + + + + + + hasTimestamp method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasTimestamp
+ +
+ +
+
+
+
+
+ +

hasTimestamp method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+bool +hasTimestamp() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasTimestamp() => $_has(2);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/info_.html b/docs/data/WrappedMessage/info_.html new file mode 100644 index 0000000000..5aae2d54b4 --- /dev/null +++ b/docs/data/WrappedMessage/info_.html @@ -0,0 +1,118 @@ + + + + + + + + info_ property - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
info_
+ +
+ +
+
+
+
+
+ +

info_ property +

+ + + + + +
+
+ + BuilderInfo + get + info_ +
override
+ +
+ + + +
+

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/name.html b/docs/data/WrappedMessage/name.html new file mode 100644 index 0000000000..fda465f866 --- /dev/null +++ b/docs/data/WrappedMessage/name.html @@ -0,0 +1,150 @@ + + + + + + + + name property - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ String + get + name + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.String get name => $_getSZ(1);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ set + name + (String v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(2)
+set name($core.String v) { $_setString(1, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessage/timestamp.html b/docs/data/WrappedMessage/timestamp.html new file mode 100644 index 0000000000..1eafa92279 --- /dev/null +++ b/docs/data/WrappedMessage/timestamp.html @@ -0,0 +1,150 @@ + + + + + + + + timestamp property - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
timestamp
+ +
+ +
+
+
+
+
+ +

timestamp property +

+ + + + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ Timestamp + get + timestamp + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+$5.Timestamp get timestamp => $_getN(2);
+
+ +
+ + + +
+
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ set + timestamp + (Timestamp v) + + +
+ + + +
+

Implementation

+
@$pb.TagNumber(3)
+set timestamp($5.Timestamp v) { setField(3, v); }
+
+ +
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/WrappedMessageHandler.html b/docs/data/WrappedMessageHandler.html new file mode 100644 index 0000000000..f4e6b21df8 --- /dev/null +++ b/docs/data/WrappedMessageHandler.html @@ -0,0 +1,109 @@ + + + + + + + + WrappedMessageHandler typedef - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
WrappedMessageHandler
+ +
+ +
+
+
+
+
+ +

WrappedMessageHandler typedef + +

+
+ WrappedMessageHandler = + void Function(WrappedMessage) + +
+ + +
+

A callback to handle any WrappedMessage.

+
+ + +
+

Implementation

+
typedef WrappedMessageHandler = void Function(WrappedMessage);
+
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/co2-constant.html b/docs/data/co2-constant.html new file mode 100644 index 0000000000..86335c3dfc --- /dev/null +++ b/docs/data/co2-constant.html @@ -0,0 +1,117 @@ + + + + + + + + co2 constant - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
co2
+ +
+ +
+
+
+
+
+ +

co2 top-level constant + +

+ +
+ + ScienceSensor + const co2 + + +
+ +
+

The co2 sensor.

+
+ + +
+

Implementation

+
const co2 = ScienceSensor(
+	name: "CO2",
+	test: co2Test,
+	testDescription: "Max CO2 greater than 10% of Min CO2: Extant",
+);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/co2Test.html b/docs/data/co2Test.html new file mode 100644 index 0000000000..0cf827a232 --- /dev/null +++ b/docs/data/co2Test.html @@ -0,0 +1,117 @@ + + + + + + + + co2Test function - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
co2Test
+ +
+ +
+
+
+
+
+ +

co2Test function + +

+ +
+ +ScienceResult +co2Test(
  1. SampleData data
  2. +
) + + + +
+ +
+

The test to determine the presence of life based on CO2 data. +The max has to be greater than 10% greater than min for life to exist

+
+ + + +
+

Implementation

+
ScienceResult co2Test(SampleData data) => (data.max! >= (data.min! * 1.1))
+	? ScienceResult.extant : ScienceResult.notPresent;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/data-library-sidebar.html b/docs/data/data-library-sidebar.html new file mode 100644 index 0000000000..30bea24ee1 --- /dev/null +++ b/docs/data/data-library-sidebar.html @@ -0,0 +1,126 @@ +
    +
  1. Classes
  2. +
  3. ArmCommand
  4. +
  5. ArmData
  6. +
  7. ArmMetrics
  8. +
  9. ArmSettings
  10. +
  11. AutonomyCommand
  12. +
  13. AutonomyData
  14. +
  15. AutonomyState
  16. +
  17. AutonomyTask
  18. +
  19. BoolState
  20. +
  21. BurtLog
  22. +
  23. BurtLogLevel
  24. +
  25. CameraDetails
  26. +
  27. CameraName
  28. +
  29. CameraStatus
  30. +
  31. CarouselCommand
  32. +
  33. Connect
  34. +
  35. Coordinates
  36. +
  37. DashboardSettings
  38. +
  39. Device
  40. +
  41. Disconnect
  42. +
  43. DriveCommand
  44. +
  45. DriveData
  46. +
  47. DriveMetrics
  48. +
  49. EasterEggsSettings
  50. +
  51. GpsCoordinates
  52. +
  53. GripperCommand
  54. +
  55. GripperData
  56. +
  57. GripperMetrics
  58. +
  59. MarsCommand
  60. +
  61. MarsData
  62. +
  63. MarsStatus
  64. +
  65. MetricLine
  66. +
  67. Metrics
  68. +
  69. MotorCommand
  70. +
  71. MotorData
  72. +
  73. MotorDirection
  74. +
  75. NetworkSettings
  76. +
  77. Orientation
  78. +
  79. PositionMetrics
  80. +
  81. ProtoColor
  82. +
  83. PumpState
  84. +
  85. RoverPosition
  86. +
  87. RoverStatus
  88. +
  89. SampleData
  90. +
  91. ScienceCommand
  92. +
  93. ScienceData
  94. +
  95. ScienceMetrics
  96. +
  97. ScienceSensor
  98. +
  99. ScienceSettings
  100. +
  101. ScienceState
  102. +
  103. SensorReading
  104. +
  105. ServoState
  106. +
  107. Settings
  108. +
  109. SocketInfo
  110. +
  111. TaskbarMessage
  112. +
  113. Timestamp
  114. +
  115. UpdateSetting
  116. +
  117. Version
  118. +
  119. VideoCommand
  120. +
  121. VideoData
  122. +
  123. VitalsMetrics
  124. +
  125. WrappedMessage
  126. + +
  127. Enums
  128. +
  129. OperatingMode
  130. +
  131. RoverType
  132. +
  133. ScienceResult
  134. +
  135. Severity
  136. +
  137. SplitMode
  138. + + + +
  139. Constants
  140. +
  141. co2
  142. +
  143. humidity
  144. +
  145. sensors
  146. +
  147. temperature
  148. + + +
  149. Functions
  150. +
  151. co2Test
  152. +
  153. getCommandName
  154. +
  155. getDataName
  156. +
  157. humidityTest
  158. +
  159. temperatureTest
  160. + +
  161. Typedefs
  162. +
  163. Json
  164. +
  165. Message
  166. +
  167. MessageDecoder
  168. +
  169. MessageHandler
  170. +
  171. RawDataHandler
  172. +
  173. ScienceTest
  174. +
  175. WrappedMessageHandler
  176. + + +
  177. Extensions
  178. +
  179. AutonomyStateUtils
  180. +
  181. AutonomyTaskUtils
  182. +
  183. BoolUtils
  184. +
  185. CameraNameUtils
  186. +
  187. CameraStatusUtils
  188. +
  189. CoordinatesUtils
  190. +
  191. DateTimeTimestamp
  192. +
  193. DeviceUtils
  194. +
  195. GeneratedMessageGenericExtensions
  196. +
  197. GpsUtils
  198. +
  199. LimitedList
  200. +
  201. LogFormat
  202. +
  203. LogLevelUtils
  204. +
  205. MapRecords
  206. +
  207. MessageUtils
  208. +
  209. MotorDirectionUtils
  210. +
  211. NumUtils
  212. +
  213. RoverStatusHumanName
  214. +
  215. ScienceStateUtils
  216. +
  217. SettingsParser
  218. +
  219. ThemeModeUtils
  220. +
  221. TimestampUtils
  222. +
  223. UndefinedFilter
  224. +
  225. Unwrapper
  226. +
  227. VersionUtils
  228. +
  229. VideoDataUtils
  230. +
diff --git a/docs/data/data-library.html b/docs/data/data-library.html new file mode 100644 index 0000000000..4c0a4bfb92 --- /dev/null +++ b/docs/data/data-library.html @@ -0,0 +1,1181 @@ + + + + + + + + data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
data
+ +
+ +
+
+
+
+ +
+ + + +

+ data + library + + +

+
+ + +
+

The data library.

+

This library defines any data types needed by the rest of the app. While the data classes may +have methods, the logic within should be simple, and any broad logic that changes state should +happen in the models library.

+

This library should be the bottom of the dependency graph, meaning that no file included in this +library should import any other library.

+
+ + +
+

Classes

+
+
+ ArmCommand + +
+
+ +
+ +
+ ArmData + +
+
+ +
+ +
+ ArmMetrics + +
+
+ Metrics reported by the HREI subsystem about the arm. Does not include the gripper. +
+ +
+ ArmSettings + +
+
+ Settings relating to the arm. +
+ +
+ AutonomyCommand + +
+
+ +
+ +
+ AutonomyData + +
+
+ +
+ +
+ AutonomyState + +
+
+ +
+ +
+ AutonomyTask + +
+
+ +
+ +
+ BoolState + +
+
+ +
+ +
+ BurtLog + +
+
+ +
+ +
+ BurtLogLevel + +
+
+ +
+ +
+ CameraDetails + +
+
+ / Details about a specific camera. +
+ +
+ CameraName + +
+
+ +
+ +
+ CameraStatus + +
+
+ +
+ +
+ CarouselCommand + +
+
+ / A command for the carousel and funnel to follow. +
+ +
+ Connect + +
+
+ Used for a simple handshake between devices. +
+ +
+ Coordinates + +
+
+ +
+ +
+ DashboardSettings + +
+
+ Settings related to the dashboard itself, not the rover. +
+ +
+ Device + +
+
+ +
+ +
+ Disconnect + +
+
+ Notifies the recipient that the sender will no longer be connected. +
+ +
+ DriveCommand + +
+
+ +
+ +
+ DriveData + +
+
+ +
+ +
+ DriveMetrics + +
+
+ Metrics reported by the drive subsystem. +
+ +
+ EasterEggsSettings + +
+
+ Settings relating to easter eggs. +
+ +
+ GpsCoordinates + +
+
+ +
+ +
+ GripperCommand + +
+
+ +
+ +
+ GripperData + +
+
+ +
+ +
+ GripperMetrics + +
+
+ Metrics about the gripper on the HREI subsystem. +
+ +
+ MarsCommand + +
+
+ +
+ +
+ MarsData + +
+
+ +
+ +
+ MarsStatus + +
+
+ +
+ +
+ MetricLine + +
+
+ Class to construct a Metric +
+ +
+ Metrics<T extends Message> + +
+
+ A readout of metrics reported by one of the rover's subsystems. +
+ +
+ MotorCommand + +
+
+ +
+ +
+ MotorData + +
+
+ +
+ +
+ MotorDirection + +
+
+ +
+ +
+ NetworkSettings + +
+
+ Settings related to network configuration. +
+ +
+ Orientation + +
+
+ +
+ +
+ PositionMetrics + +
+
+ Metrics about the rover's position and orientation. +
+ +
+ ProtoColor + +
+
+ +
+ +
+ PumpState + +
+
+ / The state of a pump. If undefined: don't do anything. If fill: turn on, wait, then turn off. +
+ +
+ RoverPosition + +
+
+ +
+ +
+ RoverStatus + +
+
+ / Changes the way the rover listens to incoming commands. +/ +/ - When IDLE, all subsystems will ignore all commands +/ - When MANUAL, all subsystems will accept all commands +/ - When AUTONOMOUS, the rover will ignore commands from the dashboard +
+ +
+ SampleData + +
+
+ Stores all the readings of one sensor for one sample. +
+ +
+ ScienceCommand + +
+
+ / A command to the science subsystem. +
+ +
+ ScienceData + +
+
+ / Data coming from the science subsystem. +
+ +
+ ScienceMetrics + +
+
+ Metrics reported by the science subsystem. +
+ +
+ ScienceSensor + +
+
+ A sensor in the science subsystem. +
+ +
+ ScienceSettings + +
+
+ Settings relating to science. +
+ +
+ ScienceState + +
+
+ / The state of the science subsystem. If not COLLECT_DATA, don't stream data at all. +
+ +
+ SensorReading + +
+
+ A sensor reading with a timestamp. +
+ +
+ ServoState + +
+
+ / The state of a servo. If undefined, don't open or close. +
+ +
+ Settings + +
+
+ Contains the settings for running the dashboard and the rover. +
+ +
+ SocketInfo + +
+
+ Information about a socket. +
+ +
+ TaskbarMessage + +
+
+ A message to show on the taskbar, with an associated severity. +
+ +
+ Timestamp + +
+
+ A Timestamp represents a point in time independent of any time zone or local +calendar, encoded as a count of seconds and fractions of seconds at +nanosecond resolution. The count is relative to an epoch at UTC midnight on +January 1, 1970, in the proleptic Gregorian calendar which extends the +Gregorian calendar backwards to year one. +
+ +
+ UpdateSetting + +
+
+ / Update a sensitive setting, such as the rover's status. +/ +/ This message must be triggered manually and the recipient (usually the subsystems Pi) +/ must respond with the exact same message to confirm its receipt. +
+ +
+ Version + +
+
+ +
+ +
+ VideoCommand + +
+
+ / Make changes to a camera feed. +
+ +
+ VideoData + +
+
+ / Reports data about a camera. +
+ +
+ VitalsMetrics + +
+
+ Metrics about the vitals of the rover. +
+ +
+ WrappedMessage + +
+
+ +
+ +
+
+ +
+

Enums

+
+
+ OperatingMode + +
+
+ A mode for operating the rover. +
+ +
+ RoverType + +
+
+ Which rover-like system to communicate with. +
+ +
+ ScienceResult + +
+
+ The result of a science test. +
+ +
+ Severity + +
+
+ The level of danger a message represents. +
+ +
+ SplitMode + +
+
+ Controls the way the Dashboard views split. +
+ +
+
+ + + +
+

Extensions

+
+
+ AutonomyStateUtils + on AutonomyState + + +
+
+ Utilities for AutonomyStates. +
+ +
+ AutonomyTaskUtils + on AutonomyTask + + +
+
+ Utilities for AutonomyTasks. +
+ +
+ BoolUtils + on BoolState + + +
+
+ Helpful methods on BoolStates. +
+ +
+ CameraNameUtils + on CameraName + + +
+
+ Extensions for CameraName values. +
+ +
+ CameraStatusUtils + on CameraStatus + + +
+
+ Extensions for CameraStatus values. +
+ +
+ CoordinatesUtils + on Coordinates + + +
+
+ Extensions for Coordinates messages. +
+ +
+ DateTimeTimestamp + on DateTime + + +
+
+ Helpful extensions on DateTimes. +
+ +
+ DeviceUtils + on Device + + +
+
+ Extensions for Device values. +
+ +
+ GeneratedMessageGenericExtensions + on T + + +
+
+ Extensions on GeneratedMessages. +
+ +
+ GpsUtils + on GpsCoordinates + + +
+
+ Utilities for Gps Coordinates Data +
+ +
+ LimitedList + on DoubleLinkedQueue<E> + + +
+
+ A list that can manage its own length. +
+ +
+ LogFormat + on BurtLog + + +
+
+ Formats BurtLog messages in plain-text. For the UI, use widgets. +
+ +
+ LogLevelUtils + on BurtLogLevel + + +
+
+ More human-friendly fields for BurtLogLevels. +
+ +
+ MapRecords + on Map<K, V> + + +
+
+ Helpful extensions on maps. +
+ +
+ MessageUtils + on Message + + +
+
+ Defines a friendlier method for getting the name of a message. +
+ +
+ MotorDirectionUtils + on MotorDirection + + +
+
+ Utilities for MotorDirections. +
+ +
+ NumUtils + on double + + +
+
+ Helpful utils on doubles. +
+ +
+ RoverStatusHumanName + on RoverStatus + + +
+
+ Gets a user-friendly name for a RoverStatus. +
+ +
+ ScienceStateUtils + on ScienceState + + +
+
+ Utilities for ScienceStates. +
+ +
+ SettingsParser + on Json + + +
+
+ A collection of functions for parsing Settings. +
+ +
+ ThemeModeUtils + on ThemeMode + + +
+
+ Helpful methods on ThemeModes. +
+ +
+ TimestampUtils + on Timestamp + + +
+
+ Utilities for Timestamps. +
+ +
+ UndefinedFilter + on List<T> + + +
+
+ Utilities for a list of Protobuf enums. +
+ +
+ Unwrapper + on WrappedMessage + + +
+
+ Decodes a wrapped Protobuf message. +
+ +
+ VersionUtils + on Version + + +
+
+ Helpful methods on Versions. +
+ +
+ VideoDataUtils + on VideoData + + +
+
+ Extensions for VideoData. +
+ +
+
+ +
+

Constants

+
+
+ co2 + → const ScienceSensor + + +
+
+ The co2 sensor. + + +
+ +
+ humidity + → const ScienceSensor + + +
+
+ The humidity sensor. + + +
+ +
+ sensors + → const List<ScienceSensor> + + +
+
+ A list of all the sensors on the Science subsystem. + + +
+ +
+ temperature + → const ScienceSensor + + +
+
+ The temperature sensor. + + +
+ +
+
+ + +
+

Functions

+
+
+ co2Test(SampleData data) + ScienceResult + + + +
+
+ The test to determine the presence of life based on CO2 data. +The max has to be greater than 10% greater than min for life to exist + + +
+ +
+ getCommandName(Device device) + → String + + + +
+
+ Gets the name of the command message for the given device. + + +
+ +
+ getDataName(Device device) + → String + + + +
+
+ Gets the name of the data message for the given device. + + +
+ +
+ humidityTest(SampleData data) + ScienceResult + + + +
+
+ The test to determine the presence of life based on humidity data. + + +
+ +
+ temperatureTest(SampleData data) + ScienceResult + + + +
+
+ The test to determine the presence of life based on temperature data. + + +
+ +
+
+ +
+

Typedefs

+
+ +
+ Json + = Map<String, dynamic> + + + +
+
+ JSON data as a map. + + +
+ + + +
+ Message + = GeneratedMessage + + + +
+
+ A cleaner name for any message generated by Protobuf. + + +
+ + + +
+ MessageDecoder<T extends Message> + = T Function(List<int> data) + + + +
+
+ A function that decodes a Protobuf messages serialized form. + + +
+ + +
+ MessageHandler<T extends Message> + = void Function(T) + + + +
+
+ A callback to execute with a specific serialized Protobuf message. + + +
+ + +
+ RawDataHandler + = void Function(List<int> data) + + + +
+
+ A callback to execute with raw Protobuf data. + + +
+ + +
+ ScienceTest + = ScienceResult Function(SampleData) + + + +
+
+ A function that determines the presence of life based on sensor data. + + +
+ + +
+ WrappedMessageHandler + = void Function(WrappedMessage) + + + +
+
+ A callback to handle any WrappedMessage. + + +
+ +
+
+ +
+ + +
+ + + + + + + + + diff --git a/docs/data/getCommandName.html b/docs/data/getCommandName.html new file mode 100644 index 0000000000..de96972b44 --- /dev/null +++ b/docs/data/getCommandName.html @@ -0,0 +1,121 @@ + + + + + + + + getCommandName function - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getCommandName
+ +
+ +
+
+
+
+
+ +

getCommandName function + +

+ +
+ +String +getCommandName(
  1. Device device
  2. +
) + + + +
+ +
+

Gets the name of the command message for the given device.

+
+ + + +
+

Implementation

+
String getCommandName(Device device) => switch (device) {
+	Device.ARM => "ArmCommand",
+	Device.GRIPPER => "GripperCommand",
+	Device.SCIENCE => "ScienceCommand",
+	Device.DRIVE => "DriveCommand",
+	_ => "Unknown",
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/getDataName.html b/docs/data/getDataName.html new file mode 100644 index 0000000000..6d03e4a946 --- /dev/null +++ b/docs/data/getDataName.html @@ -0,0 +1,121 @@ + + + + + + + + getDataName function - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDataName
+ +
+ +
+
+
+
+
+ +

getDataName function + +

+ +
+ +String +getDataName(
  1. Device device
  2. +
) + + + +
+ +
+

Gets the name of the data message for the given device.

+
+ + + +
+

Implementation

+
String getDataName(Device device) => switch (device) {
+	Device.ARM => "ArmData",
+	Device.GRIPPER => "GripperData",
+	Device.SCIENCE => "ScienceData",
+	Device.DRIVE => "DriveData",
+	_ => "Unknown",
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/humidity-constant.html b/docs/data/humidity-constant.html new file mode 100644 index 0000000000..8092775f2d --- /dev/null +++ b/docs/data/humidity-constant.html @@ -0,0 +1,117 @@ + + + + + + + + humidity constant - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humidity
+ +
+ +
+
+
+
+
+ +

humidity top-level constant + +

+ +
+ + ScienceSensor + const humidity + + +
+ +
+

The humidity sensor.

+
+ + +
+

Implementation

+
const humidity = ScienceSensor(
+	name: "Humidity",
+	test: humidityTest,
+	testDescription: "Average above 20%: Extant",
+);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/humidityTest.html b/docs/data/humidityTest.html new file mode 100644 index 0000000000..d5f9b360f8 --- /dev/null +++ b/docs/data/humidityTest.html @@ -0,0 +1,116 @@ + + + + + + + + humidityTest function - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humidityTest
+ +
+ +
+
+
+
+
+ +

humidityTest function + +

+ +
+ +ScienceResult +humidityTest(
  1. SampleData data
  2. +
) + + + +
+ +
+

The test to determine the presence of life based on humidity data.

+
+ + + +
+

Implementation

+
ScienceResult humidityTest(SampleData data) => (data.average! > 20)
+	? ScienceResult.extant : ScienceResult.notPresent;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/data/sensors-constant.html b/docs/data/sensors-constant.html new file mode 100644 index 0000000000..e123ed0797 --- /dev/null +++ b/docs/data/sensors-constant.html @@ -0,0 +1,113 @@ + + + + + + + + sensors constant - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sensors
+ +
+ +
+
+
+
+
+ +

sensors top-level constant + +

+ +
+ + List<ScienceSensor> + const sensors + + +
+ +
+

A list of all the sensors on the Science subsystem.

+
+ + +
+

Implementation

+
const sensors = [temperature, humidity, co2];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/temperature-constant.html b/docs/data/temperature-constant.html new file mode 100644 index 0000000000..33a3bc3769 --- /dev/null +++ b/docs/data/temperature-constant.html @@ -0,0 +1,117 @@ + + + + + + + + temperature constant - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
temperature
+ +
+ +
+
+
+
+
+ +

temperature top-level constant + +

+ +
+ + ScienceSensor + const temperature + + +
+ +
+

The temperature sensor.

+
+ + +
+

Implementation

+
const temperature = ScienceSensor(
+	name: "Temperature",
+	test: temperatureTest,
+	testDescription: "Average between -15°C and 122°C: Extinct",
+);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/data/temperatureTest.html b/docs/data/temperatureTest.html new file mode 100644 index 0000000000..cf42e10ef7 --- /dev/null +++ b/docs/data/temperatureTest.html @@ -0,0 +1,116 @@ + + + + + + + + temperatureTest function - data library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
temperatureTest
+ +
+ +
+
+
+
+
+ +

temperatureTest function + +

+ +
+ +ScienceResult +temperatureTest(
  1. SampleData data
  2. +
) + + + +
+ +
+

The test to determine the presence of life based on temperature data.

+
+ + + +
+

Implementation

+
ScienceResult temperatureTest(SampleData data) => (data.average! > -15 && data.average! < 122)
+	? ScienceResult.extant : ScienceResult.notPresent;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/errors/DashboardException-class-sidebar.html b/docs/errors/DashboardException-class-sidebar.html new file mode 100644 index 0000000000..f617ac4b7f --- /dev/null +++ b/docs/errors/DashboardException-class-sidebar.html @@ -0,0 +1,26 @@ +
    + +
  1. Constructors
  2. +
  3. DashboardException
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + + +
diff --git a/docs/errors/DashboardException-class.html b/docs/errors/DashboardException-class.html new file mode 100644 index 0000000000..6f8fb9cabe --- /dev/null +++ b/docs/errors/DashboardException-class.html @@ -0,0 +1,232 @@ + + + + + + + + DashboardException class - errors library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DashboardException
+ +
+ +
+
+
+
+
+ +

DashboardException class + +

+ + +
+

The base class for all exceptions thrown by the dashboard.

+

When handling errors, you can either catch a specific class of errors or all errors at once. +If you know which error or exception to expect, that works, but catching all errors could +hide important ones that are meant to be fixed. This class defines the parent class of all +exceptions the dashboard would throw on its own, which means higher-level functions can use +this class to catch them and indicate an operation failed.

+

Exceptions are different than errors. An error indicates faulty code, while an exception means +the underlying cause can be addressed even if it requires human intervention. All error cases +that need to be caught and handled -- even if that means simply alerting the user -- should +therefore be exceptions. For more information, see Exception vs Error.

+

When creating your own exception, be sure to override toString with a helpful message.

+
+ + +
+
+ + + + + +
Implementers
+
+ + + + + +
+
+ + +
+

Constructors

+
+
+ DashboardException() +
+
+ Provides a const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/errors/DashboardException/DashboardException.html b/docs/errors/DashboardException/DashboardException.html new file mode 100644 index 0000000000..a39211fbe0 --- /dev/null +++ b/docs/errors/DashboardException/DashboardException.html @@ -0,0 +1,111 @@ + + + + + + + + DashboardException constructor - DashboardException - errors library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DashboardException
+ +
+ +
+
+
+
+
+ +

DashboardException constructor +

+ +
+ const + DashboardException() +
+ +
+

Provides a const constructor.

+
+ + + +
+

Implementation

+
const DashboardException();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/errors/DashboardException/hashCode.html b/docs/errors/DashboardException/hashCode.html new file mode 100644 index 0000000000..e87e06f398 --- /dev/null +++ b/docs/errors/DashboardException/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - DashboardException class - errors library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/errors/DashboardException/noSuchMethod.html b/docs/errors/DashboardException/noSuchMethod.html new file mode 100644 index 0000000000..365ba71e63 --- /dev/null +++ b/docs/errors/DashboardException/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - DashboardException class - errors library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/errors/DashboardException/operator_equals.html b/docs/errors/DashboardException/operator_equals.html new file mode 100644 index 0000000000..5f7873b33d --- /dev/null +++ b/docs/errors/DashboardException/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - DashboardException class - errors library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/errors/DashboardException/runtimeType.html b/docs/errors/DashboardException/runtimeType.html new file mode 100644 index 0000000000..884c650553 --- /dev/null +++ b/docs/errors/DashboardException/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - DashboardException class - errors library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/errors/DashboardException/toString.html b/docs/errors/DashboardException/toString.html new file mode 100644 index 0000000000..93f69b4733 --- /dev/null +++ b/docs/errors/DashboardException/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - DashboardException class - errors library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/errors/errors-library-sidebar.html b/docs/errors/errors-library-sidebar.html new file mode 100644 index 0000000000..dcc3775d20 --- /dev/null +++ b/docs/errors/errors-library-sidebar.html @@ -0,0 +1,13 @@ +
    + + + + + + + + +
  1. Exceptions
  2. +
  3. DashboardException
  4. + +
diff --git a/docs/errors/errors-library.html b/docs/errors/errors-library.html new file mode 100644 index 0000000000..91317fd7cc --- /dev/null +++ b/docs/errors/errors-library.html @@ -0,0 +1,135 @@ + + + + + + + + errors library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
errors
+ +
+ +
+
+
+
+ +
+ + + +

+ errors + library + + +

+
+ + + + + + + + + + + + + +
+

Exceptions / Errors

+
+
+ DashboardException + +
+
+ The base class for all exceptions thrown by the dashboard. +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000000..cb43032bca --- /dev/null +++ b/docs/index.html @@ -0,0 +1,204 @@ + + + + + + + + rover_dashboard - Dart API docs + + + + + + + + + + + + + + +
+
+ menu + +
rover_dashboard
+ +
+ +
+
+
+
+ +
+

The Dashboard

+

The Rover Control Dashboard is a graphical desktop application the Binghamton University Rover Team will use to operate and monitor the rover. It is a vital part of our remote command station.

+

Structure

+

Every folder in this project has a purpose, but you’ll mostly need the lib folder.

+
    +
  • .github: Contains GitHub specific files, like Actions workflow files
  • +
  • lib: Contains all the cross-platform Flutter code for the front and back ends
  • +
  • linux: Contains Linux-specific code generated by flutter create
  • +
  • macos: Contains Mac-specific code generated by flutter create
  • +
  • test: Contains unit and integration tests for the project
  • +
  • windows: Contains Windows-specific code generated by flutter create
  • +
+

It’s worth noting that the platform-specific directories do not contain the compiled executables. Those would be under the build directory, which is in the .gitignore file. These directories simply hold platform-specific configuration that was automatically generated by the flutter create command and may have since been customized by us.

+

lib is the main entry point for the project – flutter run really just runs lib/main.dart. The interesting code is in five libraries organized under lib/src.

+
    +
  • data: Defines data classes needed for the app. See lib/data.dart
  • +
  • services: Defines and manages out-of-app resources. See lib/services.dart
  • +
  • models: Hosts app-wide logic involving data models and services. See lib/models.dart
  • +
  • widgets: Defines small chunks of UI across the app. See lib/widgets
  • +
  • pages: Hosts UI code for individual pages, made of widgets. See lib/pages.dart
  • +
+

As explained in the files listed above, these libraries are organized hierarchically, starting with data and ending with pages (and ultimately being imported by main.dart). Each library can only import libraries before it to avoid cyclic dependencies. Each library can get quite complex and contain several smaller libraries – this is only the high-level overview of the project’s structure.

+

A Dart library is technically just a file. To add more complexity, classes and functions are split into other files, and they are all collected into one main file that exports them all. For example, all the data classes are under lib/src/data, but you can import them by importing from lib/data.dart (using a package import: import package:rover_control_dashboard/data.dart). Specific documentation on individual libraries can be found in their corresponding library file.

+

Compiling

+

Note that while Flutter technically supports multiple platforms, we focus our development on Windows. Compiling and launching on Mac or Linux is a plus though, as it lets us work on UI and other non-critical features.

+

To run a debug build, run the appropriate command for your computer:

+
flutter run -d windows
+flutter run -d linux
+flutter run -d macos
+
+

To compile a release build, run the appropriate command for your computer:

+
flutter build windows
+flutter build linux
+flutter build macos
+
+

Note that Flutter's compiler is not cross-platform, which means you can only output executables for the platform you compile on. The location of the executable differs by platform:

+
    +
  • Windows: build\windows\runner\Release
  • +
  • Linux: build/linux/x64/release/bundle
  • +
  • Mac: build/linux/x64/release/bundle
  • +
+

To analyze your code, run:

+
flutter analyze --dartdocs
+
+

This ensures that your code passes all the lint options defined in analysis_options.yaml.

+

Dependencies

+

Dependencies are managed in pubspec.yaml and refer to packages and plugins on https://pub.dev. Follow instructions there for adding packages to the project. When running any of the above compilation commands, Dart may detect updated dependencies and try to update them for you. When this happens, Git will indicate that pubspec.lock has changed.

+

While this is nice, we can avoid dependency-caused issues by ensuring we’re all using the same versions – that’s what pubspec.lock is for. Instead of giving a minimum version of a specific dependency, it lists the exact version for all dependencies, both our own dependencies and dependencies of our dependencies. Changes to this file should be tracked by version control. Practically, it is cumbersome to open a pull request virtually every time you compile your code. Instead, only submit your updated pubspec.lock as part of your other changes, which indicates that the new dependencies have been tested along with your changes.

+
+ + +
+

Libraries

+
+
+ app + +
+
Defines any global app configuration. +
+ +
+ data + +
+
The data library. +
+ +
+ errors + +
+
+
+ +
+ main + +
+
The entrypoint of the app. +
+ +
+ models + +
+
A library that manages and controls the state of the app. +
+ +
+ pages + +
+
Contains the high-level UI code that defines each page. +
+ +
+ services + +
+
Defines handler classes for out-of-app resources. +
+ +
+ widgets + +
+
Contains complex or reusable widgets. +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/index.json b/docs/index.json new file mode 100644 index 0000000000..e9b39f8db3 --- /dev/null +++ b/docs/index.json @@ -0,0 +1 @@ +[{"name":"app","qualifiedName":"app","href":"app/app-library.html","kind":9,"overriddenDepth":0,"packageRank":0,"desc":"Defines any global app configuration."},{"name":"RoverControlDashboard","qualifiedName":"app.RoverControlDashboard","href":"app/RoverControlDashboard-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The main class for the app.","enclosedBy":{"name":"app","kind":9,"href":"app/app-library.html"}},{"name":"RoverControlDashboard","qualifiedName":"app.RoverControlDashboard.RoverControlDashboard","href":"app/RoverControlDashboard/RoverControlDashboard.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates the main app.","enclosedBy":{"name":"RoverControlDashboard","kind":3,"href":"app/RoverControlDashboard-class.html"}},{"name":"build","qualifiedName":"app.RoverControlDashboard.build","href":"app/RoverControlDashboard/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"RoverControlDashboard","kind":3,"href":"app/RoverControlDashboard-class.html"}},{"name":"binghamtonGreen","qualifiedName":"app.binghamtonGreen","href":"app/binghamtonGreen-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The classic Binghamton green.","enclosedBy":{"name":"app","kind":9,"href":"app/app-library.html"}},{"name":"data","qualifiedName":"data","href":"data/data-library.html","kind":9,"overriddenDepth":0,"packageRank":0,"desc":"The data library."},{"name":"ArmCommand","qualifiedName":"data.ArmCommand","href":"data/ArmCommand-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"arm.pb","kind":9,"href":"data/data-library.html"}},{"name":"ArmCommand","qualifiedName":"data.ArmCommand.ArmCommand","href":"data/ArmCommand/ArmCommand.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"ArmCommand.fromBuffer","qualifiedName":"data.ArmCommand.ArmCommand.fromBuffer","href":"data/ArmCommand/ArmCommand.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"ArmCommand.fromJson","qualifiedName":"data.ArmCommand.ArmCommand.fromJson","href":"data/ArmCommand/ArmCommand.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"calibrate","qualifiedName":"data.ArmCommand.calibrate","href":"data/ArmCommand/calibrate.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clearCalibrate","qualifiedName":"data.ArmCommand.clearCalibrate","href":"data/ArmCommand/clearCalibrate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clearElbow","qualifiedName":"data.ArmCommand.clearElbow","href":"data/ArmCommand/clearElbow.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clearGripperLift","qualifiedName":"data.ArmCommand.clearGripperLift","href":"data/ArmCommand/clearGripperLift.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clearIkX","qualifiedName":"data.ArmCommand.clearIkX","href":"data/ArmCommand/clearIkX.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clearIkY","qualifiedName":"data.ArmCommand.clearIkY","href":"data/ArmCommand/clearIkY.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clearIkZ","qualifiedName":"data.ArmCommand.clearIkZ","href":"data/ArmCommand/clearIkZ.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clearJab","qualifiedName":"data.ArmCommand.clearJab","href":"data/ArmCommand/clearJab.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clearShoulder","qualifiedName":"data.ArmCommand.clearShoulder","href":"data/ArmCommand/clearShoulder.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clearStop","qualifiedName":"data.ArmCommand.clearStop","href":"data/ArmCommand/clearStop.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clearSwivel","qualifiedName":"data.ArmCommand.clearSwivel","href":"data/ArmCommand/clearSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clearVersion","qualifiedName":"data.ArmCommand.clearVersion","href":"data/ArmCommand/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"clone","qualifiedName":"data.ArmCommand.clone","href":"data/ArmCommand/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"copyWith","qualifiedName":"data.ArmCommand.copyWith","href":"data/ArmCommand/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"create","qualifiedName":"data.ArmCommand.create","href":"data/ArmCommand/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.ArmCommand.createEmptyInstance","href":"data/ArmCommand/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"createRepeated","qualifiedName":"data.ArmCommand.createRepeated","href":"data/ArmCommand/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"elbow","qualifiedName":"data.ArmCommand.elbow","href":"data/ArmCommand/elbow.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"ensureElbow","qualifiedName":"data.ArmCommand.ensureElbow","href":"data/ArmCommand/ensureElbow.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"ensureGripperLift","qualifiedName":"data.ArmCommand.ensureGripperLift","href":"data/ArmCommand/ensureGripperLift.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"ensureShoulder","qualifiedName":"data.ArmCommand.ensureShoulder","href":"data/ArmCommand/ensureShoulder.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"ensureSwivel","qualifiedName":"data.ArmCommand.ensureSwivel","href":"data/ArmCommand/ensureSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"ensureVersion","qualifiedName":"data.ArmCommand.ensureVersion","href":"data/ArmCommand/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"getDefault","qualifiedName":"data.ArmCommand.getDefault","href":"data/ArmCommand/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"gripperLift","qualifiedName":"data.ArmCommand.gripperLift","href":"data/ArmCommand/gripperLift.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Needed for IK: If the wrist-lift moves, we need to re-calculate IK to keep the end-effector\nstationary. See /Arm/src/ik/README.md in the Arm-Firmware repository.","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"hasCalibrate","qualifiedName":"data.ArmCommand.hasCalibrate","href":"data/ArmCommand/hasCalibrate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"hasElbow","qualifiedName":"data.ArmCommand.hasElbow","href":"data/ArmCommand/hasElbow.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"hasGripperLift","qualifiedName":"data.ArmCommand.hasGripperLift","href":"data/ArmCommand/hasGripperLift.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"hasIkX","qualifiedName":"data.ArmCommand.hasIkX","href":"data/ArmCommand/hasIkX.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"hasIkY","qualifiedName":"data.ArmCommand.hasIkY","href":"data/ArmCommand/hasIkY.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"hasIkZ","qualifiedName":"data.ArmCommand.hasIkZ","href":"data/ArmCommand/hasIkZ.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"hasJab","qualifiedName":"data.ArmCommand.hasJab","href":"data/ArmCommand/hasJab.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"hasShoulder","qualifiedName":"data.ArmCommand.hasShoulder","href":"data/ArmCommand/hasShoulder.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"hasStop","qualifiedName":"data.ArmCommand.hasStop","href":"data/ArmCommand/hasStop.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"hasSwivel","qualifiedName":"data.ArmCommand.hasSwivel","href":"data/ArmCommand/hasSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"hasVersion","qualifiedName":"data.ArmCommand.hasVersion","href":"data/ArmCommand/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"ikX","qualifiedName":"data.ArmCommand.ikX","href":"data/ArmCommand/ikX.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Can be removed in future versions","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"ikY","qualifiedName":"data.ArmCommand.ikY","href":"data/ArmCommand/ikY.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"ikZ","qualifiedName":"data.ArmCommand.ikZ","href":"data/ArmCommand/ikZ.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"info_","qualifiedName":"data.ArmCommand.info_","href":"data/ArmCommand/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"jab","qualifiedName":"data.ArmCommand.jab","href":"data/ArmCommand/jab.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Custom actions","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"shoulder","qualifiedName":"data.ArmCommand.shoulder","href":"data/ArmCommand/shoulder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"stop","qualifiedName":"data.ArmCommand.stop","href":"data/ArmCommand/stop.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"General commands","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"swivel","qualifiedName":"data.ArmCommand.swivel","href":"data/ArmCommand/swivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Move individual motors","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"version","qualifiedName":"data.ArmCommand.version","href":"data/ArmCommand/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmCommand","kind":3,"href":"data/ArmCommand-class.html"}},{"name":"ArmData","qualifiedName":"data.ArmData","href":"data/ArmData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"arm.pb","kind":9,"href":"data/data-library.html"}},{"name":"ArmData","qualifiedName":"data.ArmData.ArmData","href":"data/ArmData/ArmData.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"ArmData.fromBuffer","qualifiedName":"data.ArmData.ArmData.fromBuffer","href":"data/ArmData/ArmData.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"ArmData.fromJson","qualifiedName":"data.ArmData.ArmData.fromJson","href":"data/ArmData/ArmData.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"base","qualifiedName":"data.ArmData.base","href":"data/ArmData/base.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"clearBase","qualifiedName":"data.ArmData.clearBase","href":"data/ArmData/clearBase.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"clearCurrentPosition","qualifiedName":"data.ArmData.clearCurrentPosition","href":"data/ArmData/clearCurrentPosition.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"clearElbow","qualifiedName":"data.ArmData.clearElbow","href":"data/ArmData/clearElbow.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"clearShoulder","qualifiedName":"data.ArmData.clearShoulder","href":"data/ArmData/clearShoulder.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"clearTargetPosition","qualifiedName":"data.ArmData.clearTargetPosition","href":"data/ArmData/clearTargetPosition.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"clearVersion","qualifiedName":"data.ArmData.clearVersion","href":"data/ArmData/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"clone","qualifiedName":"data.ArmData.clone","href":"data/ArmData/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"copyWith","qualifiedName":"data.ArmData.copyWith","href":"data/ArmData/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"create","qualifiedName":"data.ArmData.create","href":"data/ArmData/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.ArmData.createEmptyInstance","href":"data/ArmData/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"createRepeated","qualifiedName":"data.ArmData.createRepeated","href":"data/ArmData/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"currentPosition","qualifiedName":"data.ArmData.currentPosition","href":"data/ArmData/currentPosition.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"elbow","qualifiedName":"data.ArmData.elbow","href":"data/ArmData/elbow.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"ensureBase","qualifiedName":"data.ArmData.ensureBase","href":"data/ArmData/ensureBase.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"ensureCurrentPosition","qualifiedName":"data.ArmData.ensureCurrentPosition","href":"data/ArmData/ensureCurrentPosition.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"ensureElbow","qualifiedName":"data.ArmData.ensureElbow","href":"data/ArmData/ensureElbow.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"ensureShoulder","qualifiedName":"data.ArmData.ensureShoulder","href":"data/ArmData/ensureShoulder.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"ensureTargetPosition","qualifiedName":"data.ArmData.ensureTargetPosition","href":"data/ArmData/ensureTargetPosition.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"ensureVersion","qualifiedName":"data.ArmData.ensureVersion","href":"data/ArmData/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"getDefault","qualifiedName":"data.ArmData.getDefault","href":"data/ArmData/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"hasBase","qualifiedName":"data.ArmData.hasBase","href":"data/ArmData/hasBase.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"hasCurrentPosition","qualifiedName":"data.ArmData.hasCurrentPosition","href":"data/ArmData/hasCurrentPosition.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"hasElbow","qualifiedName":"data.ArmData.hasElbow","href":"data/ArmData/hasElbow.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"hasShoulder","qualifiedName":"data.ArmData.hasShoulder","href":"data/ArmData/hasShoulder.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"hasTargetPosition","qualifiedName":"data.ArmData.hasTargetPosition","href":"data/ArmData/hasTargetPosition.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"hasVersion","qualifiedName":"data.ArmData.hasVersion","href":"data/ArmData/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"info_","qualifiedName":"data.ArmData.info_","href":"data/ArmData/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"shoulder","qualifiedName":"data.ArmData.shoulder","href":"data/ArmData/shoulder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"targetPosition","qualifiedName":"data.ArmData.targetPosition","href":"data/ArmData/targetPosition.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"version","qualifiedName":"data.ArmData.version","href":"data/ArmData/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmData","kind":3,"href":"data/ArmData-class.html"}},{"name":"ArmMetrics","qualifiedName":"data.ArmMetrics","href":"data/ArmMetrics-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Metrics reported by the HREI subsystem about the arm. Does not include the gripper.","enclosedBy":{"name":"arm","kind":9,"href":"data/data-library.html"}},{"name":"ArmMetrics","qualifiedName":"data.ArmMetrics.ArmMetrics","href":"data/ArmMetrics/ArmMetrics.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Metrics from the arm.","enclosedBy":{"name":"ArmMetrics","kind":3,"href":"data/ArmMetrics-class.html"}},{"name":"allMetrics","qualifiedName":"data.ArmMetrics.allMetrics","href":"data/ArmMetrics/allMetrics.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of user-friendly explanations for each of the metrics.","enclosedBy":{"name":"ArmMetrics","kind":3,"href":"data/ArmMetrics-class.html"}},{"name":"getMotorData","qualifiedName":"data.ArmMetrics.getMotorData","href":"data/ArmMetrics/getMotorData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Returns a description of a MotorData.","enclosedBy":{"name":"ArmMetrics","kind":3,"href":"data/ArmMetrics-class.html"}},{"name":"name","qualifiedName":"data.ArmMetrics.name","href":"data/ArmMetrics/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A collective name for this group of metrics (usually the name of the subsystem).","enclosedBy":{"name":"ArmMetrics","kind":3,"href":"data/ArmMetrics-class.html"}},{"name":"parseVersion","qualifiedName":"data.ArmMetrics.parseVersion","href":"data/ArmMetrics/parseVersion.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Parses the version out of a given data packet.","enclosedBy":{"name":"ArmMetrics","kind":3,"href":"data/ArmMetrics-class.html"}},{"name":"supportedVersion","qualifiedName":"data.ArmMetrics.supportedVersion","href":"data/ArmMetrics/supportedVersion.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The currently-supported version for this Dashboard.","enclosedBy":{"name":"ArmMetrics","kind":3,"href":"data/ArmMetrics-class.html"}},{"name":"versionCommand","qualifiedName":"data.ArmMetrics.versionCommand","href":"data/ArmMetrics/versionCommand.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A command to notify the firmware of the Dashboard's supportedVersion.","enclosedBy":{"name":"ArmMetrics","kind":3,"href":"data/ArmMetrics-class.html"}},{"name":"ArmSettings","qualifiedName":"data.ArmSettings","href":"data/ArmSettings-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Settings relating to the arm.","enclosedBy":{"name":"settings","kind":9,"href":"data/data-library.html"}},{"name":"ArmSettings","qualifiedName":"data.ArmSettings.ArmSettings","href":"data/ArmSettings/ArmSettings.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"ArmSettings.fromJson","qualifiedName":"data.ArmSettings.ArmSettings.fromJson","href":"data/ArmSettings/ArmSettings.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Parses arm settings from a JSON map.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"elbow","qualifiedName":"data.ArmSettings.elbow","href":"data/ArmSettings/elbow.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many radians to move the elbow joint each frame.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"hashCode","qualifiedName":"data.ArmSettings.hashCode","href":"data/ArmSettings/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"ikIncrement","qualifiedName":"data.ArmSettings.ikIncrement","href":"data/ArmSettings/ikIncrement.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many mm to move every 10 ms in IK mode.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"lift","qualifiedName":"data.ArmSettings.lift","href":"data/ArmSettings/lift.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many radians to lift the gripper each frame.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.ArmSettings.noSuchMethod","href":"data/ArmSettings/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"operator ==","qualifiedName":"data.ArmSettings.operator ==","href":"data/ArmSettings/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"pinch","qualifiedName":"data.ArmSettings.pinch","href":"data/ArmSettings/pinch.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many radians to pinch each frame.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"rotate","qualifiedName":"data.ArmSettings.rotate","href":"data/ArmSettings/rotate.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many radians to rotate the gripper each frame.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"runtimeType","qualifiedName":"data.ArmSettings.runtimeType","href":"data/ArmSettings/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"shoulder","qualifiedName":"data.ArmSettings.shoulder","href":"data/ArmSettings/shoulder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many radians to move the shoulder joint each frame.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"swivel","qualifiedName":"data.ArmSettings.swivel","href":"data/ArmSettings/swivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many radians to move the swivel joint each frame.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"toJson","qualifiedName":"data.ArmSettings.toJson","href":"data/ArmSettings/toJson.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Serializes these settings to a JSON map.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"toString","qualifiedName":"data.ArmSettings.toString","href":"data/ArmSettings/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"useIK","qualifiedName":"data.ArmSettings.useIK","href":"data/ArmSettings/useIK.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the arm is in manual or IK mode.","enclosedBy":{"name":"ArmSettings","kind":3,"href":"data/ArmSettings-class.html"}},{"name":"AutonomyCommand","qualifiedName":"data.AutonomyCommand","href":"data/AutonomyCommand-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"autonomy.pb","kind":9,"href":"data/data-library.html"}},{"name":"AutonomyCommand","qualifiedName":"data.AutonomyCommand.AutonomyCommand","href":"data/AutonomyCommand/AutonomyCommand.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"AutonomyCommand.fromBuffer","qualifiedName":"data.AutonomyCommand.AutonomyCommand.fromBuffer","href":"data/AutonomyCommand/AutonomyCommand.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"AutonomyCommand.fromJson","qualifiedName":"data.AutonomyCommand.AutonomyCommand.fromJson","href":"data/AutonomyCommand/AutonomyCommand.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"abort","qualifiedName":"data.AutonomyCommand.abort","href":"data/AutonomyCommand/abort.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"arucoId","qualifiedName":"data.AutonomyCommand.arucoId","href":"data/AutonomyCommand/arucoId.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"clearAbort","qualifiedName":"data.AutonomyCommand.clearAbort","href":"data/AutonomyCommand/clearAbort.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"clearArucoId","qualifiedName":"data.AutonomyCommand.clearArucoId","href":"data/AutonomyCommand/clearArucoId.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"clearDestination","qualifiedName":"data.AutonomyCommand.clearDestination","href":"data/AutonomyCommand/clearDestination.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"clearTask","qualifiedName":"data.AutonomyCommand.clearTask","href":"data/AutonomyCommand/clearTask.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"clearVersion","qualifiedName":"data.AutonomyCommand.clearVersion","href":"data/AutonomyCommand/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"clone","qualifiedName":"data.AutonomyCommand.clone","href":"data/AutonomyCommand/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"copyWith","qualifiedName":"data.AutonomyCommand.copyWith","href":"data/AutonomyCommand/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"create","qualifiedName":"data.AutonomyCommand.create","href":"data/AutonomyCommand/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.AutonomyCommand.createEmptyInstance","href":"data/AutonomyCommand/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"createRepeated","qualifiedName":"data.AutonomyCommand.createRepeated","href":"data/AutonomyCommand/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"destination","qualifiedName":"data.AutonomyCommand.destination","href":"data/AutonomyCommand/destination.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"ensureDestination","qualifiedName":"data.AutonomyCommand.ensureDestination","href":"data/AutonomyCommand/ensureDestination.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"ensureVersion","qualifiedName":"data.AutonomyCommand.ensureVersion","href":"data/AutonomyCommand/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"getDefault","qualifiedName":"data.AutonomyCommand.getDefault","href":"data/AutonomyCommand/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"hasAbort","qualifiedName":"data.AutonomyCommand.hasAbort","href":"data/AutonomyCommand/hasAbort.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"hasArucoId","qualifiedName":"data.AutonomyCommand.hasArucoId","href":"data/AutonomyCommand/hasArucoId.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"hasDestination","qualifiedName":"data.AutonomyCommand.hasDestination","href":"data/AutonomyCommand/hasDestination.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"hasTask","qualifiedName":"data.AutonomyCommand.hasTask","href":"data/AutonomyCommand/hasTask.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"hasVersion","qualifiedName":"data.AutonomyCommand.hasVersion","href":"data/AutonomyCommand/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"info_","qualifiedName":"data.AutonomyCommand.info_","href":"data/AutonomyCommand/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"task","qualifiedName":"data.AutonomyCommand.task","href":"data/AutonomyCommand/task.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"version","qualifiedName":"data.AutonomyCommand.version","href":"data/AutonomyCommand/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCommand","kind":3,"href":"data/AutonomyCommand-class.html"}},{"name":"AutonomyData","qualifiedName":"data.AutonomyData","href":"data/AutonomyData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"autonomy.pb","kind":9,"href":"data/data-library.html"}},{"name":"AutonomyData","qualifiedName":"data.AutonomyData.AutonomyData","href":"data/AutonomyData/AutonomyData.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"AutonomyData.fromBuffer","qualifiedName":"data.AutonomyData.AutonomyData.fromBuffer","href":"data/AutonomyData/AutonomyData.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"AutonomyData.fromJson","qualifiedName":"data.AutonomyData.AutonomyData.fromJson","href":"data/AutonomyData/AutonomyData.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"clearCrash","qualifiedName":"data.AutonomyData.clearCrash","href":"data/AutonomyData/clearCrash.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"clearDestination","qualifiedName":"data.AutonomyData.clearDestination","href":"data/AutonomyData/clearDestination.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"clearState","qualifiedName":"data.AutonomyData.clearState","href":"data/AutonomyData/clearState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"clearTask","qualifiedName":"data.AutonomyData.clearTask","href":"data/AutonomyData/clearTask.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"clearVersion","qualifiedName":"data.AutonomyData.clearVersion","href":"data/AutonomyData/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"clone","qualifiedName":"data.AutonomyData.clone","href":"data/AutonomyData/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"copyWith","qualifiedName":"data.AutonomyData.copyWith","href":"data/AutonomyData/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"crash","qualifiedName":"data.AutonomyData.crash","href":"data/AutonomyData/crash.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"create","qualifiedName":"data.AutonomyData.create","href":"data/AutonomyData/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.AutonomyData.createEmptyInstance","href":"data/AutonomyData/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"createRepeated","qualifiedName":"data.AutonomyData.createRepeated","href":"data/AutonomyData/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"destination","qualifiedName":"data.AutonomyData.destination","href":"data/AutonomyData/destination.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"ensureDestination","qualifiedName":"data.AutonomyData.ensureDestination","href":"data/AutonomyData/ensureDestination.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"ensureVersion","qualifiedName":"data.AutonomyData.ensureVersion","href":"data/AutonomyData/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"getDefault","qualifiedName":"data.AutonomyData.getDefault","href":"data/AutonomyData/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"hasCrash","qualifiedName":"data.AutonomyData.hasCrash","href":"data/AutonomyData/hasCrash.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"hasDestination","qualifiedName":"data.AutonomyData.hasDestination","href":"data/AutonomyData/hasDestination.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"hasState","qualifiedName":"data.AutonomyData.hasState","href":"data/AutonomyData/hasState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"hasTask","qualifiedName":"data.AutonomyData.hasTask","href":"data/AutonomyData/hasTask.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"hasVersion","qualifiedName":"data.AutonomyData.hasVersion","href":"data/AutonomyData/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"info_","qualifiedName":"data.AutonomyData.info_","href":"data/AutonomyData/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"obstacles","qualifiedName":"data.AutonomyData.obstacles","href":"data/AutonomyData/obstacles.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"path","qualifiedName":"data.AutonomyData.path","href":"data/AutonomyData/path.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"state","qualifiedName":"data.AutonomyData.state","href":"data/AutonomyData/state.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"task","qualifiedName":"data.AutonomyData.task","href":"data/AutonomyData/task.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"version","qualifiedName":"data.AutonomyData.version","href":"data/AutonomyData/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyData","kind":3,"href":"data/AutonomyData-class.html"}},{"name":"AutonomyState","qualifiedName":"data.AutonomyState","href":"data/AutonomyState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"autonomy.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"ABORTING","qualifiedName":"data.AutonomyState.ABORTING","href":"data/AutonomyState/ABORTING-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyState","kind":3,"href":"data/AutonomyState-class.html"}},{"name":"APPROACHING","qualifiedName":"data.AutonomyState.APPROACHING","href":"data/AutonomyState/APPROACHING-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyState","kind":3,"href":"data/AutonomyState-class.html"}},{"name":"AT_DESTINATION","qualifiedName":"data.AutonomyState.AT_DESTINATION","href":"data/AutonomyState/AT_DESTINATION-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyState","kind":3,"href":"data/AutonomyState-class.html"}},{"name":"AUTONOMY_STATE_UNDEFINED","qualifiedName":"data.AutonomyState.AUTONOMY_STATE_UNDEFINED","href":"data/AutonomyState/AUTONOMY_STATE_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyState","kind":3,"href":"data/AutonomyState-class.html"}},{"name":"DRIVING","qualifiedName":"data.AutonomyState.DRIVING","href":"data/AutonomyState/DRIVING-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyState","kind":3,"href":"data/AutonomyState-class.html"}},{"name":"NO_SOLUTION","qualifiedName":"data.AutonomyState.NO_SOLUTION","href":"data/AutonomyState/NO_SOLUTION-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyState","kind":3,"href":"data/AutonomyState-class.html"}},{"name":"PATHING","qualifiedName":"data.AutonomyState.PATHING","href":"data/AutonomyState/PATHING-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyState","kind":3,"href":"data/AutonomyState-class.html"}},{"name":"SEARCHING","qualifiedName":"data.AutonomyState.SEARCHING","href":"data/AutonomyState/SEARCHING-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyState","kind":3,"href":"data/AutonomyState-class.html"}},{"name":"valueOf","qualifiedName":"data.AutonomyState.valueOf","href":"data/AutonomyState/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyState","kind":3,"href":"data/AutonomyState-class.html"}},{"name":"values","qualifiedName":"data.AutonomyState.values","href":"data/AutonomyState/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyState","kind":3,"href":"data/AutonomyState-class.html"}},{"name":"AutonomyStateUtils","qualifiedName":"data.AutonomyStateUtils","href":"data/AutonomyStateUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Utilities for AutonomyStates.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"humanName","qualifiedName":"data.AutonomyStateUtils.humanName","href":"data/AutonomyStateUtils/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The human-readable name of the task.","enclosedBy":{"name":"AutonomyStateUtils","kind":6,"href":"data/AutonomyStateUtils.html"}},{"name":"AutonomyTask","qualifiedName":"data.AutonomyTask","href":"data/AutonomyTask-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"autonomy.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"AUTONOMY_TASK_UNDEFINED","qualifiedName":"data.AutonomyTask.AUTONOMY_TASK_UNDEFINED","href":"data/AutonomyTask/AUTONOMY_TASK_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyTask","kind":3,"href":"data/AutonomyTask-class.html"}},{"name":"BETWEEN_GATES","qualifiedName":"data.AutonomyTask.BETWEEN_GATES","href":"data/AutonomyTask/BETWEEN_GATES-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyTask","kind":3,"href":"data/AutonomyTask-class.html"}},{"name":"GPS_ONLY","qualifiedName":"data.AutonomyTask.GPS_ONLY","href":"data/AutonomyTask/GPS_ONLY-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyTask","kind":3,"href":"data/AutonomyTask-class.html"}},{"name":"VISUAL_MARKER","qualifiedName":"data.AutonomyTask.VISUAL_MARKER","href":"data/AutonomyTask/VISUAL_MARKER-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyTask","kind":3,"href":"data/AutonomyTask-class.html"}},{"name":"valueOf","qualifiedName":"data.AutonomyTask.valueOf","href":"data/AutonomyTask/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyTask","kind":3,"href":"data/AutonomyTask-class.html"}},{"name":"values","qualifiedName":"data.AutonomyTask.values","href":"data/AutonomyTask/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyTask","kind":3,"href":"data/AutonomyTask-class.html"}},{"name":"AutonomyTaskUtils","qualifiedName":"data.AutonomyTaskUtils","href":"data/AutonomyTaskUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Utilities for AutonomyTasks.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"humanName","qualifiedName":"data.AutonomyTaskUtils.humanName","href":"data/AutonomyTaskUtils/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The human-readable name of the task.","enclosedBy":{"name":"AutonomyTaskUtils","kind":6,"href":"data/AutonomyTaskUtils.html"}},{"name":"BoolState","qualifiedName":"data.BoolState","href":"data/BoolState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"utils.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"BOOL_UNDEFINED","qualifiedName":"data.BoolState.BOOL_UNDEFINED","href":"data/BoolState/BOOL_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BoolState","kind":3,"href":"data/BoolState-class.html"}},{"name":"CLOSE","qualifiedName":"data.BoolState.CLOSE","href":"data/BoolState/CLOSE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BoolState","kind":3,"href":"data/BoolState-class.html"}},{"name":"NO","qualifiedName":"data.BoolState.NO","href":"data/BoolState/NO-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BoolState","kind":3,"href":"data/BoolState-class.html"}},{"name":"OFF","qualifiedName":"data.BoolState.OFF","href":"data/BoolState/OFF-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BoolState","kind":3,"href":"data/BoolState-class.html"}},{"name":"ON","qualifiedName":"data.BoolState.ON","href":"data/BoolState/ON-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BoolState","kind":3,"href":"data/BoolState-class.html"}},{"name":"OPEN","qualifiedName":"data.BoolState.OPEN","href":"data/BoolState/OPEN-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BoolState","kind":3,"href":"data/BoolState-class.html"}},{"name":"YES","qualifiedName":"data.BoolState.YES","href":"data/BoolState/YES-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BoolState","kind":3,"href":"data/BoolState-class.html"}},{"name":"valueOf","qualifiedName":"data.BoolState.valueOf","href":"data/BoolState/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BoolState","kind":3,"href":"data/BoolState-class.html"}},{"name":"values","qualifiedName":"data.BoolState.values","href":"data/BoolState/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BoolState","kind":3,"href":"data/BoolState-class.html"}},{"name":"BoolUtils","qualifiedName":"data.BoolUtils","href":"data/BoolUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Helpful methods on BoolStates.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"displayName","qualifiedName":"data.BoolUtils.displayName","href":"data/BoolUtils/displayName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Converts this Protobuf boolean into a human readable string.","enclosedBy":{"name":"BoolUtils","kind":6,"href":"data/BoolUtils.html"}},{"name":"toBool","qualifiedName":"data.BoolUtils.toBool","href":"data/BoolUtils/toBool.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Converts this Protobuf boolean into a normal boolean.","enclosedBy":{"name":"BoolUtils","kind":6,"href":"data/BoolUtils.html"}},{"name":"BurtLog","qualifiedName":"data.BurtLog","href":"data/BurtLog-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"logs.pb","kind":9,"href":"data/data-library.html"}},{"name":"BurtLog","qualifiedName":"data.BurtLog.BurtLog","href":"data/BurtLog/BurtLog.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"BurtLog.fromBuffer","qualifiedName":"data.BurtLog.BurtLog.fromBuffer","href":"data/BurtLog/BurtLog.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"BurtLog.fromJson","qualifiedName":"data.BurtLog.BurtLog.fromJson","href":"data/BurtLog/BurtLog.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"body","qualifiedName":"data.BurtLog.body","href":"data/BurtLog/body.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"clearBody","qualifiedName":"data.BurtLog.clearBody","href":"data/BurtLog/clearBody.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"clearDevice","qualifiedName":"data.BurtLog.clearDevice","href":"data/BurtLog/clearDevice.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"clearLevel","qualifiedName":"data.BurtLog.clearLevel","href":"data/BurtLog/clearLevel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"clearTitle","qualifiedName":"data.BurtLog.clearTitle","href":"data/BurtLog/clearTitle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"clone","qualifiedName":"data.BurtLog.clone","href":"data/BurtLog/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"copyWith","qualifiedName":"data.BurtLog.copyWith","href":"data/BurtLog/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"create","qualifiedName":"data.BurtLog.create","href":"data/BurtLog/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.BurtLog.createEmptyInstance","href":"data/BurtLog/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"createRepeated","qualifiedName":"data.BurtLog.createRepeated","href":"data/BurtLog/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"device","qualifiedName":"data.BurtLog.device","href":"data/BurtLog/device.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"getDefault","qualifiedName":"data.BurtLog.getDefault","href":"data/BurtLog/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"hasBody","qualifiedName":"data.BurtLog.hasBody","href":"data/BurtLog/hasBody.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"hasDevice","qualifiedName":"data.BurtLog.hasDevice","href":"data/BurtLog/hasDevice.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"hasLevel","qualifiedName":"data.BurtLog.hasLevel","href":"data/BurtLog/hasLevel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"hasTitle","qualifiedName":"data.BurtLog.hasTitle","href":"data/BurtLog/hasTitle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"info_","qualifiedName":"data.BurtLog.info_","href":"data/BurtLog/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"level","qualifiedName":"data.BurtLog.level","href":"data/BurtLog/level.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"title","qualifiedName":"data.BurtLog.title","href":"data/BurtLog/title.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLog","kind":3,"href":"data/BurtLog-class.html"}},{"name":"BurtLogLevel","qualifiedName":"data.BurtLogLevel","href":"data/BurtLogLevel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"logs.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"BURT_LOG_LEVEL_UNDEFINED","qualifiedName":"data.BurtLogLevel.BURT_LOG_LEVEL_UNDEFINED","href":"data/BurtLogLevel/BURT_LOG_LEVEL_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLogLevel","kind":3,"href":"data/BurtLogLevel-class.html"}},{"name":"critical","qualifiedName":"data.BurtLogLevel.critical","href":"data/BurtLogLevel/critical-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLogLevel","kind":3,"href":"data/BurtLogLevel-class.html"}},{"name":"debug","qualifiedName":"data.BurtLogLevel.debug","href":"data/BurtLogLevel/debug-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLogLevel","kind":3,"href":"data/BurtLogLevel-class.html"}},{"name":"error","qualifiedName":"data.BurtLogLevel.error","href":"data/BurtLogLevel/error-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLogLevel","kind":3,"href":"data/BurtLogLevel-class.html"}},{"name":"info","qualifiedName":"data.BurtLogLevel.info","href":"data/BurtLogLevel/info-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLogLevel","kind":3,"href":"data/BurtLogLevel-class.html"}},{"name":"trace","qualifiedName":"data.BurtLogLevel.trace","href":"data/BurtLogLevel/trace-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLogLevel","kind":3,"href":"data/BurtLogLevel-class.html"}},{"name":"valueOf","qualifiedName":"data.BurtLogLevel.valueOf","href":"data/BurtLogLevel/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLogLevel","kind":3,"href":"data/BurtLogLevel-class.html"}},{"name":"values","qualifiedName":"data.BurtLogLevel.values","href":"data/BurtLogLevel/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLogLevel","kind":3,"href":"data/BurtLogLevel-class.html"}},{"name":"warning","qualifiedName":"data.BurtLogLevel.warning","href":"data/BurtLogLevel/warning-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"BurtLogLevel","kind":3,"href":"data/BurtLogLevel-class.html"}},{"name":"CameraDetails","qualifiedName":"data.CameraDetails","href":"data/CameraDetails-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ Details about a specific camera.","enclosedBy":{"name":"video.pb","kind":9,"href":"data/data-library.html"}},{"name":"CameraDetails","qualifiedName":"data.CameraDetails.CameraDetails","href":"data/CameraDetails/CameraDetails.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"CameraDetails.fromBuffer","qualifiedName":"data.CameraDetails.CameraDetails.fromBuffer","href":"data/CameraDetails/CameraDetails.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"CameraDetails.fromJson","qualifiedName":"data.CameraDetails.CameraDetails.fromJson","href":"data/CameraDetails/CameraDetails.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"autofocus","qualifiedName":"data.CameraDetails.autofocus","href":"data/CameraDetails/autofocus.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clearAutofocus","qualifiedName":"data.CameraDetails.clearAutofocus","href":"data/CameraDetails/clearAutofocus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clearFocus","qualifiedName":"data.CameraDetails.clearFocus","href":"data/CameraDetails/clearFocus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clearFps","qualifiedName":"data.CameraDetails.clearFps","href":"data/CameraDetails/clearFps.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clearName","qualifiedName":"data.CameraDetails.clearName","href":"data/CameraDetails/clearName.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clearPan","qualifiedName":"data.CameraDetails.clearPan","href":"data/CameraDetails/clearPan.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clearQuality","qualifiedName":"data.CameraDetails.clearQuality","href":"data/CameraDetails/clearQuality.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clearResolutionHeight","qualifiedName":"data.CameraDetails.clearResolutionHeight","href":"data/CameraDetails/clearResolutionHeight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clearResolutionWidth","qualifiedName":"data.CameraDetails.clearResolutionWidth","href":"data/CameraDetails/clearResolutionWidth.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clearStatus","qualifiedName":"data.CameraDetails.clearStatus","href":"data/CameraDetails/clearStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clearTilt","qualifiedName":"data.CameraDetails.clearTilt","href":"data/CameraDetails/clearTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clearZoom","qualifiedName":"data.CameraDetails.clearZoom","href":"data/CameraDetails/clearZoom.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"clone","qualifiedName":"data.CameraDetails.clone","href":"data/CameraDetails/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"copyWith","qualifiedName":"data.CameraDetails.copyWith","href":"data/CameraDetails/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"create","qualifiedName":"data.CameraDetails.create","href":"data/CameraDetails/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.CameraDetails.createEmptyInstance","href":"data/CameraDetails/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"createRepeated","qualifiedName":"data.CameraDetails.createRepeated","href":"data/CameraDetails/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"focus","qualifiedName":"data.CameraDetails.focus","href":"data/CameraDetails/focus.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"fps","qualifiedName":"data.CameraDetails.fps","href":"data/CameraDetails/fps.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"/ The amount of frames per second. Eg, 60 FPS or 24 FPS.","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"getDefault","qualifiedName":"data.CameraDetails.getDefault","href":"data/CameraDetails/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"hasAutofocus","qualifiedName":"data.CameraDetails.hasAutofocus","href":"data/CameraDetails/hasAutofocus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"hasFocus","qualifiedName":"data.CameraDetails.hasFocus","href":"data/CameraDetails/hasFocus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"hasFps","qualifiedName":"data.CameraDetails.hasFps","href":"data/CameraDetails/hasFps.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"hasName","qualifiedName":"data.CameraDetails.hasName","href":"data/CameraDetails/hasName.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"hasPan","qualifiedName":"data.CameraDetails.hasPan","href":"data/CameraDetails/hasPan.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"hasQuality","qualifiedName":"data.CameraDetails.hasQuality","href":"data/CameraDetails/hasQuality.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"hasResolutionHeight","qualifiedName":"data.CameraDetails.hasResolutionHeight","href":"data/CameraDetails/hasResolutionHeight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"hasResolutionWidth","qualifiedName":"data.CameraDetails.hasResolutionWidth","href":"data/CameraDetails/hasResolutionWidth.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"hasStatus","qualifiedName":"data.CameraDetails.hasStatus","href":"data/CameraDetails/hasStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"hasTilt","qualifiedName":"data.CameraDetails.hasTilt","href":"data/CameraDetails/hasTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"hasZoom","qualifiedName":"data.CameraDetails.hasZoom","href":"data/CameraDetails/hasZoom.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"info_","qualifiedName":"data.CameraDetails.info_","href":"data/CameraDetails/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"name","qualifiedName":"data.CameraDetails.name","href":"data/CameraDetails/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"/ The name of the camera.","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"pan","qualifiedName":"data.CameraDetails.pan","href":"data/CameraDetails/pan.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"quality","qualifiedName":"data.CameraDetails.quality","href":"data/CameraDetails/quality.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"/ The quality of the frame, as a percentage. Used for JPG compression.","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"resolutionHeight","qualifiedName":"data.CameraDetails.resolutionHeight","href":"data/CameraDetails/resolutionHeight.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"resolutionWidth","qualifiedName":"data.CameraDetails.resolutionWidth","href":"data/CameraDetails/resolutionWidth.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"/ The width and height of the image frame.","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"status","qualifiedName":"data.CameraDetails.status","href":"data/CameraDetails/status.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"/ The status of this camera.","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"tilt","qualifiedName":"data.CameraDetails.tilt","href":"data/CameraDetails/tilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"zoom","qualifiedName":"data.CameraDetails.zoom","href":"data/CameraDetails/zoom.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraDetails","kind":3,"href":"data/CameraDetails-class.html"}},{"name":"CameraName","qualifiedName":"data.CameraName","href":"data/CameraName-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"video.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"AUTONOMY_DEPTH","qualifiedName":"data.CameraName.AUTONOMY_DEPTH","href":"data/CameraName/AUTONOMY_DEPTH-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraName","kind":3,"href":"data/CameraName-class.html"}},{"name":"BOTTOM_LEFT","qualifiedName":"data.CameraName.BOTTOM_LEFT","href":"data/CameraName/BOTTOM_LEFT-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraName","kind":3,"href":"data/CameraName-class.html"}},{"name":"BOTTOM_RIGHT","qualifiedName":"data.CameraName.BOTTOM_RIGHT","href":"data/CameraName/BOTTOM_RIGHT-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraName","kind":3,"href":"data/CameraName-class.html"}},{"name":"CAMERA_NAME_UNDEFINED","qualifiedName":"data.CameraName.CAMERA_NAME_UNDEFINED","href":"data/CameraName/CAMERA_NAME_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraName","kind":3,"href":"data/CameraName-class.html"}},{"name":"ROVER_FRONT","qualifiedName":"data.CameraName.ROVER_FRONT","href":"data/CameraName/ROVER_FRONT-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraName","kind":3,"href":"data/CameraName-class.html"}},{"name":"ROVER_REAR","qualifiedName":"data.CameraName.ROVER_REAR","href":"data/CameraName/ROVER_REAR-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraName","kind":3,"href":"data/CameraName-class.html"}},{"name":"SUBSYSTEM1","qualifiedName":"data.CameraName.SUBSYSTEM1","href":"data/CameraName/SUBSYSTEM1-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraName","kind":3,"href":"data/CameraName-class.html"}},{"name":"SUBSYSTEM2","qualifiedName":"data.CameraName.SUBSYSTEM2","href":"data/CameraName/SUBSYSTEM2-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraName","kind":3,"href":"data/CameraName-class.html"}},{"name":"SUBSYSTEM3","qualifiedName":"data.CameraName.SUBSYSTEM3","href":"data/CameraName/SUBSYSTEM3-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraName","kind":3,"href":"data/CameraName-class.html"}},{"name":"valueOf","qualifiedName":"data.CameraName.valueOf","href":"data/CameraName/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraName","kind":3,"href":"data/CameraName-class.html"}},{"name":"values","qualifiedName":"data.CameraName.values","href":"data/CameraName/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraName","kind":3,"href":"data/CameraName-class.html"}},{"name":"CameraNameUtils","qualifiedName":"data.CameraNameUtils","href":"data/CameraNameUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Extensions for CameraName values.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"humanName","qualifiedName":"data.CameraNameUtils.humanName","href":"data/CameraNameUtils/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Gets a user-friendly name for a CameraName.","enclosedBy":{"name":"CameraNameUtils","kind":6,"href":"data/CameraNameUtils.html"}},{"name":"CameraStatus","qualifiedName":"data.CameraStatus","href":"data/CameraStatus-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"video.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"CAMERA_DISABLED","qualifiedName":"data.CameraStatus.CAMERA_DISABLED","href":"data/CameraStatus/CAMERA_DISABLED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraStatus","kind":3,"href":"data/CameraStatus-class.html"}},{"name":"CAMERA_DISCONNECTED","qualifiedName":"data.CameraStatus.CAMERA_DISCONNECTED","href":"data/CameraStatus/CAMERA_DISCONNECTED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraStatus","kind":3,"href":"data/CameraStatus-class.html"}},{"name":"CAMERA_ENABLED","qualifiedName":"data.CameraStatus.CAMERA_ENABLED","href":"data/CameraStatus/CAMERA_ENABLED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraStatus","kind":3,"href":"data/CameraStatus-class.html"}},{"name":"CAMERA_HAS_NO_NAME","qualifiedName":"data.CameraStatus.CAMERA_HAS_NO_NAME","href":"data/CameraStatus/CAMERA_HAS_NO_NAME-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraStatus","kind":3,"href":"data/CameraStatus-class.html"}},{"name":"CAMERA_LOADING","qualifiedName":"data.CameraStatus.CAMERA_LOADING","href":"data/CameraStatus/CAMERA_LOADING-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraStatus","kind":3,"href":"data/CameraStatus-class.html"}},{"name":"CAMERA_NOT_RESPONDING","qualifiedName":"data.CameraStatus.CAMERA_NOT_RESPONDING","href":"data/CameraStatus/CAMERA_NOT_RESPONDING-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraStatus","kind":3,"href":"data/CameraStatus-class.html"}},{"name":"CAMERA_STATUS_UNDEFINED","qualifiedName":"data.CameraStatus.CAMERA_STATUS_UNDEFINED","href":"data/CameraStatus/CAMERA_STATUS_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraStatus","kind":3,"href":"data/CameraStatus-class.html"}},{"name":"FRAME_TOO_LARGE","qualifiedName":"data.CameraStatus.FRAME_TOO_LARGE","href":"data/CameraStatus/FRAME_TOO_LARGE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraStatus","kind":3,"href":"data/CameraStatus-class.html"}},{"name":"valueOf","qualifiedName":"data.CameraStatus.valueOf","href":"data/CameraStatus/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraStatus","kind":3,"href":"data/CameraStatus-class.html"}},{"name":"values","qualifiedName":"data.CameraStatus.values","href":"data/CameraStatus/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraStatus","kind":3,"href":"data/CameraStatus-class.html"}},{"name":"CameraStatusUtils","qualifiedName":"data.CameraStatusUtils","href":"data/CameraStatusUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Extensions for CameraStatus values.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"humanName","qualifiedName":"data.CameraStatusUtils.humanName","href":"data/CameraStatusUtils/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Gets a user-friendly name for a CameraStatus.","enclosedBy":{"name":"CameraStatusUtils","kind":6,"href":"data/CameraStatusUtils.html"}},{"name":"CarouselCommand","qualifiedName":"data.CarouselCommand","href":"data/CarouselCommand-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ A command for the carousel and funnel to follow.","enclosedBy":{"name":"science.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"CAROUSEL_COMMAND_UNDEFINED","qualifiedName":"data.CarouselCommand.CAROUSEL_COMMAND_UNDEFINED","href":"data/CarouselCommand/CAROUSEL_COMMAND_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CarouselCommand","kind":3,"href":"data/CarouselCommand-class.html"}},{"name":"FILL_SECTION","qualifiedName":"data.CarouselCommand.FILL_SECTION","href":"data/CarouselCommand/FILL_SECTION-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CarouselCommand","kind":3,"href":"data/CarouselCommand-class.html"}},{"name":"FILL_TUBE","qualifiedName":"data.CarouselCommand.FILL_TUBE","href":"data/CarouselCommand/FILL_TUBE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CarouselCommand","kind":3,"href":"data/CarouselCommand-class.html"}},{"name":"NEXT_SECTION","qualifiedName":"data.CarouselCommand.NEXT_SECTION","href":"data/CarouselCommand/NEXT_SECTION-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CarouselCommand","kind":3,"href":"data/CarouselCommand-class.html"}},{"name":"NEXT_TUBE","qualifiedName":"data.CarouselCommand.NEXT_TUBE","href":"data/CarouselCommand/NEXT_TUBE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CarouselCommand","kind":3,"href":"data/CarouselCommand-class.html"}},{"name":"PREV_SECTION","qualifiedName":"data.CarouselCommand.PREV_SECTION","href":"data/CarouselCommand/PREV_SECTION-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CarouselCommand","kind":3,"href":"data/CarouselCommand-class.html"}},{"name":"PREV_TUBE","qualifiedName":"data.CarouselCommand.PREV_TUBE","href":"data/CarouselCommand/PREV_TUBE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CarouselCommand","kind":3,"href":"data/CarouselCommand-class.html"}},{"name":"valueOf","qualifiedName":"data.CarouselCommand.valueOf","href":"data/CarouselCommand/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CarouselCommand","kind":3,"href":"data/CarouselCommand-class.html"}},{"name":"values","qualifiedName":"data.CarouselCommand.values","href":"data/CarouselCommand/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CarouselCommand","kind":3,"href":"data/CarouselCommand-class.html"}},{"name":"Connect","qualifiedName":"data.Connect","href":"data/Connect-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Used for a simple handshake between devices.","enclosedBy":{"name":"core.pb","kind":9,"href":"data/data-library.html"}},{"name":"Connect","qualifiedName":"data.Connect.Connect","href":"data/Connect/Connect.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"Connect.fromBuffer","qualifiedName":"data.Connect.Connect.fromBuffer","href":"data/Connect/Connect.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"Connect.fromJson","qualifiedName":"data.Connect.Connect.fromJson","href":"data/Connect/Connect.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"clearReceiver","qualifiedName":"data.Connect.clearReceiver","href":"data/Connect/clearReceiver.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"clearSender","qualifiedName":"data.Connect.clearSender","href":"data/Connect/clearSender.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"clone","qualifiedName":"data.Connect.clone","href":"data/Connect/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"copyWith","qualifiedName":"data.Connect.copyWith","href":"data/Connect/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"create","qualifiedName":"data.Connect.create","href":"data/Connect/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.Connect.createEmptyInstance","href":"data/Connect/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"createRepeated","qualifiedName":"data.Connect.createRepeated","href":"data/Connect/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"getDefault","qualifiedName":"data.Connect.getDefault","href":"data/Connect/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"hasReceiver","qualifiedName":"data.Connect.hasReceiver","href":"data/Connect/hasReceiver.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"hasSender","qualifiedName":"data.Connect.hasSender","href":"data/Connect/hasSender.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"info_","qualifiedName":"data.Connect.info_","href":"data/Connect/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"receiver","qualifiedName":"data.Connect.receiver","href":"data/Connect/receiver.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"sender","qualifiedName":"data.Connect.sender","href":"data/Connect/sender.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Connect","kind":3,"href":"data/Connect-class.html"}},{"name":"Coordinates","qualifiedName":"data.Coordinates","href":"data/Coordinates-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"arm.pb","kind":9,"href":"data/data-library.html"}},{"name":"Coordinates","qualifiedName":"data.Coordinates.Coordinates","href":"data/Coordinates/Coordinates.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"Coordinates.fromBuffer","qualifiedName":"data.Coordinates.Coordinates.fromBuffer","href":"data/Coordinates/Coordinates.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"Coordinates.fromJson","qualifiedName":"data.Coordinates.Coordinates.fromJson","href":"data/Coordinates/Coordinates.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"clearX","qualifiedName":"data.Coordinates.clearX","href":"data/Coordinates/clearX.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"clearY","qualifiedName":"data.Coordinates.clearY","href":"data/Coordinates/clearY.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"clearZ","qualifiedName":"data.Coordinates.clearZ","href":"data/Coordinates/clearZ.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"clone","qualifiedName":"data.Coordinates.clone","href":"data/Coordinates/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"copyWith","qualifiedName":"data.Coordinates.copyWith","href":"data/Coordinates/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"create","qualifiedName":"data.Coordinates.create","href":"data/Coordinates/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.Coordinates.createEmptyInstance","href":"data/Coordinates/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"createRepeated","qualifiedName":"data.Coordinates.createRepeated","href":"data/Coordinates/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"getDefault","qualifiedName":"data.Coordinates.getDefault","href":"data/Coordinates/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"hasX","qualifiedName":"data.Coordinates.hasX","href":"data/Coordinates/hasX.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"hasY","qualifiedName":"data.Coordinates.hasY","href":"data/Coordinates/hasY.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"hasZ","qualifiedName":"data.Coordinates.hasZ","href":"data/Coordinates/hasZ.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"info_","qualifiedName":"data.Coordinates.info_","href":"data/Coordinates/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"x","qualifiedName":"data.Coordinates.x","href":"data/Coordinates/x.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"y","qualifiedName":"data.Coordinates.y","href":"data/Coordinates/y.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"z","qualifiedName":"data.Coordinates.z","href":"data/Coordinates/z.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Coordinates","kind":3,"href":"data/Coordinates-class.html"}},{"name":"CoordinatesUtils","qualifiedName":"data.CoordinatesUtils","href":"data/CoordinatesUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Extensions for Coordinates messages.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"operator +","qualifiedName":"data.CoordinatesUtils.operator +","href":"data/CoordinatesUtils/operator_plus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Adds two coordinates.","enclosedBy":{"name":"CoordinatesUtils","kind":6,"href":"data/CoordinatesUtils.html"}},{"name":"prettyPrint","qualifiedName":"data.CoordinatesUtils.prettyPrint","href":"data/CoordinatesUtils/prettyPrint.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Returns a user-friendly format of these coordinates.","enclosedBy":{"name":"CoordinatesUtils","kind":6,"href":"data/CoordinatesUtils.html"}},{"name":"DashboardSettings","qualifiedName":"data.DashboardSettings","href":"data/DashboardSettings-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Settings related to the dashboard itself, not the rover.","enclosedBy":{"name":"settings","kind":9,"href":"data/data-library.html"}},{"name":"DashboardSettings","qualifiedName":"data.DashboardSettings.DashboardSettings","href":"data/DashboardSettings/DashboardSettings.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"DashboardSettings.fromJson","qualifiedName":"data.DashboardSettings.DashboardSettings.fromJson","href":"data/DashboardSettings/DashboardSettings.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Parses Dashboard settings from JSON.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"hashCode","qualifiedName":"data.DashboardSettings.hashCode","href":"data/DashboardSettings/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"mapBlockSize","qualifiedName":"data.DashboardSettings.mapBlockSize","href":"data/DashboardSettings/mapBlockSize.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The precision of the GPS grid.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"maxFps","qualifiedName":"data.DashboardSettings.maxFps","href":"data/DashboardSettings/maxFps.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many frames to render per second.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.DashboardSettings.noSuchMethod","href":"data/DashboardSettings/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"operator ==","qualifiedName":"data.DashboardSettings.operator ==","href":"data/DashboardSettings/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"preferTankControls","qualifiedName":"data.DashboardSettings.preferTankControls","href":"data/DashboardSettings/preferTankControls.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to default to tank drive controls.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"runtimeType","qualifiedName":"data.DashboardSettings.runtimeType","href":"data/DashboardSettings/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"splitCameras","qualifiedName":"data.DashboardSettings.splitCameras","href":"data/DashboardSettings/splitCameras.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to split cameras into their own controls.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"splitMode","qualifiedName":"data.DashboardSettings.splitMode","href":"data/DashboardSettings/splitMode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How the Dashboard should split when only two views are present.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"themeMode","qualifiedName":"data.DashboardSettings.themeMode","href":"data/DashboardSettings/themeMode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The theme of the Dashboard.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"toJson","qualifiedName":"data.DashboardSettings.toJson","href":"data/DashboardSettings/toJson.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Serializes these settings to JSON.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"toString","qualifiedName":"data.DashboardSettings.toString","href":"data/DashboardSettings/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"versionChecking","qualifiedName":"data.DashboardSettings.versionChecking","href":"data/DashboardSettings/versionChecking.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to have version checking on protobuf messages.","enclosedBy":{"name":"DashboardSettings","kind":3,"href":"data/DashboardSettings-class.html"}},{"name":"DateTimeTimestamp","qualifiedName":"data.DateTimeTimestamp","href":"data/DateTimeTimestamp.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Helpful extensions on DateTimes.","enclosedBy":{"name":"utils","kind":9,"href":"data/data-library.html"}},{"name":"timeStamp","qualifiedName":"data.DateTimeTimestamp.timeStamp","href":"data/DateTimeTimestamp/timeStamp.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Formats this DateTime as a simple timestamp.","enclosedBy":{"name":"DateTimeTimestamp","kind":6,"href":"data/DateTimeTimestamp.html"}},{"name":"Device","qualifiedName":"data.Device","href":"data/Device-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"core.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"ARM","qualifiedName":"data.Device.ARM","href":"data/Device/ARM-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"AUTONOMY","qualifiedName":"data.Device.AUTONOMY","href":"data/Device/AUTONOMY-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"DASHBOARD","qualifiedName":"data.Device.DASHBOARD","href":"data/Device/DASHBOARD-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"DEVICE_UNDEFINED","qualifiedName":"data.Device.DEVICE_UNDEFINED","href":"data/Device/DEVICE_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"DRIVE","qualifiedName":"data.Device.DRIVE","href":"data/Device/DRIVE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"FIRMWARE","qualifiedName":"data.Device.FIRMWARE","href":"data/Device/FIRMWARE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"GRIPPER","qualifiedName":"data.Device.GRIPPER","href":"data/Device/GRIPPER-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"SCIENCE","qualifiedName":"data.Device.SCIENCE","href":"data/Device/SCIENCE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"SUBSYSTEMS","qualifiedName":"data.Device.SUBSYSTEMS","href":"data/Device/SUBSYSTEMS-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"VIDEO","qualifiedName":"data.Device.VIDEO","href":"data/Device/VIDEO-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"valueOf","qualifiedName":"data.Device.valueOf","href":"data/Device/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"values","qualifiedName":"data.Device.values","href":"data/Device/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Device","kind":3,"href":"data/Device-class.html"}},{"name":"DeviceUtils","qualifiedName":"data.DeviceUtils","href":"data/DeviceUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Extensions for Device values.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"humanName","qualifiedName":"data.DeviceUtils.humanName","href":"data/DeviceUtils/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Gets a user-friendly name for a Device.","enclosedBy":{"name":"DeviceUtils","kind":6,"href":"data/DeviceUtils.html"}},{"name":"Disconnect","qualifiedName":"data.Disconnect","href":"data/Disconnect-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Notifies the recipient that the sender will no longer be connected.","enclosedBy":{"name":"core.pb","kind":9,"href":"data/data-library.html"}},{"name":"Disconnect","qualifiedName":"data.Disconnect.Disconnect","href":"data/Disconnect/Disconnect.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"Disconnect.fromBuffer","qualifiedName":"data.Disconnect.Disconnect.fromBuffer","href":"data/Disconnect/Disconnect.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"Disconnect.fromJson","qualifiedName":"data.Disconnect.Disconnect.fromJson","href":"data/Disconnect/Disconnect.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"clearSender","qualifiedName":"data.Disconnect.clearSender","href":"data/Disconnect/clearSender.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"clone","qualifiedName":"data.Disconnect.clone","href":"data/Disconnect/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"copyWith","qualifiedName":"data.Disconnect.copyWith","href":"data/Disconnect/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"create","qualifiedName":"data.Disconnect.create","href":"data/Disconnect/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.Disconnect.createEmptyInstance","href":"data/Disconnect/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"createRepeated","qualifiedName":"data.Disconnect.createRepeated","href":"data/Disconnect/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"getDefault","qualifiedName":"data.Disconnect.getDefault","href":"data/Disconnect/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"hasSender","qualifiedName":"data.Disconnect.hasSender","href":"data/Disconnect/hasSender.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"info_","qualifiedName":"data.Disconnect.info_","href":"data/Disconnect/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"sender","qualifiedName":"data.Disconnect.sender","href":"data/Disconnect/sender.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Disconnect","kind":3,"href":"data/Disconnect-class.html"}},{"name":"DriveCommand","qualifiedName":"data.DriveCommand","href":"data/DriveCommand-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"drive.pb","kind":9,"href":"data/data-library.html"}},{"name":"DriveCommand","qualifiedName":"data.DriveCommand.DriveCommand","href":"data/DriveCommand/DriveCommand.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"DriveCommand.fromBuffer","qualifiedName":"data.DriveCommand.DriveCommand.fromBuffer","href":"data/DriveCommand/DriveCommand.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"DriveCommand.fromJson","qualifiedName":"data.DriveCommand.DriveCommand.fromJson","href":"data/DriveCommand/DriveCommand.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"blink","qualifiedName":"data.DriveCommand.blink","href":"data/DriveCommand/blink.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearBlink","qualifiedName":"data.DriveCommand.clearBlink","href":"data/DriveCommand/clearBlink.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearColor","qualifiedName":"data.DriveCommand.clearColor","href":"data/DriveCommand/clearColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearFrontSwivel","qualifiedName":"data.DriveCommand.clearFrontSwivel","href":"data/DriveCommand/clearFrontSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearFrontTilt","qualifiedName":"data.DriveCommand.clearFrontTilt","href":"data/DriveCommand/clearFrontTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearLeft","qualifiedName":"data.DriveCommand.clearLeft","href":"data/DriveCommand/clearLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearRearSwivel","qualifiedName":"data.DriveCommand.clearRearSwivel","href":"data/DriveCommand/clearRearSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearRearTilt","qualifiedName":"data.DriveCommand.clearRearTilt","href":"data/DriveCommand/clearRearTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearRight","qualifiedName":"data.DriveCommand.clearRight","href":"data/DriveCommand/clearRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearSetLeft","qualifiedName":"data.DriveCommand.clearSetLeft","href":"data/DriveCommand/clearSetLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearSetRight","qualifiedName":"data.DriveCommand.clearSetRight","href":"data/DriveCommand/clearSetRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearSetThrottle","qualifiedName":"data.DriveCommand.clearSetThrottle","href":"data/DriveCommand/clearSetThrottle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearStatus","qualifiedName":"data.DriveCommand.clearStatus","href":"data/DriveCommand/clearStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearThrottle","qualifiedName":"data.DriveCommand.clearThrottle","href":"data/DriveCommand/clearThrottle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clearVersion","qualifiedName":"data.DriveCommand.clearVersion","href":"data/DriveCommand/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"clone","qualifiedName":"data.DriveCommand.clone","href":"data/DriveCommand/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"color","qualifiedName":"data.DriveCommand.color","href":"data/DriveCommand/color.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"copyWith","qualifiedName":"data.DriveCommand.copyWith","href":"data/DriveCommand/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"create","qualifiedName":"data.DriveCommand.create","href":"data/DriveCommand/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.DriveCommand.createEmptyInstance","href":"data/DriveCommand/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"createRepeated","qualifiedName":"data.DriveCommand.createRepeated","href":"data/DriveCommand/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"ensureVersion","qualifiedName":"data.DriveCommand.ensureVersion","href":"data/DriveCommand/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"frontSwivel","qualifiedName":"data.DriveCommand.frontSwivel","href":"data/DriveCommand/frontSwivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"frontTilt","qualifiedName":"data.DriveCommand.frontTilt","href":"data/DriveCommand/frontTilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"getDefault","qualifiedName":"data.DriveCommand.getDefault","href":"data/DriveCommand/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasBlink","qualifiedName":"data.DriveCommand.hasBlink","href":"data/DriveCommand/hasBlink.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasColor","qualifiedName":"data.DriveCommand.hasColor","href":"data/DriveCommand/hasColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasFrontSwivel","qualifiedName":"data.DriveCommand.hasFrontSwivel","href":"data/DriveCommand/hasFrontSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasFrontTilt","qualifiedName":"data.DriveCommand.hasFrontTilt","href":"data/DriveCommand/hasFrontTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasLeft","qualifiedName":"data.DriveCommand.hasLeft","href":"data/DriveCommand/hasLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasRearSwivel","qualifiedName":"data.DriveCommand.hasRearSwivel","href":"data/DriveCommand/hasRearSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasRearTilt","qualifiedName":"data.DriveCommand.hasRearTilt","href":"data/DriveCommand/hasRearTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasRight","qualifiedName":"data.DriveCommand.hasRight","href":"data/DriveCommand/hasRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasSetLeft","qualifiedName":"data.DriveCommand.hasSetLeft","href":"data/DriveCommand/hasSetLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasSetRight","qualifiedName":"data.DriveCommand.hasSetRight","href":"data/DriveCommand/hasSetRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasSetThrottle","qualifiedName":"data.DriveCommand.hasSetThrottle","href":"data/DriveCommand/hasSetThrottle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasStatus","qualifiedName":"data.DriveCommand.hasStatus","href":"data/DriveCommand/hasStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasThrottle","qualifiedName":"data.DriveCommand.hasThrottle","href":"data/DriveCommand/hasThrottle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"hasVersion","qualifiedName":"data.DriveCommand.hasVersion","href":"data/DriveCommand/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"info_","qualifiedName":"data.DriveCommand.info_","href":"data/DriveCommand/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"left","qualifiedName":"data.DriveCommand.left","href":"data/DriveCommand/left.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Speed of the left wheels, as a percentage of throttle.","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"rearSwivel","qualifiedName":"data.DriveCommand.rearSwivel","href":"data/DriveCommand/rearSwivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"rearTilt","qualifiedName":"data.DriveCommand.rearTilt","href":"data/DriveCommand/rearTilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"right","qualifiedName":"data.DriveCommand.right","href":"data/DriveCommand/right.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Speed of the right wheels, as a percentage of throttle.","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"setLeft","qualifiedName":"data.DriveCommand.setLeft","href":"data/DriveCommand/setLeft.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that left = 0 is valid, even though 0 usually means no value.","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"setRight","qualifiedName":"data.DriveCommand.setRight","href":"data/DriveCommand/setRight.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that right = 0 is valid, even though 0 usually means no value.","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"setThrottle","qualifiedName":"data.DriveCommand.setThrottle","href":"data/DriveCommand/setThrottle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that throttle = 0 is valid, even though 0 usually means no value.","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"status","qualifiedName":"data.DriveCommand.status","href":"data/DriveCommand/status.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"throttle","qualifiedName":"data.DriveCommand.throttle","href":"data/DriveCommand/throttle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The max speed, as a percentage of the rover's possible speed.","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"version","qualifiedName":"data.DriveCommand.version","href":"data/DriveCommand/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveCommand","kind":3,"href":"data/DriveCommand-class.html"}},{"name":"DriveData","qualifiedName":"data.DriveData","href":"data/DriveData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"drive.pb","kind":9,"href":"data/data-library.html"}},{"name":"DriveData","qualifiedName":"data.DriveData.DriveData","href":"data/DriveData/DriveData.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"DriveData.fromBuffer","qualifiedName":"data.DriveData.DriveData.fromBuffer","href":"data/DriveData/DriveData.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"DriveData.fromJson","qualifiedName":"data.DriveData.DriveData.fromJson","href":"data/DriveData/DriveData.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"backLeft","qualifiedName":"data.DriveData.backLeft","href":"data/DriveData/backLeft.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Information about each wheel in rpm","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"backRight","qualifiedName":"data.DriveData.backRight","href":"data/DriveData/backRight.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"batteryCurrent","qualifiedName":"data.DriveData.batteryCurrent","href":"data/DriveData/batteryCurrent.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"batteryTemperature","qualifiedName":"data.DriveData.batteryTemperature","href":"data/DriveData/batteryTemperature.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"batteryVoltage","qualifiedName":"data.DriveData.batteryVoltage","href":"data/DriveData/batteryVoltage.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Vitals for the whole rover","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearBackLeft","qualifiedName":"data.DriveData.clearBackLeft","href":"data/DriveData/clearBackLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearBackRight","qualifiedName":"data.DriveData.clearBackRight","href":"data/DriveData/clearBackRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearBatteryCurrent","qualifiedName":"data.DriveData.clearBatteryCurrent","href":"data/DriveData/clearBatteryCurrent.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearBatteryTemperature","qualifiedName":"data.DriveData.clearBatteryTemperature","href":"data/DriveData/clearBatteryTemperature.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearBatteryVoltage","qualifiedName":"data.DriveData.clearBatteryVoltage","href":"data/DriveData/clearBatteryVoltage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearColor","qualifiedName":"data.DriveData.clearColor","href":"data/DriveData/clearColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearFrontLeft","qualifiedName":"data.DriveData.clearFrontLeft","href":"data/DriveData/clearFrontLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearFrontRight","qualifiedName":"data.DriveData.clearFrontRight","href":"data/DriveData/clearFrontRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearFrontSwivel","qualifiedName":"data.DriveData.clearFrontSwivel","href":"data/DriveData/clearFrontSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearFrontTilt","qualifiedName":"data.DriveData.clearFrontTilt","href":"data/DriveData/clearFrontTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearLeft","qualifiedName":"data.DriveData.clearLeft","href":"data/DriveData/clearLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearMiddleLeft","qualifiedName":"data.DriveData.clearMiddleLeft","href":"data/DriveData/clearMiddleLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearMiddleRight","qualifiedName":"data.DriveData.clearMiddleRight","href":"data/DriveData/clearMiddleRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearRearSwivel","qualifiedName":"data.DriveData.clearRearSwivel","href":"data/DriveData/clearRearSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearRearTilt","qualifiedName":"data.DriveData.clearRearTilt","href":"data/DriveData/clearRearTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearRight","qualifiedName":"data.DriveData.clearRight","href":"data/DriveData/clearRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearSetLeft","qualifiedName":"data.DriveData.clearSetLeft","href":"data/DriveData/clearSetLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearSetRight","qualifiedName":"data.DriveData.clearSetRight","href":"data/DriveData/clearSetRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearSetThrottle","qualifiedName":"data.DriveData.clearSetThrottle","href":"data/DriveData/clearSetThrottle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearStatus","qualifiedName":"data.DriveData.clearStatus","href":"data/DriveData/clearStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearThrottle","qualifiedName":"data.DriveData.clearThrottle","href":"data/DriveData/clearThrottle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clearVersion","qualifiedName":"data.DriveData.clearVersion","href":"data/DriveData/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"clone","qualifiedName":"data.DriveData.clone","href":"data/DriveData/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"color","qualifiedName":"data.DriveData.color","href":"data/DriveData/color.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"copyWith","qualifiedName":"data.DriveData.copyWith","href":"data/DriveData/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"create","qualifiedName":"data.DriveData.create","href":"data/DriveData/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.DriveData.createEmptyInstance","href":"data/DriveData/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"createRepeated","qualifiedName":"data.DriveData.createRepeated","href":"data/DriveData/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"ensureVersion","qualifiedName":"data.DriveData.ensureVersion","href":"data/DriveData/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"frontLeft","qualifiedName":"data.DriveData.frontLeft","href":"data/DriveData/frontLeft.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"frontRight","qualifiedName":"data.DriveData.frontRight","href":"data/DriveData/frontRight.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"frontSwivel","qualifiedName":"data.DriveData.frontSwivel","href":"data/DriveData/frontSwivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"frontTilt","qualifiedName":"data.DriveData.frontTilt","href":"data/DriveData/frontTilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"getDefault","qualifiedName":"data.DriveData.getDefault","href":"data/DriveData/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasBackLeft","qualifiedName":"data.DriveData.hasBackLeft","href":"data/DriveData/hasBackLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasBackRight","qualifiedName":"data.DriveData.hasBackRight","href":"data/DriveData/hasBackRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasBatteryCurrent","qualifiedName":"data.DriveData.hasBatteryCurrent","href":"data/DriveData/hasBatteryCurrent.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasBatteryTemperature","qualifiedName":"data.DriveData.hasBatteryTemperature","href":"data/DriveData/hasBatteryTemperature.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasBatteryVoltage","qualifiedName":"data.DriveData.hasBatteryVoltage","href":"data/DriveData/hasBatteryVoltage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasColor","qualifiedName":"data.DriveData.hasColor","href":"data/DriveData/hasColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasFrontLeft","qualifiedName":"data.DriveData.hasFrontLeft","href":"data/DriveData/hasFrontLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasFrontRight","qualifiedName":"data.DriveData.hasFrontRight","href":"data/DriveData/hasFrontRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasFrontSwivel","qualifiedName":"data.DriveData.hasFrontSwivel","href":"data/DriveData/hasFrontSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasFrontTilt","qualifiedName":"data.DriveData.hasFrontTilt","href":"data/DriveData/hasFrontTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasLeft","qualifiedName":"data.DriveData.hasLeft","href":"data/DriveData/hasLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasMiddleLeft","qualifiedName":"data.DriveData.hasMiddleLeft","href":"data/DriveData/hasMiddleLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasMiddleRight","qualifiedName":"data.DriveData.hasMiddleRight","href":"data/DriveData/hasMiddleRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasRearSwivel","qualifiedName":"data.DriveData.hasRearSwivel","href":"data/DriveData/hasRearSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasRearTilt","qualifiedName":"data.DriveData.hasRearTilt","href":"data/DriveData/hasRearTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasRight","qualifiedName":"data.DriveData.hasRight","href":"data/DriveData/hasRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasSetLeft","qualifiedName":"data.DriveData.hasSetLeft","href":"data/DriveData/hasSetLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasSetRight","qualifiedName":"data.DriveData.hasSetRight","href":"data/DriveData/hasSetRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasSetThrottle","qualifiedName":"data.DriveData.hasSetThrottle","href":"data/DriveData/hasSetThrottle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasStatus","qualifiedName":"data.DriveData.hasStatus","href":"data/DriveData/hasStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasThrottle","qualifiedName":"data.DriveData.hasThrottle","href":"data/DriveData/hasThrottle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"hasVersion","qualifiedName":"data.DriveData.hasVersion","href":"data/DriveData/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"info_","qualifiedName":"data.DriveData.info_","href":"data/DriveData/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"left","qualifiedName":"data.DriveData.left","href":"data/DriveData/left.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Speed of the left wheels, as a percentage of throttle.","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"middleLeft","qualifiedName":"data.DriveData.middleLeft","href":"data/DriveData/middleLeft.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"middleRight","qualifiedName":"data.DriveData.middleRight","href":"data/DriveData/middleRight.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"rearSwivel","qualifiedName":"data.DriveData.rearSwivel","href":"data/DriveData/rearSwivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"rearTilt","qualifiedName":"data.DriveData.rearTilt","href":"data/DriveData/rearTilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"right","qualifiedName":"data.DriveData.right","href":"data/DriveData/right.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Speed of the right wheels, as a percentage of throttle.","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"setLeft","qualifiedName":"data.DriveData.setLeft","href":"data/DriveData/setLeft.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that left = 0 is valid, even though 0 usually means no value.","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"setRight","qualifiedName":"data.DriveData.setRight","href":"data/DriveData/setRight.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that right = 0 is valid, even though 0 usually means no value.","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"setThrottle","qualifiedName":"data.DriveData.setThrottle","href":"data/DriveData/setThrottle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that throttle = 0 is valid, even though 0 usually means no value.","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"status","qualifiedName":"data.DriveData.status","href":"data/DriveData/status.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"throttle","qualifiedName":"data.DriveData.throttle","href":"data/DriveData/throttle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The max speed, as a percentage of the rover's possible speed.","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"version","qualifiedName":"data.DriveData.version","href":"data/DriveData/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveData","kind":3,"href":"data/DriveData-class.html"}},{"name":"DriveMetrics","qualifiedName":"data.DriveMetrics","href":"data/DriveMetrics-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Metrics reported by the drive subsystem.","enclosedBy":{"name":"drive","kind":9,"href":"data/data-library.html"}},{"name":"DriveMetrics","qualifiedName":"data.DriveMetrics.DriveMetrics","href":"data/DriveMetrics/DriveMetrics.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A collection of metrics relevant for monitoring the rover's electrical status.","enclosedBy":{"name":"DriveMetrics","kind":3,"href":"data/DriveMetrics-class.html"}},{"name":"allMetrics","qualifiedName":"data.DriveMetrics.allMetrics","href":"data/DriveMetrics/allMetrics.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of user-friendly explanations for each of the metrics.","enclosedBy":{"name":"DriveMetrics","kind":3,"href":"data/DriveMetrics-class.html"}},{"name":"batteryPercentage","qualifiedName":"data.DriveMetrics.batteryPercentage","href":"data/DriveMetrics/batteryPercentage.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The charge of the battery, as a percentage.","enclosedBy":{"name":"DriveMetrics","kind":3,"href":"data/DriveMetrics-class.html"}},{"name":"batteryVoltage","qualifiedName":"data.DriveMetrics.batteryVoltage","href":"data/DriveMetrics/batteryVoltage.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The battery voltage.","enclosedBy":{"name":"DriveMetrics","kind":3,"href":"data/DriveMetrics-class.html"}},{"name":"electricalSeverity","qualifiedName":"data.DriveMetrics.electricalSeverity","href":"data/DriveMetrics/electricalSeverity.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The severity for the electrical metrics.","enclosedBy":{"name":"DriveMetrics","kind":3,"href":"data/DriveMetrics-class.html"}},{"name":"name","qualifiedName":"data.DriveMetrics.name","href":"data/DriveMetrics/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A collective name for this group of metrics (usually the name of the subsystem).","enclosedBy":{"name":"DriveMetrics","kind":3,"href":"data/DriveMetrics-class.html"}},{"name":"parseVersion","qualifiedName":"data.DriveMetrics.parseVersion","href":"data/DriveMetrics/parseVersion.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Parses the version out of a given data packet.","enclosedBy":{"name":"DriveMetrics","kind":3,"href":"data/DriveMetrics-class.html"}},{"name":"supportedVersion","qualifiedName":"data.DriveMetrics.supportedVersion","href":"data/DriveMetrics/supportedVersion.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The currently-supported version for this Dashboard.","enclosedBy":{"name":"DriveMetrics","kind":3,"href":"data/DriveMetrics-class.html"}},{"name":"throttleSeverity","qualifiedName":"data.DriveMetrics.throttleSeverity","href":"data/DriveMetrics/throttleSeverity.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The severity based on the throttle speed.","enclosedBy":{"name":"DriveMetrics","kind":3,"href":"data/DriveMetrics-class.html"}},{"name":"update","qualifiedName":"data.DriveMetrics.update","href":"data/DriveMetrics/update.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Updates data with new data.","enclosedBy":{"name":"DriveMetrics","kind":3,"href":"data/DriveMetrics-class.html"}},{"name":"versionCommand","qualifiedName":"data.DriveMetrics.versionCommand","href":"data/DriveMetrics/versionCommand.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A command to notify the firmware of the Dashboard's supportedVersion.","enclosedBy":{"name":"DriveMetrics","kind":3,"href":"data/DriveMetrics-class.html"}},{"name":"EasterEggsSettings","qualifiedName":"data.EasterEggsSettings","href":"data/EasterEggsSettings-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Settings relating to easter eggs.","enclosedBy":{"name":"settings","kind":9,"href":"data/data-library.html"}},{"name":"EasterEggsSettings","qualifiedName":"data.EasterEggsSettings.EasterEggsSettings","href":"data/EasterEggsSettings/EasterEggsSettings.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"EasterEggsSettings.fromJson","qualifiedName":"data.EasterEggsSettings.EasterEggsSettings.fromJson","href":"data/EasterEggsSettings/EasterEggsSettings.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Parses easter eggs settings from JSON.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"badApple","qualifiedName":"data.EasterEggsSettings.badApple","href":"data/EasterEggsSettings/badApple.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to render Bad Apple in the Map page.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"enableClippy","qualifiedName":"data.EasterEggsSettings.enableClippy","href":"data/EasterEggsSettings/enableClippy.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether clippy should appear by log messages.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"hashCode","qualifiedName":"data.EasterEggsSettings.hashCode","href":"data/EasterEggsSettings/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.EasterEggsSettings.noSuchMethod","href":"data/EasterEggsSettings/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"operator ==","qualifiedName":"data.EasterEggsSettings.operator ==","href":"data/EasterEggsSettings/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"runtimeType","qualifiedName":"data.EasterEggsSettings.runtimeType","href":"data/EasterEggsSettings/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"segaIntro","qualifiedName":"data.EasterEggsSettings.segaIntro","href":"data/EasterEggsSettings/segaIntro.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to do a SEGA-like intro during boot.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"segaSound","qualifiedName":"data.EasterEggsSettings.segaSound","href":"data/EasterEggsSettings/segaSound.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to say \"Binghamton\" in the SEGA style.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"toJson","qualifiedName":"data.EasterEggsSettings.toJson","href":"data/EasterEggsSettings/toJson.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Serializes these settings to JSON.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"toString","qualifiedName":"data.EasterEggsSettings.toString","href":"data/EasterEggsSettings/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"EasterEggsSettings","kind":3,"href":"data/EasterEggsSettings-class.html"}},{"name":"GpsCoordinates","qualifiedName":"data.GpsCoordinates","href":"data/GpsCoordinates-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"gps.pb","kind":9,"href":"data/data-library.html"}},{"name":"GpsCoordinates","qualifiedName":"data.GpsCoordinates.GpsCoordinates","href":"data/GpsCoordinates/GpsCoordinates.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"GpsCoordinates.fromBuffer","qualifiedName":"data.GpsCoordinates.GpsCoordinates.fromBuffer","href":"data/GpsCoordinates/GpsCoordinates.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"GpsCoordinates.fromJson","qualifiedName":"data.GpsCoordinates.GpsCoordinates.fromJson","href":"data/GpsCoordinates/GpsCoordinates.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"altitude","qualifiedName":"data.GpsCoordinates.altitude","href":"data/GpsCoordinates/altitude.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"clearAltitude","qualifiedName":"data.GpsCoordinates.clearAltitude","href":"data/GpsCoordinates/clearAltitude.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"clearLatitude","qualifiedName":"data.GpsCoordinates.clearLatitude","href":"data/GpsCoordinates/clearLatitude.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"clearLongitude","qualifiedName":"data.GpsCoordinates.clearLongitude","href":"data/GpsCoordinates/clearLongitude.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"clone","qualifiedName":"data.GpsCoordinates.clone","href":"data/GpsCoordinates/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"copyWith","qualifiedName":"data.GpsCoordinates.copyWith","href":"data/GpsCoordinates/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"create","qualifiedName":"data.GpsCoordinates.create","href":"data/GpsCoordinates/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.GpsCoordinates.createEmptyInstance","href":"data/GpsCoordinates/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"createRepeated","qualifiedName":"data.GpsCoordinates.createRepeated","href":"data/GpsCoordinates/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"getDefault","qualifiedName":"data.GpsCoordinates.getDefault","href":"data/GpsCoordinates/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"hasAltitude","qualifiedName":"data.GpsCoordinates.hasAltitude","href":"data/GpsCoordinates/hasAltitude.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"hasLatitude","qualifiedName":"data.GpsCoordinates.hasLatitude","href":"data/GpsCoordinates/hasLatitude.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"hasLongitude","qualifiedName":"data.GpsCoordinates.hasLongitude","href":"data/GpsCoordinates/hasLongitude.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"info_","qualifiedName":"data.GpsCoordinates.info_","href":"data/GpsCoordinates/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"latitude","qualifiedName":"data.GpsCoordinates.latitude","href":"data/GpsCoordinates/latitude.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"longitude","qualifiedName":"data.GpsCoordinates.longitude","href":"data/GpsCoordinates/longitude.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsCoordinates","kind":3,"href":"data/GpsCoordinates-class.html"}},{"name":"GpsUtils","qualifiedName":"data.GpsUtils","href":"data/GpsUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Utilities for Gps Coordinates Data","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"distanceTo","qualifiedName":"data.GpsUtils.distanceTo","href":"data/GpsUtils/distanceTo.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Calculate Euclidean distance between current coordinates and another set of coordinates.","enclosedBy":{"name":"GpsUtils","kind":6,"href":"data/GpsUtils.html"}},{"name":"GripperCommand","qualifiedName":"data.GripperCommand","href":"data/GripperCommand-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"arm.pb","kind":9,"href":"data/data-library.html"}},{"name":"GripperCommand","qualifiedName":"data.GripperCommand.GripperCommand","href":"data/GripperCommand/GripperCommand.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"GripperCommand.fromBuffer","qualifiedName":"data.GripperCommand.GripperCommand.fromBuffer","href":"data/GripperCommand/GripperCommand.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"GripperCommand.fromJson","qualifiedName":"data.GripperCommand.GripperCommand.fromJson","href":"data/GripperCommand/GripperCommand.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"calibrate","qualifiedName":"data.GripperCommand.calibrate","href":"data/GripperCommand/calibrate.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clearCalibrate","qualifiedName":"data.GripperCommand.clearCalibrate","href":"data/GripperCommand/clearCalibrate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clearClose","qualifiedName":"data.GripperCommand.clearClose","href":"data/GripperCommand/clearClose.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clearLaserState","qualifiedName":"data.GripperCommand.clearLaserState","href":"data/GripperCommand/clearLaserState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clearLift","qualifiedName":"data.GripperCommand.clearLift","href":"data/GripperCommand/clearLift.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clearOpen","qualifiedName":"data.GripperCommand.clearOpen","href":"data/GripperCommand/clearOpen.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clearPinch","qualifiedName":"data.GripperCommand.clearPinch","href":"data/GripperCommand/clearPinch.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clearRotate","qualifiedName":"data.GripperCommand.clearRotate","href":"data/GripperCommand/clearRotate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clearServoAngle","qualifiedName":"data.GripperCommand.clearServoAngle","href":"data/GripperCommand/clearServoAngle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clearSpin","qualifiedName":"data.GripperCommand.clearSpin","href":"data/GripperCommand/clearSpin.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clearStop","qualifiedName":"data.GripperCommand.clearStop","href":"data/GripperCommand/clearStop.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clearVersion","qualifiedName":"data.GripperCommand.clearVersion","href":"data/GripperCommand/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"clone","qualifiedName":"data.GripperCommand.clone","href":"data/GripperCommand/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"close","qualifiedName":"data.GripperCommand.close","href":"data/GripperCommand/close.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"copyWith","qualifiedName":"data.GripperCommand.copyWith","href":"data/GripperCommand/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"create","qualifiedName":"data.GripperCommand.create","href":"data/GripperCommand/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.GripperCommand.createEmptyInstance","href":"data/GripperCommand/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"createRepeated","qualifiedName":"data.GripperCommand.createRepeated","href":"data/GripperCommand/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"ensureLift","qualifiedName":"data.GripperCommand.ensureLift","href":"data/GripperCommand/ensureLift.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"ensurePinch","qualifiedName":"data.GripperCommand.ensurePinch","href":"data/GripperCommand/ensurePinch.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"ensureRotate","qualifiedName":"data.GripperCommand.ensureRotate","href":"data/GripperCommand/ensureRotate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"ensureVersion","qualifiedName":"data.GripperCommand.ensureVersion","href":"data/GripperCommand/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"getDefault","qualifiedName":"data.GripperCommand.getDefault","href":"data/GripperCommand/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"hasCalibrate","qualifiedName":"data.GripperCommand.hasCalibrate","href":"data/GripperCommand/hasCalibrate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"hasClose","qualifiedName":"data.GripperCommand.hasClose","href":"data/GripperCommand/hasClose.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"hasLaserState","qualifiedName":"data.GripperCommand.hasLaserState","href":"data/GripperCommand/hasLaserState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"hasLift","qualifiedName":"data.GripperCommand.hasLift","href":"data/GripperCommand/hasLift.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"hasOpen","qualifiedName":"data.GripperCommand.hasOpen","href":"data/GripperCommand/hasOpen.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"hasPinch","qualifiedName":"data.GripperCommand.hasPinch","href":"data/GripperCommand/hasPinch.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"hasRotate","qualifiedName":"data.GripperCommand.hasRotate","href":"data/GripperCommand/hasRotate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"hasServoAngle","qualifiedName":"data.GripperCommand.hasServoAngle","href":"data/GripperCommand/hasServoAngle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"hasSpin","qualifiedName":"data.GripperCommand.hasSpin","href":"data/GripperCommand/hasSpin.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"hasStop","qualifiedName":"data.GripperCommand.hasStop","href":"data/GripperCommand/hasStop.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"hasVersion","qualifiedName":"data.GripperCommand.hasVersion","href":"data/GripperCommand/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"info_","qualifiedName":"data.GripperCommand.info_","href":"data/GripperCommand/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"laserState","qualifiedName":"data.GripperCommand.laserState","href":"data/GripperCommand/laserState.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"lift","qualifiedName":"data.GripperCommand.lift","href":"data/GripperCommand/lift.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Move individual motors","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"open","qualifiedName":"data.GripperCommand.open","href":"data/GripperCommand/open.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Custom actions","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"pinch","qualifiedName":"data.GripperCommand.pinch","href":"data/GripperCommand/pinch.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"rotate","qualifiedName":"data.GripperCommand.rotate","href":"data/GripperCommand/rotate.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"servoAngle","qualifiedName":"data.GripperCommand.servoAngle","href":"data/GripperCommand/servoAngle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"spin","qualifiedName":"data.GripperCommand.spin","href":"data/GripperCommand/spin.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"stop","qualifiedName":"data.GripperCommand.stop","href":"data/GripperCommand/stop.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"General commands","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"version","qualifiedName":"data.GripperCommand.version","href":"data/GripperCommand/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperCommand","kind":3,"href":"data/GripperCommand-class.html"}},{"name":"GripperData","qualifiedName":"data.GripperData","href":"data/GripperData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"arm.pb","kind":9,"href":"data/data-library.html"}},{"name":"GripperData","qualifiedName":"data.GripperData.GripperData","href":"data/GripperData/GripperData.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"GripperData.fromBuffer","qualifiedName":"data.GripperData.GripperData.fromBuffer","href":"data/GripperData/GripperData.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"GripperData.fromJson","qualifiedName":"data.GripperData.GripperData.fromJson","href":"data/GripperData/GripperData.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"clearLaserState","qualifiedName":"data.GripperData.clearLaserState","href":"data/GripperData/clearLaserState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"clearLift","qualifiedName":"data.GripperData.clearLift","href":"data/GripperData/clearLift.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"clearPinch","qualifiedName":"data.GripperData.clearPinch","href":"data/GripperData/clearPinch.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"clearRotate","qualifiedName":"data.GripperData.clearRotate","href":"data/GripperData/clearRotate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"clearServoAngle","qualifiedName":"data.GripperData.clearServoAngle","href":"data/GripperData/clearServoAngle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"clearVersion","qualifiedName":"data.GripperData.clearVersion","href":"data/GripperData/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"clone","qualifiedName":"data.GripperData.clone","href":"data/GripperData/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"copyWith","qualifiedName":"data.GripperData.copyWith","href":"data/GripperData/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"create","qualifiedName":"data.GripperData.create","href":"data/GripperData/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.GripperData.createEmptyInstance","href":"data/GripperData/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"createRepeated","qualifiedName":"data.GripperData.createRepeated","href":"data/GripperData/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"ensureLift","qualifiedName":"data.GripperData.ensureLift","href":"data/GripperData/ensureLift.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"ensurePinch","qualifiedName":"data.GripperData.ensurePinch","href":"data/GripperData/ensurePinch.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"ensureRotate","qualifiedName":"data.GripperData.ensureRotate","href":"data/GripperData/ensureRotate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"ensureVersion","qualifiedName":"data.GripperData.ensureVersion","href":"data/GripperData/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"getDefault","qualifiedName":"data.GripperData.getDefault","href":"data/GripperData/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"hasLaserState","qualifiedName":"data.GripperData.hasLaserState","href":"data/GripperData/hasLaserState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"hasLift","qualifiedName":"data.GripperData.hasLift","href":"data/GripperData/hasLift.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"hasPinch","qualifiedName":"data.GripperData.hasPinch","href":"data/GripperData/hasPinch.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"hasRotate","qualifiedName":"data.GripperData.hasRotate","href":"data/GripperData/hasRotate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"hasServoAngle","qualifiedName":"data.GripperData.hasServoAngle","href":"data/GripperData/hasServoAngle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"hasVersion","qualifiedName":"data.GripperData.hasVersion","href":"data/GripperData/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"info_","qualifiedName":"data.GripperData.info_","href":"data/GripperData/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"laserState","qualifiedName":"data.GripperData.laserState","href":"data/GripperData/laserState.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"lift","qualifiedName":"data.GripperData.lift","href":"data/GripperData/lift.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"pinch","qualifiedName":"data.GripperData.pinch","href":"data/GripperData/pinch.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"rotate","qualifiedName":"data.GripperData.rotate","href":"data/GripperData/rotate.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"servoAngle","qualifiedName":"data.GripperData.servoAngle","href":"data/GripperData/servoAngle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"version","qualifiedName":"data.GripperData.version","href":"data/GripperData/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GripperData","kind":3,"href":"data/GripperData-class.html"}},{"name":"GripperMetrics","qualifiedName":"data.GripperMetrics","href":"data/GripperMetrics-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Metrics about the gripper on the HREI subsystem.","enclosedBy":{"name":"gripper","kind":9,"href":"data/data-library.html"}},{"name":"GripperMetrics","qualifiedName":"data.GripperMetrics.GripperMetrics","href":"data/GripperMetrics/GripperMetrics.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Metrics about the gripper.","enclosedBy":{"name":"GripperMetrics","kind":3,"href":"data/GripperMetrics-class.html"}},{"name":"allMetrics","qualifiedName":"data.GripperMetrics.allMetrics","href":"data/GripperMetrics/allMetrics.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of user-friendly explanations for each of the metrics.","enclosedBy":{"name":"GripperMetrics","kind":3,"href":"data/GripperMetrics-class.html"}},{"name":"getMotorData","qualifiedName":"data.GripperMetrics.getMotorData","href":"data/GripperMetrics/getMotorData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Returns a description of a MotorData.","enclosedBy":{"name":"GripperMetrics","kind":3,"href":"data/GripperMetrics-class.html"}},{"name":"name","qualifiedName":"data.GripperMetrics.name","href":"data/GripperMetrics/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A collective name for this group of metrics (usually the name of the subsystem).","enclosedBy":{"name":"GripperMetrics","kind":3,"href":"data/GripperMetrics-class.html"}},{"name":"parseVersion","qualifiedName":"data.GripperMetrics.parseVersion","href":"data/GripperMetrics/parseVersion.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Parses the version out of a given data packet.","enclosedBy":{"name":"GripperMetrics","kind":3,"href":"data/GripperMetrics-class.html"}},{"name":"supportedVersion","qualifiedName":"data.GripperMetrics.supportedVersion","href":"data/GripperMetrics/supportedVersion.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The currently-supported version for this Dashboard.","enclosedBy":{"name":"GripperMetrics","kind":3,"href":"data/GripperMetrics-class.html"}},{"name":"versionCommand","qualifiedName":"data.GripperMetrics.versionCommand","href":"data/GripperMetrics/versionCommand.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A command to notify the firmware of the Dashboard's supportedVersion.","enclosedBy":{"name":"GripperMetrics","kind":3,"href":"data/GripperMetrics-class.html"}},{"name":"Json","qualifiedName":"data.Json","href":"data/Json.html","kind":21,"overriddenDepth":0,"packageRank":0,"desc":"JSON data as a map.","enclosedBy":{"name":"socket_info","kind":9,"href":"data/data-library.html"}},{"name":"LimitedList","qualifiedName":"data.LimitedList","href":"data/LimitedList.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"A list that can manage its own length.","enclosedBy":{"name":"utils","kind":9,"href":"data/data-library.html"}},{"name":"pushWithLimit","qualifiedName":"data.LimitedList.pushWithLimit","href":"data/LimitedList/pushWithLimit.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Adds element to this list and pops an element to keep the total length within limit.","enclosedBy":{"name":"LimitedList","kind":6,"href":"data/LimitedList.html"}},{"name":"LogFormat","qualifiedName":"data.LogFormat","href":"data/LogFormat.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Formats BurtLog messages in plain-text. For the UI, use widgets.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"format","qualifiedName":"data.LogFormat.format","href":"data/LogFormat/format.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Formats BurtLog messages in plain-text. For the UI, use widgets.","enclosedBy":{"name":"LogFormat","kind":6,"href":"data/LogFormat.html"}},{"name":"LogLevelUtils","qualifiedName":"data.LogLevelUtils","href":"data/LogLevelUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"More human-friendly fields for BurtLogLevels.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"humanName","qualifiedName":"data.LogLevelUtils.humanName","href":"data/LogLevelUtils/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The human-readable name of this level.","enclosedBy":{"name":"LogLevelUtils","kind":6,"href":"data/LogLevelUtils.html"}},{"name":"isAtLeast","qualifiedName":"data.LogLevelUtils.isAtLeast","href":"data/LogLevelUtils/isAtLeast.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Whether this level is at least as severe as another level.","enclosedBy":{"name":"LogLevelUtils","kind":6,"href":"data/LogLevelUtils.html"}},{"name":"isMoreSevereThan","qualifiedName":"data.LogLevelUtils.isMoreSevereThan","href":"data/LogLevelUtils/isMoreSevereThan.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Whether this level is more severe than another level.","enclosedBy":{"name":"LogLevelUtils","kind":6,"href":"data/LogLevelUtils.html"}},{"name":"label","qualifiedName":"data.LogLevelUtils.label","href":"data/LogLevelUtils/label.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The label to represent this log.","enclosedBy":{"name":"LogLevelUtils","kind":6,"href":"data/LogLevelUtils.html"}},{"name":"MapRecords","qualifiedName":"data.MapRecords","href":"data/MapRecords.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Helpful extensions on maps.","enclosedBy":{"name":"utils","kind":9,"href":"data/data-library.html"}},{"name":"records","qualifiedName":"data.MapRecords.records","href":"data/MapRecords/records.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of key-value records in this map. Allows easier iteration than entries.","enclosedBy":{"name":"MapRecords","kind":6,"href":"data/MapRecords.html"}},{"name":"MarsCommand","qualifiedName":"data.MarsCommand","href":"data/MarsCommand-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"mars.pb","kind":9,"href":"data/data-library.html"}},{"name":"MarsCommand","qualifiedName":"data.MarsCommand.MarsCommand","href":"data/MarsCommand/MarsCommand.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"MarsCommand.fromBuffer","qualifiedName":"data.MarsCommand.MarsCommand.fromBuffer","href":"data/MarsCommand/MarsCommand.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"MarsCommand.fromJson","qualifiedName":"data.MarsCommand.MarsCommand.fromJson","href":"data/MarsCommand/MarsCommand.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"baseStationOverride","qualifiedName":"data.MarsCommand.baseStationOverride","href":"data/MarsCommand/baseStationOverride.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"clearBaseStationOverride","qualifiedName":"data.MarsCommand.clearBaseStationOverride","href":"data/MarsCommand/clearBaseStationOverride.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"clearRover","qualifiedName":"data.MarsCommand.clearRover","href":"data/MarsCommand/clearRover.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"clearSwivel","qualifiedName":"data.MarsCommand.clearSwivel","href":"data/MarsCommand/clearSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"clearTilt","qualifiedName":"data.MarsCommand.clearTilt","href":"data/MarsCommand/clearTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"clone","qualifiedName":"data.MarsCommand.clone","href":"data/MarsCommand/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"copyWith","qualifiedName":"data.MarsCommand.copyWith","href":"data/MarsCommand/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"create","qualifiedName":"data.MarsCommand.create","href":"data/MarsCommand/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.MarsCommand.createEmptyInstance","href":"data/MarsCommand/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"createRepeated","qualifiedName":"data.MarsCommand.createRepeated","href":"data/MarsCommand/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"ensureBaseStationOverride","qualifiedName":"data.MarsCommand.ensureBaseStationOverride","href":"data/MarsCommand/ensureBaseStationOverride.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"ensureRover","qualifiedName":"data.MarsCommand.ensureRover","href":"data/MarsCommand/ensureRover.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"getDefault","qualifiedName":"data.MarsCommand.getDefault","href":"data/MarsCommand/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"hasBaseStationOverride","qualifiedName":"data.MarsCommand.hasBaseStationOverride","href":"data/MarsCommand/hasBaseStationOverride.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"hasRover","qualifiedName":"data.MarsCommand.hasRover","href":"data/MarsCommand/hasRover.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"hasSwivel","qualifiedName":"data.MarsCommand.hasSwivel","href":"data/MarsCommand/hasSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"hasTilt","qualifiedName":"data.MarsCommand.hasTilt","href":"data/MarsCommand/hasTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"info_","qualifiedName":"data.MarsCommand.info_","href":"data/MarsCommand/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"rover","qualifiedName":"data.MarsCommand.rover","href":"data/MarsCommand/rover.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Automatic control","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"swivel","qualifiedName":"data.MarsCommand.swivel","href":"data/MarsCommand/swivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Manual control","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"tilt","qualifiedName":"data.MarsCommand.tilt","href":"data/MarsCommand/tilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsCommand","kind":3,"href":"data/MarsCommand-class.html"}},{"name":"MarsData","qualifiedName":"data.MarsData","href":"data/MarsData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"mars.pb","kind":9,"href":"data/data-library.html"}},{"name":"MarsData","qualifiedName":"data.MarsData.MarsData","href":"data/MarsData/MarsData.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"MarsData.fromBuffer","qualifiedName":"data.MarsData.MarsData.fromBuffer","href":"data/MarsData/MarsData.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"MarsData.fromJson","qualifiedName":"data.MarsData.MarsData.fromJson","href":"data/MarsData/MarsData.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"clearCoordinates","qualifiedName":"data.MarsData.clearCoordinates","href":"data/MarsData/clearCoordinates.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"clearStatus","qualifiedName":"data.MarsData.clearStatus","href":"data/MarsData/clearStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"clearSwivel","qualifiedName":"data.MarsData.clearSwivel","href":"data/MarsData/clearSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"clearTilt","qualifiedName":"data.MarsData.clearTilt","href":"data/MarsData/clearTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"clone","qualifiedName":"data.MarsData.clone","href":"data/MarsData/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"coordinates","qualifiedName":"data.MarsData.coordinates","href":"data/MarsData/coordinates.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"copyWith","qualifiedName":"data.MarsData.copyWith","href":"data/MarsData/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"create","qualifiedName":"data.MarsData.create","href":"data/MarsData/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.MarsData.createEmptyInstance","href":"data/MarsData/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"createRepeated","qualifiedName":"data.MarsData.createRepeated","href":"data/MarsData/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"ensureCoordinates","qualifiedName":"data.MarsData.ensureCoordinates","href":"data/MarsData/ensureCoordinates.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"getDefault","qualifiedName":"data.MarsData.getDefault","href":"data/MarsData/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"hasCoordinates","qualifiedName":"data.MarsData.hasCoordinates","href":"data/MarsData/hasCoordinates.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"hasStatus","qualifiedName":"data.MarsData.hasStatus","href":"data/MarsData/hasStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"hasSwivel","qualifiedName":"data.MarsData.hasSwivel","href":"data/MarsData/hasSwivel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"hasTilt","qualifiedName":"data.MarsData.hasTilt","href":"data/MarsData/hasTilt.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"info_","qualifiedName":"data.MarsData.info_","href":"data/MarsData/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"status","qualifiedName":"data.MarsData.status","href":"data/MarsData/status.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"swivel","qualifiedName":"data.MarsData.swivel","href":"data/MarsData/swivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"tilt","qualifiedName":"data.MarsData.tilt","href":"data/MarsData/tilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsData","kind":3,"href":"data/MarsData-class.html"}},{"name":"MarsStatus","qualifiedName":"data.MarsStatus","href":"data/MarsStatus-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"mars.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"FAILED_HANDSHAKE","qualifiedName":"data.MarsStatus.FAILED_HANDSHAKE","href":"data/MarsStatus/FAILED_HANDSHAKE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsStatus","kind":3,"href":"data/MarsStatus-class.html"}},{"name":"MARS_STATUS_UNDEFINED","qualifiedName":"data.MarsStatus.MARS_STATUS_UNDEFINED","href":"data/MarsStatus/MARS_STATUS_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsStatus","kind":3,"href":"data/MarsStatus-class.html"}},{"name":"PORT_NOT_FOUND","qualifiedName":"data.MarsStatus.PORT_NOT_FOUND","href":"data/MarsStatus/PORT_NOT_FOUND-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsStatus","kind":3,"href":"data/MarsStatus-class.html"}},{"name":"TEENSY_CONNECTED","qualifiedName":"data.MarsStatus.TEENSY_CONNECTED","href":"data/MarsStatus/TEENSY_CONNECTED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsStatus","kind":3,"href":"data/MarsStatus-class.html"}},{"name":"TEENSY_UNRESPONSIVE","qualifiedName":"data.MarsStatus.TEENSY_UNRESPONSIVE","href":"data/MarsStatus/TEENSY_UNRESPONSIVE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsStatus","kind":3,"href":"data/MarsStatus-class.html"}},{"name":"valueOf","qualifiedName":"data.MarsStatus.valueOf","href":"data/MarsStatus/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsStatus","kind":3,"href":"data/MarsStatus-class.html"}},{"name":"values","qualifiedName":"data.MarsStatus.values","href":"data/MarsStatus/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsStatus","kind":3,"href":"data/MarsStatus-class.html"}},{"name":"Message","qualifiedName":"data.Message","href":"data/Message.html","kind":21,"overriddenDepth":0,"packageRank":0,"desc":"A cleaner name for any message generated by Protobuf.","enclosedBy":{"name":"generated","kind":9,"href":"data/data-library.html"}},{"name":"MessageDecoder","qualifiedName":"data.MessageDecoder","href":"data/MessageDecoder.html","kind":21,"overriddenDepth":0,"packageRank":0,"desc":"A function that decodes a Protobuf messages serialized form.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"MessageHandler","qualifiedName":"data.MessageHandler","href":"data/MessageHandler.html","kind":21,"overriddenDepth":0,"packageRank":0,"desc":"A callback to execute with a specific serialized Protobuf message.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"MessageUtils","qualifiedName":"data.MessageUtils","href":"data/MessageUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Defines a friendlier method for getting the name of a message.","enclosedBy":{"name":"generated","kind":9,"href":"data/data-library.html"}},{"name":"messageName","qualifiedName":"data.MessageUtils.messageName","href":"data/MessageUtils/messageName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The name of the message as declared in the .proto file.","enclosedBy":{"name":"MessageUtils","kind":6,"href":"data/MessageUtils.html"}},{"name":"wrap","qualifiedName":"data.MessageUtils.wrap","href":"data/MessageUtils/wrap.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Returns a WrappedMessage representing this message with a timestamp","enclosedBy":{"name":"MessageUtils","kind":6,"href":"data/MessageUtils.html"}},{"name":"MetricLine","qualifiedName":"data.MetricLine","href":"data/MetricLine-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Class to construct a Metric","enclosedBy":{"name":"metrics","kind":9,"href":"data/data-library.html"}},{"name":"MetricLine","qualifiedName":"data.MetricLine.MetricLine","href":"data/MetricLine/MetricLine.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Constructor for the MetricLine class","enclosedBy":{"name":"MetricLine","kind":3,"href":"data/MetricLine-class.html"}},{"name":"hashCode","qualifiedName":"data.MetricLine.hashCode","href":"data/MetricLine/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"MetricLine","kind":3,"href":"data/MetricLine-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.MetricLine.noSuchMethod","href":"data/MetricLine/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"MetricLine","kind":3,"href":"data/MetricLine-class.html"}},{"name":"operator ==","qualifiedName":"data.MetricLine.operator ==","href":"data/MetricLine/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"MetricLine","kind":3,"href":"data/MetricLine-class.html"}},{"name":"runtimeType","qualifiedName":"data.MetricLine.runtimeType","href":"data/MetricLine/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"MetricLine","kind":3,"href":"data/MetricLine-class.html"}},{"name":"severity","qualifiedName":"data.MetricLine.severity","href":"data/MetricLine/severity.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Severity of the Metric","enclosedBy":{"name":"MetricLine","kind":3,"href":"data/MetricLine-class.html"}},{"name":"text","qualifiedName":"data.MetricLine.text","href":"data/MetricLine/text.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Message for the Metric","enclosedBy":{"name":"MetricLine","kind":3,"href":"data/MetricLine-class.html"}},{"name":"toString","qualifiedName":"data.MetricLine.toString","href":"data/MetricLine/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"MetricLine","kind":3,"href":"data/MetricLine-class.html"}},{"name":"Metrics","qualifiedName":"data.Metrics","href":"data/Metrics-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A readout of metrics reported by one of the rover's subsystems.","enclosedBy":{"name":"metrics","kind":9,"href":"data/data-library.html"}},{"name":"Metrics","qualifiedName":"data.Metrics.Metrics","href":"data/Metrics/Metrics.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor for metrics.","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"allMetrics","qualifiedName":"data.Metrics.allMetrics","href":"data/Metrics/allMetrics.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of user-friendly explanations for each of the metrics.","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"checkVersion","qualifiedName":"data.Metrics.checkVersion","href":"data/Metrics/checkVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Checks this message's version and checks for support.","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"data","qualifiedName":"data.Metrics.data","href":"data/Metrics/data.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The underlying data used to get these metrics.","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"matchesVersion","qualifiedName":"data.Metrics.matchesVersion","href":"data/Metrics/matchesVersion.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the Dashboard is certain the firmware matches the right version.","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"name","qualifiedName":"data.Metrics.name","href":"data/Metrics/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A collective name for this group of metrics (usually the name of the subsystem).","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"overallSeverity","qualifiedName":"data.Metrics.overallSeverity","href":"data/Metrics/overallSeverity.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Fetch the overall Security","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"parseVersion","qualifiedName":"data.Metrics.parseVersion","href":"data/Metrics/parseVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Parses the version out of a given data packet.","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"supportedVersion","qualifiedName":"data.Metrics.supportedVersion","href":"data/Metrics/supportedVersion.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The currently-supported version for this Dashboard.","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"update","qualifiedName":"data.Metrics.update","href":"data/Metrics/update.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates data with new data.","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"version","qualifiedName":"data.Metrics.version","href":"data/Metrics/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The version of the data that the firmware sends.","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"versionCommand","qualifiedName":"data.Metrics.versionCommand","href":"data/Metrics/versionCommand.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A command to notify the firmware of the Dashboard's supportedVersion.","enclosedBy":{"name":"Metrics","kind":3,"href":"data/Metrics-class.html"}},{"name":"MotorCommand","qualifiedName":"data.MotorCommand","href":"data/MotorCommand-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"arm.pb","kind":9,"href":"data/data-library.html"}},{"name":"MotorCommand","qualifiedName":"data.MotorCommand.MotorCommand","href":"data/MotorCommand/MotorCommand.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"MotorCommand.fromBuffer","qualifiedName":"data.MotorCommand.MotorCommand.fromBuffer","href":"data/MotorCommand/MotorCommand.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"MotorCommand.fromJson","qualifiedName":"data.MotorCommand.MotorCommand.fromJson","href":"data/MotorCommand/MotorCommand.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"angle","qualifiedName":"data.MotorCommand.angle","href":"data/MotorCommand/angle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"/ An angle to go to. Useful in IK.","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"clearAngle","qualifiedName":"data.MotorCommand.clearAngle","href":"data/MotorCommand/clearAngle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"clearMoveRadians","qualifiedName":"data.MotorCommand.clearMoveRadians","href":"data/MotorCommand/clearMoveRadians.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"clearMoveSteps","qualifiedName":"data.MotorCommand.clearMoveSteps","href":"data/MotorCommand/clearMoveSteps.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"clone","qualifiedName":"data.MotorCommand.clone","href":"data/MotorCommand/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"copyWith","qualifiedName":"data.MotorCommand.copyWith","href":"data/MotorCommand/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"create","qualifiedName":"data.MotorCommand.create","href":"data/MotorCommand/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.MotorCommand.createEmptyInstance","href":"data/MotorCommand/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"createRepeated","qualifiedName":"data.MotorCommand.createRepeated","href":"data/MotorCommand/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"getDefault","qualifiedName":"data.MotorCommand.getDefault","href":"data/MotorCommand/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"hasAngle","qualifiedName":"data.MotorCommand.hasAngle","href":"data/MotorCommand/hasAngle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"hasMoveRadians","qualifiedName":"data.MotorCommand.hasMoveRadians","href":"data/MotorCommand/hasMoveRadians.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"hasMoveSteps","qualifiedName":"data.MotorCommand.hasMoveSteps","href":"data/MotorCommand/hasMoveSteps.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"info_","qualifiedName":"data.MotorCommand.info_","href":"data/MotorCommand/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"moveRadians","qualifiedName":"data.MotorCommand.moveRadians","href":"data/MotorCommand/moveRadians.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Precise control: Move by radians","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"moveSteps","qualifiedName":"data.MotorCommand.moveSteps","href":"data/MotorCommand/moveSteps.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Debug control: Move by individual steps","enclosedBy":{"name":"MotorCommand","kind":3,"href":"data/MotorCommand-class.html"}},{"name":"MotorData","qualifiedName":"data.MotorData","href":"data/MotorData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"arm.pb","kind":9,"href":"data/data-library.html"}},{"name":"MotorData","qualifiedName":"data.MotorData.MotorData","href":"data/MotorData/MotorData.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"MotorData.fromBuffer","qualifiedName":"data.MotorData.MotorData.fromBuffer","href":"data/MotorData/MotorData.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"MotorData.fromJson","qualifiedName":"data.MotorData.MotorData.fromJson","href":"data/MotorData/MotorData.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"angle","qualifiedName":"data.MotorData.angle","href":"data/MotorData/angle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"clearAngle","qualifiedName":"data.MotorData.clearAngle","href":"data/MotorData/clearAngle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"clearCurrentStep","qualifiedName":"data.MotorData.clearCurrentStep","href":"data/MotorData/clearCurrentStep.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"clearDirection","qualifiedName":"data.MotorData.clearDirection","href":"data/MotorData/clearDirection.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"clearIsLimitSwitchPressed","qualifiedName":"data.MotorData.clearIsLimitSwitchPressed","href":"data/MotorData/clearIsLimitSwitchPressed.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"clearIsMoving","qualifiedName":"data.MotorData.clearIsMoving","href":"data/MotorData/clearIsMoving.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"clearTargetStep","qualifiedName":"data.MotorData.clearTargetStep","href":"data/MotorData/clearTargetStep.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"clone","qualifiedName":"data.MotorData.clone","href":"data/MotorData/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"copyWith","qualifiedName":"data.MotorData.copyWith","href":"data/MotorData/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"create","qualifiedName":"data.MotorData.create","href":"data/MotorData/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.MotorData.createEmptyInstance","href":"data/MotorData/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"createRepeated","qualifiedName":"data.MotorData.createRepeated","href":"data/MotorData/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"currentStep","qualifiedName":"data.MotorData.currentStep","href":"data/MotorData/currentStep.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"direction","qualifiedName":"data.MotorData.direction","href":"data/MotorData/direction.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"getDefault","qualifiedName":"data.MotorData.getDefault","href":"data/MotorData/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"hasAngle","qualifiedName":"data.MotorData.hasAngle","href":"data/MotorData/hasAngle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"hasCurrentStep","qualifiedName":"data.MotorData.hasCurrentStep","href":"data/MotorData/hasCurrentStep.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"hasDirection","qualifiedName":"data.MotorData.hasDirection","href":"data/MotorData/hasDirection.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"hasIsLimitSwitchPressed","qualifiedName":"data.MotorData.hasIsLimitSwitchPressed","href":"data/MotorData/hasIsLimitSwitchPressed.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"hasIsMoving","qualifiedName":"data.MotorData.hasIsMoving","href":"data/MotorData/hasIsMoving.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"hasTargetStep","qualifiedName":"data.MotorData.hasTargetStep","href":"data/MotorData/hasTargetStep.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"info_","qualifiedName":"data.MotorData.info_","href":"data/MotorData/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"isLimitSwitchPressed","qualifiedName":"data.MotorData.isLimitSwitchPressed","href":"data/MotorData/isLimitSwitchPressed.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"isMoving","qualifiedName":"data.MotorData.isMoving","href":"data/MotorData/isMoving.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"targetStep","qualifiedName":"data.MotorData.targetStep","href":"data/MotorData/targetStep.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorData","kind":3,"href":"data/MotorData-class.html"}},{"name":"MotorDirection","qualifiedName":"data.MotorDirection","href":"data/MotorDirection-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"arm.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"CLOCKWISE","qualifiedName":"data.MotorDirection.CLOCKWISE","href":"data/MotorDirection/CLOCKWISE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"CLOSING","qualifiedName":"data.MotorDirection.CLOSING","href":"data/MotorDirection/CLOSING-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"COUNTER_CLOCKWISE","qualifiedName":"data.MotorDirection.COUNTER_CLOCKWISE","href":"data/MotorDirection/COUNTER_CLOCKWISE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"DOWN","qualifiedName":"data.MotorDirection.DOWN","href":"data/MotorDirection/DOWN-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"LEFT","qualifiedName":"data.MotorDirection.LEFT","href":"data/MotorDirection/LEFT-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"MOTOR_DIRECTION_UNDEFINED","qualifiedName":"data.MotorDirection.MOTOR_DIRECTION_UNDEFINED","href":"data/MotorDirection/MOTOR_DIRECTION_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"NOT_MOVING","qualifiedName":"data.MotorDirection.NOT_MOVING","href":"data/MotorDirection/NOT_MOVING-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"OPENING","qualifiedName":"data.MotorDirection.OPENING","href":"data/MotorDirection/OPENING-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"RIGHT","qualifiedName":"data.MotorDirection.RIGHT","href":"data/MotorDirection/RIGHT-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"UP","qualifiedName":"data.MotorDirection.UP","href":"data/MotorDirection/UP-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"valueOf","qualifiedName":"data.MotorDirection.valueOf","href":"data/MotorDirection/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"values","qualifiedName":"data.MotorDirection.values","href":"data/MotorDirection/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MotorDirection","kind":3,"href":"data/MotorDirection-class.html"}},{"name":"MotorDirectionUtils","qualifiedName":"data.MotorDirectionUtils","href":"data/MotorDirectionUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Utilities for MotorDirections.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"humanName","qualifiedName":"data.MotorDirectionUtils.humanName","href":"data/MotorDirectionUtils/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The human-readable name of the direction","enclosedBy":{"name":"MotorDirectionUtils","kind":6,"href":"data/MotorDirectionUtils.html"}},{"name":"NetworkSettings","qualifiedName":"data.NetworkSettings","href":"data/NetworkSettings-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Settings related to network configuration.","enclosedBy":{"name":"settings","kind":9,"href":"data/data-library.html"}},{"name":"NetworkSettings","qualifiedName":"data.NetworkSettings.NetworkSettings","href":"data/NetworkSettings/NetworkSettings.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a new network settings object.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"NetworkSettings.fromJson","qualifiedName":"data.NetworkSettings.NetworkSettings.fromJson","href":"data/NetworkSettings/NetworkSettings.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Parses network settings from a JSON map.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"autonomySocket","qualifiedName":"data.NetworkSettings.autonomySocket","href":"data/NetworkSettings/autonomySocket.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The address and port of the autonomy program.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"connectionTimeout","qualifiedName":"data.NetworkSettings.connectionTimeout","href":"data/NetworkSettings/connectionTimeout.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The amount of time, in seconds, the dashboard should wait before determining it's\nlost connection to the rover. For reference, the rover should be sending messages\nat least once per second.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"hashCode","qualifiedName":"data.NetworkSettings.hashCode","href":"data/NetworkSettings/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.NetworkSettings.noSuchMethod","href":"data/NetworkSettings/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"operator ==","qualifiedName":"data.NetworkSettings.operator ==","href":"data/NetworkSettings/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"runtimeType","qualifiedName":"data.NetworkSettings.runtimeType","href":"data/NetworkSettings/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"subsystemsSocket","qualifiedName":"data.NetworkSettings.subsystemsSocket","href":"data/NetworkSettings/subsystemsSocket.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The address and port of the subsystems program.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"tankSocket","qualifiedName":"data.NetworkSettings.tankSocket","href":"data/NetworkSettings/tankSocket.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The address of the tank. The port is ignored.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"toJson","qualifiedName":"data.NetworkSettings.toJson","href":"data/NetworkSettings/toJson.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Serializes these settings to JSON.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"toString","qualifiedName":"data.NetworkSettings.toString","href":"data/NetworkSettings/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"videoSocket","qualifiedName":"data.NetworkSettings.videoSocket","href":"data/NetworkSettings/videoSocket.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The address and port of the video program.","enclosedBy":{"name":"NetworkSettings","kind":3,"href":"data/NetworkSettings-class.html"}},{"name":"NumUtils","qualifiedName":"data.NumUtils","href":"data/NumUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Helpful utils on doubles.","enclosedBy":{"name":"utils","kind":9,"href":"data/data-library.html"}},{"name":"format","qualifiedName":"data.NumUtils.format","href":"data/NumUtils/format.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Formats this number by rounding to 2 decimal points.","enclosedBy":{"name":"NumUtils","kind":6,"href":"data/NumUtils.html"}},{"name":"toDegrees","qualifiedName":"data.NumUtils.toDegrees","href":"data/NumUtils/toDegrees.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Converts this number (as radians) to degrees.","enclosedBy":{"name":"NumUtils","kind":6,"href":"data/NumUtils.html"}},{"name":"OperatingMode","qualifiedName":"data.OperatingMode","href":"data/OperatingMode.html","kind":5,"overriddenDepth":0,"packageRank":0,"desc":"A mode for operating the rover.","enclosedBy":{"name":"modes","kind":9,"href":"data/data-library.html"}},{"name":"hashCode","qualifiedName":"data.OperatingMode.hashCode","href":"data/OperatingMode/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"OperatingMode","kind":5,"href":"data/OperatingMode.html"}},{"name":"index","qualifiedName":"data.OperatingMode.index","href":"data/OperatingMode/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A numeric identifier for the enumerated value.","enclosedBy":{"name":"OperatingMode","kind":5,"href":"data/OperatingMode.html"}},{"name":"name","qualifiedName":"data.OperatingMode.name","href":"data/OperatingMode/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The name of this mode.","enclosedBy":{"name":"OperatingMode","kind":5,"href":"data/OperatingMode.html"}},{"name":"noSuchMethod","qualifiedName":"data.OperatingMode.noSuchMethod","href":"data/OperatingMode/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"OperatingMode","kind":5,"href":"data/OperatingMode.html"}},{"name":"operator ==","qualifiedName":"data.OperatingMode.operator ==","href":"data/OperatingMode/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"OperatingMode","kind":5,"href":"data/OperatingMode.html"}},{"name":"runtimeType","qualifiedName":"data.OperatingMode.runtimeType","href":"data/OperatingMode/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"OperatingMode","kind":5,"href":"data/OperatingMode.html"}},{"name":"toString","qualifiedName":"data.OperatingMode.toString","href":"data/OperatingMode/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"OperatingMode","kind":5,"href":"data/OperatingMode.html"}},{"name":"values","qualifiedName":"data.OperatingMode.values","href":"data/OperatingMode/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"A constant List of the values in this enum, in order of their declaration.","enclosedBy":{"name":"OperatingMode","kind":5,"href":"data/OperatingMode.html"}},{"name":"Orientation","qualifiedName":"data.Orientation","href":"data/Orientation-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"gps.pb","kind":9,"href":"data/data-library.html"}},{"name":"Orientation","qualifiedName":"data.Orientation.Orientation","href":"data/Orientation/Orientation.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"Orientation.fromBuffer","qualifiedName":"data.Orientation.Orientation.fromBuffer","href":"data/Orientation/Orientation.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"Orientation.fromJson","qualifiedName":"data.Orientation.Orientation.fromJson","href":"data/Orientation/Orientation.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"clearX","qualifiedName":"data.Orientation.clearX","href":"data/Orientation/clearX.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"clearY","qualifiedName":"data.Orientation.clearY","href":"data/Orientation/clearY.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"clearZ","qualifiedName":"data.Orientation.clearZ","href":"data/Orientation/clearZ.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"clone","qualifiedName":"data.Orientation.clone","href":"data/Orientation/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"copyWith","qualifiedName":"data.Orientation.copyWith","href":"data/Orientation/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"create","qualifiedName":"data.Orientation.create","href":"data/Orientation/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.Orientation.createEmptyInstance","href":"data/Orientation/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"createRepeated","qualifiedName":"data.Orientation.createRepeated","href":"data/Orientation/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"getDefault","qualifiedName":"data.Orientation.getDefault","href":"data/Orientation/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"hasX","qualifiedName":"data.Orientation.hasX","href":"data/Orientation/hasX.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"hasY","qualifiedName":"data.Orientation.hasY","href":"data/Orientation/hasY.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"hasZ","qualifiedName":"data.Orientation.hasZ","href":"data/Orientation/hasZ.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"info_","qualifiedName":"data.Orientation.info_","href":"data/Orientation/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"x","qualifiedName":"data.Orientation.x","href":"data/Orientation/x.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"y","qualifiedName":"data.Orientation.y","href":"data/Orientation/y.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"z","qualifiedName":"data.Orientation.z","href":"data/Orientation/z.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Orientation","kind":3,"href":"data/Orientation-class.html"}},{"name":"PositionMetrics","qualifiedName":"data.PositionMetrics","href":"data/PositionMetrics-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Metrics about the rover's position and orientation.","enclosedBy":{"name":"position","kind":9,"href":"data/data-library.html"}},{"name":"PositionMetrics","qualifiedName":"data.PositionMetrics.PositionMetrics","href":"data/PositionMetrics/PositionMetrics.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A collection of metrics relevant for monitoring the rover's GPS location.","enclosedBy":{"name":"PositionMetrics","kind":3,"href":"data/PositionMetrics-class.html"}},{"name":"allMetrics","qualifiedName":"data.PositionMetrics.allMetrics","href":"data/PositionMetrics/allMetrics.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of user-friendly explanations for each of the metrics.","enclosedBy":{"name":"PositionMetrics","kind":3,"href":"data/PositionMetrics-class.html"}},{"name":"angle","qualifiedName":"data.PositionMetrics.angle","href":"data/PositionMetrics/angle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle to orient the rover on the top-down map.","enclosedBy":{"name":"PositionMetrics","kind":3,"href":"data/PositionMetrics-class.html"}},{"name":"baseStation","qualifiedName":"data.PositionMetrics.baseStation","href":"data/PositionMetrics/baseStation.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The position of the base station. Setting this value updates the UI.","enclosedBy":{"name":"PositionMetrics","kind":3,"href":"data/PositionMetrics-class.html"}},{"name":"getRotationSeverity","qualifiedName":"data.PositionMetrics.getRotationSeverity","href":"data/PositionMetrics/getRotationSeverity.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets the severity of the rover's orientation for both pitch and roll.","enclosedBy":{"name":"PositionMetrics","kind":3,"href":"data/PositionMetrics-class.html"}},{"name":"name","qualifiedName":"data.PositionMetrics.name","href":"data/PositionMetrics/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A collective name for this group of metrics (usually the name of the subsystem).","enclosedBy":{"name":"PositionMetrics","kind":3,"href":"data/PositionMetrics-class.html"}},{"name":"parseVersion","qualifiedName":"data.PositionMetrics.parseVersion","href":"data/PositionMetrics/parseVersion.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Parses the version out of a given data packet.","enclosedBy":{"name":"PositionMetrics","kind":3,"href":"data/PositionMetrics-class.html"}},{"name":"pitch","qualifiedName":"data.PositionMetrics.pitch","href":"data/PositionMetrics/pitch.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle to orient the rover on a side view map","enclosedBy":{"name":"PositionMetrics","kind":3,"href":"data/PositionMetrics-class.html"}},{"name":"roll","qualifiedName":"data.PositionMetrics.roll","href":"data/PositionMetrics/roll.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle to orient the rover on a front view map","enclosedBy":{"name":"PositionMetrics","kind":3,"href":"data/PositionMetrics-class.html"}},{"name":"supportedVersion","qualifiedName":"data.PositionMetrics.supportedVersion","href":"data/PositionMetrics/supportedVersion.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The currently-supported version for this Dashboard.","enclosedBy":{"name":"PositionMetrics","kind":3,"href":"data/PositionMetrics-class.html"}},{"name":"versionCommand","qualifiedName":"data.PositionMetrics.versionCommand","href":"data/PositionMetrics/versionCommand.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A command to notify the firmware of the Dashboard's supportedVersion.","enclosedBy":{"name":"PositionMetrics","kind":3,"href":"data/PositionMetrics-class.html"}},{"name":"ProtoColor","qualifiedName":"data.ProtoColor","href":"data/ProtoColor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"drive.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"BLUE","qualifiedName":"data.ProtoColor.BLUE","href":"data/ProtoColor/BLUE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"GREEN","qualifiedName":"data.ProtoColor.GREEN","href":"data/ProtoColor/GREEN-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"PROTO_COLOR_UNDEFINED","qualifiedName":"data.ProtoColor.PROTO_COLOR_UNDEFINED","href":"data/ProtoColor/PROTO_COLOR_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"RED","qualifiedName":"data.ProtoColor.RED","href":"data/ProtoColor/RED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"UNLIT","qualifiedName":"data.ProtoColor.UNLIT","href":"data/ProtoColor/UNLIT-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"valueOf","qualifiedName":"data.ProtoColor.valueOf","href":"data/ProtoColor/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"values","qualifiedName":"data.ProtoColor.values","href":"data/ProtoColor/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"PumpState","qualifiedName":"data.PumpState","href":"data/PumpState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ The state of a pump. If undefined: don't do anything. If fill: turn on, wait, then turn off.","enclosedBy":{"name":"science.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"FILL","qualifiedName":"data.PumpState.FILL","href":"data/PumpState/FILL-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"PumpState","kind":3,"href":"data/PumpState-class.html"}},{"name":"PUMP_OFF","qualifiedName":"data.PumpState.PUMP_OFF","href":"data/PumpState/PUMP_OFF-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"PumpState","kind":3,"href":"data/PumpState-class.html"}},{"name":"PUMP_ON","qualifiedName":"data.PumpState.PUMP_ON","href":"data/PumpState/PUMP_ON-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"PumpState","kind":3,"href":"data/PumpState-class.html"}},{"name":"PUMP_STATE_UNDEFINED","qualifiedName":"data.PumpState.PUMP_STATE_UNDEFINED","href":"data/PumpState/PUMP_STATE_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"PumpState","kind":3,"href":"data/PumpState-class.html"}},{"name":"valueOf","qualifiedName":"data.PumpState.valueOf","href":"data/PumpState/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"PumpState","kind":3,"href":"data/PumpState-class.html"}},{"name":"values","qualifiedName":"data.PumpState.values","href":"data/PumpState/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"PumpState","kind":3,"href":"data/PumpState-class.html"}},{"name":"RawDataHandler","qualifiedName":"data.RawDataHandler","href":"data/RawDataHandler.html","kind":21,"overriddenDepth":0,"packageRank":0,"desc":"A callback to execute with raw Protobuf data.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"RoverPosition","qualifiedName":"data.RoverPosition","href":"data/RoverPosition-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"gps.pb","kind":9,"href":"data/data-library.html"}},{"name":"RoverPosition","qualifiedName":"data.RoverPosition.RoverPosition","href":"data/RoverPosition/RoverPosition.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"RoverPosition.fromBuffer","qualifiedName":"data.RoverPosition.RoverPosition.fromBuffer","href":"data/RoverPosition/RoverPosition.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"RoverPosition.fromJson","qualifiedName":"data.RoverPosition.RoverPosition.fromJson","href":"data/RoverPosition/RoverPosition.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"clearGps","qualifiedName":"data.RoverPosition.clearGps","href":"data/RoverPosition/clearGps.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"clearOrientation","qualifiedName":"data.RoverPosition.clearOrientation","href":"data/RoverPosition/clearOrientation.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"clearVersion","qualifiedName":"data.RoverPosition.clearVersion","href":"data/RoverPosition/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"clone","qualifiedName":"data.RoverPosition.clone","href":"data/RoverPosition/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"copyWith","qualifiedName":"data.RoverPosition.copyWith","href":"data/RoverPosition/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"create","qualifiedName":"data.RoverPosition.create","href":"data/RoverPosition/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.RoverPosition.createEmptyInstance","href":"data/RoverPosition/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"createRepeated","qualifiedName":"data.RoverPosition.createRepeated","href":"data/RoverPosition/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"ensureGps","qualifiedName":"data.RoverPosition.ensureGps","href":"data/RoverPosition/ensureGps.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"ensureOrientation","qualifiedName":"data.RoverPosition.ensureOrientation","href":"data/RoverPosition/ensureOrientation.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"ensureVersion","qualifiedName":"data.RoverPosition.ensureVersion","href":"data/RoverPosition/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"getDefault","qualifiedName":"data.RoverPosition.getDefault","href":"data/RoverPosition/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"gps","qualifiedName":"data.RoverPosition.gps","href":"data/RoverPosition/gps.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"hasGps","qualifiedName":"data.RoverPosition.hasGps","href":"data/RoverPosition/hasGps.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"hasOrientation","qualifiedName":"data.RoverPosition.hasOrientation","href":"data/RoverPosition/hasOrientation.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"hasVersion","qualifiedName":"data.RoverPosition.hasVersion","href":"data/RoverPosition/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"info_","qualifiedName":"data.RoverPosition.info_","href":"data/RoverPosition/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"orientation","qualifiedName":"data.RoverPosition.orientation","href":"data/RoverPosition/orientation.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"version","qualifiedName":"data.RoverPosition.version","href":"data/RoverPosition/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverPosition","kind":3,"href":"data/RoverPosition-class.html"}},{"name":"RoverStatus","qualifiedName":"data.RoverStatus","href":"data/RoverStatus-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ Changes the way the rover listens to incoming commands.\n/\n/ - When IDLE, all subsystems will ignore all commands\n/ - When MANUAL, all subsystems will accept all commands\n/ - When AUTONOMOUS, the rover will ignore commands from the dashboard","enclosedBy":{"name":"status.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"AUTONOMOUS","qualifiedName":"data.RoverStatus.AUTONOMOUS","href":"data/RoverStatus/AUTONOMOUS-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverStatus","kind":3,"href":"data/RoverStatus-class.html"}},{"name":"DISCONNECTED","qualifiedName":"data.RoverStatus.DISCONNECTED","href":"data/RoverStatus/DISCONNECTED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverStatus","kind":3,"href":"data/RoverStatus-class.html"}},{"name":"IDLE","qualifiedName":"data.RoverStatus.IDLE","href":"data/RoverStatus/IDLE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverStatus","kind":3,"href":"data/RoverStatus-class.html"}},{"name":"MANUAL","qualifiedName":"data.RoverStatus.MANUAL","href":"data/RoverStatus/MANUAL-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverStatus","kind":3,"href":"data/RoverStatus-class.html"}},{"name":"POWER_OFF","qualifiedName":"data.RoverStatus.POWER_OFF","href":"data/RoverStatus/POWER_OFF-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverStatus","kind":3,"href":"data/RoverStatus-class.html"}},{"name":"RESTART","qualifiedName":"data.RoverStatus.RESTART","href":"data/RoverStatus/RESTART-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverStatus","kind":3,"href":"data/RoverStatus-class.html"}},{"name":"valueOf","qualifiedName":"data.RoverStatus.valueOf","href":"data/RoverStatus/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverStatus","kind":3,"href":"data/RoverStatus-class.html"}},{"name":"values","qualifiedName":"data.RoverStatus.values","href":"data/RoverStatus/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverStatus","kind":3,"href":"data/RoverStatus-class.html"}},{"name":"RoverStatusHumanName","qualifiedName":"data.RoverStatusHumanName","href":"data/RoverStatusHumanName.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Gets a user-friendly name for a RoverStatus.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"humanName","qualifiedName":"data.RoverStatusHumanName.humanName","href":"data/RoverStatusHumanName/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Gets a user-friendly name for a RoverStatus.","enclosedBy":{"name":"RoverStatusHumanName","kind":6,"href":"data/RoverStatusHumanName.html"}},{"name":"RoverType","qualifiedName":"data.RoverType","href":"data/RoverType.html","kind":5,"overriddenDepth":0,"packageRank":0,"desc":"Which rover-like system to communicate with.","enclosedBy":{"name":"socket","kind":9,"href":"data/data-library.html"}},{"name":"hashCode","qualifiedName":"data.RoverType.hashCode","href":"data/RoverType/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"RoverType","kind":5,"href":"data/RoverType.html"}},{"name":"humanName","qualifiedName":"data.RoverType.humanName","href":"data/RoverType/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The human-friendly name for this RoverType.","enclosedBy":{"name":"RoverType","kind":5,"href":"data/RoverType.html"}},{"name":"index","qualifiedName":"data.RoverType.index","href":"data/RoverType/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A numeric identifier for the enumerated value.","enclosedBy":{"name":"RoverType","kind":5,"href":"data/RoverType.html"}},{"name":"noSuchMethod","qualifiedName":"data.RoverType.noSuchMethod","href":"data/RoverType/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"RoverType","kind":5,"href":"data/RoverType.html"}},{"name":"operator ==","qualifiedName":"data.RoverType.operator ==","href":"data/RoverType/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"RoverType","kind":5,"href":"data/RoverType.html"}},{"name":"runtimeType","qualifiedName":"data.RoverType.runtimeType","href":"data/RoverType/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"RoverType","kind":5,"href":"data/RoverType.html"}},{"name":"toString","qualifiedName":"data.RoverType.toString","href":"data/RoverType/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"RoverType","kind":5,"href":"data/RoverType.html"}},{"name":"values","qualifiedName":"data.RoverType.values","href":"data/RoverType/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"A constant List of the values in this enum, in order of their declaration.","enclosedBy":{"name":"RoverType","kind":5,"href":"data/RoverType.html"}},{"name":"SampleData","qualifiedName":"data.SampleData","href":"data/SampleData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Stores all the readings of one sensor for one sample.","enclosedBy":{"name":"science","kind":9,"href":"data/data-library.html"}},{"name":"SampleData","qualifiedName":"data.SampleData.SampleData","href":"data/SampleData/SampleData.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"addReading","qualifiedName":"data.SampleData.addReading","href":"data/SampleData/addReading.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Adds a new SensorReading with timestamp relative to firstTimestamp.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"average","qualifiedName":"data.SampleData.average","href":"data/SampleData/average.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The average value of readings.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"clear","qualifiedName":"data.SampleData.clear","href":"data/SampleData/clear.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Clears all readings.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"firstTimestamp","qualifiedName":"data.SampleData.firstTimestamp","href":"data/SampleData/firstTimestamp.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The Timestamp of the first reading.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"hashCode","qualifiedName":"data.SampleData.hashCode","href":"data/SampleData/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"max","qualifiedName":"data.SampleData.max","href":"data/SampleData/max.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The maximum value of readings.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"min","qualifiedName":"data.SampleData.min","href":"data/SampleData/min.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The minimum value of readings.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.SampleData.noSuchMethod","href":"data/SampleData/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"operator ==","qualifiedName":"data.SampleData.operator ==","href":"data/SampleData/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"readings","qualifiedName":"data.SampleData.readings","href":"data/SampleData/readings.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of the readings for this sample and sensor.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"runtimeType","qualifiedName":"data.SampleData.runtimeType","href":"data/SampleData/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"sum","qualifiedName":"data.SampleData.sum","href":"data/SampleData/sum.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The sum total of all the readings. Used to update average.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"toString","qualifiedName":"data.SampleData.toString","href":"data/SampleData/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"SampleData","kind":3,"href":"data/SampleData-class.html"}},{"name":"ScienceCommand","qualifiedName":"data.ScienceCommand","href":"data/ScienceCommand-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ A command to the science subsystem.","enclosedBy":{"name":"science.pb","kind":9,"href":"data/data-library.html"}},{"name":"ScienceCommand","qualifiedName":"data.ScienceCommand.ScienceCommand","href":"data/ScienceCommand/ScienceCommand.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"ScienceCommand.fromBuffer","qualifiedName":"data.ScienceCommand.ScienceCommand.fromBuffer","href":"data/ScienceCommand/ScienceCommand.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"ScienceCommand.fromJson","qualifiedName":"data.ScienceCommand.ScienceCommand.fromJson","href":"data/ScienceCommand/ScienceCommand.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"calibrate","qualifiedName":"data.ScienceCommand.calibrate","href":"data/ScienceCommand/calibrate.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"High level commands","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"carousel","qualifiedName":"data.ScienceCommand.carousel","href":"data/ScienceCommand/carousel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"carouselMotor","qualifiedName":"data.ScienceCommand.carouselMotor","href":"data/ScienceCommand/carouselMotor.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Individual control over each motor. Indicates steps to move","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearCalibrate","qualifiedName":"data.ScienceCommand.clearCalibrate","href":"data/ScienceCommand/clearCalibrate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearCarousel","qualifiedName":"data.ScienceCommand.clearCarousel","href":"data/ScienceCommand/clearCarousel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearCarouselMotor","qualifiedName":"data.ScienceCommand.clearCarouselMotor","href":"data/ScienceCommand/clearCarouselMotor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearFunnel","qualifiedName":"data.ScienceCommand.clearFunnel","href":"data/ScienceCommand/clearFunnel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearPumps","qualifiedName":"data.ScienceCommand.clearPumps","href":"data/ScienceCommand/clearPumps.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearSample","qualifiedName":"data.ScienceCommand.clearSample","href":"data/ScienceCommand/clearSample.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearScoop","qualifiedName":"data.ScienceCommand.clearScoop","href":"data/ScienceCommand/clearScoop.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearScoopMotor","qualifiedName":"data.ScienceCommand.clearScoopMotor","href":"data/ScienceCommand/clearScoopMotor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearState","qualifiedName":"data.ScienceCommand.clearState","href":"data/ScienceCommand/clearState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearStop","qualifiedName":"data.ScienceCommand.clearStop","href":"data/ScienceCommand/clearStop.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearSubsurfaceMotor","qualifiedName":"data.ScienceCommand.clearSubsurfaceMotor","href":"data/ScienceCommand/clearSubsurfaceMotor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearVersion","qualifiedName":"data.ScienceCommand.clearVersion","href":"data/ScienceCommand/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clone","qualifiedName":"data.ScienceCommand.clone","href":"data/ScienceCommand/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"copyWith","qualifiedName":"data.ScienceCommand.copyWith","href":"data/ScienceCommand/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"create","qualifiedName":"data.ScienceCommand.create","href":"data/ScienceCommand/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.ScienceCommand.createEmptyInstance","href":"data/ScienceCommand/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"createRepeated","qualifiedName":"data.ScienceCommand.createRepeated","href":"data/ScienceCommand/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"ensureVersion","qualifiedName":"data.ScienceCommand.ensureVersion","href":"data/ScienceCommand/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"funnel","qualifiedName":"data.ScienceCommand.funnel","href":"data/ScienceCommand/funnel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"getDefault","qualifiedName":"data.ScienceCommand.getDefault","href":"data/ScienceCommand/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasCalibrate","qualifiedName":"data.ScienceCommand.hasCalibrate","href":"data/ScienceCommand/hasCalibrate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasCarousel","qualifiedName":"data.ScienceCommand.hasCarousel","href":"data/ScienceCommand/hasCarousel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasCarouselMotor","qualifiedName":"data.ScienceCommand.hasCarouselMotor","href":"data/ScienceCommand/hasCarouselMotor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasFunnel","qualifiedName":"data.ScienceCommand.hasFunnel","href":"data/ScienceCommand/hasFunnel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasPumps","qualifiedName":"data.ScienceCommand.hasPumps","href":"data/ScienceCommand/hasPumps.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasSample","qualifiedName":"data.ScienceCommand.hasSample","href":"data/ScienceCommand/hasSample.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasScoop","qualifiedName":"data.ScienceCommand.hasScoop","href":"data/ScienceCommand/hasScoop.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasScoopMotor","qualifiedName":"data.ScienceCommand.hasScoopMotor","href":"data/ScienceCommand/hasScoopMotor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasState","qualifiedName":"data.ScienceCommand.hasState","href":"data/ScienceCommand/hasState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasStop","qualifiedName":"data.ScienceCommand.hasStop","href":"data/ScienceCommand/hasStop.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasSubsurfaceMotor","qualifiedName":"data.ScienceCommand.hasSubsurfaceMotor","href":"data/ScienceCommand/hasSubsurfaceMotor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasVersion","qualifiedName":"data.ScienceCommand.hasVersion","href":"data/ScienceCommand/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"info_","qualifiedName":"data.ScienceCommand.info_","href":"data/ScienceCommand/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"pumps","qualifiedName":"data.ScienceCommand.pumps","href":"data/ScienceCommand/pumps.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Control over other hardware","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"sample","qualifiedName":"data.ScienceCommand.sample","href":"data/ScienceCommand/sample.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"scoop","qualifiedName":"data.ScienceCommand.scoop","href":"data/ScienceCommand/scoop.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"scoopMotor","qualifiedName":"data.ScienceCommand.scoopMotor","href":"data/ScienceCommand/scoopMotor.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"state","qualifiedName":"data.ScienceCommand.state","href":"data/ScienceCommand/state.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"stop","qualifiedName":"data.ScienceCommand.stop","href":"data/ScienceCommand/stop.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"subsurfaceMotor","qualifiedName":"data.ScienceCommand.subsurfaceMotor","href":"data/ScienceCommand/subsurfaceMotor.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"version","qualifiedName":"data.ScienceCommand.version","href":"data/ScienceCommand/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"ScienceData","qualifiedName":"data.ScienceData","href":"data/ScienceData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ Data coming from the science subsystem.","enclosedBy":{"name":"science.pb","kind":9,"href":"data/data-library.html"}},{"name":"ScienceData","qualifiedName":"data.ScienceData.ScienceData","href":"data/ScienceData/ScienceData.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"ScienceData.fromBuffer","qualifiedName":"data.ScienceData.ScienceData.fromBuffer","href":"data/ScienceData/ScienceData.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"ScienceData.fromJson","qualifiedName":"data.ScienceData.ScienceData.fromJson","href":"data/ScienceData/ScienceData.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"clearCo2","qualifiedName":"data.ScienceData.clearCo2","href":"data/ScienceData/clearCo2.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"clearHumidity","qualifiedName":"data.ScienceData.clearHumidity","href":"data/ScienceData/clearHumidity.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"clearSample","qualifiedName":"data.ScienceData.clearSample","href":"data/ScienceData/clearSample.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"clearState","qualifiedName":"data.ScienceData.clearState","href":"data/ScienceData/clearState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"clearTemperature","qualifiedName":"data.ScienceData.clearTemperature","href":"data/ScienceData/clearTemperature.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"clearVersion","qualifiedName":"data.ScienceData.clearVersion","href":"data/ScienceData/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"clone","qualifiedName":"data.ScienceData.clone","href":"data/ScienceData/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"co2","qualifiedName":"data.ScienceData.co2","href":"data/ScienceData/co2.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Sensor data","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"copyWith","qualifiedName":"data.ScienceData.copyWith","href":"data/ScienceData/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"create","qualifiedName":"data.ScienceData.create","href":"data/ScienceData/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.ScienceData.createEmptyInstance","href":"data/ScienceData/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"createRepeated","qualifiedName":"data.ScienceData.createRepeated","href":"data/ScienceData/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"ensureVersion","qualifiedName":"data.ScienceData.ensureVersion","href":"data/ScienceData/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"getDefault","qualifiedName":"data.ScienceData.getDefault","href":"data/ScienceData/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"hasCo2","qualifiedName":"data.ScienceData.hasCo2","href":"data/ScienceData/hasCo2.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"hasHumidity","qualifiedName":"data.ScienceData.hasHumidity","href":"data/ScienceData/hasHumidity.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"hasSample","qualifiedName":"data.ScienceData.hasSample","href":"data/ScienceData/hasSample.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"hasState","qualifiedName":"data.ScienceData.hasState","href":"data/ScienceData/hasState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"hasTemperature","qualifiedName":"data.ScienceData.hasTemperature","href":"data/ScienceData/hasTemperature.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"hasVersion","qualifiedName":"data.ScienceData.hasVersion","href":"data/ScienceData/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"humidity","qualifiedName":"data.ScienceData.humidity","href":"data/ScienceData/humidity.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"info_","qualifiedName":"data.ScienceData.info_","href":"data/ScienceData/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"sample","qualifiedName":"data.ScienceData.sample","href":"data/ScienceData/sample.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"High-level data","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"state","qualifiedName":"data.ScienceData.state","href":"data/ScienceData/state.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"temperature","qualifiedName":"data.ScienceData.temperature","href":"data/ScienceData/temperature.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"version","qualifiedName":"data.ScienceData.version","href":"data/ScienceData/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"ScienceMetrics","qualifiedName":"data.ScienceMetrics","href":"data/ScienceMetrics-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Metrics reported by the science subsystem.","enclosedBy":{"name":"science","kind":9,"href":"data/data-library.html"}},{"name":"ScienceMetrics","qualifiedName":"data.ScienceMetrics.ScienceMetrics","href":"data/ScienceMetrics/ScienceMetrics.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A collection of metrics relevant for monitoring the rover's electrical status.","enclosedBy":{"name":"ScienceMetrics","kind":3,"href":"data/ScienceMetrics-class.html"}},{"name":"allMetrics","qualifiedName":"data.ScienceMetrics.allMetrics","href":"data/ScienceMetrics/allMetrics.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of user-friendly explanations for each of the metrics.","enclosedBy":{"name":"ScienceMetrics","kind":3,"href":"data/ScienceMetrics-class.html"}},{"name":"name","qualifiedName":"data.ScienceMetrics.name","href":"data/ScienceMetrics/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A collective name for this group of metrics (usually the name of the subsystem).","enclosedBy":{"name":"ScienceMetrics","kind":3,"href":"data/ScienceMetrics-class.html"}},{"name":"parseVersion","qualifiedName":"data.ScienceMetrics.parseVersion","href":"data/ScienceMetrics/parseVersion.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Parses the version out of a given data packet.","enclosedBy":{"name":"ScienceMetrics","kind":3,"href":"data/ScienceMetrics-class.html"}},{"name":"supportedVersion","qualifiedName":"data.ScienceMetrics.supportedVersion","href":"data/ScienceMetrics/supportedVersion.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The currently-supported version for this Dashboard.","enclosedBy":{"name":"ScienceMetrics","kind":3,"href":"data/ScienceMetrics-class.html"}},{"name":"update","qualifiedName":"data.ScienceMetrics.update","href":"data/ScienceMetrics/update.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Updates data with new data.","enclosedBy":{"name":"ScienceMetrics","kind":3,"href":"data/ScienceMetrics-class.html"}},{"name":"versionCommand","qualifiedName":"data.ScienceMetrics.versionCommand","href":"data/ScienceMetrics/versionCommand.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A command to notify the firmware of the Dashboard's supportedVersion.","enclosedBy":{"name":"ScienceMetrics","kind":3,"href":"data/ScienceMetrics-class.html"}},{"name":"ScienceResult","qualifiedName":"data.ScienceResult","href":"data/ScienceResult.html","kind":5,"overriddenDepth":0,"packageRank":0,"desc":"The result of a science test.","enclosedBy":{"name":"science","kind":9,"href":"data/data-library.html"}},{"name":"hashCode","qualifiedName":"data.ScienceResult.hashCode","href":"data/ScienceResult/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"ScienceResult","kind":5,"href":"data/ScienceResult.html"}},{"name":"index","qualifiedName":"data.ScienceResult.index","href":"data/ScienceResult/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A numeric identifier for the enumerated value.","enclosedBy":{"name":"ScienceResult","kind":5,"href":"data/ScienceResult.html"}},{"name":"noSuchMethod","qualifiedName":"data.ScienceResult.noSuchMethod","href":"data/ScienceResult/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"ScienceResult","kind":5,"href":"data/ScienceResult.html"}},{"name":"operator ==","qualifiedName":"data.ScienceResult.operator ==","href":"data/ScienceResult/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"ScienceResult","kind":5,"href":"data/ScienceResult.html"}},{"name":"runtimeType","qualifiedName":"data.ScienceResult.runtimeType","href":"data/ScienceResult/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"ScienceResult","kind":5,"href":"data/ScienceResult.html"}},{"name":"toString","qualifiedName":"data.ScienceResult.toString","href":"data/ScienceResult/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"ScienceResult","kind":5,"href":"data/ScienceResult.html"}},{"name":"values","qualifiedName":"data.ScienceResult.values","href":"data/ScienceResult/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"A constant List of the values in this enum, in order of their declaration.","enclosedBy":{"name":"ScienceResult","kind":5,"href":"data/ScienceResult.html"}},{"name":"ScienceSensor","qualifiedName":"data.ScienceSensor","href":"data/ScienceSensor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A sensor in the science subsystem.","enclosedBy":{"name":"science","kind":9,"href":"data/data-library.html"}},{"name":"ScienceSensor","qualifiedName":"data.ScienceSensor.ScienceSensor","href":"data/ScienceSensor/ScienceSensor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ScienceSensor","kind":3,"href":"data/ScienceSensor-class.html"}},{"name":"hashCode","qualifiedName":"data.ScienceSensor.hashCode","href":"data/ScienceSensor/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"ScienceSensor","kind":3,"href":"data/ScienceSensor-class.html"}},{"name":"name","qualifiedName":"data.ScienceSensor.name","href":"data/ScienceSensor/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The name of this sensor.","enclosedBy":{"name":"ScienceSensor","kind":3,"href":"data/ScienceSensor-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.ScienceSensor.noSuchMethod","href":"data/ScienceSensor/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"ScienceSensor","kind":3,"href":"data/ScienceSensor-class.html"}},{"name":"operator ==","qualifiedName":"data.ScienceSensor.operator ==","href":"data/ScienceSensor/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"ScienceSensor","kind":3,"href":"data/ScienceSensor-class.html"}},{"name":"runtimeType","qualifiedName":"data.ScienceSensor.runtimeType","href":"data/ScienceSensor/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"ScienceSensor","kind":3,"href":"data/ScienceSensor-class.html"}},{"name":"test","qualifiedName":"data.ScienceSensor.test","href":"data/ScienceSensor/test.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The test to determine the presence of life based on data from this sensor.","enclosedBy":{"name":"ScienceSensor","kind":3,"href":"data/ScienceSensor-class.html"}},{"name":"testDescription","qualifiedName":"data.ScienceSensor.testDescription","href":"data/ScienceSensor/testDescription.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A human-readable description of tests.","enclosedBy":{"name":"ScienceSensor","kind":3,"href":"data/ScienceSensor-class.html"}},{"name":"toString","qualifiedName":"data.ScienceSensor.toString","href":"data/ScienceSensor/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"ScienceSensor","kind":3,"href":"data/ScienceSensor-class.html"}},{"name":"ScienceSettings","qualifiedName":"data.ScienceSettings","href":"data/ScienceSettings-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Settings relating to science.","enclosedBy":{"name":"settings","kind":9,"href":"data/data-library.html"}},{"name":"ScienceSettings","qualifiedName":"data.ScienceSettings.ScienceSettings","href":"data/ScienceSettings/ScienceSettings.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ScienceSettings","kind":3,"href":"data/ScienceSettings-class.html"}},{"name":"ScienceSettings.fromJson","qualifiedName":"data.ScienceSettings.ScienceSettings.fromJson","href":"data/ScienceSettings/ScienceSettings.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Parses a ScienceSettings from JSON.","enclosedBy":{"name":"ScienceSettings","kind":3,"href":"data/ScienceSettings-class.html"}},{"name":"hashCode","qualifiedName":"data.ScienceSettings.hashCode","href":"data/ScienceSettings/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"ScienceSettings","kind":3,"href":"data/ScienceSettings-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.ScienceSettings.noSuchMethod","href":"data/ScienceSettings/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"ScienceSettings","kind":3,"href":"data/ScienceSettings-class.html"}},{"name":"numSamples","qualifiedName":"data.ScienceSettings.numSamples","href":"data/ScienceSettings/numSamples.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The number of samples collected by the science subsystem.","enclosedBy":{"name":"ScienceSettings","kind":3,"href":"data/ScienceSettings-class.html"}},{"name":"operator ==","qualifiedName":"data.ScienceSettings.operator ==","href":"data/ScienceSettings/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"ScienceSettings","kind":3,"href":"data/ScienceSettings-class.html"}},{"name":"runtimeType","qualifiedName":"data.ScienceSettings.runtimeType","href":"data/ScienceSettings/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"ScienceSettings","kind":3,"href":"data/ScienceSettings-class.html"}},{"name":"scrollableGraphs","qualifiedName":"data.ScienceSettings.scrollableGraphs","href":"data/ScienceSettings/scrollableGraphs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many frames to render per second.","enclosedBy":{"name":"ScienceSettings","kind":3,"href":"data/ScienceSettings-class.html"}},{"name":"toJson","qualifiedName":"data.ScienceSettings.toJson","href":"data/ScienceSettings/toJson.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Serializes these settings in JSON format.","enclosedBy":{"name":"ScienceSettings","kind":3,"href":"data/ScienceSettings-class.html"}},{"name":"toString","qualifiedName":"data.ScienceSettings.toString","href":"data/ScienceSettings/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"ScienceSettings","kind":3,"href":"data/ScienceSettings-class.html"}},{"name":"ScienceState","qualifiedName":"data.ScienceState","href":"data/ScienceState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ The state of the science subsystem. If not COLLECT_DATA, don't stream data at all.","enclosedBy":{"name":"science.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"COLLECT_DATA","qualifiedName":"data.ScienceState.COLLECT_DATA","href":"data/ScienceState/COLLECT_DATA-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceState","kind":3,"href":"data/ScienceState-class.html"}},{"name":"SCIENCE_STATE_UNDEFINED","qualifiedName":"data.ScienceState.SCIENCE_STATE_UNDEFINED","href":"data/ScienceState/SCIENCE_STATE_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceState","kind":3,"href":"data/ScienceState-class.html"}},{"name":"STOP_COLLECTING","qualifiedName":"data.ScienceState.STOP_COLLECTING","href":"data/ScienceState/STOP_COLLECTING-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceState","kind":3,"href":"data/ScienceState-class.html"}},{"name":"valueOf","qualifiedName":"data.ScienceState.valueOf","href":"data/ScienceState/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceState","kind":3,"href":"data/ScienceState-class.html"}},{"name":"values","qualifiedName":"data.ScienceState.values","href":"data/ScienceState/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceState","kind":3,"href":"data/ScienceState-class.html"}},{"name":"ScienceStateUtils","qualifiedName":"data.ScienceStateUtils","href":"data/ScienceStateUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Utilities for ScienceStates.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"humanName","qualifiedName":"data.ScienceStateUtils.humanName","href":"data/ScienceStateUtils/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The human-readable name of the task.","enclosedBy":{"name":"ScienceStateUtils","kind":6,"href":"data/ScienceStateUtils.html"}},{"name":"ScienceTest","qualifiedName":"data.ScienceTest","href":"data/ScienceTest.html","kind":21,"overriddenDepth":0,"packageRank":0,"desc":"A function that determines the presence of life based on sensor data.","enclosedBy":{"name":"science","kind":9,"href":"data/data-library.html"}},{"name":"SensorReading","qualifiedName":"data.SensorReading","href":"data/SensorReading-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A sensor reading with a timestamp.","enclosedBy":{"name":"sensor","kind":9,"href":"data/data-library.html"}},{"name":"SensorReading","qualifiedName":"data.SensorReading.SensorReading","href":"data/SensorReading/SensorReading.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"SensorReading","kind":3,"href":"data/SensorReading-class.html"}},{"name":"hashCode","qualifiedName":"data.SensorReading.hashCode","href":"data/SensorReading/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"SensorReading","kind":3,"href":"data/SensorReading-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.SensorReading.noSuchMethod","href":"data/SensorReading/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"SensorReading","kind":3,"href":"data/SensorReading-class.html"}},{"name":"operator ==","qualifiedName":"data.SensorReading.operator ==","href":"data/SensorReading/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"SensorReading","kind":3,"href":"data/SensorReading-class.html"}},{"name":"runtimeType","qualifiedName":"data.SensorReading.runtimeType","href":"data/SensorReading/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"SensorReading","kind":3,"href":"data/SensorReading-class.html"}},{"name":"time","qualifiedName":"data.SensorReading.time","href":"data/SensorReading/time.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The time this reading was taken, relative to the first reading.","enclosedBy":{"name":"SensorReading","kind":3,"href":"data/SensorReading-class.html"}},{"name":"toString","qualifiedName":"data.SensorReading.toString","href":"data/SensorReading/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"SensorReading","kind":3,"href":"data/SensorReading-class.html"}},{"name":"value","qualifiedName":"data.SensorReading.value","href":"data/SensorReading/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value from the sensor.","enclosedBy":{"name":"SensorReading","kind":3,"href":"data/SensorReading-class.html"}},{"name":"ServoState","qualifiedName":"data.ServoState","href":"data/ServoState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ The state of a servo. If undefined, don't open or close.","enclosedBy":{"name":"science.pbenum","kind":9,"href":"data/data-library.html"}},{"name":"SERVO_CLOSE","qualifiedName":"data.ServoState.SERVO_CLOSE","href":"data/ServoState/SERVO_CLOSE-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ServoState","kind":3,"href":"data/ServoState-class.html"}},{"name":"SERVO_OPEN","qualifiedName":"data.ServoState.SERVO_OPEN","href":"data/ServoState/SERVO_OPEN-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ServoState","kind":3,"href":"data/ServoState-class.html"}},{"name":"SERVO_STATE_UNDEFINED","qualifiedName":"data.ServoState.SERVO_STATE_UNDEFINED","href":"data/ServoState/SERVO_STATE_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ServoState","kind":3,"href":"data/ServoState-class.html"}},{"name":"valueOf","qualifiedName":"data.ServoState.valueOf","href":"data/ServoState/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ServoState","kind":3,"href":"data/ServoState-class.html"}},{"name":"values","qualifiedName":"data.ServoState.values","href":"data/ServoState/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ServoState","kind":3,"href":"data/ServoState-class.html"}},{"name":"Settings","qualifiedName":"data.Settings","href":"data/Settings-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Contains the settings for running the dashboard and the rover.","enclosedBy":{"name":"settings","kind":9,"href":"data/data-library.html"}},{"name":"Settings","qualifiedName":"data.Settings.Settings","href":"data/Settings/Settings.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"Settings.fromJson","qualifiedName":"data.Settings.Settings.fromJson","href":"data/Settings/Settings.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Initialize settings from Json.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"arm","qualifiedName":"data.Settings.arm","href":"data/Settings/arm.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Settings for the arm.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"dashboard","qualifiedName":"data.Settings.dashboard","href":"data/Settings/dashboard.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Settings related to the dashboard itself.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"easterEggs","qualifiedName":"data.Settings.easterEggs","href":"data/Settings/easterEggs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Settings for easter eggs.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"hashCode","qualifiedName":"data.Settings.hashCode","href":"data/Settings/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"network","qualifiedName":"data.Settings.network","href":"data/Settings/network.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Settings for the network, like IP addresses and ports.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.Settings.noSuchMethod","href":"data/Settings/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"operator ==","qualifiedName":"data.Settings.operator ==","href":"data/Settings/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"runtimeType","qualifiedName":"data.Settings.runtimeType","href":"data/Settings/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"science","qualifiedName":"data.Settings.science","href":"data/Settings/science.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Settings for the science analysis.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"toJson","qualifiedName":"data.Settings.toJson","href":"data/Settings/toJson.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Converts the data from the settings instance to Json.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"toString","qualifiedName":"data.Settings.toString","href":"data/Settings/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"Settings","kind":3,"href":"data/Settings-class.html"}},{"name":"SettingsParser","qualifiedName":"data.SettingsParser","href":"data/SettingsParser.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"A collection of functions for parsing Settings.","enclosedBy":{"name":"settings","kind":9,"href":"data/data-library.html"}},{"name":"getSocket","qualifiedName":"data.SettingsParser.getSocket","href":"data/SettingsParser/getSocket.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Parses a SocketInfo that may not be present.","enclosedBy":{"name":"SettingsParser","kind":6,"href":"data/SettingsParser.html"}},{"name":"Severity","qualifiedName":"data.Severity","href":"data/Severity.html","kind":5,"overriddenDepth":0,"packageRank":0,"desc":"The level of danger a message represents.","enclosedBy":{"name":"taskbar_message","kind":9,"href":"data/data-library.html"}},{"name":"hashCode","qualifiedName":"data.Severity.hashCode","href":"data/Severity/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"Severity","kind":5,"href":"data/Severity.html"}},{"name":"index","qualifiedName":"data.Severity.index","href":"data/Severity/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A numeric identifier for the enumerated value.","enclosedBy":{"name":"Severity","kind":5,"href":"data/Severity.html"}},{"name":"noSuchMethod","qualifiedName":"data.Severity.noSuchMethod","href":"data/Severity/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"Severity","kind":5,"href":"data/Severity.html"}},{"name":"operator ==","qualifiedName":"data.Severity.operator ==","href":"data/Severity/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"Severity","kind":5,"href":"data/Severity.html"}},{"name":"runtimeType","qualifiedName":"data.Severity.runtimeType","href":"data/Severity/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"Severity","kind":5,"href":"data/Severity.html"}},{"name":"toString","qualifiedName":"data.Severity.toString","href":"data/Severity/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"Severity","kind":5,"href":"data/Severity.html"}},{"name":"values","qualifiedName":"data.Severity.values","href":"data/Severity/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"A constant List of the values in this enum, in order of their declaration.","enclosedBy":{"name":"Severity","kind":5,"href":"data/Severity.html"}},{"name":"SocketInfo","qualifiedName":"data.SocketInfo","href":"data/SocketInfo-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Information about a socket.","enclosedBy":{"name":"socket_info","kind":9,"href":"data/data-library.html"}},{"name":"SocketInfo","qualifiedName":"data.SocketInfo.SocketInfo","href":"data/SocketInfo/SocketInfo.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"SocketInfo.fromJson","qualifiedName":"data.SocketInfo.SocketInfo.fromJson","href":"data/SocketInfo/SocketInfo.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Parses the socket data from a YAML map.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"SocketInfo.raw","qualifiedName":"data.SocketInfo.SocketInfo.raw","href":"data/SocketInfo/SocketInfo.raw.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Use this constructor to pass in a raw String for the address.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"address","qualifiedName":"data.SocketInfo.address","href":"data/SocketInfo/address.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The IP address of this socket.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"copyWith","qualifiedName":"data.SocketInfo.copyWith","href":"data/SocketInfo/copyWith.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A copy of this configuration, to avoid modifying the original.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"hashCode","qualifiedName":"data.SocketInfo.hashCode","href":"data/SocketInfo/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.SocketInfo.noSuchMethod","href":"data/SocketInfo/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"operator ==","qualifiedName":"data.SocketInfo.operator ==","href":"data/SocketInfo/operator_equals.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"port","qualifiedName":"data.SocketInfo.port","href":"data/SocketInfo/port.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The port that the socket is connected to.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"runtimeType","qualifiedName":"data.SocketInfo.runtimeType","href":"data/SocketInfo/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"toJson","qualifiedName":"data.SocketInfo.toJson","href":"data/SocketInfo/toJson.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"This socket's configuration in JSON format.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"toString","qualifiedName":"data.SocketInfo.toString","href":"data/SocketInfo/toString.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"SocketInfo","kind":3,"href":"data/SocketInfo-class.html"}},{"name":"SplitMode","qualifiedName":"data.SplitMode","href":"data/SplitMode.html","kind":5,"overriddenDepth":0,"packageRank":0,"desc":"Controls the way the Dashboard views split.","enclosedBy":{"name":"settings","kind":9,"href":"data/data-library.html"}},{"name":"hashCode","qualifiedName":"data.SplitMode.hashCode","href":"data/SplitMode/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"SplitMode","kind":5,"href":"data/SplitMode.html"}},{"name":"humanName","qualifiedName":"data.SplitMode.humanName","href":"data/SplitMode/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The name to show in the UI.","enclosedBy":{"name":"SplitMode","kind":5,"href":"data/SplitMode.html"}},{"name":"index","qualifiedName":"data.SplitMode.index","href":"data/SplitMode/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A numeric identifier for the enumerated value.","enclosedBy":{"name":"SplitMode","kind":5,"href":"data/SplitMode.html"}},{"name":"noSuchMethod","qualifiedName":"data.SplitMode.noSuchMethod","href":"data/SplitMode/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"SplitMode","kind":5,"href":"data/SplitMode.html"}},{"name":"operator ==","qualifiedName":"data.SplitMode.operator ==","href":"data/SplitMode/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"SplitMode","kind":5,"href":"data/SplitMode.html"}},{"name":"runtimeType","qualifiedName":"data.SplitMode.runtimeType","href":"data/SplitMode/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"SplitMode","kind":5,"href":"data/SplitMode.html"}},{"name":"toString","qualifiedName":"data.SplitMode.toString","href":"data/SplitMode/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"SplitMode","kind":5,"href":"data/SplitMode.html"}},{"name":"values","qualifiedName":"data.SplitMode.values","href":"data/SplitMode/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"A constant List of the values in this enum, in order of their declaration.","enclosedBy":{"name":"SplitMode","kind":5,"href":"data/SplitMode.html"}},{"name":"TaskbarMessage","qualifiedName":"data.TaskbarMessage","href":"data/TaskbarMessage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A message to show on the taskbar, with an associated severity.","enclosedBy":{"name":"taskbar_message","kind":9,"href":"data/data-library.html"}},{"name":"TaskbarMessage","qualifiedName":"data.TaskbarMessage.TaskbarMessage","href":"data/TaskbarMessage/TaskbarMessage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a message to show on the taskbar.","enclosedBy":{"name":"TaskbarMessage","kind":3,"href":"data/TaskbarMessage-class.html"}},{"name":"hashCode","qualifiedName":"data.TaskbarMessage.hashCode","href":"data/TaskbarMessage/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"TaskbarMessage","kind":3,"href":"data/TaskbarMessage-class.html"}},{"name":"noSuchMethod","qualifiedName":"data.TaskbarMessage.noSuchMethod","href":"data/TaskbarMessage/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"TaskbarMessage","kind":3,"href":"data/TaskbarMessage-class.html"}},{"name":"operator ==","qualifiedName":"data.TaskbarMessage.operator ==","href":"data/TaskbarMessage/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"TaskbarMessage","kind":3,"href":"data/TaskbarMessage-class.html"}},{"name":"runtimeType","qualifiedName":"data.TaskbarMessage.runtimeType","href":"data/TaskbarMessage/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"TaskbarMessage","kind":3,"href":"data/TaskbarMessage-class.html"}},{"name":"severity","qualifiedName":"data.TaskbarMessage.severity","href":"data/TaskbarMessage/severity.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The severity of this message.","enclosedBy":{"name":"TaskbarMessage","kind":3,"href":"data/TaskbarMessage-class.html"}},{"name":"text","qualifiedName":"data.TaskbarMessage.text","href":"data/TaskbarMessage/text.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The text of this message.","enclosedBy":{"name":"TaskbarMessage","kind":3,"href":"data/TaskbarMessage-class.html"}},{"name":"toString","qualifiedName":"data.TaskbarMessage.toString","href":"data/TaskbarMessage/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"TaskbarMessage","kind":3,"href":"data/TaskbarMessage-class.html"}},{"name":"ThemeModeUtils","qualifiedName":"data.ThemeModeUtils","href":"data/ThemeModeUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Helpful methods on ThemeModes.","enclosedBy":{"name":"settings","kind":9,"href":"data/data-library.html"}},{"name":"humanName","qualifiedName":"data.ThemeModeUtils.humanName","href":"data/ThemeModeUtils/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A human-friendly name for this mode.","enclosedBy":{"name":"ThemeModeUtils","kind":6,"href":"data/ThemeModeUtils.html"}},{"name":"Timestamp","qualifiedName":"data.Timestamp","href":"data/Timestamp-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A Timestamp represents a point in time independent of any time zone or local\ncalendar, encoded as a count of seconds and fractions of seconds at\nnanosecond resolution. The count is relative to an epoch at UTC midnight on\nJanuary 1, 1970, in the proleptic Gregorian calendar which extends the\nGregorian calendar backwards to year one.","enclosedBy":{"name":"timestamp.pb","kind":9,"href":"data/data-library.html"}},{"name":"Timestamp","qualifiedName":"data.Timestamp.Timestamp","href":"data/Timestamp/Timestamp.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"Timestamp.fromBuffer","qualifiedName":"data.Timestamp.Timestamp.fromBuffer","href":"data/Timestamp/Timestamp.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"Timestamp.fromJson","qualifiedName":"data.Timestamp.Timestamp.fromJson","href":"data/Timestamp/Timestamp.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"clearNanos","qualifiedName":"data.Timestamp.clearNanos","href":"data/Timestamp/clearNanos.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"clearSeconds","qualifiedName":"data.Timestamp.clearSeconds","href":"data/Timestamp/clearSeconds.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"clone","qualifiedName":"data.Timestamp.clone","href":"data/Timestamp/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"copyWith","qualifiedName":"data.Timestamp.copyWith","href":"data/Timestamp/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"create","qualifiedName":"data.Timestamp.create","href":"data/Timestamp/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.Timestamp.createEmptyInstance","href":"data/Timestamp/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"createRepeated","qualifiedName":"data.Timestamp.createRepeated","href":"data/Timestamp/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"fromDateTime","qualifiedName":"data.Timestamp.fromDateTime","href":"data/Timestamp/fromDateTime.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Creates a new instance from dateTime.","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"getDefault","qualifiedName":"data.Timestamp.getDefault","href":"data/Timestamp/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"hasNanos","qualifiedName":"data.Timestamp.hasNanos","href":"data/Timestamp/hasNanos.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"hasSeconds","qualifiedName":"data.Timestamp.hasSeconds","href":"data/Timestamp/hasSeconds.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"info_","qualifiedName":"data.Timestamp.info_","href":"data/Timestamp/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"nanos","qualifiedName":"data.Timestamp.nanos","href":"data/Timestamp/nanos.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Non-negative fractions of a second at nanosecond resolution. Negative\nsecond values with fractions must still have non-negative nanos values\nthat count forward in time. Must be from 0 to 999,999,999\ninclusive.","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"seconds","qualifiedName":"data.Timestamp.seconds","href":"data/Timestamp/seconds.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Represents seconds of UTC time since Unix epoch\n1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to\n9999-12-31T23:59:59Z inclusive.","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"toDateTime","qualifiedName":"data.Timestamp.toDateTime","href":"data/Timestamp/toDateTime.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Converts an instance to DateTime.","enclosedBy":{"name":"Timestamp","kind":3,"href":"data/Timestamp-class.html"}},{"name":"TimestampUtils","qualifiedName":"data.TimestampUtils","href":"data/TimestampUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Utilities for Timestamps.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"now","qualifiedName":"data.TimestampUtils.now","href":"data/TimestampUtils/now.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The Timestamp version of DateTime.now.","enclosedBy":{"name":"TimestampUtils","kind":6,"href":"data/TimestampUtils.html"}},{"name":"operator +","qualifiedName":"data.TimestampUtils.operator +","href":"data/TimestampUtils/operator_plus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Adds a Duration to a Timestamp.","enclosedBy":{"name":"TimestampUtils","kind":6,"href":"data/TimestampUtils.html"}},{"name":"operator -","qualifiedName":"data.TimestampUtils.operator -","href":"data/TimestampUtils/operator_minus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Subtracts the","enclosedBy":{"name":"TimestampUtils","kind":6,"href":"data/TimestampUtils.html"}},{"name":"UndefinedFilter","qualifiedName":"data.UndefinedFilter","href":"data/UndefinedFilter.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Utilities for a list of Protobuf enums.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"filtered","qualifiedName":"data.UndefinedFilter.filtered","href":"data/UndefinedFilter/filtered.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Filters out _UNDEFINED values from the list.","enclosedBy":{"name":"UndefinedFilter","kind":6,"href":"data/UndefinedFilter.html"}},{"name":"Unwrapper","qualifiedName":"data.Unwrapper","href":"data/Unwrapper.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Decodes a wrapped Protobuf message.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"decode","qualifiedName":"data.Unwrapper.decode","href":"data/Unwrapper/decode.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Decodes the wrapped message into a message of type T.","enclosedBy":{"name":"Unwrapper","kind":6,"href":"data/Unwrapper.html"}},{"name":"UpdateSetting","qualifiedName":"data.UpdateSetting","href":"data/UpdateSetting-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ Update a sensitive setting, such as the rover's status.\n/\n/ This message must be triggered manually and the recipient (usually the subsystems Pi)\n/ must respond with the exact same message to confirm its receipt.","enclosedBy":{"name":"status.pb","kind":9,"href":"data/data-library.html"}},{"name":"UpdateSetting","qualifiedName":"data.UpdateSetting.UpdateSetting","href":"data/UpdateSetting/UpdateSetting.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"UpdateSetting.fromBuffer","qualifiedName":"data.UpdateSetting.UpdateSetting.fromBuffer","href":"data/UpdateSetting/UpdateSetting.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"UpdateSetting.fromJson","qualifiedName":"data.UpdateSetting.UpdateSetting.fromJson","href":"data/UpdateSetting/UpdateSetting.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"clearStatus","qualifiedName":"data.UpdateSetting.clearStatus","href":"data/UpdateSetting/clearStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"clone","qualifiedName":"data.UpdateSetting.clone","href":"data/UpdateSetting/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"copyWith","qualifiedName":"data.UpdateSetting.copyWith","href":"data/UpdateSetting/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"create","qualifiedName":"data.UpdateSetting.create","href":"data/UpdateSetting/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.UpdateSetting.createEmptyInstance","href":"data/UpdateSetting/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"createRepeated","qualifiedName":"data.UpdateSetting.createRepeated","href":"data/UpdateSetting/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"getDefault","qualifiedName":"data.UpdateSetting.getDefault","href":"data/UpdateSetting/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"hasStatus","qualifiedName":"data.UpdateSetting.hasStatus","href":"data/UpdateSetting/hasStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"info_","qualifiedName":"data.UpdateSetting.info_","href":"data/UpdateSetting/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"status","qualifiedName":"data.UpdateSetting.status","href":"data/UpdateSetting/status.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"Version","qualifiedName":"data.Version","href":"data/Version-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"version.pb","kind":9,"href":"data/data-library.html"}},{"name":"Version","qualifiedName":"data.Version.Version","href":"data/Version/Version.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"Version.fromBuffer","qualifiedName":"data.Version.Version.fromBuffer","href":"data/Version/Version.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"Version.fromJson","qualifiedName":"data.Version.Version.fromJson","href":"data/Version/Version.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"clearMajor","qualifiedName":"data.Version.clearMajor","href":"data/Version/clearMajor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"clearMinor","qualifiedName":"data.Version.clearMinor","href":"data/Version/clearMinor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"clone","qualifiedName":"data.Version.clone","href":"data/Version/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"copyWith","qualifiedName":"data.Version.copyWith","href":"data/Version/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"create","qualifiedName":"data.Version.create","href":"data/Version/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.Version.createEmptyInstance","href":"data/Version/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"createRepeated","qualifiedName":"data.Version.createRepeated","href":"data/Version/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"getDefault","qualifiedName":"data.Version.getDefault","href":"data/Version/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"hasMajor","qualifiedName":"data.Version.hasMajor","href":"data/Version/hasMajor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"hasMinor","qualifiedName":"data.Version.hasMinor","href":"data/Version/hasMinor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"info_","qualifiedName":"data.Version.info_","href":"data/Version/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"major","qualifiedName":"data.Version.major","href":"data/Version/major.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"minor","qualifiedName":"data.Version.minor","href":"data/Version/minor.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Version","kind":3,"href":"data/Version-class.html"}},{"name":"VersionUtils","qualifiedName":"data.VersionUtils","href":"data/VersionUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Helpful methods on Versions.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"format","qualifiedName":"data.VersionUtils.format","href":"data/VersionUtils/format.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Formats the version in a human-readable format.","enclosedBy":{"name":"VersionUtils","kind":6,"href":"data/VersionUtils.html"}},{"name":"isCompatible","qualifiedName":"data.VersionUtils.isCompatible","href":"data/VersionUtils/isCompatible.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Whether another version is compatible with this one.","enclosedBy":{"name":"VersionUtils","kind":6,"href":"data/VersionUtils.html"}},{"name":"VideoCommand","qualifiedName":"data.VideoCommand","href":"data/VideoCommand-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ Make changes to a camera feed.","enclosedBy":{"name":"video.pb","kind":9,"href":"data/data-library.html"}},{"name":"VideoCommand","qualifiedName":"data.VideoCommand.VideoCommand","href":"data/VideoCommand/VideoCommand.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"VideoCommand.fromBuffer","qualifiedName":"data.VideoCommand.VideoCommand.fromBuffer","href":"data/VideoCommand/VideoCommand.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"VideoCommand.fromJson","qualifiedName":"data.VideoCommand.VideoCommand.fromJson","href":"data/VideoCommand/VideoCommand.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"clearDetails","qualifiedName":"data.VideoCommand.clearDetails","href":"data/VideoCommand/clearDetails.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"clearId","qualifiedName":"data.VideoCommand.clearId","href":"data/VideoCommand/clearId.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"clearTakeSnapshot","qualifiedName":"data.VideoCommand.clearTakeSnapshot","href":"data/VideoCommand/clearTakeSnapshot.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"clearVersion","qualifiedName":"data.VideoCommand.clearVersion","href":"data/VideoCommand/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"clone","qualifiedName":"data.VideoCommand.clone","href":"data/VideoCommand/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"copyWith","qualifiedName":"data.VideoCommand.copyWith","href":"data/VideoCommand/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"create","qualifiedName":"data.VideoCommand.create","href":"data/VideoCommand/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.VideoCommand.createEmptyInstance","href":"data/VideoCommand/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"createRepeated","qualifiedName":"data.VideoCommand.createRepeated","href":"data/VideoCommand/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"details","qualifiedName":"data.VideoCommand.details","href":"data/VideoCommand/details.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"/ The new details for this camera.\n/\n/ If changing CameraDetails.status, you cannot set it to CameraStatus.DISCONNECTED.","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"ensureDetails","qualifiedName":"data.VideoCommand.ensureDetails","href":"data/VideoCommand/ensureDetails.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"ensureVersion","qualifiedName":"data.VideoCommand.ensureVersion","href":"data/VideoCommand/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"getDefault","qualifiedName":"data.VideoCommand.getDefault","href":"data/VideoCommand/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"hasDetails","qualifiedName":"data.VideoCommand.hasDetails","href":"data/VideoCommand/hasDetails.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"hasId","qualifiedName":"data.VideoCommand.hasId","href":"data/VideoCommand/hasId.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"hasTakeSnapshot","qualifiedName":"data.VideoCommand.hasTakeSnapshot","href":"data/VideoCommand/hasTakeSnapshot.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"hasVersion","qualifiedName":"data.VideoCommand.hasVersion","href":"data/VideoCommand/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"id","qualifiedName":"data.VideoCommand.id","href":"data/VideoCommand/id.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"/ The unique ID of the camera to change.","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"info_","qualifiedName":"data.VideoCommand.info_","href":"data/VideoCommand/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"takeSnapshot","qualifiedName":"data.VideoCommand.takeSnapshot","href":"data/VideoCommand/takeSnapshot.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"version","qualifiedName":"data.VideoCommand.version","href":"data/VideoCommand/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoCommand","kind":3,"href":"data/VideoCommand-class.html"}},{"name":"VideoData","qualifiedName":"data.VideoData","href":"data/VideoData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ Reports data about a camera.","enclosedBy":{"name":"video.pb","kind":9,"href":"data/data-library.html"}},{"name":"VideoData","qualifiedName":"data.VideoData.VideoData","href":"data/VideoData/VideoData.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"VideoData.fromBuffer","qualifiedName":"data.VideoData.VideoData.fromBuffer","href":"data/VideoData/VideoData.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"VideoData.fromJson","qualifiedName":"data.VideoData.VideoData.fromJson","href":"data/VideoData/VideoData.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"clearDetails","qualifiedName":"data.VideoData.clearDetails","href":"data/VideoData/clearDetails.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"clearFrame","qualifiedName":"data.VideoData.clearFrame","href":"data/VideoData/clearFrame.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"clearId","qualifiedName":"data.VideoData.clearId","href":"data/VideoData/clearId.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"clearImagePath","qualifiedName":"data.VideoData.clearImagePath","href":"data/VideoData/clearImagePath.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"clearVersion","qualifiedName":"data.VideoData.clearVersion","href":"data/VideoData/clearVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"clone","qualifiedName":"data.VideoData.clone","href":"data/VideoData/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"copyWith","qualifiedName":"data.VideoData.copyWith","href":"data/VideoData/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"create","qualifiedName":"data.VideoData.create","href":"data/VideoData/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.VideoData.createEmptyInstance","href":"data/VideoData/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"createRepeated","qualifiedName":"data.VideoData.createRepeated","href":"data/VideoData/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"details","qualifiedName":"data.VideoData.details","href":"data/VideoData/details.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"/ The details for this camera.","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"ensureDetails","qualifiedName":"data.VideoData.ensureDetails","href":"data/VideoData/ensureDetails.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"ensureVersion","qualifiedName":"data.VideoData.ensureVersion","href":"data/VideoData/ensureVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"frame","qualifiedName":"data.VideoData.frame","href":"data/VideoData/frame.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"/ The latest frame from this camera.","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"getDefault","qualifiedName":"data.VideoData.getDefault","href":"data/VideoData/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"hasDetails","qualifiedName":"data.VideoData.hasDetails","href":"data/VideoData/hasDetails.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"hasFrame","qualifiedName":"data.VideoData.hasFrame","href":"data/VideoData/hasFrame.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"hasId","qualifiedName":"data.VideoData.hasId","href":"data/VideoData/hasId.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"hasImagePath","qualifiedName":"data.VideoData.hasImagePath","href":"data/VideoData/hasImagePath.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"hasVersion","qualifiedName":"data.VideoData.hasVersion","href":"data/VideoData/hasVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"id","qualifiedName":"data.VideoData.id","href":"data/VideoData/id.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"/ The unique ID of this camera.","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"imagePath","qualifiedName":"data.VideoData.imagePath","href":"data/VideoData/imagePath.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"info_","qualifiedName":"data.VideoData.info_","href":"data/VideoData/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"version","qualifiedName":"data.VideoData.version","href":"data/VideoData/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoData","kind":3,"href":"data/VideoData-class.html"}},{"name":"VideoDataUtils","qualifiedName":"data.VideoDataUtils","href":"data/VideoDataUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Extensions for VideoData.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"hasFrame","qualifiedName":"data.VideoDataUtils.hasFrame","href":"data/VideoDataUtils/hasFrame.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether this data has a frame to show.","enclosedBy":{"name":"VideoDataUtils","kind":6,"href":"data/VideoDataUtils.html"}},{"name":"VitalsMetrics","qualifiedName":"data.VitalsMetrics","href":"data/VitalsMetrics-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Metrics about the vitals of the rover.","enclosedBy":{"name":"vitals","kind":9,"href":"data/data-library.html"}},{"name":"VitalsMetrics","qualifiedName":"data.VitalsMetrics.VitalsMetrics","href":"data/VitalsMetrics/VitalsMetrics.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"VitalsMetrics","kind":3,"href":"data/VitalsMetrics-class.html"}},{"name":"allMetrics","qualifiedName":"data.VitalsMetrics.allMetrics","href":"data/VitalsMetrics/allMetrics.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of user-friendly explanations for each of the metrics.","enclosedBy":{"name":"VitalsMetrics","kind":3,"href":"data/VitalsMetrics-class.html"}},{"name":"drive","qualifiedName":"data.VitalsMetrics.drive","href":"data/VitalsMetrics/drive.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Provides access to the drive data.","enclosedBy":{"name":"VitalsMetrics","kind":3,"href":"data/VitalsMetrics-class.html"}},{"name":"name","qualifiedName":"data.VitalsMetrics.name","href":"data/VitalsMetrics/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A collective name for this group of metrics (usually the name of the subsystem).","enclosedBy":{"name":"VitalsMetrics","kind":3,"href":"data/VitalsMetrics-class.html"}},{"name":"parseVersion","qualifiedName":"data.VitalsMetrics.parseVersion","href":"data/VitalsMetrics/parseVersion.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Parses the version out of a given data packet.","enclosedBy":{"name":"VitalsMetrics","kind":3,"href":"data/VitalsMetrics-class.html"}},{"name":"supportedVersion","qualifiedName":"data.VitalsMetrics.supportedVersion","href":"data/VitalsMetrics/supportedVersion.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The currently-supported version for this Dashboard.","enclosedBy":{"name":"VitalsMetrics","kind":3,"href":"data/VitalsMetrics-class.html"}},{"name":"temperatureSeverity","qualifiedName":"data.VitalsMetrics.temperatureSeverity","href":"data/VitalsMetrics/temperatureSeverity.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The severity of the DriveData.batteryTemperature readings.","enclosedBy":{"name":"VitalsMetrics","kind":3,"href":"data/VitalsMetrics-class.html"}},{"name":"versionCommand","qualifiedName":"data.VitalsMetrics.versionCommand","href":"data/VitalsMetrics/versionCommand.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A command to notify the firmware of the Dashboard's supportedVersion.","enclosedBy":{"name":"VitalsMetrics","kind":3,"href":"data/VitalsMetrics-class.html"}},{"name":"voltageSeverity","qualifiedName":"data.VitalsMetrics.voltageSeverity","href":"data/VitalsMetrics/voltageSeverity.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The severity of the DriveData.batteryVoltage readings.","enclosedBy":{"name":"VitalsMetrics","kind":3,"href":"data/VitalsMetrics-class.html"}},{"name":"WrappedMessage","qualifiedName":"data.WrappedMessage","href":"data/WrappedMessage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"wrapper.pb","kind":9,"href":"data/data-library.html"}},{"name":"WrappedMessage","qualifiedName":"data.WrappedMessage.WrappedMessage","href":"data/WrappedMessage/WrappedMessage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"WrappedMessage.fromBuffer","qualifiedName":"data.WrappedMessage.WrappedMessage.fromBuffer","href":"data/WrappedMessage/WrappedMessage.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"WrappedMessage.fromJson","qualifiedName":"data.WrappedMessage.WrappedMessage.fromJson","href":"data/WrappedMessage/WrappedMessage.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"clearData","qualifiedName":"data.WrappedMessage.clearData","href":"data/WrappedMessage/clearData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"clearName","qualifiedName":"data.WrappedMessage.clearName","href":"data/WrappedMessage/clearName.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"clearTimestamp","qualifiedName":"data.WrappedMessage.clearTimestamp","href":"data/WrappedMessage/clearTimestamp.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"clone","qualifiedName":"data.WrappedMessage.clone","href":"data/WrappedMessage/clone.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates a deep copy of the fields in this message.\n(The generated code uses mergeFromMessage.)","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"copyWith","qualifiedName":"data.WrappedMessage.copyWith","href":"data/WrappedMessage/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"create","qualifiedName":"data.WrappedMessage.create","href":"data/WrappedMessage/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.WrappedMessage.createEmptyInstance","href":"data/WrappedMessage/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"createRepeated","qualifiedName":"data.WrappedMessage.createRepeated","href":"data/WrappedMessage/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"data","qualifiedName":"data.WrappedMessage.data","href":"data/WrappedMessage/data.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"ensureTimestamp","qualifiedName":"data.WrappedMessage.ensureTimestamp","href":"data/WrappedMessage/ensureTimestamp.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"getDefault","qualifiedName":"data.WrappedMessage.getDefault","href":"data/WrappedMessage/getDefault.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"hasData","qualifiedName":"data.WrappedMessage.hasData","href":"data/WrappedMessage/hasData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"hasName","qualifiedName":"data.WrappedMessage.hasName","href":"data/WrappedMessage/hasName.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"hasTimestamp","qualifiedName":"data.WrappedMessage.hasTimestamp","href":"data/WrappedMessage/hasTimestamp.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"info_","qualifiedName":"data.WrappedMessage.info_","href":"data/WrappedMessage/info_.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"name","qualifiedName":"data.WrappedMessage.name","href":"data/WrappedMessage/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"timestamp","qualifiedName":"data.WrappedMessage.timestamp","href":"data/WrappedMessage/timestamp.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"WrappedMessage","kind":3,"href":"data/WrappedMessage-class.html"}},{"name":"WrappedMessageHandler","qualifiedName":"data.WrappedMessageHandler","href":"data/WrappedMessageHandler.html","kind":21,"overriddenDepth":0,"packageRank":0,"desc":"A callback to handle any WrappedMessage.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"co2","qualifiedName":"data.co2","href":"data/co2-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The co2 sensor.","enclosedBy":{"name":"data","kind":9,"href":"data/data-library.html"}},{"name":"co2Test","qualifiedName":"data.co2Test","href":"data/co2Test.html","kind":8,"overriddenDepth":0,"packageRank":0,"desc":"The test to determine the presence of life based on CO2 data.\nThe max has to be greater than 10% greater than min for life to exist","enclosedBy":{"name":"science","kind":9,"href":"data/data-library.html"}},{"name":"getCommandName","qualifiedName":"data.getCommandName","href":"data/getCommandName.html","kind":8,"overriddenDepth":0,"packageRank":0,"desc":"Gets the name of the command message for the given device.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"getDataName","qualifiedName":"data.getDataName","href":"data/getDataName.html","kind":8,"overriddenDepth":0,"packageRank":0,"desc":"Gets the name of the data message for the given device.","enclosedBy":{"name":"protobuf","kind":9,"href":"data/data-library.html"}},{"name":"humidity","qualifiedName":"data.humidity","href":"data/humidity-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The humidity sensor.","enclosedBy":{"name":"data","kind":9,"href":"data/data-library.html"}},{"name":"humidityTest","qualifiedName":"data.humidityTest","href":"data/humidityTest.html","kind":8,"overriddenDepth":0,"packageRank":0,"desc":"The test to determine the presence of life based on humidity data.","enclosedBy":{"name":"science","kind":9,"href":"data/data-library.html"}},{"name":"sensors","qualifiedName":"data.sensors","href":"data/sensors-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"A list of all the sensors on the Science subsystem.","enclosedBy":{"name":"data","kind":9,"href":"data/data-library.html"}},{"name":"temperature","qualifiedName":"data.temperature","href":"data/temperature-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The temperature sensor.","enclosedBy":{"name":"data","kind":9,"href":"data/data-library.html"}},{"name":"temperatureTest","qualifiedName":"data.temperatureTest","href":"data/temperatureTest.html","kind":8,"overriddenDepth":0,"packageRank":0,"desc":"The test to determine the presence of life based on temperature data.","enclosedBy":{"name":"science","kind":9,"href":"data/data-library.html"}},{"name":"errors","qualifiedName":"errors","href":"errors/errors-library.html","kind":9,"overriddenDepth":0,"packageRank":0,"desc":""},{"name":"DashboardException","qualifiedName":"errors.DashboardException","href":"errors/DashboardException-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The base class for all exceptions thrown by the dashboard.","enclosedBy":{"name":"errors","kind":9,"href":"errors/errors-library.html"}},{"name":"DashboardException","qualifiedName":"errors.DashboardException.DashboardException","href":"errors/DashboardException/DashboardException.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Provides a const constructor.","enclosedBy":{"name":"DashboardException","kind":3,"href":"errors/DashboardException-class.html"}},{"name":"hashCode","qualifiedName":"errors.DashboardException.hashCode","href":"errors/DashboardException/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"DashboardException","kind":3,"href":"errors/DashboardException-class.html"}},{"name":"noSuchMethod","qualifiedName":"errors.DashboardException.noSuchMethod","href":"errors/DashboardException/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"DashboardException","kind":3,"href":"errors/DashboardException-class.html"}},{"name":"operator ==","qualifiedName":"errors.DashboardException.operator ==","href":"errors/DashboardException/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"DashboardException","kind":3,"href":"errors/DashboardException-class.html"}},{"name":"runtimeType","qualifiedName":"errors.DashboardException.runtimeType","href":"errors/DashboardException/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"DashboardException","kind":3,"href":"errors/DashboardException-class.html"}},{"name":"toString","qualifiedName":"errors.DashboardException.toString","href":"errors/DashboardException/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"DashboardException","kind":3,"href":"errors/DashboardException-class.html"}},{"name":"main","qualifiedName":"main","href":"main/main-library.html","kind":9,"overriddenDepth":0,"packageRank":0,"desc":"The entrypoint of the app."},{"name":"main","qualifiedName":"main.main","href":"main/main.html","kind":8,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"main","kind":9,"href":"main/main-library.html"}},{"name":"networkErrors","qualifiedName":"main.networkErrors","href":"main/networkErrors-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"Network errors that can be fixed by a simple reset.","enclosedBy":{"name":"main","kind":9,"href":"main/main-library.html"}},{"name":"models","qualifiedName":"models","href":"models/models-library.html","kind":9,"overriddenDepth":0,"packageRank":0,"desc":"A library that manages and controls the state of the app."},{"name":"AddressBuilder","qualifiedName":"models.AddressBuilder","href":"models/AddressBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A specialized TextBuilder to handle IP addresses.","enclosedBy":{"name":"builder","kind":9,"href":"models/models-library.html"}},{"name":"AddressBuilder","qualifiedName":"models.AddressBuilder.AddressBuilder","href":"models/AddressBuilder/AddressBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates an IP address builder with the given initial value.","enclosedBy":{"name":"AddressBuilder","kind":3,"href":"models/AddressBuilder-class.html"}},{"name":"regex","qualifiedName":"models.AddressBuilder.regex","href":"models/AddressBuilder/regex.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A regular expression representing a valid IP address.","enclosedBy":{"name":"AddressBuilder","kind":3,"href":"models/AddressBuilder-class.html"}},{"name":"update","qualifiedName":"models.AddressBuilder.update","href":"models/AddressBuilder/update.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Updates the value based on the user's input.","enclosedBy":{"name":"AddressBuilder","kind":3,"href":"models/AddressBuilder-class.html"}},{"name":"ArmControls","qualifiedName":"models.ArmControls","href":"models/ArmControls-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A RoverControls that controls the arm.","enclosedBy":{"name":"arm","kind":9,"href":"models/models-library.html"}},{"name":"ArmControls","qualifiedName":"models.ArmControls.ArmControls","href":"models/ArmControls/ArmControls.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"buttonMapping","qualifiedName":"models.ArmControls.buttonMapping","href":"models/ArmControls/buttonMapping.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A human-readable explanation of what the controls are.","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"ik","qualifiedName":"models.ArmControls.ik","href":"models/ArmControls/ik.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The coordinates of the gripper.","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"isAPressed","qualifiedName":"models.ArmControls.isAPressed","href":"models/ArmControls/isAPressed.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Tracks whether the A button is pressed, so the action is only done once.","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"isBPressed","qualifiedName":"models.ArmControls.isBPressed","href":"models/ArmControls/isBPressed.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Tracks whether the B button is pressed, so the action is only done once.","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"isXPressed","qualifiedName":"models.ArmControls.isXPressed","href":"models/ArmControls/isXPressed.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Tracks whether the X button is pressed, so the action is only done once.","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"isYPressed","qualifiedName":"models.ArmControls.isYPressed","href":"models/ArmControls/isYPressed.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Tracks whether the Y button is pressed, so the action is only done once.","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"mode","qualifiedName":"models.ArmControls.mode","href":"models/ArmControls/mode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The OperatingMode for these controls.","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"onDispose","qualifiedName":"models.ArmControls.onDispose","href":"models/ArmControls/onDispose.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of commands that disables the subsystem.","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"parseInputs","qualifiedName":"models.ArmControls.parseInputs","href":"models/ArmControls/parseInputs.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Return a list of commands based on the current state of the gamepad.","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"settings","qualifiedName":"models.ArmControls.settings","href":"models/ArmControls/settings.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The user's arm settings.","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"updateState","qualifiedName":"models.ArmControls.updateState","href":"models/ArmControls/updateState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Any logic to run before checking parseInputs.","enclosedBy":{"name":"ArmControls","kind":3,"href":"models/ArmControls-class.html"}},{"name":"ArmSettingsBuilder","qualifiedName":"models.ArmSettingsBuilder","href":"models/ArmSettingsBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder representing an ArmSettings.","enclosedBy":{"name":"settings_builder","kind":9,"href":"models/models-library.html"}},{"name":"ArmSettingsBuilder","qualifiedName":"models.ArmSettingsBuilder.ArmSettingsBuilder","href":"models/ArmSettingsBuilder/ArmSettingsBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Modifies the given ArmSettings.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"elbow","qualifiedName":"models.ArmSettingsBuilder.elbow","href":"models/ArmSettingsBuilder/elbow.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model for ArmSettings.elbow.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"ik","qualifiedName":"models.ArmSettingsBuilder.ik","href":"models/ArmSettingsBuilder/ik.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model for ArmSettings.ikIncrement.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.ArmSettingsBuilder.isValid","href":"models/ArmSettingsBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"lift","qualifiedName":"models.ArmSettingsBuilder.lift","href":"models/ArmSettingsBuilder/lift.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model for ArmSettings.lift.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"pinch","qualifiedName":"models.ArmSettingsBuilder.pinch","href":"models/ArmSettingsBuilder/pinch.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model for ArmSettings.pinch.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"rotate","qualifiedName":"models.ArmSettingsBuilder.rotate","href":"models/ArmSettingsBuilder/rotate.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model for ArmSettings.rotate.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"shoulder","qualifiedName":"models.ArmSettingsBuilder.shoulder","href":"models/ArmSettingsBuilder/shoulder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model for ArmSettings.shoulder.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"swivel","qualifiedName":"models.ArmSettingsBuilder.swivel","href":"models/ArmSettingsBuilder/swivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model for ArmSettings.swivel.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"updateIK","qualifiedName":"models.ArmSettingsBuilder.updateIK","href":"models/ArmSettingsBuilder/updateIK.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the useIK variable.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"useIK","qualifiedName":"models.ArmSettingsBuilder.useIK","href":"models/ArmSettingsBuilder/useIK.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to use manual control or IK.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"value","qualifiedName":"models.ArmSettingsBuilder.value","href":"models/ArmSettingsBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"ArmSettingsBuilder","kind":3,"href":"models/ArmSettingsBuilder-class.html"}},{"name":"AutonomyCell","qualifiedName":"models.AutonomyCell","href":"models/AutonomyCell.html","kind":5,"overriddenDepth":0,"packageRank":0,"desc":"Represents the state of a cell on the autonomy map.","enclosedBy":{"name":"map","kind":9,"href":"models/models-library.html"}},{"name":"hashCode","qualifiedName":"models.AutonomyCell.hashCode","href":"models/AutonomyCell/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"AutonomyCell","kind":5,"href":"models/AutonomyCell.html"}},{"name":"index","qualifiedName":"models.AutonomyCell.index","href":"models/AutonomyCell/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A numeric identifier for the enumerated value.","enclosedBy":{"name":"AutonomyCell","kind":5,"href":"models/AutonomyCell.html"}},{"name":"noSuchMethod","qualifiedName":"models.AutonomyCell.noSuchMethod","href":"models/AutonomyCell/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"AutonomyCell","kind":5,"href":"models/AutonomyCell.html"}},{"name":"operator ==","qualifiedName":"models.AutonomyCell.operator ==","href":"models/AutonomyCell/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"AutonomyCell","kind":5,"href":"models/AutonomyCell.html"}},{"name":"runtimeType","qualifiedName":"models.AutonomyCell.runtimeType","href":"models/AutonomyCell/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"AutonomyCell","kind":5,"href":"models/AutonomyCell.html"}},{"name":"toString","qualifiedName":"models.AutonomyCell.toString","href":"models/AutonomyCell/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"AutonomyCell","kind":5,"href":"models/AutonomyCell.html"}},{"name":"values","qualifiedName":"models.AutonomyCell.values","href":"models/AutonomyCell/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"A constant List of the values in this enum, in order of their declaration.","enclosedBy":{"name":"AutonomyCell","kind":5,"href":"models/AutonomyCell.html"}},{"name":"AutonomyCommandBuilder","qualifiedName":"models.AutonomyCommandBuilder","href":"models/AutonomyCommandBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder to modify and send an AutonomyCommand.","enclosedBy":{"name":"autonomy_command","kind":9,"href":"models/models-library.html"}},{"name":"AutonomyCommandBuilder","qualifiedName":"models.AutonomyCommandBuilder.AutonomyCommandBuilder","href":"models/AutonomyCommandBuilder/AutonomyCommandBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A constructor to call init when created.","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"abort","qualifiedName":"models.AutonomyCommandBuilder.abort","href":"models/AutonomyCommandBuilder/abort.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Forces the rover to go back to the previous waypoint.","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"dispose","qualifiedName":"models.AutonomyCommandBuilder.dispose","href":"models/AutonomyCommandBuilder/dispose.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"gps","qualifiedName":"models.AutonomyCommandBuilder.gps","href":"models/AutonomyCommandBuilder/gps.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model to edit the AutonomyCommand.destination.","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"init","qualifiedName":"models.AutonomyCommandBuilder.init","href":"models/AutonomyCommandBuilder/init.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Listens for incoming confirmations from the rover that it received the command.","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"isLoading","qualifiedName":"models.AutonomyCommandBuilder.isLoading","href":"models/AutonomyCommandBuilder/isLoading.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the dashboard is awaiting a response from the rover.","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.AutonomyCommandBuilder.isValid","href":"models/AutonomyCommandBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"otherBuilders","qualifiedName":"models.AutonomyCommandBuilder.otherBuilders","href":"models/AutonomyCommandBuilder/otherBuilders.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Other builders to listen to.","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"submit","qualifiedName":"models.AutonomyCommandBuilder.submit","href":"models/AutonomyCommandBuilder/submit.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sends this command to the rover using Sockets.autonomy.","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"task","qualifiedName":"models.AutonomyCommandBuilder.task","href":"models/AutonomyCommandBuilder/task.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The type of task the rover should complete.","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"updateTask","qualifiedName":"models.AutonomyCommandBuilder.updateTask","href":"models/AutonomyCommandBuilder/updateTask.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the type of task being performed.","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"value","qualifiedName":"models.AutonomyCommandBuilder.value","href":"models/AutonomyCommandBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"AutonomyCommandBuilder","kind":3,"href":"models/AutonomyCommandBuilder-class.html"}},{"name":"AutonomyModel","qualifiedName":"models.AutonomyModel","href":"models/AutonomyModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A view model for the autonomy page to render a grid map.","enclosedBy":{"name":"map","kind":9,"href":"models/models-library.html"}},{"name":"AutonomyModel","qualifiedName":"models.AutonomyModel.AutonomyModel","href":"models/AutonomyModel/AutonomyModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Listens for incoming autonomy or position data.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"badAppleAudioPlayer","qualifiedName":"models.AutonomyModel.badAppleAudioPlayer","href":"models/AutonomyModel/badAppleAudioPlayer.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The audio player for the Bad Apple music","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"badAppleFps","qualifiedName":"models.AutonomyModel.badAppleFps","href":"models/AutonomyModel/badAppleFps-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"How many frames in a second are being shown","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"badAppleFrame","qualifiedName":"models.AutonomyModel.badAppleFrame","href":"models/AutonomyModel/badAppleFrame.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Which frame in the Bad Apple video we are up to right now","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"badAppleLastFrame","qualifiedName":"models.AutonomyModel.badAppleLastFrame","href":"models/AutonomyModel/badAppleLastFrame-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The last frame of Bad Apple","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"badAppleTimer","qualifiedName":"models.AutonomyModel.badAppleTimer","href":"models/AutonomyModel/badAppleTimer.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A timer to update the map for every frame of Bad Apple","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"clearMarkers","qualifiedName":"models.AutonomyModel.clearMarkers","href":"models/AutonomyModel/clearMarkers.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Deletes all the markers in markers.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"data","qualifiedName":"models.AutonomyModel.data","href":"models/AutonomyModel/data.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The autonomy data as received from the rover.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"dispose","qualifiedName":"models.AutonomyModel.dispose","href":"models/AutonomyModel/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"empty","qualifiedName":"models.AutonomyModel.empty","href":"models/AutonomyModel/empty.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"An empty grid of size gridSize.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"gpsToBlock","qualifiedName":"models.AutonomyModel.gpsToBlock","href":"models/AutonomyModel/gpsToBlock.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Converts a decimal GPS coordinate to an index representing the block in the grid.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"grid","qualifiedName":"models.AutonomyModel.grid","href":"models/AutonomyModel/grid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The grid of size gridSize with the rover in the center, ready to draw on the UI.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"gridSize","qualifiedName":"models.AutonomyModel.gridSize","href":"models/AutonomyModel/gridSize.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The amount of blocks in the width and height of the grid.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"init","qualifiedName":"models.AutonomyModel.init","href":"models/AutonomyModel/init.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Initializes the view model.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"isPlayingBadApple","qualifiedName":"models.AutonomyModel.isPlayingBadApple","href":"models/AutonomyModel/isPlayingBadApple.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the UI is currently playing Bad Apple","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"markCell","qualifiedName":"models.AutonomyModel.markCell","href":"models/AutonomyModel/markCell.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Calculates a new position for gps based on offset and adds it to the list.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"markerBuilder","qualifiedName":"models.AutonomyModel.markerBuilder","href":"models/AutonomyModel/markerBuilder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model to edit the coordinate of the marker.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"markers","qualifiedName":"models.AutonomyModel.markers","href":"models/AutonomyModel/markers.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of markers manually placed by the user. Useful for the Extreme Retrieval Mission.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"offset","qualifiedName":"models.AutonomyModel.offset","href":"models/AutonomyModel/offset.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The offset to add to all other coordinates, based on roverPosition. See recenterRover.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"onNewData","qualifiedName":"models.AutonomyModel.onNewData","href":"models/AutonomyModel/onNewData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A handler to call when new data arrives. Updates data and the UI.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"placeMarker","qualifiedName":"models.AutonomyModel.placeMarker","href":"models/AutonomyModel/placeMarker.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Places the marker in markerBuilder.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"placeMarkerOnRover","qualifiedName":"models.AutonomyModel.placeMarkerOnRover","href":"models/AutonomyModel/placeMarkerOnRover.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Places a marker at the rover's current position.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"recenterRover","qualifiedName":"models.AutonomyModel.recenterRover","href":"models/AutonomyModel/recenterRover.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Determines the new offset based on the current roverPosition.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"roverHeading","qualifiedName":"models.AutonomyModel.roverHeading","href":"models/AutonomyModel/roverHeading.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The rover's heading","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"roverPosition","qualifiedName":"models.AutonomyModel.roverPosition","href":"models/AutonomyModel/roverPosition.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The rover's current position.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"startBadApple","qualifiedName":"models.AutonomyModel.startBadApple","href":"models/AutonomyModel/startBadApple.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Starts playing Bad Apple.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"stopBadApple","qualifiedName":"models.AutonomyModel.stopBadApple","href":"models/AutonomyModel/stopBadApple.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Stops playing Bad Apple and resets the UI.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"updateMarker","qualifiedName":"models.AutonomyModel.updateMarker","href":"models/AutonomyModel/updateMarker.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Removes a marker in gps","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"zoom","qualifiedName":"models.AutonomyModel.zoom","href":"models/AutonomyModel/zoom.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Zooms in or out by modifying gridSize.","enclosedBy":{"name":"AutonomyModel","kind":3,"href":"models/AutonomyModel-class.html"}},{"name":"CameraControls","qualifiedName":"models.CameraControls","href":"models/CameraControls-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A RoverControls for the rover's front and rear cameras.","enclosedBy":{"name":"camera","kind":9,"href":"models/models-library.html"}},{"name":"CameraControls","qualifiedName":"models.CameraControls.CameraControls","href":"models/CameraControls/CameraControls.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"armTilt","qualifiedName":"models.CameraControls.armTilt","href":"models/CameraControls/armTilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle of the arm camera tilt.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"buttonMapping","qualifiedName":"models.CameraControls.buttonMapping","href":"models/CameraControls/buttonMapping.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A human-readable explanation of what the controls are.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"cameraSwivelIncrement","qualifiedName":"models.CameraControls.cameraSwivelIncrement","href":"models/CameraControls/cameraSwivelIncrement-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"How far to swivel the cameras each tick.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"cameraTiltIncrement","qualifiedName":"models.CameraControls.cameraTiltIncrement","href":"models/CameraControls/cameraTiltIncrement-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"How far to tilt the cameras each tick.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"frontSwivel","qualifiedName":"models.CameraControls.frontSwivel","href":"models/CameraControls/frontSwivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle of the front swivel servo.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"frontTilt","qualifiedName":"models.CameraControls.frontTilt","href":"models/CameraControls/frontTilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle of the front tilt servo.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"mode","qualifiedName":"models.CameraControls.mode","href":"models/CameraControls/mode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The OperatingMode for these controls.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"onDispose","qualifiedName":"models.CameraControls.onDispose","href":"models/CameraControls/onDispose.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of commands that disables the subsystem.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"parseInputs","qualifiedName":"models.CameraControls.parseInputs","href":"models/CameraControls/parseInputs.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Return a list of commands based on the current state of the gamepad.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"rearSwivel","qualifiedName":"models.CameraControls.rearSwivel","href":"models/CameraControls/rearSwivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle of the rear swivel servo.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"rearTilt","qualifiedName":"models.CameraControls.rearTilt","href":"models/CameraControls/rearTilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle of the rear tilt servo.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"updateState","qualifiedName":"models.CameraControls.updateState","href":"models/CameraControls/updateState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Any logic to run before checking parseInputs.","enclosedBy":{"name":"CameraControls","kind":3,"href":"models/CameraControls-class.html"}},{"name":"CameraDetailsBuilder","qualifiedName":"models.CameraDetailsBuilder","href":"models/CameraDetailsBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder view model to modify a CameraDetails.","enclosedBy":{"name":"video_builder","kind":9,"href":"models/models-library.html"}},{"name":"CameraDetailsBuilder","qualifiedName":"models.CameraDetailsBuilder.CameraDetailsBuilder","href":"models/CameraDetailsBuilder/CameraDetailsBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a ValueBuilder view model to change a CameraDetails.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"autofocus","qualifiedName":"models.CameraDetailsBuilder.autofocus","href":"models/CameraDetailsBuilder/autofocus.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Current status of the camera's autofocus","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"error","qualifiedName":"models.CameraDetailsBuilder.error","href":"models/CameraDetailsBuilder/error.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The error that occurred when changing these settings, if any.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"fps","qualifiedName":"models.CameraDetailsBuilder.fps","href":"models/CameraDetailsBuilder/fps.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many frames per second to capture. See CameraDetails.fps.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"isLoading","qualifiedName":"models.CameraDetailsBuilder.isLoading","href":"models/CameraDetailsBuilder/isLoading.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether changes are loading.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.CameraDetailsBuilder.isValid","href":"models/CameraDetailsBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"name","qualifiedName":"models.CameraDetailsBuilder.name","href":"models/CameraDetailsBuilder/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The name of this camera.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"okStatuses","qualifiedName":"models.CameraDetailsBuilder.okStatuses","href":"models/CameraDetailsBuilder/okStatuses-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"Statuses the user can set the camera to.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"otherBuilders","qualifiedName":"models.CameraDetailsBuilder.otherBuilders","href":"models/CameraDetailsBuilder/otherBuilders.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Other builders to listen to.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"quality","qualifiedName":"models.CameraDetailsBuilder.quality","href":"models/CameraDetailsBuilder/quality.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The quality of the camera, as a percentage. See CameraDetails.quality.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"resolutionHeight","qualifiedName":"models.CameraDetailsBuilder.resolutionHeight","href":"models/CameraDetailsBuilder/resolutionHeight.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The camera resolution's height. See CameraDetails.resolutionHeight.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"resolutionWidth","qualifiedName":"models.CameraDetailsBuilder.resolutionWidth","href":"models/CameraDetailsBuilder/resolutionWidth.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The camera resolution's width. See CameraDetails.resolutionWidth.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"saveSettings","qualifiedName":"models.CameraDetailsBuilder.saveSettings","href":"models/CameraDetailsBuilder/saveSettings.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Saves these settings to the rover and updates the UI.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"status","qualifiedName":"models.CameraDetailsBuilder.status","href":"models/CameraDetailsBuilder/status.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The camera's status.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"updateStatus","qualifiedName":"models.CameraDetailsBuilder.updateStatus","href":"models/CameraDetailsBuilder/updateStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the status field.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"value","qualifiedName":"models.CameraDetailsBuilder.value","href":"models/CameraDetailsBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"CameraDetailsBuilder","kind":3,"href":"models/CameraDetailsBuilder-class.html"}},{"name":"ColorBuilder","qualifiedName":"models.ColorBuilder","href":"models/ColorBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A view model to modify a color and send it to the rover.","enclosedBy":{"name":"color_builder","kind":9,"href":"models/models-library.html"}},{"name":"ColorBuilder","qualifiedName":"models.ColorBuilder.ColorBuilder","href":"models/ColorBuilder/ColorBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Sets color to the rover's current color.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"blink","qualifiedName":"models.ColorBuilder.blink","href":"models/ColorBuilder/blink.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the LED strip should blink this color.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"color","qualifiedName":"models.ColorBuilder.color","href":"models/ColorBuilder/color.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The color being chosen.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"errorText","qualifiedName":"models.ColorBuilder.errorText","href":"models/ColorBuilder/errorText.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The error when calling setColor, if any.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"isLoading","qualifiedName":"models.ColorBuilder.isLoading","href":"models/ColorBuilder/isLoading.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether setColor is still running.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"setColor","qualifiedName":"models.ColorBuilder.setColor","href":"models/ColorBuilder/setColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sends the color to the rover.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"updateBlink","qualifiedName":"models.ColorBuilder.updateBlink","href":"models/ColorBuilder/updateBlink.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates blink.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"updateColor","qualifiedName":"models.ColorBuilder.updateColor","href":"models/ColorBuilder/updateColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the color being chosen.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"Controller","qualifiedName":"models.Controller","href":"models/Controller-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Uses the gamepad to control the rover.","enclosedBy":{"name":"controller","kind":9,"href":"models/models-library.html"}},{"name":"Controller","qualifiedName":"models.Controller.Controller","href":"models/Controller/Controller.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Maps button presses on gamepad to controls.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"connect","qualifiedName":"models.Controller.connect","href":"models/Controller/connect.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Connects the gamepad to the user's device.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"controls","qualifiedName":"models.Controller.controls","href":"models/Controller/controls.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Defines what the current controls are for the current mode.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"dispose","qualifiedName":"models.Controller.dispose","href":"models/Controller/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"gamepad","qualifiedName":"models.Controller.gamepad","href":"models/Controller/gamepad.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The gamepad to read from.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"gamepadTimer","qualifiedName":"models.Controller.gamepadTimer","href":"models/Controller/gamepadTimer.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Reads the gamepad and controls the rover when triggered.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"index","qualifiedName":"models.Controller.index","href":"models/Controller/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The index of the gamepad to read from. Does not match Gamepad.controllerIndex.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"init","qualifiedName":"models.Controller.init","href":"models/Controller/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"isConnected","qualifiedName":"models.Controller.isConnected","href":"models/Controller/isConnected.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether this controller is ready to use.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"mode","qualifiedName":"models.Controller.mode","href":"models/Controller/mode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The current operating mode.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"otherControllerIs","qualifiedName":"models.Controller.otherControllerIs","href":"models/Controller/otherControllerIs.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Returns Whether another controller is set to the given mode.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"setMode","qualifiedName":"models.Controller.setMode","href":"models/Controller/setMode.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Changes the current mode this gamepad is controlling, and chooses a new RoverControls.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"setModeIndex","qualifiedName":"models.Controller.setModeIndex","href":"models/Controller/setModeIndex.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Same as setMode, but uses OperatingMode.index instead.","enclosedBy":{"name":"Controller","kind":3,"href":"models/Controller-class.html"}},{"name":"DashboardSettingsBuilder","qualifiedName":"models.DashboardSettingsBuilder","href":"models/DashboardSettingsBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder that modifies a DashboardSettings.","enclosedBy":{"name":"settings_builder","kind":9,"href":"models/models-library.html"}},{"name":"DashboardSettingsBuilder","qualifiedName":"models.DashboardSettingsBuilder.DashboardSettingsBuilder","href":"models/DashboardSettingsBuilder/DashboardSettingsBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Modifies the given DashboardSettings.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"blockSize","qualifiedName":"models.DashboardSettingsBuilder.blockSize","href":"models/DashboardSettingsBuilder/blockSize.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The precision of the GPS grid. See DashboardSettings.mapBlockSize.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"fps","qualifiedName":"models.DashboardSettingsBuilder.fps","href":"models/DashboardSettingsBuilder/fps.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The builder for the FPS count.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.DashboardSettingsBuilder.isValid","href":"models/DashboardSettingsBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"preferTankControls","qualifiedName":"models.DashboardSettingsBuilder.preferTankControls","href":"models/DashboardSettingsBuilder/preferTankControls.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to default to tank controls. See DashboardSettings.preferTankControls.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"splitCameras","qualifiedName":"models.DashboardSettingsBuilder.splitCameras","href":"models/DashboardSettingsBuilder/splitCameras.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to split cameras into their own controls. See DashboardSettings.splitCameras.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"splitMode","qualifiedName":"models.DashboardSettingsBuilder.splitMode","href":"models/DashboardSettingsBuilder/splitMode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How the Dashboard should split when only two views are present.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"themeMode","qualifiedName":"models.DashboardSettingsBuilder.themeMode","href":"models/DashboardSettingsBuilder/themeMode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The theme of the Dashboard. See DashboardSettings.themeMode.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"updateCameras","qualifiedName":"models.DashboardSettingsBuilder.updateCameras","href":"models/DashboardSettingsBuilder/updateCameras.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates splitCameras.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"updateSplitMode","qualifiedName":"models.DashboardSettingsBuilder.updateSplitMode","href":"models/DashboardSettingsBuilder/updateSplitMode.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the splitMode when a new one is selected.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"updateTank","qualifiedName":"models.DashboardSettingsBuilder.updateTank","href":"models/DashboardSettingsBuilder/updateTank.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates preferTankControls.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"updateThemeMode","qualifiedName":"models.DashboardSettingsBuilder.updateThemeMode","href":"models/DashboardSettingsBuilder/updateThemeMode.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the themeMode.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"updateVersionChecking","qualifiedName":"models.DashboardSettingsBuilder.updateVersionChecking","href":"models/DashboardSettingsBuilder/updateVersionChecking.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates versionChecking.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"value","qualifiedName":"models.DashboardSettingsBuilder.value","href":"models/DashboardSettingsBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"versionChecking","qualifiedName":"models.DashboardSettingsBuilder.versionChecking","href":"models/DashboardSettingsBuilder/versionChecking.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to use version checking. See DashboardSettings.versionChecking.","enclosedBy":{"name":"DashboardSettingsBuilder","kind":3,"href":"models/DashboardSettingsBuilder-class.html"}},{"name":"DriveControls","qualifiedName":"models.DriveControls","href":"models/DriveControls-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The skid-steer drive controls.","enclosedBy":{"name":"tank_drive","kind":9,"href":"models/models-library.html"}},{"name":"DriveControls","qualifiedName":"models.DriveControls.DriveControls","href":"models/DriveControls/DriveControls.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DriveControls","kind":3,"href":"models/DriveControls-class.html"}},{"name":"buttonMapping","qualifiedName":"models.DriveControls.buttonMapping","href":"models/DriveControls/buttonMapping.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A human-readable explanation of what the controls are.","enclosedBy":{"name":"DriveControls","kind":3,"href":"models/DriveControls-class.html"}},{"name":"leftShoulderFlag","qualifiedName":"models.DriveControls.leftShoulderFlag","href":"models/DriveControls/leftShoulderFlag.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the left shoulder was pressed last tick.","enclosedBy":{"name":"DriveControls","kind":3,"href":"models/DriveControls-class.html"}},{"name":"mode","qualifiedName":"models.DriveControls.mode","href":"models/DriveControls/mode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The OperatingMode for these controls.","enclosedBy":{"name":"DriveControls","kind":3,"href":"models/DriveControls-class.html"}},{"name":"onDispose","qualifiedName":"models.DriveControls.onDispose","href":"models/DriveControls/onDispose.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of commands that disables the subsystem.","enclosedBy":{"name":"DriveControls","kind":3,"href":"models/DriveControls-class.html"}},{"name":"parseInputs","qualifiedName":"models.DriveControls.parseInputs","href":"models/DriveControls/parseInputs.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Return a list of commands based on the current state of the gamepad.","enclosedBy":{"name":"DriveControls","kind":3,"href":"models/DriveControls-class.html"}},{"name":"rightShoulderFlag","qualifiedName":"models.DriveControls.rightShoulderFlag","href":"models/DriveControls/rightShoulderFlag.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the right shoulder was pressed last tick.","enclosedBy":{"name":"DriveControls","kind":3,"href":"models/DriveControls-class.html"}},{"name":"throttle","qualifiedName":"models.DriveControls.throttle","href":"models/DriveControls/throttle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The throttle the rover should be at.","enclosedBy":{"name":"DriveControls","kind":3,"href":"models/DriveControls-class.html"}},{"name":"updateState","qualifiedName":"models.DriveControls.updateState","href":"models/DriveControls/updateState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Any logic to run before checking parseInputs.","enclosedBy":{"name":"DriveControls","kind":3,"href":"models/DriveControls-class.html"}},{"name":"EasterEggsSettingsBuilder","qualifiedName":"models.EasterEggsSettingsBuilder","href":"models/EasterEggsSettingsBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder that modifies an EasterEggsSettings.","enclosedBy":{"name":"settings_builder","kind":9,"href":"models/models-library.html"}},{"name":"EasterEggsSettingsBuilder","qualifiedName":"models.EasterEggsSettingsBuilder.EasterEggsSettingsBuilder","href":"models/EasterEggsSettingsBuilder/EasterEggsSettingsBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Fills in the fields with the given initial settings.","enclosedBy":{"name":"EasterEggsSettingsBuilder","kind":3,"href":"models/EasterEggsSettingsBuilder-class.html"}},{"name":"badApple","qualifiedName":"models.EasterEggsSettingsBuilder.badApple","href":"models/EasterEggsSettingsBuilder/badApple.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to render Bad Apple in the Map page. See EasterEggsSettings.badApple.","enclosedBy":{"name":"EasterEggsSettingsBuilder","kind":3,"href":"models/EasterEggsSettingsBuilder-class.html"}},{"name":"enableClippy","qualifiedName":"models.EasterEggsSettingsBuilder.enableClippy","href":"models/EasterEggsSettingsBuilder/enableClippy.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether Clippy should appear by log messages. See EasterEggsSettings.enableClippy.","enclosedBy":{"name":"EasterEggsSettingsBuilder","kind":3,"href":"models/EasterEggsSettingsBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.EasterEggsSettingsBuilder.isValid","href":"models/EasterEggsSettingsBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"EasterEggsSettingsBuilder","kind":3,"href":"models/EasterEggsSettingsBuilder-class.html"}},{"name":"segaIntro","qualifiedName":"models.EasterEggsSettingsBuilder.segaIntro","href":"models/EasterEggsSettingsBuilder/segaIntro.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to show a SEGA intro. See EasterEggsSettings.segaIntro.","enclosedBy":{"name":"EasterEggsSettingsBuilder","kind":3,"href":"models/EasterEggsSettingsBuilder-class.html"}},{"name":"segaSound","qualifiedName":"models.EasterEggsSettingsBuilder.segaSound","href":"models/EasterEggsSettingsBuilder/segaSound.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to say \"Binghamton\" in the SEGA style. See EasterEggsSettings.segaSound.","enclosedBy":{"name":"EasterEggsSettingsBuilder","kind":3,"href":"models/EasterEggsSettingsBuilder-class.html"}},{"name":"updateBadApple","qualifiedName":"models.EasterEggsSettingsBuilder.updateBadApple","href":"models/EasterEggsSettingsBuilder/updateBadApple.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the value of badApple.","enclosedBy":{"name":"EasterEggsSettingsBuilder","kind":3,"href":"models/EasterEggsSettingsBuilder-class.html"}},{"name":"updateClippy","qualifiedName":"models.EasterEggsSettingsBuilder.updateClippy","href":"models/EasterEggsSettingsBuilder/updateClippy.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the value of EasterEggsSettings.enableClippy.","enclosedBy":{"name":"EasterEggsSettingsBuilder","kind":3,"href":"models/EasterEggsSettingsBuilder-class.html"}},{"name":"updateSegaIntro","qualifiedName":"models.EasterEggsSettingsBuilder.updateSegaIntro","href":"models/EasterEggsSettingsBuilder/updateSegaIntro.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the value of EasterEggsSettings.segaIntro.","enclosedBy":{"name":"EasterEggsSettingsBuilder","kind":3,"href":"models/EasterEggsSettingsBuilder-class.html"}},{"name":"updateSegaSound","qualifiedName":"models.EasterEggsSettingsBuilder.updateSegaSound","href":"models/EasterEggsSettingsBuilder/updateSegaSound.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the value of segaSound.","enclosedBy":{"name":"EasterEggsSettingsBuilder","kind":3,"href":"models/EasterEggsSettingsBuilder-class.html"}},{"name":"value","qualifiedName":"models.EasterEggsSettingsBuilder.value","href":"models/EasterEggsSettingsBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"EasterEggsSettingsBuilder","kind":3,"href":"models/EasterEggsSettingsBuilder-class.html"}},{"name":"ElectricalModel","qualifiedName":"models.ElectricalModel","href":"models/ElectricalModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The view model for the electrical analysis page.","enclosedBy":{"name":"electrical","kind":9,"href":"models/models-library.html"}},{"name":"ElectricalModel","qualifiedName":"models.ElectricalModel.ElectricalModel","href":"models/ElectricalModel/ElectricalModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Listens to all the DriveMetrics and updates the UI.","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"axis","qualifiedName":"models.ElectricalModel.axis","href":"models/ElectricalModel/axis.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Orientation for the graphs on page. true is row, false is column","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"changeDirection","qualifiedName":"models.ElectricalModel.changeDirection","href":"models/ElectricalModel/changeDirection.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Changes the axis that the UI displays the graphs","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"clear","qualifiedName":"models.ElectricalModel.clear","href":"models/ElectricalModel/clear.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Clears all the readings from all the samples.","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"currentReadings","qualifiedName":"models.ElectricalModel.currentReadings","href":"models/ElectricalModel/currentReadings.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Current readings over time.","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"dispose","qualifiedName":"models.ElectricalModel.dispose","href":"models/ElectricalModel/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"firstTimestamp","qualifiedName":"models.ElectricalModel.firstTimestamp","href":"models/ElectricalModel/firstTimestamp.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The timestamp of the first or earliest reading. All other timestamps are based on this.","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"leftSpeeds","qualifiedName":"models.ElectricalModel.leftSpeeds","href":"models/ElectricalModel/leftSpeeds.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Left speed readings over time.","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"maxReadings","qualifiedName":"models.ElectricalModel.maxReadings","href":"models/ElectricalModel/maxReadings-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The maximum amount of readings on-screen before the data starts scrolling.","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"metrics","qualifiedName":"models.ElectricalModel.metrics","href":"models/ElectricalModel/metrics.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The Metrics model for electrical data.","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"rightSpeeds","qualifiedName":"models.ElectricalModel.rightSpeeds","href":"models/ElectricalModel/rightSpeeds.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Right speed readings over time.","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"timer","qualifiedName":"models.ElectricalModel.timer","href":"models/ElectricalModel/timer.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The timer that grabs new data for these graphs.","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"voltageReadings","qualifiedName":"models.ElectricalModel.voltageReadings","href":"models/ElectricalModel/voltageReadings.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Voltage readings over time.","enclosedBy":{"name":"ElectricalModel","kind":3,"href":"models/ElectricalModel-class.html"}},{"name":"GpsBuilder","qualifiedName":"models.GpsBuilder","href":"models/GpsBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder to modify a GpsCoordinates object in either GpsType.","enclosedBy":{"name":"gps","kind":9,"href":"models/models-library.html"}},{"name":"GpsBuilder","qualifiedName":"models.GpsBuilder.GpsBuilder","href":"models/GpsBuilder/GpsBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"clear","qualifiedName":"models.GpsBuilder.clear","href":"models/GpsBuilder/clear.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Clears all the data in these text boxes.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.GpsBuilder.isValid","href":"models/GpsBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"latDecimal","qualifiedName":"models.GpsBuilder.latDecimal","href":"models/GpsBuilder/latDecimal.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Latitude in decimal degrees.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"latDegrees","qualifiedName":"models.GpsBuilder.latDegrees","href":"models/GpsBuilder/latDegrees.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Latitude in degrees.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"latMinutes","qualifiedName":"models.GpsBuilder.latMinutes","href":"models/GpsBuilder/latMinutes.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Latitude in minutes.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"latSeconds","qualifiedName":"models.GpsBuilder.latSeconds","href":"models/GpsBuilder/latSeconds.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Latitude in seconds.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"longDecimal","qualifiedName":"models.GpsBuilder.longDecimal","href":"models/GpsBuilder/longDecimal.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Longitude in decimal degrees.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"longDegrees","qualifiedName":"models.GpsBuilder.longDegrees","href":"models/GpsBuilder/longDegrees.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Longitude in degrees.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"longMinutes","qualifiedName":"models.GpsBuilder.longMinutes","href":"models/GpsBuilder/longMinutes.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Longitude in minutes.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"longSeconds","qualifiedName":"models.GpsBuilder.longSeconds","href":"models/GpsBuilder/longSeconds.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Longitude in seconds.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"otherBuilders","qualifiedName":"models.GpsBuilder.otherBuilders","href":"models/GpsBuilder/otherBuilders.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Other builders to listen to.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"type","qualifiedName":"models.GpsBuilder.type","href":"models/GpsBuilder/type.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The format to enter a GPS coordinate.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"updateType","qualifiedName":"models.GpsBuilder.updateType","href":"models/GpsBuilder/updateType.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the GpsType.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"value","qualifiedName":"models.GpsBuilder.value","href":"models/GpsBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"GpsBuilder","kind":3,"href":"models/GpsBuilder-class.html"}},{"name":"GpsType","qualifiedName":"models.GpsType","href":"models/GpsType.html","kind":5,"overriddenDepth":0,"packageRank":0,"desc":"The format to enter a GPS coordinate.","enclosedBy":{"name":"gps","kind":9,"href":"models/models-library.html"}},{"name":"hashCode","qualifiedName":"models.GpsType.hashCode","href":"models/GpsType/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"GpsType","kind":5,"href":"models/GpsType.html"}},{"name":"humanName","qualifiedName":"models.GpsType.humanName","href":"models/GpsType/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The human-readable name of the GPS type.","enclosedBy":{"name":"GpsType","kind":5,"href":"models/GpsType.html"}},{"name":"index","qualifiedName":"models.GpsType.index","href":"models/GpsType/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A numeric identifier for the enumerated value.","enclosedBy":{"name":"GpsType","kind":5,"href":"models/GpsType.html"}},{"name":"noSuchMethod","qualifiedName":"models.GpsType.noSuchMethod","href":"models/GpsType/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"GpsType","kind":5,"href":"models/GpsType.html"}},{"name":"operator ==","qualifiedName":"models.GpsType.operator ==","href":"models/GpsType/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"GpsType","kind":5,"href":"models/GpsType.html"}},{"name":"runtimeType","qualifiedName":"models.GpsType.runtimeType","href":"models/GpsType/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"GpsType","kind":5,"href":"models/GpsType.html"}},{"name":"toString","qualifiedName":"models.GpsType.toString","href":"models/GpsType/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"GpsType","kind":5,"href":"models/GpsType.html"}},{"name":"values","qualifiedName":"models.GpsType.values","href":"models/GpsType/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"A constant List of the values in this enum, in order of their declaration.","enclosedBy":{"name":"GpsType","kind":5,"href":"models/GpsType.html"}},{"name":"GridOffset","qualifiedName":"models.GridOffset","href":"models/GridOffset-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Like an Offset from Flutter, but using integers instead of doubles.","enclosedBy":{"name":"map","kind":9,"href":"models/models-library.html"}},{"name":"GridOffset","qualifiedName":"models.GridOffset.GridOffset","href":"models/GridOffset/GridOffset.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"GridOffset","kind":3,"href":"models/GridOffset-class.html"}},{"name":"hashCode","qualifiedName":"models.GridOffset.hashCode","href":"models/GridOffset/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"GridOffset","kind":3,"href":"models/GridOffset-class.html"}},{"name":"noSuchMethod","qualifiedName":"models.GridOffset.noSuchMethod","href":"models/GridOffset/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"GridOffset","kind":3,"href":"models/GridOffset-class.html"}},{"name":"operator ==","qualifiedName":"models.GridOffset.operator ==","href":"models/GridOffset/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"GridOffset","kind":3,"href":"models/GridOffset-class.html"}},{"name":"runtimeType","qualifiedName":"models.GridOffset.runtimeType","href":"models/GridOffset/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"GridOffset","kind":3,"href":"models/GridOffset-class.html"}},{"name":"toString","qualifiedName":"models.GridOffset.toString","href":"models/GridOffset/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"GridOffset","kind":3,"href":"models/GridOffset-class.html"}},{"name":"x","qualifiedName":"models.GridOffset.x","href":"models/GridOffset/x.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The X offset.","enclosedBy":{"name":"GridOffset","kind":3,"href":"models/GridOffset-class.html"}},{"name":"y","qualifiedName":"models.GridOffset.y","href":"models/GridOffset/y.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The Y offset.","enclosedBy":{"name":"GridOffset","kind":3,"href":"models/GridOffset-class.html"}},{"name":"HomeModel","qualifiedName":"models.HomeModel","href":"models/HomeModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The view model for the main page.","enclosedBy":{"name":"home","kind":9,"href":"models/models-library.html"}},{"name":"HomeModel","qualifiedName":"models.HomeModel.HomeModel","href":"models/HomeModel/HomeModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"HomeModel","kind":3,"href":"models/HomeModel-class.html"}},{"name":"clear","qualifiedName":"models.HomeModel.clear","href":"models/HomeModel/clear.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Clears the current message. Errors won't be cleared unless clearErrors is set.","enclosedBy":{"name":"HomeModel","kind":3,"href":"models/HomeModel-class.html"}},{"name":"dispose","qualifiedName":"models.HomeModel.dispose","href":"models/HomeModel/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"HomeModel","kind":3,"href":"models/HomeModel-class.html"}},{"name":"init","qualifiedName":"models.HomeModel.init","href":"models/HomeModel/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"HomeModel","kind":3,"href":"models/HomeModel-class.html"}},{"name":"message","qualifiedName":"models.HomeModel.message","href":"models/HomeModel/message.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The message currently displaying on the taskbar.","enclosedBy":{"name":"HomeModel","kind":3,"href":"models/HomeModel-class.html"}},{"name":"mission","qualifiedName":"models.HomeModel.mission","href":"models/HomeModel/mission.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Mission timer displayed on homepage","enclosedBy":{"name":"HomeModel","kind":3,"href":"models/HomeModel-class.html"}},{"name":"setMessage","qualifiedName":"models.HomeModel.setMessage","href":"models/HomeModel/setMessage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sets a new message that will disappear in 3 seconds.","enclosedBy":{"name":"HomeModel","kind":3,"href":"models/HomeModel-class.html"}},{"name":"version","qualifiedName":"models.HomeModel.version","href":"models/HomeModel/version.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The dashboard's version from the pubspec.yaml.","enclosedBy":{"name":"HomeModel","kind":3,"href":"models/HomeModel-class.html"}},{"name":"LogsModel","qualifiedName":"models.LogsModel","href":"models/LogsModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A data model that collects and stores logs from the rover.","enclosedBy":{"name":"logs","kind":9,"href":"models/models-library.html"}},{"name":"LogsModel","qualifiedName":"models.LogsModel.LogsModel","href":"models/LogsModel/LogsModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"allLogs","qualifiedName":"models.LogsModel.allLogs","href":"models/LogsModel/allLogs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The most recent maxLogCount logs received.","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"autonomyLogs","qualifiedName":"models.LogsModel.autonomyLogs","href":"models/LogsModel/autonomyLogs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The most recent maxLogCount received for Device.SUBSYSTEMS","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"clear","qualifiedName":"models.LogsModel.clear","href":"models/LogsModel/clear.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Clears all the logs from memory (but not from disk).","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"handleLog","qualifiedName":"models.LogsModel.handleLog","href":"models/LogsModel/handleLog.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sends a log message to be shown in the footer.","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"init","qualifiedName":"models.LogsModel.init","href":"models/LogsModel/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"logsForDevice","qualifiedName":"models.LogsModel.logsForDevice","href":"models/LogsModel/logsForDevice.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Returns the list of log messages for the corresponding device","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"saveToFile","qualifiedName":"models.LogsModel.saveToFile","href":"models/LogsModel/saveToFile.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Saves all the logs in saveToFileBuffer to disk.","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"saveToFileBuffer","qualifiedName":"models.LogsModel.saveToFileBuffer","href":"models/LogsModel/saveToFileBuffer.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The logs received since the last flush to disk. See saveToFileInterval.","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"saveToFileInterval","qualifiedName":"models.LogsModel.saveToFileInterval","href":"models/LogsModel/saveToFileInterval-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"How often to save the buffered logs to the log file.","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"saveToFileTimer","qualifiedName":"models.LogsModel.saveToFileTimer","href":"models/LogsModel/saveToFileTimer.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A timer that checks for unsaved logs and flushes them to disk.","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"stream","qualifiedName":"models.LogsModel.stream","href":"models/LogsModel/stream.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A stream of incoming logs.","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"subsystemLogs","qualifiedName":"models.LogsModel.subsystemLogs","href":"models/LogsModel/subsystemLogs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The most recent maxLogCount received for Device.SUBSYSTEMS","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"videoLogs","qualifiedName":"models.LogsModel.videoLogs","href":"models/LogsModel/videoLogs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The most recent maxLogCount received for Device.SUBSYSTEMS","enclosedBy":{"name":"LogsModel","kind":3,"href":"models/LogsModel-class.html"}},{"name":"LogsOptionsViewModel","qualifiedName":"models.LogsOptionsViewModel","href":"models/LogsOptionsViewModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A view model to track options for the logs page.","enclosedBy":{"name":"logs","kind":9,"href":"models/models-library.html"}},{"name":"LogsOptionsViewModel","qualifiedName":"models.LogsOptionsViewModel.LogsOptionsViewModel","href":"models/LogsOptionsViewModel/LogsOptionsViewModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"autoscroll","qualifiedName":"models.LogsOptionsViewModel.autoscroll","href":"models/LogsOptionsViewModel/autoscroll.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether this page should autoscroll.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"deviceFilter","qualifiedName":"models.LogsOptionsViewModel.deviceFilter","href":"models/LogsOptionsViewModel/deviceFilter.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Only show logs from this device. If null, show all devices.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"deviceSeverity","qualifiedName":"models.LogsOptionsViewModel.deviceSeverity","href":"models/LogsOptionsViewModel/deviceSeverity.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Contains the highest severity that each device emitted.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"getSeverity","qualifiedName":"models.LogsOptionsViewModel.getSeverity","href":"models/LogsOptionsViewModel/getSeverity.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets the highest severity the given device emitted.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"levelFilter","qualifiedName":"models.LogsOptionsViewModel.levelFilter","href":"models/LogsOptionsViewModel/levelFilter.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The level at which to show logs. All logs at this level or above are shown.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"onNewLog","qualifiedName":"models.LogsOptionsViewModel.onNewLog","href":"models/LogsOptionsViewModel/onNewLog.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates deviceSeverity when a new message comes in.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"openSsh","qualifiedName":"models.LogsOptionsViewModel.openSsh","href":"models/LogsOptionsViewModel/openSsh.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Opens an SSH session (on Windows) for the given device.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"paused","qualifiedName":"models.LogsOptionsViewModel.paused","href":"models/LogsOptionsViewModel/paused.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether or not to temporarily pause log updating","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"ping","qualifiedName":"models.LogsOptionsViewModel.ping","href":"models/LogsOptionsViewModel/ping.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Opens a Command prompt on Windows to ping the device.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"resetDevice","qualifiedName":"models.LogsOptionsViewModel.resetDevice","href":"models/LogsOptionsViewModel/resetDevice.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Resets the given device by sending RoverStatus.RESTART.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"setAutoscroll","qualifiedName":"models.LogsOptionsViewModel.setAutoscroll","href":"models/LogsOptionsViewModel/setAutoscroll.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Enables or disables autoscroll.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"setDeviceFilter","qualifiedName":"models.LogsOptionsViewModel.setDeviceFilter","href":"models/LogsOptionsViewModel/setDeviceFilter.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sets deviceFilter and updates the UI.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"setLevelFilter","qualifiedName":"models.LogsOptionsViewModel.setLevelFilter","href":"models/LogsOptionsViewModel/setLevelFilter.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sets levelFilter and updates the UI.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"togglePause","qualifiedName":"models.LogsOptionsViewModel.togglePause","href":"models/LogsOptionsViewModel/togglePause.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Toggles whether new logs are received.","enclosedBy":{"name":"LogsOptionsViewModel","kind":3,"href":"models/LogsOptionsViewModel-class.html"}},{"name":"LogsViewModel","qualifiedName":"models.LogsViewModel","href":"models/LogsViewModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A view model for the logs page to control which logs are shown.","enclosedBy":{"name":"logs","kind":9,"href":"models/models-library.html"}},{"name":"LogsViewModel","qualifiedName":"models.LogsViewModel.LogsViewModel","href":"models/LogsViewModel/LogsViewModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Listens for incoming logs.","enclosedBy":{"name":"LogsViewModel","kind":3,"href":"models/LogsViewModel-class.html"}},{"name":"dispose","qualifiedName":"models.LogsViewModel.dispose","href":"models/LogsViewModel/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"LogsViewModel","kind":3,"href":"models/LogsViewModel-class.html"}},{"name":"jumpToBottom","qualifiedName":"models.LogsViewModel.jumpToBottom","href":"models/LogsViewModel/jumpToBottom.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Jumps to the bottom of the logs.","enclosedBy":{"name":"LogsViewModel","kind":3,"href":"models/LogsViewModel-class.html"}},{"name":"logs","qualifiedName":"models.LogsViewModel.logs","href":"models/LogsViewModel/logs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The logs that should be shown, according to LogsOptionsViewModel.","enclosedBy":{"name":"LogsViewModel","kind":3,"href":"models/LogsViewModel-class.html"}},{"name":"onNewLog","qualifiedName":"models.LogsViewModel.onNewLog","href":"models/LogsViewModel/onNewLog.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Scrolls to the bottom when a new log appears (if LogsOptionsViewModel.autoscroll is true).","enclosedBy":{"name":"LogsViewModel","kind":3,"href":"models/LogsViewModel-class.html"}},{"name":"onScroll","qualifiedName":"models.LogsViewModel.onScroll","href":"models/LogsViewModel/onScroll.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Disables LogsOptionsViewModel.autoscroll when the user scrolls manually.","enclosedBy":{"name":"LogsViewModel","kind":3,"href":"models/LogsViewModel-class.html"}},{"name":"options","qualifiedName":"models.LogsViewModel.options","href":"models/LogsViewModel/options.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The options for the log page.","enclosedBy":{"name":"LogsViewModel","kind":3,"href":"models/LogsViewModel-class.html"}},{"name":"scrollController","qualifiedName":"models.LogsViewModel.scrollController","href":"models/LogsViewModel/scrollController.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The scroll controller used to implement autoscroll.","enclosedBy":{"name":"LogsViewModel","kind":3,"href":"models/LogsViewModel-class.html"}},{"name":"MessagesModel","qualifiedName":"models.MessagesModel","href":"models/MessagesModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A mixin that delegates WrappedMessages to a handler via registerHandler.","enclosedBy":{"name":"messages","kind":9,"href":"models/models-library.html"}},{"name":"MessagesModel","qualifiedName":"models.MessagesModel.MessagesModel","href":"models/MessagesModel/MessagesModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MessagesModel","kind":3,"href":"models/MessagesModel-class.html"}},{"name":"allowedFallthrough","qualifiedName":"models.MessagesModel.allowedFallthrough","href":"models/MessagesModel/allowedFallthrough-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"A set of message types that are allowed to pass through without being handled.","enclosedBy":{"name":"MessagesModel","kind":3,"href":"models/MessagesModel-class.html"}},{"name":"hashCode","qualifiedName":"models.MessagesModel.hashCode","href":"models/MessagesModel/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"MessagesModel","kind":3,"href":"models/MessagesModel-class.html"}},{"name":"noSuchMethod","qualifiedName":"models.MessagesModel.noSuchMethod","href":"models/MessagesModel/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"MessagesModel","kind":3,"href":"models/MessagesModel-class.html"}},{"name":"onMessage","qualifiedName":"models.MessagesModel.onMessage","href":"models/MessagesModel/onMessage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Delegates the message contents to the appropriate handler.","enclosedBy":{"name":"MessagesModel","kind":3,"href":"models/MessagesModel-class.html"}},{"name":"operator ==","qualifiedName":"models.MessagesModel.operator ==","href":"models/MessagesModel/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"MessagesModel","kind":3,"href":"models/MessagesModel-class.html"}},{"name":"registerHandler","qualifiedName":"models.MessagesModel.registerHandler","href":"models/MessagesModel/registerHandler.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Adds a handler for the given message type.","enclosedBy":{"name":"MessagesModel","kind":3,"href":"models/MessagesModel-class.html"}},{"name":"removeHandler","qualifiedName":"models.MessagesModel.removeHandler","href":"models/MessagesModel/removeHandler.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Removes the handler for a given message type.","enclosedBy":{"name":"MessagesModel","kind":3,"href":"models/MessagesModel-class.html"}},{"name":"runtimeType","qualifiedName":"models.MessagesModel.runtimeType","href":"models/MessagesModel/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"MessagesModel","kind":3,"href":"models/MessagesModel-class.html"}},{"name":"sendMessage","qualifiedName":"models.MessagesModel.sendMessage","href":"models/MessagesModel/sendMessage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sends a command over the network or over Serial.","enclosedBy":{"name":"MessagesModel","kind":3,"href":"models/MessagesModel-class.html"}},{"name":"toString","qualifiedName":"models.MessagesModel.toString","href":"models/MessagesModel/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"MessagesModel","kind":3,"href":"models/MessagesModel-class.html"}},{"name":"MissionTimer","qualifiedName":"models.MissionTimer","href":"models/MissionTimer-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A timer to keep track of progress in a mission.","enclosedBy":{"name":"timer","kind":9,"href":"models/models-library.html"}},{"name":"MissionTimer","qualifiedName":"models.MissionTimer.MissionTimer","href":"models/MissionTimer/MissionTimer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MissionTimer","kind":3,"href":"models/MissionTimer-class.html"}},{"name":"cancel","qualifiedName":"models.MissionTimer.cancel","href":"models/MissionTimer/cancel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Cancels the timer.","enclosedBy":{"name":"MissionTimer","kind":3,"href":"models/MissionTimer-class.html"}},{"name":"isPaused","qualifiedName":"models.MissionTimer.isPaused","href":"models/MissionTimer/isPaused.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether this timer is paused.","enclosedBy":{"name":"MissionTimer","kind":3,"href":"models/MissionTimer-class.html"}},{"name":"pause","qualifiedName":"models.MissionTimer.pause","href":"models/MissionTimer/pause.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Pauses the timer.","enclosedBy":{"name":"MissionTimer","kind":3,"href":"models/MissionTimer-class.html"}},{"name":"resume","qualifiedName":"models.MissionTimer.resume","href":"models/MissionTimer/resume.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Resumes the timer.","enclosedBy":{"name":"MissionTimer","kind":3,"href":"models/MissionTimer-class.html"}},{"name":"start","qualifiedName":"models.MissionTimer.start","href":"models/MissionTimer/start.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Starts a new timer with the given title and duration. Cancels any previous timer.","enclosedBy":{"name":"MissionTimer","kind":3,"href":"models/MissionTimer-class.html"}},{"name":"timeLeft","qualifiedName":"models.MissionTimer.timeLeft","href":"models/MissionTimer/timeLeft.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The time remaining. Stops decreasing when isPaused is true.","enclosedBy":{"name":"MissionTimer","kind":3,"href":"models/MissionTimer-class.html"}},{"name":"title","qualifiedName":"models.MissionTimer.title","href":"models/MissionTimer/title.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The title for this timer. Null means no timer has been set.","enclosedBy":{"name":"MissionTimer","kind":3,"href":"models/MissionTimer-class.html"}},{"name":"underMin","qualifiedName":"models.MissionTimer.underMin","href":"models/MissionTimer/underMin.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether this timer has under a minute remaining.","enclosedBy":{"name":"MissionTimer","kind":3,"href":"models/MissionTimer-class.html"}},{"name":"Model","qualifiedName":"models.Model","href":"models/Model-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A data model that handles data from services.","enclosedBy":{"name":"model","kind":9,"href":"models/models-library.html"}},{"name":"Model","qualifiedName":"models.Model.Model","href":"models/Model/Model.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Model","kind":3,"href":"models/Model-class.html"}},{"name":"init","qualifiedName":"models.Model.init","href":"models/Model/init.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"Model","kind":3,"href":"models/Model-class.html"}},{"name":"Models","qualifiedName":"models.Models","href":"models/Models-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A wrapper model around all other data models used by the app.","enclosedBy":{"name":"models","kind":9,"href":"models/models-library.html"}},{"name":"Models","qualifiedName":"models.Models.Models","href":"models/Models/Models.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"dispose","qualifiedName":"models.Models.dispose","href":"models/Models/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"home","qualifiedName":"models.Models.home","href":"models/Models/home.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Contains persistent data about the dashboard's current state.","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"init","qualifiedName":"models.Models.init","href":"models/Models/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"isReady","qualifiedName":"models.Models.isReady","href":"models/Models/isReady.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether all models have been initialized.","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"logs","qualifiedName":"models.Models.logs","href":"models/Models/logs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The logs model.","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"messages","qualifiedName":"models.Models.messages","href":"models/Models/messages.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The messages model.","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"rover","qualifiedName":"models.Models.rover","href":"models/Models/rover.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Controls and interacts with the rover.","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"serial","qualifiedName":"models.Models.serial","href":"models/Models/serial.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Responsible for connecting to and monitoring Serial devices.","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"settings","qualifiedName":"models.Models.settings","href":"models/Models/settings.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Caches the settings and updates them to all listeners.","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"sockets","qualifiedName":"models.Models.sockets","href":"models/Models/sockets.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The data model responsible for communicating over Protobuf.","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"video","qualifiedName":"models.Models.video","href":"models/Models/video.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The data model to provide video from the rover.","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"views","qualifiedName":"models.Models.views","href":"models/Models/views.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The views data model.","enclosedBy":{"name":"Models","kind":3,"href":"models/Models-class.html"}},{"name":"ModernDriveControls","qualifiedName":"models.ModernDriveControls","href":"models/ModernDriveControls-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Modern drive controls, similar to most racing video games.","enclosedBy":{"name":"modern_drive","kind":9,"href":"models/models-library.html"}},{"name":"ModernDriveControls","qualifiedName":"models.ModernDriveControls.ModernDriveControls","href":"models/ModernDriveControls/ModernDriveControls.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"buttonMapping","qualifiedName":"models.ModernDriveControls.buttonMapping","href":"models/ModernDriveControls/buttonMapping.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A human-readable explanation of what the controls are.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"cameraSwivelIncrement","qualifiedName":"models.ModernDriveControls.cameraSwivelIncrement","href":"models/ModernDriveControls/cameraSwivelIncrement-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"How far to swivel the cameras each tick.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"cameraTiltIncrement","qualifiedName":"models.ModernDriveControls.cameraTiltIncrement","href":"models/ModernDriveControls/cameraTiltIncrement-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"How far to tilt the cameras each tick.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"frontSwivel","qualifiedName":"models.ModernDriveControls.frontSwivel","href":"models/ModernDriveControls/frontSwivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle of the front swivel servo.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"frontTilt","qualifiedName":"models.ModernDriveControls.frontTilt","href":"models/ModernDriveControls/frontTilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle of the front tilt servo.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"getCameraCommands","qualifiedName":"models.ModernDriveControls.getCameraCommands","href":"models/ModernDriveControls/getCameraCommands.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets all camera commands based on the gamepad state.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"getWheelCommands","qualifiedName":"models.ModernDriveControls.getWheelCommands","href":"models/ModernDriveControls/getWheelCommands.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets all commands for the wheels based on the gamepad state.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"getWheelSpeeds","qualifiedName":"models.ModernDriveControls.getWheelSpeeds","href":"models/ModernDriveControls/getWheelSpeeds.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets the speeds of the wheels based on the speed and direction.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"leftShoulderFlag","qualifiedName":"models.ModernDriveControls.leftShoulderFlag","href":"models/ModernDriveControls/leftShoulderFlag.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the left shoulder was pressed last tick.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"mode","qualifiedName":"models.ModernDriveControls.mode","href":"models/ModernDriveControls/mode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The OperatingMode for these controls.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"onDispose","qualifiedName":"models.ModernDriveControls.onDispose","href":"models/ModernDriveControls/onDispose.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of commands that disables the subsystem.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"parseInputs","qualifiedName":"models.ModernDriveControls.parseInputs","href":"models/ModernDriveControls/parseInputs.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Return a list of commands based on the current state of the gamepad.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"rearSwivel","qualifiedName":"models.ModernDriveControls.rearSwivel","href":"models/ModernDriveControls/rearSwivel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle of the rear swivel servo.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"rearTilt","qualifiedName":"models.ModernDriveControls.rearTilt","href":"models/ModernDriveControls/rearTilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The angle of the rear tilt servo.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"rightShoulderFlag","qualifiedName":"models.ModernDriveControls.rightShoulderFlag","href":"models/ModernDriveControls/rightShoulderFlag.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the right shoulder was pressed last tick.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"throttle","qualifiedName":"models.ModernDriveControls.throttle","href":"models/ModernDriveControls/throttle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The throttle value.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"updateCameras","qualifiedName":"models.ModernDriveControls.updateCameras","href":"models/ModernDriveControls/updateCameras.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates variables for both cameras' servos.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"updateState","qualifiedName":"models.ModernDriveControls.updateState","href":"models/ModernDriveControls/updateState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Any logic to run before checking parseInputs.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"updateThrottle","qualifiedName":"models.ModernDriveControls.updateThrottle","href":"models/ModernDriveControls/updateThrottle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the throttle if either shoulder button is pressed.","enclosedBy":{"name":"ModernDriveControls","kind":3,"href":"models/ModernDriveControls-class.html"}},{"name":"NetworkSettingsBuilder","qualifiedName":"models.NetworkSettingsBuilder","href":"models/NetworkSettingsBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder representing a NetworkSettings.","enclosedBy":{"name":"settings_builder","kind":9,"href":"models/models-library.html"}},{"name":"NetworkSettingsBuilder","qualifiedName":"models.NetworkSettingsBuilder.NetworkSettingsBuilder","href":"models/NetworkSettingsBuilder/NetworkSettingsBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates the view model based on the current Settings.","enclosedBy":{"name":"NetworkSettingsBuilder","kind":3,"href":"models/NetworkSettingsBuilder-class.html"}},{"name":"autonomySocket","qualifiedName":"models.NetworkSettingsBuilder.autonomySocket","href":"models/NetworkSettingsBuilder/autonomySocket.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model representing the SocketInfo for the autonomy program.","enclosedBy":{"name":"NetworkSettingsBuilder","kind":3,"href":"models/NetworkSettingsBuilder-class.html"}},{"name":"connectionTimeout","qualifiedName":"models.NetworkSettingsBuilder.connectionTimeout","href":"models/NetworkSettingsBuilder/connectionTimeout.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model for NetworkSettings.connectionTimeout.","enclosedBy":{"name":"NetworkSettingsBuilder","kind":3,"href":"models/NetworkSettingsBuilder-class.html"}},{"name":"dataSocket","qualifiedName":"models.NetworkSettingsBuilder.dataSocket","href":"models/NetworkSettingsBuilder/dataSocket.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model representing the SocketInfo for the subsystems program.","enclosedBy":{"name":"NetworkSettingsBuilder","kind":3,"href":"models/NetworkSettingsBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.NetworkSettingsBuilder.isValid","href":"models/NetworkSettingsBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"NetworkSettingsBuilder","kind":3,"href":"models/NetworkSettingsBuilder-class.html"}},{"name":"otherBuilders","qualifiedName":"models.NetworkSettingsBuilder.otherBuilders","href":"models/NetworkSettingsBuilder/otherBuilders.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Other builders to listen to.","enclosedBy":{"name":"NetworkSettingsBuilder","kind":3,"href":"models/NetworkSettingsBuilder-class.html"}},{"name":"tankSocket","qualifiedName":"models.NetworkSettingsBuilder.tankSocket","href":"models/NetworkSettingsBuilder/tankSocket.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model representing the SocketInfo for the tank.","enclosedBy":{"name":"NetworkSettingsBuilder","kind":3,"href":"models/NetworkSettingsBuilder-class.html"}},{"name":"value","qualifiedName":"models.NetworkSettingsBuilder.value","href":"models/NetworkSettingsBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"NetworkSettingsBuilder","kind":3,"href":"models/NetworkSettingsBuilder-class.html"}},{"name":"videoSocket","qualifiedName":"models.NetworkSettingsBuilder.videoSocket","href":"models/NetworkSettingsBuilder/videoSocket.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model representing the SocketInfo for the video program.","enclosedBy":{"name":"NetworkSettingsBuilder","kind":3,"href":"models/NetworkSettingsBuilder-class.html"}},{"name":"NoControls","qualifiedName":"models.NoControls","href":"models/NoControls-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A RoverControls that does nothing.","enclosedBy":{"name":"none","kind":9,"href":"models/models-library.html"}},{"name":"NoControls","qualifiedName":"models.NoControls.NoControls","href":"models/NoControls/NoControls.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"NoControls","kind":3,"href":"models/NoControls-class.html"}},{"name":"buttonMapping","qualifiedName":"models.NoControls.buttonMapping","href":"models/NoControls/buttonMapping.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A human-readable explanation of what the controls are.","enclosedBy":{"name":"NoControls","kind":3,"href":"models/NoControls-class.html"}},{"name":"mode","qualifiedName":"models.NoControls.mode","href":"models/NoControls/mode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The OperatingMode for these controls.","enclosedBy":{"name":"NoControls","kind":3,"href":"models/NoControls-class.html"}},{"name":"onDispose","qualifiedName":"models.NoControls.onDispose","href":"models/NoControls/onDispose.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of commands that disables the subsystem.","enclosedBy":{"name":"NoControls","kind":3,"href":"models/NoControls-class.html"}},{"name":"parseInputs","qualifiedName":"models.NoControls.parseInputs","href":"models/NoControls/parseInputs.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Return a list of commands based on the current state of the gamepad.","enclosedBy":{"name":"NoControls","kind":3,"href":"models/NoControls-class.html"}},{"name":"NumberBuilder","qualifiedName":"models.NumberBuilder","href":"models/NumberBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A specialized TextBuilder to handle numeric inputs.","enclosedBy":{"name":"builder","kind":9,"href":"models/models-library.html"}},{"name":"NumberBuilder","qualifiedName":"models.NumberBuilder.NumberBuilder","href":"models/NumberBuilder/NumberBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a number builder based on an initial value.","enclosedBy":{"name":"NumberBuilder","kind":3,"href":"models/NumberBuilder-class.html"}},{"name":"clear","qualifiedName":"models.NumberBuilder.clear","href":"models/NumberBuilder/clear.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Clears the value in this builder.","enclosedBy":{"name":"NumberBuilder","kind":3,"href":"models/NumberBuilder-class.html"}},{"name":"isInteger","qualifiedName":"models.NumberBuilder.isInteger","href":"models/NumberBuilder/isInteger.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether this builder is modifying a decimal number.","enclosedBy":{"name":"NumberBuilder","kind":3,"href":"models/NumberBuilder-class.html"}},{"name":"max","qualifiedName":"models.NumberBuilder.max","href":"models/NumberBuilder/max.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The maximum allowed value.","enclosedBy":{"name":"NumberBuilder","kind":3,"href":"models/NumberBuilder-class.html"}},{"name":"min","qualifiedName":"models.NumberBuilder.min","href":"models/NumberBuilder/min.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The minimum allowed value.","enclosedBy":{"name":"NumberBuilder","kind":3,"href":"models/NumberBuilder-class.html"}},{"name":"update","qualifiedName":"models.NumberBuilder.update","href":"models/NumberBuilder/update.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Updates the value based on the user's input.","enclosedBy":{"name":"NumberBuilder","kind":3,"href":"models/NumberBuilder-class.html"}},{"name":"PositionModel","qualifiedName":"models.PositionModel","href":"models/PositionModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The view model for the electrical analysis page.","enclosedBy":{"name":"position","kind":9,"href":"models/models-library.html"}},{"name":"PositionModel","qualifiedName":"models.PositionModel.PositionModel","href":"models/PositionModel/PositionModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Listens to all the ScienceTestBuilders in the UI.","enclosedBy":{"name":"PositionModel","kind":3,"href":"models/PositionModel-class.html"}},{"name":"dispose","qualifiedName":"models.PositionModel.dispose","href":"models/PositionModel/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"PositionModel","kind":3,"href":"models/PositionModel-class.html"}},{"name":"drive","qualifiedName":"models.PositionModel.drive","href":"models/PositionModel/drive.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The Metrics model for drive data.","enclosedBy":{"name":"PositionModel","kind":3,"href":"models/PositionModel-class.html"}},{"name":"leftWheels","qualifiedName":"models.PositionModel.leftWheels","href":"models/PositionModel/leftWheels.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Value for the three left wheels -- throttle * left","enclosedBy":{"name":"PositionModel","kind":3,"href":"models/PositionModel-class.html"}},{"name":"position","qualifiedName":"models.PositionModel.position","href":"models/PositionModel/position.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The Metrics model for position data.","enclosedBy":{"name":"PositionModel","kind":3,"href":"models/PositionModel-class.html"}},{"name":"rightWheels","qualifiedName":"models.PositionModel.rightWheels","href":"models/PositionModel/rightWheels.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Value for the three right wheels -- throttle * right","enclosedBy":{"name":"PositionModel","kind":3,"href":"models/PositionModel-class.html"}},{"name":"throttle","qualifiedName":"models.PositionModel.throttle","href":"models/PositionModel/throttle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Value for the three left wheels -- throttle * left","enclosedBy":{"name":"PositionModel","kind":3,"href":"models/PositionModel-class.html"}},{"name":"wheelColors","qualifiedName":"models.PositionModel.wheelColors","href":"models/PositionModel/wheelColors.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Color the wheels should be displayed\nUsed to dispay when one wheel is spinning erratically","enclosedBy":{"name":"PositionModel","kind":3,"href":"models/PositionModel-class.html"}},{"name":"wheelsRPM","qualifiedName":"models.PositionModel.wheelsRPM","href":"models/PositionModel/wheelsRPM.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"RPM of the left wheels\nLeft Front, Left Middle, Left Back, Right Front, Right Middle, Right Back","enclosedBy":{"name":"PositionModel","kind":3,"href":"models/PositionModel-class.html"}},{"name":"RequestNotAccepted","qualifiedName":"models.RequestNotAccepted","href":"models/RequestNotAccepted-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"An exception thrown when the rover does not respond to a handshake.","enclosedBy":{"name":"video","kind":9,"href":"models/models-library.html"}},{"name":"RequestNotAccepted","qualifiedName":"models.RequestNotAccepted.RequestNotAccepted","href":"models/RequestNotAccepted/RequestNotAccepted.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RequestNotAccepted","kind":3,"href":"models/RequestNotAccepted-class.html"}},{"name":"hashCode","qualifiedName":"models.RequestNotAccepted.hashCode","href":"models/RequestNotAccepted/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"RequestNotAccepted","kind":3,"href":"models/RequestNotAccepted-class.html"}},{"name":"noSuchMethod","qualifiedName":"models.RequestNotAccepted.noSuchMethod","href":"models/RequestNotAccepted/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"RequestNotAccepted","kind":3,"href":"models/RequestNotAccepted-class.html"}},{"name":"operator ==","qualifiedName":"models.RequestNotAccepted.operator ==","href":"models/RequestNotAccepted/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"RequestNotAccepted","kind":3,"href":"models/RequestNotAccepted-class.html"}},{"name":"runtimeType","qualifiedName":"models.RequestNotAccepted.runtimeType","href":"models/RequestNotAccepted/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"RequestNotAccepted","kind":3,"href":"models/RequestNotAccepted-class.html"}},{"name":"toString","qualifiedName":"models.RequestNotAccepted.toString","href":"models/RequestNotAccepted/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"RequestNotAccepted","kind":3,"href":"models/RequestNotAccepted-class.html"}},{"name":"Rover","qualifiedName":"models.Rover","href":"models/Rover-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The model to control the entire rover.","enclosedBy":{"name":"rover","kind":9,"href":"models/models-library.html"}},{"name":"Rover","qualifiedName":"models.Rover.Rover","href":"models/Rover/Rover.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"controller1","qualifiedName":"models.Rover.controller1","href":"models/Rover/controller1.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Listens for inputs on the first connected gamepad.","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"controller2","qualifiedName":"models.Rover.controller2","href":"models/Rover/controller2.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Listens for inputs on the second connected gamepad.","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"controller3","qualifiedName":"models.Rover.controller3","href":"models/Rover/controller3.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Listens for inputs on the third connected gamepad.","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"controllers","qualifiedName":"models.Rover.controllers","href":"models/Rover/controllers.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"All the controllers on the Dashboard.","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"dispose","qualifiedName":"models.Rover.dispose","href":"models/Rover/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"init","qualifiedName":"models.Rover.init","href":"models/Rover/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"isConnected","qualifiedName":"models.Rover.isConnected","href":"models/Rover/isConnected.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the rover is connected.","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"metrics","qualifiedName":"models.Rover.metrics","href":"models/Rover/metrics.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Monitors metrics coming from the rover.","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"setDefaultControls","qualifiedName":"models.Rover.setDefaultControls","href":"models/Rover/setDefaultControls.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sets all the gamepads to their default controls.","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"settings","qualifiedName":"models.Rover.settings","href":"models/Rover/settings.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A model to adjust settings on the rover.","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"status","qualifiedName":"models.Rover.status","href":"models/Rover/status.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The current status of the rover.","enclosedBy":{"name":"Rover","kind":3,"href":"models/Rover-class.html"}},{"name":"RoverControls","qualifiedName":"models.RoverControls","href":"models/RoverControls-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A class that controls one subsystem based on the gamepad state.","enclosedBy":{"name":"controls","kind":9,"href":"models/models-library.html"}},{"name":"RoverControls","qualifiedName":"models.RoverControls.RoverControls","href":"models/RoverControls/RoverControls.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Classes with a factory constructor must also have a regular constructor to be overriden.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"RoverControls.forMode","qualifiedName":"models.RoverControls.RoverControls.forMode","href":"models/RoverControls/RoverControls.forMode.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates the appropriate RoverControls for this mode.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"buttonMapping","qualifiedName":"models.RoverControls.buttonMapping","href":"models/RoverControls/buttonMapping.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A human-readable explanation of what the controls are.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"hashCode","qualifiedName":"models.RoverControls.hashCode","href":"models/RoverControls/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"mode","qualifiedName":"models.RoverControls.mode","href":"models/RoverControls/mode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The OperatingMode for these controls.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"noSuchMethod","qualifiedName":"models.RoverControls.noSuchMethod","href":"models/RoverControls/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"onDispose","qualifiedName":"models.RoverControls.onDispose","href":"models/RoverControls/onDispose.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of commands that disables the subsystem.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"operator ==","qualifiedName":"models.RoverControls.operator ==","href":"models/RoverControls/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"parseInputs","qualifiedName":"models.RoverControls.parseInputs","href":"models/RoverControls/parseInputs.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Return a list of commands based on the current state of the gamepad.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"runtimeType","qualifiedName":"models.RoverControls.runtimeType","href":"models/RoverControls/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"toString","qualifiedName":"models.RoverControls.toString","href":"models/RoverControls/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"updateState","qualifiedName":"models.RoverControls.updateState","href":"models/RoverControls/updateState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Any logic to run before checking parseInputs.","enclosedBy":{"name":"RoverControls","kind":3,"href":"models/RoverControls-class.html"}},{"name":"RoverMetrics","qualifiedName":"models.RoverMetrics","href":"models/RoverMetrics-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A data model that listens for updated data and provides Metrics to the UI.","enclosedBy":{"name":"metrics","kind":9,"href":"models/models-library.html"}},{"name":"RoverMetrics","qualifiedName":"models.RoverMetrics.RoverMetrics","href":"models/RoverMetrics/RoverMetrics.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverMetrics","kind":3,"href":"models/RoverMetrics-class.html"}},{"name":"allMetrics","qualifiedName":"models.RoverMetrics.allMetrics","href":"models/RoverMetrics/allMetrics.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of all the metrics to iterate over.","enclosedBy":{"name":"RoverMetrics","kind":3,"href":"models/RoverMetrics-class.html"}},{"name":"arm","qualifiedName":"models.RoverMetrics.arm","href":"models/RoverMetrics/arm.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Data from the HREI subsystem about the arm base.","enclosedBy":{"name":"RoverMetrics","kind":3,"href":"models/RoverMetrics-class.html"}},{"name":"drive","qualifiedName":"models.RoverMetrics.drive","href":"models/RoverMetrics/drive.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Data from the drive subsystem.","enclosedBy":{"name":"RoverMetrics","kind":3,"href":"models/RoverMetrics-class.html"}},{"name":"gripper","qualifiedName":"models.RoverMetrics.gripper","href":"models/RoverMetrics/gripper.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Data from the HREI subsystem about the gripper.","enclosedBy":{"name":"RoverMetrics","kind":3,"href":"models/RoverMetrics-class.html"}},{"name":"init","qualifiedName":"models.RoverMetrics.init","href":"models/RoverMetrics/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"RoverMetrics","kind":3,"href":"models/RoverMetrics-class.html"}},{"name":"isSupportedVersion","qualifiedName":"models.RoverMetrics.isSupportedVersion","href":"models/RoverMetrics/isSupportedVersion.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Whether the given command is supported by the rover.","enclosedBy":{"name":"RoverMetrics","kind":3,"href":"models/RoverMetrics-class.html"}},{"name":"metricsByCommandName","qualifiedName":"models.RoverMetrics.metricsByCommandName","href":"models/RoverMetrics/metricsByCommandName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Maps command names to the metrics responsible for the device.","enclosedBy":{"name":"RoverMetrics","kind":3,"href":"models/RoverMetrics-class.html"}},{"name":"position","qualifiedName":"models.RoverMetrics.position","href":"models/RoverMetrics/position.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Data from the GPS.","enclosedBy":{"name":"RoverMetrics","kind":3,"href":"models/RoverMetrics-class.html"}},{"name":"science","qualifiedName":"models.RoverMetrics.science","href":"models/RoverMetrics/science.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Data from the science subsystem.","enclosedBy":{"name":"RoverMetrics","kind":3,"href":"models/RoverMetrics-class.html"}},{"name":"vitals","qualifiedName":"models.RoverMetrics.vitals","href":"models/RoverMetrics/vitals.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Vitals data from the rover.","enclosedBy":{"name":"RoverMetrics","kind":3,"href":"models/RoverMetrics-class.html"}},{"name":"ScienceAnalysis","qualifiedName":"models.ScienceAnalysis","href":"models/ScienceAnalysis-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Analysis for one sample and sensor.","enclosedBy":{"name":"science","kind":9,"href":"models/models-library.html"}},{"name":"ScienceAnalysis","qualifiedName":"models.ScienceAnalysis.ScienceAnalysis","href":"models/ScienceAnalysis/ScienceAnalysis.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A constructor.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"addReading","qualifiedName":"models.ScienceAnalysis.addReading","href":"models/ScienceAnalysis/addReading.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Adds a reading to this analysis.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"clear","qualifiedName":"models.ScienceAnalysis.clear","href":"models/ScienceAnalysis/clear.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Clears all readings from this analysis.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"data","qualifiedName":"models.ScienceAnalysis.data","href":"models/ScienceAnalysis/data.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The data being recorded.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"hashCode","qualifiedName":"models.ScienceAnalysis.hashCode","href":"models/ScienceAnalysis/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"noSuchMethod","qualifiedName":"models.ScienceAnalysis.noSuchMethod","href":"models/ScienceAnalysis/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"operator ==","qualifiedName":"models.ScienceAnalysis.operator ==","href":"models/ScienceAnalysis/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"runtimeType","qualifiedName":"models.ScienceAnalysis.runtimeType","href":"models/ScienceAnalysis/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"sensor","qualifiedName":"models.ScienceAnalysis.sensor","href":"models/ScienceAnalysis/sensor.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The sensor being analyzed.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"testBuilder","qualifiedName":"models.ScienceAnalysis.testBuilder","href":"models/ScienceAnalysis/testBuilder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view models for the test values.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"testResult","qualifiedName":"models.ScienceAnalysis.testResult","href":"models/ScienceAnalysis/testResult.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Passes the overriden data to the sensor's test to determine signs of life.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"toString","qualifiedName":"models.ScienceAnalysis.toString","href":"models/ScienceAnalysis/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"ScienceAnalysis","kind":3,"href":"models/ScienceAnalysis-class.html"}},{"name":"ScienceCommandBuilder","qualifiedName":"models.ScienceCommandBuilder","href":"models/ScienceCommandBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder to modify and send an AutonomyCommand.","enclosedBy":{"name":"science_command","kind":9,"href":"models/models-library.html"}},{"name":"ScienceCommandBuilder","qualifiedName":"models.ScienceCommandBuilder.ScienceCommandBuilder","href":"models/ScienceCommandBuilder/ScienceCommandBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommandBuilder","kind":3,"href":"models/ScienceCommandBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.ScienceCommandBuilder.isValid","href":"models/ScienceCommandBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"ScienceCommandBuilder","kind":3,"href":"models/ScienceCommandBuilder-class.html"}},{"name":"otherBuilders","qualifiedName":"models.ScienceCommandBuilder.otherBuilders","href":"models/ScienceCommandBuilder/otherBuilders.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Listens to changes in the sample number.","enclosedBy":{"name":"ScienceCommandBuilder","kind":3,"href":"models/ScienceCommandBuilder-class.html"}},{"name":"sample","qualifiedName":"models.ScienceCommandBuilder.sample","href":"models/ScienceCommandBuilder/sample.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The sample number being tested.","enclosedBy":{"name":"ScienceCommandBuilder","kind":3,"href":"models/ScienceCommandBuilder-class.html"}},{"name":"send","qualifiedName":"models.ScienceCommandBuilder.send","href":"models/ScienceCommandBuilder/send.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sends the command to the science subsystem.","enclosedBy":{"name":"ScienceCommandBuilder","kind":3,"href":"models/ScienceCommandBuilder-class.html"}},{"name":"state","qualifiedName":"models.ScienceCommandBuilder.state","href":"models/ScienceCommandBuilder/state.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the science program should collect data.","enclosedBy":{"name":"ScienceCommandBuilder","kind":3,"href":"models/ScienceCommandBuilder-class.html"}},{"name":"updateState","qualifiedName":"models.ScienceCommandBuilder.updateState","href":"models/ScienceCommandBuilder/updateState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the state and refreshes the UI.","enclosedBy":{"name":"ScienceCommandBuilder","kind":3,"href":"models/ScienceCommandBuilder-class.html"}},{"name":"value","qualifiedName":"models.ScienceCommandBuilder.value","href":"models/ScienceCommandBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"ScienceCommandBuilder","kind":3,"href":"models/ScienceCommandBuilder-class.html"}},{"name":"ScienceControls","qualifiedName":"models.ScienceControls","href":"models/ScienceControls-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A RoverControls that controls the science chamber.","enclosedBy":{"name":"science_controls","kind":9,"href":"models/models-library.html"}},{"name":"ScienceControls","qualifiedName":"models.ScienceControls.ScienceControls","href":"models/ScienceControls/ScienceControls.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"bumperFlag","qualifiedName":"models.ScienceControls.bumperFlag","href":"models/ScienceControls/bumperFlag.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"-1 if the left bumper was pressed, +1 if the right bumper was pressed, 0 otherwise.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"buttonMapping","qualifiedName":"models.ScienceControls.buttonMapping","href":"models/ScienceControls/buttonMapping.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A human-readable explanation of what the controls are.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"carouselIncrement","qualifiedName":"models.ScienceControls.carouselIncrement","href":"models/ScienceControls/carouselIncrement.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The amount of steps to move the dirt carousel when the button is held.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"leftBumper","qualifiedName":"models.ScienceControls.leftBumper","href":"models/ScienceControls/leftBumper.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the left bumper was pressed last frame.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"mode","qualifiedName":"models.ScienceControls.mode","href":"models/ScienceControls/mode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The OperatingMode for these controls.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"onDispose","qualifiedName":"models.ScienceControls.onDispose","href":"models/ScienceControls/onDispose.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of commands that disables the subsystem.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"parseInputs","qualifiedName":"models.ScienceControls.parseInputs","href":"models/ScienceControls/parseInputs.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Return a list of commands based on the current state of the gamepad.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"rightBumper","qualifiedName":"models.ScienceControls.rightBumper","href":"models/ScienceControls/rightBumper.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the right bumper was pressed last frame.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"scoopIncrement","qualifiedName":"models.ScienceControls.scoopIncrement","href":"models/ScienceControls/scoopIncrement.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The amount of steps to move the scooper when the button is held.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"subsurfaceIncrement","qualifiedName":"models.ScienceControls.subsurfaceIncrement","href":"models/ScienceControls/subsurfaceIncrement.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The amount of steps to move the subsurface sampler when the button is held.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"tubeMode","qualifiedName":"models.ScienceControls.tubeMode","href":"models/ScienceControls/tubeMode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the shoulder buttons should move tubes or steps.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"updateState","qualifiedName":"models.ScienceControls.updateState","href":"models/ScienceControls/updateState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Any logic to run before checking parseInputs.","enclosedBy":{"name":"ScienceControls","kind":3,"href":"models/ScienceControls-class.html"}},{"name":"ScienceModel","qualifiedName":"models.ScienceModel","href":"models/ScienceModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The view model for the science analysis page.","enclosedBy":{"name":"science","kind":9,"href":"models/models-library.html"}},{"name":"ScienceModel","qualifiedName":"models.ScienceModel.ScienceModel","href":"models/ScienceModel/ScienceModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Listens to all the ScienceTestBuilders in the UI.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"addMessage","qualifiedName":"models.ScienceModel.addMessage","href":"models/ScienceModel/addMessage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Adds a WrappedMessage containing a ScienceData to the UI.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"addReading","qualifiedName":"models.ScienceModel.addReading","href":"models/ScienceModel/addReading.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Adds a value to the correct analysis for the sensor and sample.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"allSamples","qualifiedName":"models.ScienceModel.allSamples","href":"models/ScienceModel/allSamples.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of all the samples for all the sensors.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"analysesForSample","qualifiedName":"models.ScienceModel.analysesForSample","href":"models/ScienceModel/analysesForSample.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"All the sensors for the current sample.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"clear","qualifiedName":"models.ScienceModel.clear","href":"models/ScienceModel/clear.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Clears all the readings from all the samples.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"dispose","qualifiedName":"models.ScienceModel.dispose","href":"models/ScienceModel/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"errorText","qualifiedName":"models.ScienceModel.errorText","href":"models/ScienceModel/errorText.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The error, if any, that occurred while loading the data.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"isListening","qualifiedName":"models.ScienceModel.isListening","href":"models/ScienceModel/isListening.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to listen for new data from the rover. This is false after loading a file.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"isLoading","qualifiedName":"models.ScienceModel.isLoading","href":"models/ScienceModel/isLoading.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the page is currently loading.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"loadFile","qualifiedName":"models.ScienceModel.loadFile","href":"models/ScienceModel/loadFile.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Calls addMessage for each message in the picked file.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"metrics","qualifiedName":"models.ScienceModel.metrics","href":"models/ScienceModel/metrics.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The Metrics model for science data.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"numSamples","qualifiedName":"models.ScienceModel.numSamples","href":"models/ScienceModel/numSamples.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many samples to analyze. Can be changed in the settings.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"sample","qualifiedName":"models.ScienceModel.sample","href":"models/ScienceModel/sample.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The sample whose stats are being displayed.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"updateData","qualifiedName":"models.ScienceModel.updateData","href":"models/ScienceModel/updateData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the graph using addMessage with the latest data from metrics.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"updateSample","qualifiedName":"models.ScienceModel.updateSample","href":"models/ScienceModel/updateSample.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the sample variable.","enclosedBy":{"name":"ScienceModel","kind":3,"href":"models/ScienceModel-class.html"}},{"name":"ScienceSettingsBuilder","qualifiedName":"models.ScienceSettingsBuilder","href":"models/ScienceSettingsBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder that modifies a ScienceSettings.","enclosedBy":{"name":"settings_builder","kind":9,"href":"models/models-library.html"}},{"name":"ScienceSettingsBuilder","qualifiedName":"models.ScienceSettingsBuilder.ScienceSettingsBuilder","href":"models/ScienceSettingsBuilder/ScienceSettingsBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Modifies the given ScienceSettings.","enclosedBy":{"name":"ScienceSettingsBuilder","kind":3,"href":"models/ScienceSettingsBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.ScienceSettingsBuilder.isValid","href":"models/ScienceSettingsBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"ScienceSettingsBuilder","kind":3,"href":"models/ScienceSettingsBuilder-class.html"}},{"name":"numSamples","qualifiedName":"models.ScienceSettingsBuilder.numSamples","href":"models/ScienceSettingsBuilder/numSamples.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The number of samples collected. See ScienceSettings.numSamples.","enclosedBy":{"name":"ScienceSettingsBuilder","kind":3,"href":"models/ScienceSettingsBuilder-class.html"}},{"name":"scrollableGraphs","qualifiedName":"models.ScienceSettingsBuilder.scrollableGraphs","href":"models/ScienceSettingsBuilder/scrollableGraphs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the graphs can scrolls. See ScienceSettings.scrollableGraphs.","enclosedBy":{"name":"ScienceSettingsBuilder","kind":3,"href":"models/ScienceSettingsBuilder-class.html"}},{"name":"updateScrollableGraphs","qualifiedName":"models.ScienceSettingsBuilder.updateScrollableGraphs","href":"models/ScienceSettingsBuilder/updateScrollableGraphs.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Modifies scrollableGraphs.","enclosedBy":{"name":"ScienceSettingsBuilder","kind":3,"href":"models/ScienceSettingsBuilder-class.html"}},{"name":"value","qualifiedName":"models.ScienceSettingsBuilder.value","href":"models/ScienceSettingsBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"ScienceSettingsBuilder","kind":3,"href":"models/ScienceSettingsBuilder-class.html"}},{"name":"ScienceTestBuilder","qualifiedName":"models.ScienceTestBuilder","href":"models/ScienceTestBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A view model to allow the user to override values supplied to ScienceTests.","enclosedBy":{"name":"science","kind":9,"href":"models/models-library.html"}},{"name":"ScienceTestBuilder","qualifiedName":"models.ScienceTestBuilder.ScienceTestBuilder","href":"models/ScienceTestBuilder/ScienceTestBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A constructor.","enclosedBy":{"name":"ScienceTestBuilder","kind":3,"href":"models/ScienceTestBuilder-class.html"}},{"name":"average","qualifiedName":"models.ScienceTestBuilder.average","href":"models/ScienceTestBuilder/average.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"An override for the average value.","enclosedBy":{"name":"ScienceTestBuilder","kind":3,"href":"models/ScienceTestBuilder-class.html"}},{"name":"dispose","qualifiedName":"models.ScienceTestBuilder.dispose","href":"models/ScienceTestBuilder/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"ScienceTestBuilder","kind":3,"href":"models/ScienceTestBuilder-class.html"}},{"name":"max","qualifiedName":"models.ScienceTestBuilder.max","href":"models/ScienceTestBuilder/max.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"An override for the maximum value.","enclosedBy":{"name":"ScienceTestBuilder","kind":3,"href":"models/ScienceTestBuilder-class.html"}},{"name":"min","qualifiedName":"models.ScienceTestBuilder.min","href":"models/ScienceTestBuilder/min.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"An override for the minimum value.","enclosedBy":{"name":"ScienceTestBuilder","kind":3,"href":"models/ScienceTestBuilder-class.html"}},{"name":"update","qualifiedName":"models.ScienceTestBuilder.update","href":"models/ScienceTestBuilder/update.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the view models with the latest data.","enclosedBy":{"name":"ScienceTestBuilder","kind":3,"href":"models/ScienceTestBuilder-class.html"}},{"name":"SerialModel","qualifiedName":"models.SerialModel","href":"models/SerialModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A data model to manage all connected serial devices.","enclosedBy":{"name":"serial","kind":9,"href":"models/models-library.html"}},{"name":"SerialModel","qualifiedName":"models.SerialModel.SerialModel","href":"models/SerialModel/SerialModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"SerialModel","kind":3,"href":"models/SerialModel-class.html"}},{"name":"connect","qualifiedName":"models.SerialModel.connect","href":"models/SerialModel/connect.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Connects to the given serial port and adds an entry to devices.","enclosedBy":{"name":"SerialModel","kind":3,"href":"models/SerialModel-class.html"}},{"name":"devices","qualifiedName":"models.SerialModel.devices","href":"models/SerialModel/devices.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"All the connected devices and their respective serial ports.","enclosedBy":{"name":"SerialModel","kind":3,"href":"models/SerialModel-class.html"}},{"name":"disconnect","qualifiedName":"models.SerialModel.disconnect","href":"models/SerialModel/disconnect.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Disconnects the device on the given port, if any, and removes its entry from devices.","enclosedBy":{"name":"SerialModel","kind":3,"href":"models/SerialModel-class.html"}},{"name":"hasDevice","qualifiedName":"models.SerialModel.hasDevice","href":"models/SerialModel/hasDevice.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Returns true if any device is connected.","enclosedBy":{"name":"SerialModel","kind":3,"href":"models/SerialModel-class.html"}},{"name":"init","qualifiedName":"models.SerialModel.init","href":"models/SerialModel/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"SerialModel","kind":3,"href":"models/SerialModel-class.html"}},{"name":"isConnected","qualifiedName":"models.SerialModel.isConnected","href":"models/SerialModel/isConnected.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Whether the given port is connected.","enclosedBy":{"name":"SerialModel","kind":3,"href":"models/SerialModel-class.html"}},{"name":"sendMessage","qualifiedName":"models.SerialModel.sendMessage","href":"models/SerialModel/sendMessage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sends a message to all connected devices.","enclosedBy":{"name":"SerialModel","kind":3,"href":"models/SerialModel-class.html"}},{"name":"toggle","qualifiedName":"models.SerialModel.toggle","href":"models/SerialModel/toggle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Either connects or disconnects the device on the given port.","enclosedBy":{"name":"SerialModel","kind":3,"href":"models/SerialModel-class.html"}},{"name":"SettingsBuilder","qualifiedName":"models.SettingsBuilder","href":"models/SettingsBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder representing an ArmSettings.","enclosedBy":{"name":"settings_builder","kind":9,"href":"models/models-library.html"}},{"name":"SettingsBuilder","qualifiedName":"models.SettingsBuilder.SettingsBuilder","href":"models/SettingsBuilder/SettingsBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Modifies the user's settings.","enclosedBy":{"name":"SettingsBuilder","kind":3,"href":"models/SettingsBuilder-class.html"}},{"name":"arm","qualifiedName":"models.SettingsBuilder.arm","href":"models/SettingsBuilder/arm.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The ArmSettings view model.","enclosedBy":{"name":"SettingsBuilder","kind":3,"href":"models/SettingsBuilder-class.html"}},{"name":"dashboard","qualifiedName":"models.SettingsBuilder.dashboard","href":"models/SettingsBuilder/dashboard.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The DashboardSettings view model.","enclosedBy":{"name":"SettingsBuilder","kind":3,"href":"models/SettingsBuilder-class.html"}},{"name":"easterEggs","qualifiedName":"models.SettingsBuilder.easterEggs","href":"models/SettingsBuilder/easterEggs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The EasterEggsSettings view model.","enclosedBy":{"name":"SettingsBuilder","kind":3,"href":"models/SettingsBuilder-class.html"}},{"name":"isLoading","qualifiedName":"models.SettingsBuilder.isLoading","href":"models/SettingsBuilder/isLoading.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the page is loading.","enclosedBy":{"name":"SettingsBuilder","kind":3,"href":"models/SettingsBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.SettingsBuilder.isValid","href":"models/SettingsBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"SettingsBuilder","kind":3,"href":"models/SettingsBuilder-class.html"}},{"name":"network","qualifiedName":"models.SettingsBuilder.network","href":"models/SettingsBuilder/network.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The NetworkSettings view model.","enclosedBy":{"name":"SettingsBuilder","kind":3,"href":"models/SettingsBuilder-class.html"}},{"name":"save","qualifiedName":"models.SettingsBuilder.save","href":"models/SettingsBuilder/save.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Saves the settings to the device.","enclosedBy":{"name":"SettingsBuilder","kind":3,"href":"models/SettingsBuilder-class.html"}},{"name":"science","qualifiedName":"models.SettingsBuilder.science","href":"models/SettingsBuilder/science.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The ScienceSettings view model.","enclosedBy":{"name":"SettingsBuilder","kind":3,"href":"models/SettingsBuilder-class.html"}},{"name":"value","qualifiedName":"models.SettingsBuilder.value","href":"models/SettingsBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"SettingsBuilder","kind":3,"href":"models/SettingsBuilder-class.html"}},{"name":"SettingsModel","qualifiedName":"models.SettingsModel","href":"models/SettingsModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Manages the user's settings.","enclosedBy":{"name":"settings","kind":9,"href":"models/models-library.html"}},{"name":"SettingsModel","qualifiedName":"models.SettingsModel.SettingsModel","href":"models/SettingsModel/SettingsModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"SettingsModel","kind":3,"href":"models/SettingsModel-class.html"}},{"name":"all","qualifiedName":"models.SettingsModel.all","href":"models/SettingsModel/all.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The current settings.","enclosedBy":{"name":"SettingsModel","kind":3,"href":"models/SettingsModel-class.html"}},{"name":"arm","qualifiedName":"models.SettingsModel.arm","href":"models/SettingsModel/arm.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The user's arm settings.","enclosedBy":{"name":"SettingsModel","kind":3,"href":"models/SettingsModel-class.html"}},{"name":"dashboard","qualifiedName":"models.SettingsModel.dashboard","href":"models/SettingsModel/dashboard.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The user's dashboard settings.","enclosedBy":{"name":"SettingsModel","kind":3,"href":"models/SettingsModel-class.html"}},{"name":"easterEggs","qualifiedName":"models.SettingsModel.easterEggs","href":"models/SettingsModel/easterEggs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The user's easter egg settings.","enclosedBy":{"name":"SettingsModel","kind":3,"href":"models/SettingsModel-class.html"}},{"name":"init","qualifiedName":"models.SettingsModel.init","href":"models/SettingsModel/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"SettingsModel","kind":3,"href":"models/SettingsModel-class.html"}},{"name":"network","qualifiedName":"models.SettingsModel.network","href":"models/SettingsModel/network.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The user's network settings.","enclosedBy":{"name":"SettingsModel","kind":3,"href":"models/SettingsModel-class.html"}},{"name":"science","qualifiedName":"models.SettingsModel.science","href":"models/SettingsModel/science.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The user's science settings.","enclosedBy":{"name":"SettingsModel","kind":3,"href":"models/SettingsModel-class.html"}},{"name":"update","qualifiedName":"models.SettingsModel.update","href":"models/SettingsModel/update.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Replaces the current settings with the provided ones.","enclosedBy":{"name":"SettingsModel","kind":3,"href":"models/SettingsModel-class.html"}},{"name":"SocketBuilder","qualifiedName":"models.SocketBuilder","href":"models/SocketBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder that modifies a SocketInfo.","enclosedBy":{"name":"settings_builder","kind":9,"href":"models/models-library.html"}},{"name":"SocketBuilder","qualifiedName":"models.SocketBuilder.SocketBuilder","href":"models/SocketBuilder/SocketBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a view model to modify the given SocketInfo.","enclosedBy":{"name":"SocketBuilder","kind":3,"href":"models/SocketBuilder-class.html"}},{"name":"address","qualifiedName":"models.SocketBuilder.address","href":"models/SocketBuilder/address.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The builder for the IP address.","enclosedBy":{"name":"SocketBuilder","kind":3,"href":"models/SocketBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.SocketBuilder.isValid","href":"models/SocketBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"SocketBuilder","kind":3,"href":"models/SocketBuilder-class.html"}},{"name":"port","qualifiedName":"models.SocketBuilder.port","href":"models/SocketBuilder/port.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The builder for the port number.","enclosedBy":{"name":"SocketBuilder","kind":3,"href":"models/SocketBuilder-class.html"}},{"name":"value","qualifiedName":"models.SocketBuilder.value","href":"models/SocketBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"SocketBuilder","kind":3,"href":"models/SocketBuilder-class.html"}},{"name":"Sockets","qualifiedName":"models.Sockets","href":"models/Sockets-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Coordinates all the sockets to point to the right RoverType.","enclosedBy":{"name":"sockets","kind":9,"href":"models/models-library.html"}},{"name":"Sockets","qualifiedName":"models.Sockets.Sockets","href":"models/Sockets/Sockets.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"addressOverride","qualifiedName":"models.Sockets.addressOverride","href":"models/Sockets/addressOverride.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The InternetAddress to use instead of the address on the rover.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"autonomy","qualifiedName":"models.Sockets.autonomy","href":"models/Sockets/autonomy.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A UDP socket for controlling autonomy.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"connectionSummary","qualifiedName":"models.Sockets.connectionSummary","href":"models/Sockets/connectionSummary.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A rundown of the connection strength of each device.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"data","qualifiedName":"models.Sockets.data","href":"models/Sockets/data.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A UDP socket for sending and receiving Protobuf data.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"dispose","qualifiedName":"models.Sockets.dispose","href":"models/Sockets/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"init","qualifiedName":"models.Sockets.init","href":"models/Sockets/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"onConnect","qualifiedName":"models.Sockets.onConnect","href":"models/Sockets/onConnect.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Notifies the user when a new device has connected.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"onDisconnect","qualifiedName":"models.Sockets.onDisconnect","href":"models/Sockets/onDisconnect.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Notifies the user when a device has disconnected.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"reset","qualifiedName":"models.Sockets.reset","href":"models/Sockets/reset.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Resets all the sockets.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"rover","qualifiedName":"models.Sockets.rover","href":"models/Sockets/rover.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The rover-like system currently in use.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"setRover","qualifiedName":"models.Sockets.setRover","href":"models/Sockets/setRover.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Change which rover is being used.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"socketForDevice","qualifiedName":"models.Sockets.socketForDevice","href":"models/Sockets/socketForDevice.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Returns the corresponding DashboardSocket for the device","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"sockets","qualifiedName":"models.Sockets.sockets","href":"models/Sockets/sockets.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of all the sockets this model manages.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"updateSockets","qualifiedName":"models.Sockets.updateSockets","href":"models/Sockets/updateSockets.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Set the right IP addresses for the rover or tank.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"video","qualifiedName":"models.Sockets.video","href":"models/Sockets/video.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A UDP socket for receiving video.","enclosedBy":{"name":"Sockets","kind":3,"href":"models/Sockets-class.html"}},{"name":"TextBuilder","qualifiedName":"models.TextBuilder","href":"models/TextBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder backed by a Flutter TextField.","enclosedBy":{"name":"builder","kind":9,"href":"models/models-library.html"}},{"name":"TextBuilder","qualifiedName":"models.TextBuilder.TextBuilder","href":"models/TextBuilder/TextBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a view model to update settings.","enclosedBy":{"name":"TextBuilder","kind":3,"href":"models/TextBuilder-class.html"}},{"name":"controller","qualifiedName":"models.TextBuilder.controller","href":"models/TextBuilder/controller.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The controller for the TextField.","enclosedBy":{"name":"TextBuilder","kind":3,"href":"models/TextBuilder-class.html"}},{"name":"error","qualifiedName":"models.TextBuilder.error","href":"models/TextBuilder/error.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The error to display in the UI, if any.","enclosedBy":{"name":"TextBuilder","kind":3,"href":"models/TextBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.TextBuilder.isValid","href":"models/TextBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"TextBuilder","kind":3,"href":"models/TextBuilder-class.html"}},{"name":"update","qualifiedName":"models.TextBuilder.update","href":"models/TextBuilder/update.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the value based on the user's input.","enclosedBy":{"name":"TextBuilder","kind":3,"href":"models/TextBuilder-class.html"}},{"name":"value","qualifiedName":"models.TextBuilder.value","href":"models/TextBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"TextBuilder","kind":3,"href":"models/TextBuilder-class.html"}},{"name":"ThrottleBuilder","qualifiedName":"models.ThrottleBuilder","href":"models/ThrottleBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A view model to allow the user to edit a throttle value and send it to the rover.","enclosedBy":{"name":"throttle","kind":9,"href":"models/models-library.html"}},{"name":"ThrottleBuilder","qualifiedName":"models.ThrottleBuilder.ThrottleBuilder","href":"models/ThrottleBuilder/ThrottleBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ThrottleBuilder","kind":3,"href":"models/ThrottleBuilder-class.html"}},{"name":"controller","qualifiedName":"models.ThrottleBuilder.controller","href":"models/ThrottleBuilder/controller.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A NumberBuilder to modify the throttle value.","enclosedBy":{"name":"ThrottleBuilder","kind":3,"href":"models/ThrottleBuilder-class.html"}},{"name":"errorText","qualifiedName":"models.ThrottleBuilder.errorText","href":"models/ThrottleBuilder/errorText.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The error with the throttle, if any.","enclosedBy":{"name":"ThrottleBuilder","kind":3,"href":"models/ThrottleBuilder-class.html"}},{"name":"isLoading","qualifiedName":"models.ThrottleBuilder.isLoading","href":"models/ThrottleBuilder/isLoading.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the throttle command is still sending.","enclosedBy":{"name":"ThrottleBuilder","kind":3,"href":"models/ThrottleBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.ThrottleBuilder.isValid","href":"models/ThrottleBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the throttle is valid.","enclosedBy":{"name":"ThrottleBuilder","kind":3,"href":"models/ThrottleBuilder-class.html"}},{"name":"save","qualifiedName":"models.ThrottleBuilder.save","href":"models/ThrottleBuilder/save.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Saves the throttle to the rover. Does not perform a handshake.","enclosedBy":{"name":"ThrottleBuilder","kind":3,"href":"models/ThrottleBuilder-class.html"}},{"name":"TimerBuilder","qualifiedName":"models.TimerBuilder","href":"models/TimerBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Starts a MissionTimer based on user input.","enclosedBy":{"name":"timer_builder","kind":9,"href":"models/models-library.html"}},{"name":"TimerBuilder","qualifiedName":"models.TimerBuilder.TimerBuilder","href":"models/TimerBuilder/TimerBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"TimerBuilder","kind":3,"href":"models/TimerBuilder-class.html"}},{"name":"duration","qualifiedName":"models.TimerBuilder.duration","href":"models/TimerBuilder/duration.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Number of minutes","enclosedBy":{"name":"TimerBuilder","kind":3,"href":"models/TimerBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.TimerBuilder.isValid","href":"models/TimerBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"TimerBuilder","kind":3,"href":"models/TimerBuilder-class.html"}},{"name":"nameController","qualifiedName":"models.TimerBuilder.nameController","href":"models/TimerBuilder/nameController.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The text controller for the timer name.","enclosedBy":{"name":"TimerBuilder","kind":3,"href":"models/TimerBuilder-class.html"}},{"name":"otherBuilders","qualifiedName":"models.TimerBuilder.otherBuilders","href":"models/TimerBuilder/otherBuilders.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Other builders to listen to.","enclosedBy":{"name":"TimerBuilder","kind":3,"href":"models/TimerBuilder-class.html"}},{"name":"start","qualifiedName":"models.TimerBuilder.start","href":"models/TimerBuilder/start.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Starts the timer","enclosedBy":{"name":"TimerBuilder","kind":3,"href":"models/TimerBuilder-class.html"}},{"name":"update","qualifiedName":"models.TimerBuilder.update","href":"models/TimerBuilder/update.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the UI.","enclosedBy":{"name":"TimerBuilder","kind":3,"href":"models/TimerBuilder-class.html"}},{"name":"value","qualifiedName":"models.TimerBuilder.value","href":"models/TimerBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"TimerBuilder","kind":3,"href":"models/TimerBuilder-class.html"}},{"name":"ValueBuilder","qualifiedName":"models.ValueBuilder","href":"models/ValueBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A view model to modify a value.","enclosedBy":{"name":"builder","kind":9,"href":"models/models-library.html"}},{"name":"ValueBuilder","qualifiedName":"models.ValueBuilder.ValueBuilder","href":"models/ValueBuilder/ValueBuilder.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Listens to all otherBuilders as part of this builder.","enclosedBy":{"name":"ValueBuilder","kind":3,"href":"models/ValueBuilder-class.html"}},{"name":"dispose","qualifiedName":"models.ValueBuilder.dispose","href":"models/ValueBuilder/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"ValueBuilder","kind":3,"href":"models/ValueBuilder-class.html"}},{"name":"isValid","qualifiedName":"models.ValueBuilder.isValid","href":"models/ValueBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","enclosedBy":{"name":"ValueBuilder","kind":3,"href":"models/ValueBuilder-class.html"}},{"name":"otherBuilders","qualifiedName":"models.ValueBuilder.otherBuilders","href":"models/ValueBuilder/otherBuilders.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Other builders to listen to.","enclosedBy":{"name":"ValueBuilder","kind":3,"href":"models/ValueBuilder-class.html"}},{"name":"value","qualifiedName":"models.ValueBuilder.value","href":"models/ValueBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"ValueBuilder","kind":3,"href":"models/ValueBuilder-class.html"}},{"name":"VideoModel","qualifiedName":"models.VideoModel","href":"models/VideoModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A data model to stream video from the rover.","enclosedBy":{"name":"video","kind":9,"href":"models/models-library.html"}},{"name":"VideoModel","qualifiedName":"models.VideoModel.VideoModel","href":"models/VideoModel/VideoModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"dispose","qualifiedName":"models.VideoModel.dispose","href":"models/VideoModel/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"feeds","qualifiedName":"models.VideoModel.feeds","href":"models/VideoModel/feeds.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"All the video feeds supported by the rover.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"fpsTimer","qualifiedName":"models.VideoModel.fpsTimer","href":"models/VideoModel/fpsTimer.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A timer to update the FPS counter.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"frameUpdater","qualifiedName":"models.VideoModel.frameUpdater","href":"models/VideoModel/frameUpdater.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Triggers when it's time to update a new frame.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"framesThisSecond","qualifiedName":"models.VideoModel.framesThisSecond","href":"models/VideoModel/framesThisSecond.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many frames came in the network in the past second.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"handleData","qualifiedName":"models.VideoModel.handleData","href":"models/VideoModel/handleData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the data for a given camera.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"init","qualifiedName":"models.VideoModel.init","href":"models/VideoModel/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"networkFps","qualifiedName":"models.VideoModel.networkFps","href":"models/VideoModel/networkFps.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How many frames came in the network in the past second.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"reset","qualifiedName":"models.VideoModel.reset","href":"models/VideoModel/reset.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Clears all video data and resets the timer.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"resetNetworkFps","qualifiedName":"models.VideoModel.resetNetworkFps","href":"models/VideoModel/resetNetworkFps.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Saves the frames in the past second (framesThisSecond) to networkFps.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"saveFrame","qualifiedName":"models.VideoModel.saveFrame","href":"models/VideoModel/saveFrame.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Takes a screenshot of the current frame.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"toggleCamera","qualifiedName":"models.VideoModel.toggleCamera","href":"models/VideoModel/toggleCamera.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Enables or disables the given camera.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"updateCamera","qualifiedName":"models.VideoModel.updateCamera","href":"models/VideoModel/updateCamera.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates settings for the given camera.","enclosedBy":{"name":"VideoModel","kind":3,"href":"models/VideoModel-class.html"}},{"name":"ViewsModel","qualifiedName":"models.ViewsModel","href":"models/ViewsModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A data model for keeping track of the on-screen views.","enclosedBy":{"name":"views","kind":9,"href":"models/models-library.html"}},{"name":"ViewsModel","qualifiedName":"models.ViewsModel.ViewsModel","href":"models/ViewsModel/ViewsModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"dispose","qualifiedName":"models.ViewsModel.dispose","href":"models/ViewsModel/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"horizontalController1","qualifiedName":"models.ViewsModel.horizontalController1","href":"models/ViewsModel/horizontalController1.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The controller for the resizable row on top.","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"horizontalController2","qualifiedName":"models.ViewsModel.horizontalController2","href":"models/ViewsModel/horizontalController2.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The controller for the resizable row on bottom.","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"horizontalController3","qualifiedName":"models.ViewsModel.horizontalController3","href":"models/ViewsModel/horizontalController3.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The controller for screen 2's first row.","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"horizontalController4","qualifiedName":"models.ViewsModel.horizontalController4","href":"models/ViewsModel/horizontalController4.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The controller for screen 2's second row.","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"init","qualifiedName":"models.ViewsModel.init","href":"models/ViewsModel/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes any data needed by this model.","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"replaceView","qualifiedName":"models.ViewsModel.replaceView","href":"models/ViewsModel/replaceView.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Replaces the view at the given index with the new view.","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"resetSizes","qualifiedName":"models.ViewsModel.resetSizes","href":"models/ViewsModel/resetSizes.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Resets the size of all the views.","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"setNumViews","qualifiedName":"models.ViewsModel.setNumViews","href":"models/ViewsModel/setNumViews.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Adds or subtracts a number of views to/from the UI","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"verticalController","qualifiedName":"models.ViewsModel.verticalController","href":"models/ViewsModel/verticalController.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The controller for the resizable column.","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"verticalController2","qualifiedName":"models.ViewsModel.verticalController2","href":"models/ViewsModel/verticalController2.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The vertical controller for screen 2.","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"views","qualifiedName":"models.ViewsModel.views","href":"models/ViewsModel/views.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The current views on the screen.","enclosedBy":{"name":"ViewsModel","kind":3,"href":"models/ViewsModel-class.html"}},{"name":"gamepadDelay","qualifiedName":"models.gamepadDelay","href":"models/gamepadDelay-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"How often to check the gamepad for new button presses.","enclosedBy":{"name":"models","kind":9,"href":"models/models-library.html"}},{"name":"maxLogCount","qualifiedName":"models.maxLogCount","href":"models/maxLogCount-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The maximum amount of logs (to prevent consuming too much memory).","enclosedBy":{"name":"models","kind":9,"href":"models/models-library.html"}},{"name":"models","qualifiedName":"models.models","href":"models/models.html","kind":20,"overriddenDepth":0,"packageRank":0,"desc":"The data model representing the entire backend of the dashboard.","enclosedBy":{"name":"models","kind":9,"href":"models/models-library.html"}},{"name":"pages","qualifiedName":"pages","href":"pages/pages-library.html","kind":9,"overriddenDepth":0,"packageRank":0,"desc":"Contains the high-level UI code that defines each page."},{"name":"ArmPage","qualifiedName":"pages.ArmPage","href":"pages/ArmPage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The view model for the arm inverse kinematics analysis page.","enclosedBy":{"name":"arm","kind":9,"href":"pages/pages-library.html"}},{"name":"ArmPage","qualifiedName":"pages.ArmPage.ArmPage","href":"pages/ArmPage/ArmPage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ArmPage","kind":3,"href":"pages/ArmPage-class.html"}},{"name":"build","qualifiedName":"pages.ArmPage.build","href":"pages/ArmPage/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"ArmPage","kind":3,"href":"pages/ArmPage-class.html"}},{"name":"createModel","qualifiedName":"pages.ArmPage.createModel","href":"pages/ArmPage/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"ArmPage","kind":3,"href":"pages/ArmPage-class.html"}},{"name":"index","qualifiedName":"pages.ArmPage.index","href":"pages/ArmPage/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The index of this view.","enclosedBy":{"name":"ArmPage","kind":3,"href":"pages/ArmPage-class.html"}},{"name":"ArmPainterSide","qualifiedName":"pages.ArmPainterSide","href":"pages/ArmPainterSide-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to show the profile view of the arm.","enclosedBy":{"name":"arm","kind":9,"href":"pages/pages-library.html"}},{"name":"ArmPainterSide","qualifiedName":"pages.ArmPainterSide.ArmPainterSide","href":"pages/ArmPainterSide/ArmPainterSide.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Constructor for the ArmPainterSide, takes in 3 angles","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"elbowLength","qualifiedName":"pages.ArmPainterSide.elbowLength","href":"pages/ArmPainterSide/elbowLength-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The relative length of the elbow-wrist segment.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"getArmCoordinates","qualifiedName":"pages.ArmPainterSide.getArmCoordinates","href":"pages/ArmPainterSide/getArmCoordinates.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Performs forward kinematics to get the coordinates of each joint from the angles.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"getRelativeOffset","qualifiedName":"pages.ArmPainterSide.getRelativeOffset","href":"pages/ArmPainterSide/getRelativeOffset.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Converts an absolute offset within this widget to a relative offset about the shoulder joint.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"gripperLength","qualifiedName":"pages.ArmPainterSide.gripperLength","href":"pages/ArmPainterSide/gripperLength-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The relative length of the gripper.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"ik","qualifiedName":"pages.ArmPainterSide.ik","href":"pages/ArmPainterSide/ik.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Performs inverse kinematics to get the angles of the arm from the desired position.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"model","qualifiedName":"pages.ArmPainterSide.model","href":"pages/ArmPainterSide/model.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model to pull data from.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"paint","qualifiedName":"pages.ArmPainterSide.paint","href":"pages/ArmPainterSide/paint.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Called whenever the object needs to paint. The given Canvas has its\ncoordinate space configured such that the origin is at the top left of the\nbox. The area of the box is the size of the size argument.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"paintArm","qualifiedName":"pages.ArmPainterSide.paintArm","href":"pages/ArmPainterSide/paintArm.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Paints the arm given its joint positions.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"radiusColor","qualifiedName":"pages.ArmPainterSide.radiusColor","href":"pages/ArmPainterSide/radiusColor.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Color to paint the radius in","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"screen","qualifiedName":"pages.ArmPainterSide.screen","href":"pages/ArmPainterSide/screen.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The smaller screen dimension.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"shouldRepaint","qualifiedName":"pages.ArmPainterSide.shouldRepaint","href":"pages/ArmPainterSide/shouldRepaint.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Called whenever a new instance of the custom painter delegate class is\nprovided to the RenderCustomPaint object, or any time that a new\nCustomPaint object is created with a new instance of the custom painter\ndelegate class (which amounts to the same thing, because the latter is\nimplemented in terms of the former).","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"shoulderLength","qualifiedName":"pages.ArmPainterSide.shoulderLength","href":"pages/ArmPainterSide/shoulderLength-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The relative length of the shoulder-elbow segment.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"toAbsolute","qualifiedName":"pages.ArmPainterSide.toAbsolute","href":"pages/ArmPainterSide/toAbsolute.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Converts from -1, 1 relative coordinates to screen coordinates.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"totalArmLength","qualifiedName":"pages.ArmPainterSide.totalArmLength","href":"pages/ArmPainterSide/totalArmLength-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The total relative length of the arm.","enclosedBy":{"name":"ArmPainterSide","kind":3,"href":"pages/ArmPainterSide-class.html"}},{"name":"ArmPainterTop","qualifiedName":"pages.ArmPainterTop","href":"pages/ArmPainterTop-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to paint the top-down view of the arm.","enclosedBy":{"name":"arm","kind":9,"href":"pages/pages-library.html"}},{"name":"ArmPainterTop","qualifiedName":"pages.ArmPainterTop.ArmPainterTop","href":"pages/ArmPainterTop/ArmPainterTop.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Paints a top-down view of the arm.","enclosedBy":{"name":"ArmPainterTop","kind":3,"href":"pages/ArmPainterTop-class.html"}},{"name":"getElbow","qualifiedName":"pages.ArmPainterTop.getElbow","href":"pages/ArmPainterTop/getElbow.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets the location of the elbow joint.","enclosedBy":{"name":"ArmPainterTop","kind":3,"href":"pages/ArmPainterTop-class.html"}},{"name":"getShoulder","qualifiedName":"pages.ArmPainterTop.getShoulder","href":"pages/ArmPainterTop/getShoulder.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets the location of the shoulder joint.","enclosedBy":{"name":"ArmPainterTop","kind":3,"href":"pages/ArmPainterTop-class.html"}},{"name":"paint","qualifiedName":"pages.ArmPainterTop.paint","href":"pages/ArmPainterTop/paint.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Called whenever the object needs to paint. The given Canvas has its\ncoordinate space configured such that the origin is at the top left of the\nbox. The area of the box is the size of the size argument.","enclosedBy":{"name":"ArmPainterTop","kind":3,"href":"pages/ArmPainterTop-class.html"}},{"name":"screen","qualifiedName":"pages.ArmPainterTop.screen","href":"pages/ArmPainterTop/screen.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The size of the smaller dimension of the screen.","enclosedBy":{"name":"ArmPainterTop","kind":3,"href":"pages/ArmPainterTop-class.html"}},{"name":"shouldRepaint","qualifiedName":"pages.ArmPainterTop.shouldRepaint","href":"pages/ArmPainterTop/shouldRepaint.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Called whenever a new instance of the custom painter delegate class is\nprovided to the RenderCustomPaint object, or any time that a new\nCustomPaint object is created with a new instance of the custom painter\ndelegate class (which amounts to the same thing, because the latter is\nimplemented in terms of the former).","enclosedBy":{"name":"ArmPainterTop","kind":3,"href":"pages/ArmPainterTop-class.html"}},{"name":"swivelAngle","qualifiedName":"pages.ArmPainterTop.swivelAngle","href":"pages/ArmPainterTop/swivelAngle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The swivel angle of the arm.","enclosedBy":{"name":"ArmPainterTop","kind":3,"href":"pages/ArmPainterTop-class.html"}},{"name":"toAbsolute","qualifiedName":"pages.ArmPainterTop.toAbsolute","href":"pages/ArmPainterTop/toAbsolute.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Converts relative coordinates from -1, 1 to screen coordinates.","enclosedBy":{"name":"ArmPainterTop","kind":3,"href":"pages/ArmPainterTop-class.html"}},{"name":"ChartsRow","qualifiedName":"pages.ChartsRow","href":"pages/ChartsRow-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ScrollingRow of charts, using builder on each ScienceAnalysis in analyses.","enclosedBy":{"name":"science","kind":9,"href":"pages/pages-library.html"}},{"name":"ChartsRow","qualifiedName":"pages.ChartsRow.ChartsRow","href":"pages/ChartsRow/ChartsRow.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ChartsRow","kind":3,"href":"pages/ChartsRow-class.html"}},{"name":"analyses","qualifiedName":"pages.ChartsRow.analyses","href":"pages/ChartsRow/analyses.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The data for these charts.","enclosedBy":{"name":"ChartsRow","kind":3,"href":"pages/ChartsRow-class.html"}},{"name":"build","qualifiedName":"pages.ChartsRow.build","href":"pages/ChartsRow/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"ChartsRow","kind":3,"href":"pages/ChartsRow-class.html"}},{"name":"builder","qualifiedName":"pages.ChartsRow.builder","href":"pages/ChartsRow/builder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The chart to show for each piece of data.","enclosedBy":{"name":"ChartsRow","kind":3,"href":"pages/ChartsRow-class.html"}},{"name":"height","qualifiedName":"pages.ChartsRow.height","href":"pages/ChartsRow/height.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The height of this row.","enclosedBy":{"name":"ChartsRow","kind":3,"href":"pages/ChartsRow-class.html"}},{"name":"title","qualifiedName":"pages.ChartsRow.title","href":"pages/ChartsRow/title.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The title of these charts.","enclosedBy":{"name":"ChartsRow","kind":3,"href":"pages/ChartsRow-class.html"}},{"name":"DashboardView","qualifiedName":"pages.DashboardView","href":"pages/DashboardView-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A view in the UI.","enclosedBy":{"name":"view","kind":9,"href":"pages/pages-library.html"}},{"name":"DashboardView","qualifiedName":"pages.DashboardView.DashboardView","href":"pages/DashboardView/DashboardView.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"blank","qualifiedName":"pages.DashboardView.blank","href":"pages/DashboardView/blank.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A blank view.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"builder","qualifiedName":"pages.DashboardView.builder","href":"pages/DashboardView/builder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A function to build this view.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"cameraViews","qualifiedName":"pages.DashboardView.cameraViews","href":"pages/DashboardView/cameraViews.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of views that represent all the camera feeds.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"flutterKey","qualifiedName":"pages.DashboardView.flutterKey","href":"pages/DashboardView/flutterKey.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The Flutter widget key for this view.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"getCameraStatus","qualifiedName":"pages.DashboardView.getCameraStatus","href":"pages/DashboardView/getCameraStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"An icon to indicate the status of the given camera.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"hashCode","qualifiedName":"pages.DashboardView.hashCode","href":"pages/DashboardView/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"icon","qualifiedName":"pages.DashboardView.icon","href":"pages/DashboardView/icon.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The icon used to represent the view.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"iconFunc","qualifiedName":"pages.DashboardView.iconFunc","href":"pages/DashboardView/iconFunc.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A function to dynamically compute the icon for the view.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"key","qualifiedName":"pages.DashboardView.key","href":"pages/DashboardView/key.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A unique key to use while selecting this view.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"name","qualifiedName":"pages.DashboardView.name","href":"pages/DashboardView/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The name of the view.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"noSuchMethod","qualifiedName":"pages.DashboardView.noSuchMethod","href":"pages/DashboardView/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"operator ==","qualifiedName":"pages.DashboardView.operator ==","href":"pages/DashboardView/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"runtimeType","qualifiedName":"pages.DashboardView.runtimeType","href":"pages/DashboardView/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"toString","qualifiedName":"pages.DashboardView.toString","href":"pages/DashboardView/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"uiViews","qualifiedName":"pages.DashboardView.uiViews","href":"pages/DashboardView/uiViews.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of views that represent all non-camera feeds.","enclosedBy":{"name":"DashboardView","kind":3,"href":"pages/DashboardView-class.html"}},{"name":"DesktopScrollBehavior","qualifiedName":"pages.DesktopScrollBehavior","href":"pages/DesktopScrollBehavior-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Allows desktop users to scroll with their mouse or other device.","enclosedBy":{"name":"science","kind":9,"href":"pages/pages-library.html"}},{"name":"DesktopScrollBehavior","qualifiedName":"pages.DesktopScrollBehavior.DesktopScrollBehavior","href":"pages/DesktopScrollBehavior/DesktopScrollBehavior.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DesktopScrollBehavior","kind":3,"href":"pages/DesktopScrollBehavior-class.html"}},{"name":"dragDevices","qualifiedName":"pages.DesktopScrollBehavior.dragDevices","href":"pages/DesktopScrollBehavior/dragDevices.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The device kinds that the scrollable will accept drag gestures from.","enclosedBy":{"name":"DesktopScrollBehavior","kind":3,"href":"pages/DesktopScrollBehavior-class.html"}},{"name":"DrivePage","qualifiedName":"pages.DrivePage","href":"pages/DrivePage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The UI for the drive analysis.","enclosedBy":{"name":"drive","kind":9,"href":"pages/pages-library.html"}},{"name":"DrivePage","qualifiedName":"pages.DrivePage.DrivePage","href":"pages/DrivePage/DrivePage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"DrivePage","kind":3,"href":"pages/DrivePage-class.html"}},{"name":"build","qualifiedName":"pages.DrivePage.build","href":"pages/DrivePage/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"DrivePage","kind":3,"href":"pages/DrivePage-class.html"}},{"name":"createModel","qualifiedName":"pages.DrivePage.createModel","href":"pages/DrivePage/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"DrivePage","kind":3,"href":"pages/DrivePage-class.html"}},{"name":"index","qualifiedName":"pages.DrivePage.index","href":"pages/DrivePage/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The index of this view.","enclosedBy":{"name":"DrivePage","kind":3,"href":"pages/DrivePage-class.html"}},{"name":"ElectricalPage","qualifiedName":"pages.ElectricalPage","href":"pages/ElectricalPage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The UI for the electrical subsystem.","enclosedBy":{"name":"electrical","kind":9,"href":"pages/pages-library.html"}},{"name":"ElectricalPage","qualifiedName":"pages.ElectricalPage.ElectricalPage","href":"pages/ElectricalPage/ElectricalPage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ElectricalPage","kind":3,"href":"pages/ElectricalPage-class.html"}},{"name":"build","qualifiedName":"pages.ElectricalPage.build","href":"pages/ElectricalPage/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"ElectricalPage","kind":3,"href":"pages/ElectricalPage-class.html"}},{"name":"createModel","qualifiedName":"pages.ElectricalPage.createModel","href":"pages/ElectricalPage/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"ElectricalPage","kind":3,"href":"pages/ElectricalPage-class.html"}},{"name":"index","qualifiedName":"pages.ElectricalPage.index","href":"pages/ElectricalPage/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The index of this view.","enclosedBy":{"name":"ElectricalPage","kind":3,"href":"pages/ElectricalPage-class.html"}},{"name":"HomePage","qualifiedName":"pages.HomePage","href":"pages/HomePage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The main dashboard page.","enclosedBy":{"name":"home","kind":9,"href":"pages/pages-library.html"}},{"name":"HomePage","qualifiedName":"pages.HomePage.HomePage","href":"pages/HomePage/HomePage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"HomePage","kind":3,"href":"pages/HomePage-class.html"}},{"name":"createState","qualifiedName":"pages.HomePage.createState","href":"pages/HomePage/createState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates the mutable state for this widget at a given location in the tree.","enclosedBy":{"name":"HomePage","kind":3,"href":"pages/HomePage-class.html"}},{"name":"HomePageState","qualifiedName":"pages.HomePageState","href":"pages/HomePageState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The state for the homepage. Handles showing and hiding the sidebar.","enclosedBy":{"name":"home","kind":9,"href":"pages/pages-library.html"}},{"name":"HomePageState","qualifiedName":"pages.HomePageState.HomePageState","href":"pages/HomePageState/HomePageState.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"HomePageState","kind":3,"href":"pages/HomePageState-class.html"}},{"name":"build","qualifiedName":"pages.HomePageState.build","href":"pages/HomePageState/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"HomePageState","kind":3,"href":"pages/HomePageState-class.html"}},{"name":"showSidebar","qualifiedName":"pages.HomePageState.showSidebar","href":"pages/HomePageState/showSidebar.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to show the sidebar.","enclosedBy":{"name":"HomePageState","kind":3,"href":"pages/HomePageState-class.html"}},{"name":"LogWidget","qualifiedName":"pages.LogWidget","href":"pages/LogWidget-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget that shows a BurtLog.","enclosedBy":{"name":"logs","kind":9,"href":"pages/pages-library.html"}},{"name":"LogWidget","qualifiedName":"pages.LogWidget.LogWidget","href":"pages/LogWidget/LogWidget.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a widget to display the given log message.","enclosedBy":{"name":"LogWidget","kind":3,"href":"pages/LogWidget-class.html"}},{"name":"build","qualifiedName":"pages.LogWidget.build","href":"pages/LogWidget/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"LogWidget","kind":3,"href":"pages/LogWidget-class.html"}},{"name":"icon","qualifiedName":"pages.LogWidget.icon","href":"pages/LogWidget/icon.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Gets an icon for the given BurtLogLevel.","enclosedBy":{"name":"LogWidget","kind":3,"href":"pages/LogWidget-class.html"}},{"name":"log","qualifiedName":"pages.LogWidget.log","href":"pages/LogWidget/log.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The log message being shown in this widget.","enclosedBy":{"name":"LogWidget","kind":3,"href":"pages/LogWidget-class.html"}},{"name":"LogsBody","qualifiedName":"pages.LogsBody","href":"pages/LogsBody-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The widget that actually contains the logs for the page.","enclosedBy":{"name":"logs","kind":9,"href":"pages/pages-library.html"}},{"name":"LogsBody","qualifiedName":"pages.LogsBody.LogsBody","href":"pages/LogsBody/LogsBody.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Listens to the given view model.","enclosedBy":{"name":"LogsBody","kind":3,"href":"pages/LogsBody-class.html"}},{"name":"build","qualifiedName":"pages.LogsBody.build","href":"pages/LogsBody/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"LogsBody","kind":3,"href":"pages/LogsBody-class.html"}},{"name":"LogsOptions","qualifiedName":"pages.LogsOptions","href":"pages/LogsOptions-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to show the options for the logs page.","enclosedBy":{"name":"logs","kind":9,"href":"pages/pages-library.html"}},{"name":"LogsOptions","qualifiedName":"pages.LogsOptions.LogsOptions","href":"pages/LogsOptions/LogsOptions.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Listens to the view model without disposing it.","enclosedBy":{"name":"LogsOptions","kind":3,"href":"pages/LogsOptions-class.html"}},{"name":"build","qualifiedName":"pages.LogsOptions.build","href":"pages/LogsOptions/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"LogsOptions","kind":3,"href":"pages/LogsOptions-class.html"}},{"name":"getStatusColor","qualifiedName":"pages.LogsOptions.getStatusColor","href":"pages/LogsOptions/getStatusColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Returns the appropriate status icon for the log messages received from device","enclosedBy":{"name":"LogsOptions","kind":3,"href":"pages/LogsOptions-class.html"}},{"name":"sshButton","qualifiedName":"pages.LogsOptions.sshButton","href":"pages/LogsOptions/sshButton.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Returns a button to open an SSH connection to device","enclosedBy":{"name":"LogsOptions","kind":3,"href":"pages/LogsOptions-class.html"}},{"name":"LogsPage","qualifiedName":"pages.LogsPage","href":"pages/LogsPage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The logs page, containing the LogsOptions and LogsBody widgets.","enclosedBy":{"name":"logs","kind":9,"href":"pages/pages-library.html"}},{"name":"LogsPage","qualifiedName":"pages.LogsPage.LogsPage","href":"pages/LogsPage/LogsPage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"LogsPage","kind":3,"href":"pages/LogsPage-class.html"}},{"name":"createState","qualifiedName":"pages.LogsPage.createState","href":"pages/LogsPage/createState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates the mutable state for this widget at a given location in the tree.","enclosedBy":{"name":"LogsPage","kind":3,"href":"pages/LogsPage-class.html"}},{"name":"LogsState","qualifiedName":"pages.LogsState","href":"pages/LogsState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The state of the logs page. Used to ensure that the LogsViewModel is only created once.","enclosedBy":{"name":"logs","kind":9,"href":"pages/pages-library.html"}},{"name":"LogsState","qualifiedName":"pages.LogsState.LogsState","href":"pages/LogsState/LogsState.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"LogsState","kind":3,"href":"pages/LogsState-class.html"}},{"name":"build","qualifiedName":"pages.LogsState.build","href":"pages/LogsState/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"LogsState","kind":3,"href":"pages/LogsState-class.html"}},{"name":"model","qualifiedName":"pages.LogsState.model","href":"pages/LogsState/model.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model for this page.","enclosedBy":{"name":"LogsState","kind":3,"href":"pages/LogsState-class.html"}},{"name":"MapPage","qualifiedName":"pages.MapPage","href":"pages/MapPage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The UI for the autonomy subsystem.","enclosedBy":{"name":"map","kind":9,"href":"pages/pages-library.html"}},{"name":"MapPage","qualifiedName":"pages.MapPage.MapPage","href":"pages/MapPage/MapPage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"MapPage","kind":3,"href":"pages/MapPage-class.html"}},{"name":"build","qualifiedName":"pages.MapPage.build","href":"pages/MapPage/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"MapPage","kind":3,"href":"pages/MapPage-class.html"}},{"name":"createModel","qualifiedName":"pages.MapPage.createModel","href":"pages/MapPage/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"MapPage","kind":3,"href":"pages/MapPage-class.html"}},{"name":"getColor","qualifiedName":"pages.MapPage.getColor","href":"pages/MapPage/getColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets the color for a given AutonomyCell.","enclosedBy":{"name":"MapPage","kind":3,"href":"pages/MapPage-class.html"}},{"name":"index","qualifiedName":"pages.MapPage.index","href":"pages/MapPage/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The index of this view.","enclosedBy":{"name":"MapPage","kind":3,"href":"pages/MapPage-class.html"}},{"name":"placeMarker","qualifiedName":"pages.MapPage.placeMarker","href":"pages/MapPage/placeMarker.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Opens a dialog to prompt the user for GPS coordinates and places a marker there.","enclosedBy":{"name":"MapPage","kind":3,"href":"pages/MapPage-class.html"}},{"name":"ResultsBox","qualifiedName":"pages.ResultsBox","href":"pages/ResultsBox-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A box to display the final results for each sensor.","enclosedBy":{"name":"science","kind":9,"href":"pages/pages-library.html"}},{"name":"ResultsBox","qualifiedName":"pages.ResultsBox.ResultsBox","href":"pages/ResultsBox/ResultsBox.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a widget to display the results of a science test.","enclosedBy":{"name":"ResultsBox","kind":3,"href":"pages/ResultsBox-class.html"}},{"name":"analysis","qualifiedName":"pages.ResultsBox.analysis","href":"pages/ResultsBox/analysis.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The sensor being tested.","enclosedBy":{"name":"ResultsBox","kind":3,"href":"pages/ResultsBox-class.html"}},{"name":"build","qualifiedName":"pages.ResultsBox.build","href":"pages/ResultsBox/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"ResultsBox","kind":3,"href":"pages/ResultsBox-class.html"}},{"name":"color","qualifiedName":"pages.ResultsBox.color","href":"pages/ResultsBox/color.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The color to render this box.","enclosedBy":{"name":"ResultsBox","kind":3,"href":"pages/ResultsBox-class.html"}},{"name":"text","qualifiedName":"pages.ResultsBox.text","href":"pages/ResultsBox/text.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The text to display in this box.","enclosedBy":{"name":"ResultsBox","kind":3,"href":"pages/ResultsBox-class.html"}},{"name":"Rock","qualifiedName":"pages.Rock","href":"pages/Rock-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Contains data and knowledge about a specific rock type.","enclosedBy":{"name":"rocks","kind":9,"href":"pages/pages-library.html"}},{"name":"Rock","qualifiedName":"pages.Rock.Rock","href":"pages/Rock/Rock.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"Rock","kind":3,"href":"pages/Rock-class.html"}},{"name":"description","qualifiedName":"pages.Rock.description","href":"pages/Rock/description.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A description of the rock.","enclosedBy":{"name":"Rock","kind":3,"href":"pages/Rock-class.html"}},{"name":"hashCode","qualifiedName":"pages.Rock.hashCode","href":"pages/Rock/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"Rock","kind":3,"href":"pages/Rock-class.html"}},{"name":"image","qualifiedName":"pages.Rock.image","href":"pages/Rock/image.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The path to the image of the rock.","enclosedBy":{"name":"Rock","kind":3,"href":"pages/Rock-class.html"}},{"name":"name","qualifiedName":"pages.Rock.name","href":"pages/Rock/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The name of the rock.","enclosedBy":{"name":"Rock","kind":3,"href":"pages/Rock-class.html"}},{"name":"noSuchMethod","qualifiedName":"pages.Rock.noSuchMethod","href":"pages/Rock/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"Rock","kind":3,"href":"pages/Rock-class.html"}},{"name":"operator ==","qualifiedName":"pages.Rock.operator ==","href":"pages/Rock/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"Rock","kind":3,"href":"pages/Rock-class.html"}},{"name":"runtimeType","qualifiedName":"pages.Rock.runtimeType","href":"pages/Rock/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"Rock","kind":3,"href":"pages/Rock-class.html"}},{"name":"toString","qualifiedName":"pages.Rock.toString","href":"pages/Rock/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"Rock","kind":3,"href":"pages/Rock-class.html"}},{"name":"RockModel","qualifiedName":"pages.RockModel","href":"pages/RockModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A view model to control which rocks are shown on screen.","enclosedBy":{"name":"rocks","kind":9,"href":"pages/pages-library.html"}},{"name":"RockModel","qualifiedName":"pages.RockModel.RockModel","href":"pages/RockModel/RockModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RockModel","kind":3,"href":"pages/RockModel-class.html"}},{"name":"controller","qualifiedName":"pages.RockModel.controller","href":"pages/RockModel/controller.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The Flutter controller for the search bar.","enclosedBy":{"name":"RockModel","kind":3,"href":"pages/RockModel-class.html"}},{"name":"filter","qualifiedName":"pages.RockModel.filter","href":"pages/RockModel/filter.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Whether the given rock matches the current query.","enclosedBy":{"name":"RockModel","kind":3,"href":"pages/RockModel-class.html"}},{"name":"filteredRocks","qualifiedName":"pages.RockModel.filteredRocks","href":"pages/RockModel/filteredRocks.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A filtered view of rocks that matches the query.","enclosedBy":{"name":"RockModel","kind":3,"href":"pages/RockModel-class.html"}},{"name":"query","qualifiedName":"pages.RockModel.query","href":"pages/RockModel/query.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The current search query from the search bar.","enclosedBy":{"name":"RockModel","kind":3,"href":"pages/RockModel-class.html"}},{"name":"rocks","qualifiedName":"pages.RockModel.rocks","href":"pages/RockModel/rocks.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"All rocks that can be shown.","enclosedBy":{"name":"RockModel","kind":3,"href":"pages/RockModel-class.html"}},{"name":"search","qualifiedName":"pages.RockModel.search","href":"pages/RockModel/search.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Filters the rocks by the query and saves it to filteredRocks.","enclosedBy":{"name":"RockModel","kind":3,"href":"pages/RockModel-class.html"}},{"name":"RockWidget","qualifiedName":"pages.RockWidget","href":"pages/RockWidget-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to show a row with details about a specific kind of rock.","enclosedBy":{"name":"rocks","kind":9,"href":"pages/pages-library.html"}},{"name":"RockWidget","qualifiedName":"pages.RockWidget.RockWidget","href":"pages/RockWidget/RockWidget.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"RockWidget","kind":3,"href":"pages/RockWidget-class.html"}},{"name":"build","qualifiedName":"pages.RockWidget.build","href":"pages/RockWidget/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"RockWidget","kind":3,"href":"pages/RockWidget-class.html"}},{"name":"rock","qualifiedName":"pages.RockWidget.rock","href":"pages/RockWidget/rock.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The rock to show.","enclosedBy":{"name":"RockWidget","kind":3,"href":"pages/RockWidget-class.html"}},{"name":"RocksPage","qualifiedName":"pages.RocksPage","href":"pages/RocksPage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A page to show a searchable list of rocks and information about them.","enclosedBy":{"name":"rocks","kind":9,"href":"pages/pages-library.html"}},{"name":"RocksPage","qualifiedName":"pages.RocksPage.RocksPage","href":"pages/RocksPage/RocksPage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"RocksPage","kind":3,"href":"pages/RocksPage-class.html"}},{"name":"build","qualifiedName":"pages.RocksPage.build","href":"pages/RocksPage/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"RocksPage","kind":3,"href":"pages/RocksPage-class.html"}},{"name":"createModel","qualifiedName":"pages.RocksPage.createModel","href":"pages/RocksPage/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"RocksPage","kind":3,"href":"pages/RocksPage-class.html"}},{"name":"index","qualifiedName":"pages.RocksPage.index","href":"pages/RocksPage/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Index of the rock page for view widget","enclosedBy":{"name":"RocksPage","kind":3,"href":"pages/RocksPage-class.html"}},{"name":"Routes","qualifiedName":"pages.Routes","href":"pages/Routes-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The names of all the pages available in the app.","enclosedBy":{"name":"pages","kind":9,"href":"pages/pages-library.html"}},{"name":"Routes","qualifiedName":"pages.Routes.Routes","href":"pages/Routes/Routes.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"arm","qualifiedName":"pages.Routes.arm","href":"pages/Routes/arm-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The name of the arm IK page.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"autonomy","qualifiedName":"pages.Routes.autonomy","href":"pages/Routes/autonomy-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The name of the autonomy page.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"blank","qualifiedName":"pages.Routes.blank","href":"pages/Routes/blank-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The name of the blank page.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"drive","qualifiedName":"pages.Routes.drive","href":"pages/Routes/drive-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The name of the drive/position data page","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"electrical","qualifiedName":"pages.Routes.electrical","href":"pages/Routes/electrical-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The name of the electrical data page","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"hashCode","qualifiedName":"pages.Routes.hashCode","href":"pages/Routes/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"home","qualifiedName":"pages.Routes.home","href":"pages/Routes/home-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The name of the home page.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"logs","qualifiedName":"pages.Routes.logs","href":"pages/Routes/logs-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The name of the logs page.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"noSuchMethod","qualifiedName":"pages.Routes.noSuchMethod","href":"pages/Routes/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"operator ==","qualifiedName":"pages.Routes.operator ==","href":"pages/Routes/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"rocks","qualifiedName":"pages.Routes.rocks","href":"pages/Routes/rocks-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The name of the rocks page.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"runtimeType","qualifiedName":"pages.Routes.runtimeType","href":"pages/Routes/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"science","qualifiedName":"pages.Routes.science","href":"pages/Routes/science-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The name of the science analysis page.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"settings","qualifiedName":"pages.Routes.settings","href":"pages/Routes/settings-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The name of the settings page.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"toString","qualifiedName":"pages.Routes.toString","href":"pages/Routes/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"Routes","kind":3,"href":"pages/Routes-class.html"}},{"name":"SciencePage","qualifiedName":"pages.SciencePage","href":"pages/SciencePage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The science analysis page.","enclosedBy":{"name":"science","kind":9,"href":"pages/pages-library.html"}},{"name":"SciencePage","qualifiedName":"pages.SciencePage.SciencePage","href":"pages/SciencePage/SciencePage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"SciencePage","kind":3,"href":"pages/SciencePage-class.html"}},{"name":"build","qualifiedName":"pages.SciencePage.build","href":"pages/SciencePage/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"SciencePage","kind":3,"href":"pages/SciencePage-class.html"}},{"name":"createModel","qualifiedName":"pages.SciencePage.createModel","href":"pages/SciencePage/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"SciencePage","kind":3,"href":"pages/SciencePage-class.html"}},{"name":"getBarChartData","qualifiedName":"pages.SciencePage.getBarChartData","href":"pages/SciencePage/getBarChartData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The package:fl_chart helper class for the summary charts.","enclosedBy":{"name":"SciencePage","kind":3,"href":"pages/SciencePage-class.html"}},{"name":"getColor","qualifiedName":"pages.SciencePage.getColor","href":"pages/SciencePage/getColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets a color between red and purple","enclosedBy":{"name":"SciencePage","kind":3,"href":"pages/SciencePage-class.html"}},{"name":"getDetailsData","qualifiedName":"pages.SciencePage.getDetailsData","href":"pages/SciencePage/getDetailsData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The package:fl_chart helper class for the details charts.","enclosedBy":{"name":"SciencePage","kind":3,"href":"pages/SciencePage-class.html"}},{"name":"index","qualifiedName":"pages.SciencePage.index","href":"pages/SciencePage/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The index of this view.","enclosedBy":{"name":"SciencePage","kind":3,"href":"pages/SciencePage-class.html"}},{"name":"purple","qualifiedName":"pages.SciencePage.purple","href":"pages/SciencePage/purple.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Purple, used as the color for the last sample.","enclosedBy":{"name":"SciencePage","kind":3,"href":"pages/SciencePage-class.html"}},{"name":"red","qualifiedName":"pages.SciencePage.red","href":"pages/SciencePage/red.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Red, used as the color for the first sample.","enclosedBy":{"name":"SciencePage","kind":3,"href":"pages/SciencePage-class.html"}},{"name":"ScrollingRow","qualifiedName":"pages.ScrollingRow","href":"pages/ScrollingRow-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A row of scrollable or non-scrollable widgets.","enclosedBy":{"name":"science","kind":9,"href":"pages/pages-library.html"}},{"name":"ScrollingRow","qualifiedName":"pages.ScrollingRow.ScrollingRow","href":"pages/ScrollingRow/ScrollingRow.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Renders a row of widgets.","enclosedBy":{"name":"ScrollingRow","kind":3,"href":"pages/ScrollingRow-class.html"}},{"name":"build","qualifiedName":"pages.ScrollingRow.build","href":"pages/ScrollingRow/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"ScrollingRow","kind":3,"href":"pages/ScrollingRow-class.html"}},{"name":"children","qualifiedName":"pages.ScrollingRow.children","href":"pages/ScrollingRow/children.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The widgets to display.","enclosedBy":{"name":"ScrollingRow","kind":3,"href":"pages/ScrollingRow-class.html"}},{"name":"height","qualifiedName":"pages.ScrollingRow.height","href":"pages/ScrollingRow/height.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The height of this row.","enclosedBy":{"name":"ScrollingRow","kind":3,"href":"pages/ScrollingRow-class.html"}},{"name":"SegaState","qualifiedName":"pages.SegaState","href":"pages/SegaState.html","kind":5,"overriddenDepth":0,"packageRank":0,"desc":"The state of the SEGA animation.","enclosedBy":{"name":"splash","kind":9,"href":"pages/pages-library.html"}},{"name":"hashCode","qualifiedName":"pages.SegaState.hashCode","href":"pages/SegaState/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"SegaState","kind":5,"href":"pages/SegaState.html"}},{"name":"index","qualifiedName":"pages.SegaState.index","href":"pages/SegaState/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A numeric identifier for the enumerated value.","enclosedBy":{"name":"SegaState","kind":5,"href":"pages/SegaState.html"}},{"name":"noSuchMethod","qualifiedName":"pages.SegaState.noSuchMethod","href":"pages/SegaState/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"SegaState","kind":5,"href":"pages/SegaState.html"}},{"name":"operator ==","qualifiedName":"pages.SegaState.operator ==","href":"pages/SegaState/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"SegaState","kind":5,"href":"pages/SegaState.html"}},{"name":"runtimeType","qualifiedName":"pages.SegaState.runtimeType","href":"pages/SegaState/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"SegaState","kind":5,"href":"pages/SegaState.html"}},{"name":"toString","qualifiedName":"pages.SegaState.toString","href":"pages/SegaState/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"SegaState","kind":5,"href":"pages/SegaState.html"}},{"name":"values","qualifiedName":"pages.SegaState.values","href":"pages/SegaState/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"A constant List of the values in this enum, in order of their declaration.","enclosedBy":{"name":"SegaState","kind":5,"href":"pages/SegaState.html"}},{"name":"SettingsPage","qualifiedName":"pages.SettingsPage","href":"pages/SettingsPage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The settings page.","enclosedBy":{"name":"settings","kind":9,"href":"pages/pages-library.html"}},{"name":"SettingsPage","qualifiedName":"pages.SettingsPage.SettingsPage","href":"pages/SettingsPage/SettingsPage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"SettingsPage","kind":3,"href":"pages/SettingsPage-class.html"}},{"name":"build","qualifiedName":"pages.SettingsPage.build","href":"pages/SettingsPage/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"SettingsPage","kind":3,"href":"pages/SettingsPage-class.html"}},{"name":"createModel","qualifiedName":"pages.SettingsPage.createModel","href":"pages/SettingsPage/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"SettingsPage","kind":3,"href":"pages/SettingsPage-class.html"}},{"name":"SocketSwitcher","qualifiedName":"pages.SocketSwitcher","href":"pages/SocketSwitcher-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to switch between tank and rover modes.","enclosedBy":{"name":"home","kind":9,"href":"pages/pages-library.html"}},{"name":"SocketSwitcher","qualifiedName":"pages.SocketSwitcher.SocketSwitcher","href":"pages/SocketSwitcher/SocketSwitcher.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A constructor for this widget.","enclosedBy":{"name":"SocketSwitcher","kind":3,"href":"pages/SocketSwitcher-class.html"}},{"name":"build","qualifiedName":"pages.SocketSwitcher.build","href":"pages/SocketSwitcher/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"SocketSwitcher","kind":3,"href":"pages/SocketSwitcher-class.html"}},{"name":"SplashPage","qualifiedName":"pages.SplashPage","href":"pages/SplashPage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Initializes the dashboard and handles errors.","enclosedBy":{"name":"splash","kind":9,"href":"pages/pages-library.html"}},{"name":"SplashPage","qualifiedName":"pages.SplashPage.SplashPage","href":"pages/SplashPage/SplashPage.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"SplashPage","kind":3,"href":"pages/SplashPage-class.html"}},{"name":"createState","qualifiedName":"pages.SplashPage.createState","href":"pages/SplashPage/createState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates the mutable state for this widget at a given location in the tree.","enclosedBy":{"name":"SplashPage","kind":3,"href":"pages/SplashPage-class.html"}},{"name":"SplashPageState","qualifiedName":"pages.SplashPageState","href":"pages/SplashPageState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Initializes the dashboard and handles errors.","enclosedBy":{"name":"splash","kind":9,"href":"pages/pages-library.html"}},{"name":"SplashPageState","qualifiedName":"pages.SplashPageState.SplashPageState","href":"pages/SplashPageState/SplashPageState.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"SplashPageState","kind":3,"href":"pages/SplashPageState-class.html"}},{"name":"audioPlayer","qualifiedName":"pages.SplashPageState.audioPlayer","href":"pages/SplashPageState/audioPlayer.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The Audio player.","enclosedBy":{"name":"SplashPageState","kind":3,"href":"pages/SplashPageState-class.html"}},{"name":"build","qualifiedName":"pages.SplashPageState.build","href":"pages/SplashPageState/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"SplashPageState","kind":3,"href":"pages/SplashPageState-class.html"}},{"name":"current","qualifiedName":"pages.SplashPageState.current","href":"pages/SplashPageState/current.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The current task, if any.","enclosedBy":{"name":"SplashPageState","kind":3,"href":"pages/SplashPageState-class.html"}},{"name":"dispose","qualifiedName":"pages.SplashPageState.dispose","href":"pages/SplashPageState/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Called when this object is removed from the tree permanently.","enclosedBy":{"name":"SplashPageState","kind":3,"href":"pages/SplashPageState-class.html"}},{"name":"errorText","qualifiedName":"pages.SplashPageState.errorText","href":"pages/SplashPageState/errorText.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The error message produced during initialization, if any.","enclosedBy":{"name":"SplashPageState","kind":3,"href":"pages/SplashPageState-class.html"}},{"name":"init","qualifiedName":"pages.SplashPageState.init","href":"pages/SplashPageState/init.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Calls Services.init and Models.init while monitoring for errors.","enclosedBy":{"name":"SplashPageState","kind":3,"href":"pages/SplashPageState-class.html"}},{"name":"initAnimation","qualifiedName":"pages.SplashPageState.initAnimation","href":"pages/SplashPageState/initAnimation.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Starts the SEGA animation.","enclosedBy":{"name":"SplashPageState","kind":3,"href":"pages/SplashPageState-class.html"}},{"name":"initState","qualifiedName":"pages.SplashPageState.initState","href":"pages/SplashPageState/initState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Called when this object is inserted into the tree.","enclosedBy":{"name":"SplashPageState","kind":3,"href":"pages/SplashPageState-class.html"}},{"name":"state","qualifiedName":"pages.SplashPageState.state","href":"pages/SplashPageState/state.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The state of the SEGA animation.","enclosedBy":{"name":"SplashPageState","kind":3,"href":"pages/SplashPageState-class.html"}},{"name":"ValueEditor","qualifiedName":"pages.ValueEditor","href":"pages/ValueEditor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to display all the settings in a ValueBuilder.","enclosedBy":{"name":"settings","kind":9,"href":"pages/pages-library.html"}},{"name":"ValueEditor","qualifiedName":"pages.ValueEditor.ValueEditor","href":"pages/ValueEditor/ValueEditor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a widget to modify a value.","enclosedBy":{"name":"ValueEditor","kind":3,"href":"pages/ValueEditor-class.html"}},{"name":"build","qualifiedName":"pages.ValueEditor.build","href":"pages/ValueEditor/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"ValueEditor","kind":3,"href":"pages/ValueEditor-class.html"}},{"name":"children","qualifiedName":"pages.ValueEditor.children","href":"pages/ValueEditor/children.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Widgets to modify each individual setting.","enclosedBy":{"name":"ValueEditor","kind":3,"href":"pages/ValueEditor-class.html"}},{"name":"name","qualifiedName":"pages.ValueEditor.name","href":"pages/ValueEditor/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The name of the value being edited.","enclosedBy":{"name":"ValueEditor","kind":3,"href":"pages/ValueEditor-class.html"}},{"name":"ViewBuilder","qualifiedName":"pages.ViewBuilder","href":"pages/ViewBuilder.html","kind":21,"overriddenDepth":0,"packageRank":0,"desc":"A function that builds a view of the given index.","enclosedBy":{"name":"view","kind":9,"href":"pages/pages-library.html"}},{"name":"criticalWidget","qualifiedName":"pages.criticalWidget","href":"pages/criticalWidget.html","kind":20,"overriddenDepth":0,"packageRank":0,"desc":"The icon to show for logs with BurtLogLevel.critical.","enclosedBy":{"name":"pages","kind":9,"href":"pages/pages-library.html"}},{"name":"debugWidget","qualifiedName":"pages.debugWidget","href":"pages/debugWidget-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The icon to show for logs with BurtLogLevel.debug.","enclosedBy":{"name":"pages","kind":9,"href":"pages/pages-library.html"}},{"name":"errorWidget","qualifiedName":"pages.errorWidget","href":"pages/errorWidget-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The icon to show for logs with BurtLogLevel.error.","enclosedBy":{"name":"pages","kind":9,"href":"pages/pages-library.html"}},{"name":"getTitles","qualifiedName":"pages.getTitles","href":"pages/getTitles.html","kind":8,"overriddenDepth":0,"packageRank":0,"desc":"Gets titles for a graph.","enclosedBy":{"name":"science","kind":9,"href":"pages/pages-library.html"}},{"name":"infoWidget","qualifiedName":"pages.infoWidget","href":"pages/infoWidget.html","kind":20,"overriddenDepth":0,"packageRank":0,"desc":"The icon to show for logs with BurtLogLevel.info.","enclosedBy":{"name":"pages","kind":9,"href":"pages/pages-library.html"}},{"name":"traceWidget","qualifiedName":"pages.traceWidget","href":"pages/traceWidget-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The icon to show for logs with BurtLogLevel.trace.","enclosedBy":{"name":"pages","kind":9,"href":"pages/pages-library.html"}},{"name":"warningWidget","qualifiedName":"pages.warningWidget","href":"pages/warningWidget-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The icon to show for logs with BurtLogLevel.warning.","enclosedBy":{"name":"pages","kind":9,"href":"pages/pages-library.html"}},{"name":"services","qualifiedName":"services","href":"services/services-library.html","kind":9,"overriddenDepth":0,"packageRank":0,"desc":"Defines handler classes for out-of-app resources."},{"name":"DashboardSocket","qualifiedName":"services.DashboardSocket","href":"services/DashboardSocket-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A service to send and receive Protobuf messages over a UDP socket, using ProtoSocket.","enclosedBy":{"name":"socket","kind":9,"href":"services/services-library.html"}},{"name":"DashboardSocket","qualifiedName":"services.DashboardSocket.DashboardSocket","href":"services/DashboardSocket/DashboardSocket.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Listens for incoming messages on a UDP socket and sends heartbeats to the device.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"checkHeartbeats","qualifiedName":"services.DashboardSocket.checkHeartbeats","href":"services/DashboardSocket/checkHeartbeats.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Checks for incoming heartbeats from the intended device(s).","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"connectionIncrement","qualifiedName":"services.DashboardSocket.connectionIncrement","href":"services/DashboardSocket/connectionIncrement.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How much each successful/missed handshake is worth, as a percent.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"connectionStrength","qualifiedName":"services.DashboardSocket.connectionStrength","href":"services/DashboardSocket/connectionStrength.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The connection strength, as a percentage to this device.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"destination","qualifiedName":"services.DashboardSocket.destination","href":"services/DashboardSocket/destination.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The destination port to send to.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"device","qualifiedName":"services.DashboardSocket.device","href":"services/DashboardSocket/device.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The rover device this socket represents.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"dispose","qualifiedName":"services.DashboardSocket.dispose","href":"services/DashboardSocket/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Closes the socket.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"frequency","qualifiedName":"services.DashboardSocket.frequency","href":"services/DashboardSocket/frequency.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Number of times to check heart beat per seconds based on settings.network.connectionTimeout.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"hashCode","qualifiedName":"services.DashboardSocket.hashCode","href":"services/DashboardSocket/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"heartbeatInterval","qualifiedName":"services.DashboardSocket.heartbeatInterval","href":"services/DashboardSocket/heartbeatInterval.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How often to check for heartbeats.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"heartbeatTimer","qualifiedName":"services.DashboardSocket.heartbeatTimer","href":"services/DashboardSocket/heartbeatTimer.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A timer to call checkHeartbeats every heartbeatInterval.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"heartbeatWaitDelay","qualifiedName":"services.DashboardSocket.heartbeatWaitDelay","href":"services/DashboardSocket/heartbeatWaitDelay.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How long to wait for incoming heartbeats after sending them out.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"init","qualifiedName":"services.DashboardSocket.init","href":"services/DashboardSocket/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes the socket, and restarts it if a known \"safe\" error occurs (see allowedErrors).","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"isConnected","qualifiedName":"services.DashboardSocket.isConnected","href":"services/DashboardSocket/isConnected.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether this socket has a stable connection to the device.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"logger","qualifiedName":"services.DashboardSocket.logger","href":"services/DashboardSocket/logger.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A logger to capture important events during operation.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"messageHandler","qualifiedName":"services.DashboardSocket.messageHandler","href":"services/DashboardSocket/messageHandler.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The handler to call when a WrappedMessage comes in. Used by onMessage.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"noSuchMethod","qualifiedName":"services.DashboardSocket.noSuchMethod","href":"services/DashboardSocket/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"onConnect","qualifiedName":"services.DashboardSocket.onConnect","href":"services/DashboardSocket/onConnect.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A callback to run when the device has connected.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"onData","qualifiedName":"services.DashboardSocket.onData","href":"services/DashboardSocket/onData.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Override this function to process incoming data, along with the source address and port.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"onDisconnect","qualifiedName":"services.DashboardSocket.onDisconnect","href":"services/DashboardSocket/onDisconnect.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A callback to run when the device has disconnected.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"onHeartbeat","qualifiedName":"services.DashboardSocket.onHeartbeat","href":"services/DashboardSocket/onHeartbeat.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Handles an incoming heartbeat from another device.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"onMessage","qualifiedName":"services.DashboardSocket.onMessage","href":"services/DashboardSocket/onMessage.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Handles a non-heartbeat message, usually containing data or commands.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"onWrapper","qualifiedName":"services.DashboardSocket.onWrapper","href":"services/DashboardSocket/onWrapper.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"A callback for when messages are received.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"operator ==","qualifiedName":"services.DashboardSocket.operator ==","href":"services/DashboardSocket/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"port","qualifiedName":"services.DashboardSocket.port","href":"services/DashboardSocket/port.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The port this socket is listening on. See RawDatagramSocket.bind.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"quiet","qualifiedName":"services.DashboardSocket.quiet","href":"services/DashboardSocket/quiet.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to silence \"normal\" output, like opening/closing and resetting sockets.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"runtimeType","qualifiedName":"services.DashboardSocket.runtimeType","href":"services/DashboardSocket/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"sendData","qualifiedName":"services.DashboardSocket.sendData","href":"services/DashboardSocket/sendData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sends data to the given destination.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"sendMessage","qualifiedName":"services.DashboardSocket.sendMessage","href":"services/DashboardSocket/sendMessage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Wraps a message and sends it with sendWrapper.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"sendWrapper","qualifiedName":"services.DashboardSocket.sendWrapper","href":"services/DashboardSocket/sendWrapper.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sends an already-wrapped WrappedMessage to the destination, or the given destinationOverride.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"toString","qualifiedName":"services.DashboardSocket.toString","href":"services/DashboardSocket/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"DashboardSocket","kind":3,"href":"services/DashboardSocket-class.html"}},{"name":"DeviceNotConnected","qualifiedName":"services.DeviceNotConnected","href":"services/DeviceNotConnected-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that no device has been connected.","enclosedBy":{"name":"serial_errors","kind":9,"href":"services/services-library.html"}},{"name":"DeviceNotConnected","qualifiedName":"services.DeviceNotConnected.DeviceNotConnected","href":"services/DeviceNotConnected/DeviceNotConnected.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DeviceNotConnected","kind":3,"href":"services/DeviceNotConnected-class.html"}},{"name":"toString","qualifiedName":"services.DeviceNotConnected.toString","href":"services/DeviceNotConnected/toString.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"DeviceNotConnected","kind":3,"href":"services/DeviceNotConnected-class.html"}},{"name":"FilesService","qualifiedName":"services.FilesService","href":"services/FilesService-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A service to read and write to the file system.","enclosedBy":{"name":"files","kind":9,"href":"services/services-library.html"}},{"name":"FilesService","qualifiedName":"services.FilesService.FilesService","href":"services/FilesService/FilesService.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"batchedLogs","qualifiedName":"services.FilesService.batchedLogs","href":"services/FilesService/batchedLogs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Holds data to be logged by logData when dataLogger fires.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"dataLogger","qualifiedName":"services.FilesService.dataLogger","href":"services/FilesService/dataLogger.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Saves all the data in batchedLogs to a file by calling logAllData.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"dispose","qualifiedName":"services.FilesService.dispose","href":"services/FilesService/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Cleans up any resources used by the service.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"hashCode","qualifiedName":"services.FilesService.hashCode","href":"services/FilesService/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"init","qualifiedName":"services.FilesService.init","href":"services/FilesService/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Ensure that files and directories that are expected to be present actually\nexist on the system. If not, create them.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"jsonEncoder","qualifiedName":"services.FilesService.jsonEncoder","href":"services/FilesService/jsonEncoder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The encoder to convert a Map<> to a json string with a nice indent","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"logAllData","qualifiedName":"services.FilesService.logAllData","href":"services/FilesService/logAllData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Logs all the data saved in batchedLogs and resets it.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"logData","qualifiedName":"services.FilesService.logData","href":"services/FilesService/logData.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Outputs log data to the correct file based on message","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"logError","qualifiedName":"services.FilesService.logError","href":"services/FilesService/logError.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Outputs error to log file","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"logMessage","qualifiedName":"services.FilesService.logMessage","href":"services/FilesService/logMessage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Outputs a log to its device's respective log file.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"loggingDir","qualifiedName":"services.FilesService.loggingDir","href":"services/FilesService/loggingDir.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The directory where all logging data is outputted","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"noSuchMethod","qualifiedName":"services.FilesService.noSuchMethod","href":"services/FilesService/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"operator ==","qualifiedName":"services.FilesService.operator ==","href":"services/FilesService/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"outputDir","qualifiedName":"services.FilesService.outputDir","href":"services/FilesService/outputDir.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The directory where the dashboard keeps its files.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"readLogs","qualifiedName":"services.FilesService.readLogs","href":"services/FilesService/readLogs.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Reads logs from the given file.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"readSettings","qualifiedName":"services.FilesService.readSettings","href":"services/FilesService/readSettings.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Reads the user's settings from the settingsFile.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"runtimeType","qualifiedName":"services.FilesService.runtimeType","href":"services/FilesService/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"screenshotsDir","qualifiedName":"services.FilesService.screenshotsDir","href":"services/FilesService/screenshotsDir.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The directory where screenshots are stored.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"settingsFile","qualifiedName":"services.FilesService.settingsFile","href":"services/FilesService/settingsFile.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The file containing the user's Settings, in JSON form.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"toString","qualifiedName":"services.FilesService.toString","href":"services/FilesService/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"writeImage","qualifiedName":"services.FilesService.writeImage","href":"services/FilesService/writeImage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Saves the current frame in the feed to the camera's output directory.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"writeSettings","qualifiedName":"services.FilesService.writeSettings","href":"services/FilesService/writeSettings.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Saves the Settings object to the settingsFile, as JSON.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"Gamepad","qualifiedName":"services.Gamepad","href":"services/Gamepad-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A physical gamepad that can be connected and used to control the rover.","enclosedBy":{"name":"gamepad","kind":9,"href":"services/services-library.html"}},{"name":"Gamepad","qualifiedName":"services.Gamepad.Gamepad","href":"services/Gamepad/Gamepad.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a new gamepad object, whether it is connected or not.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"Gamepad.forPlatform","qualifiedName":"services.Gamepad.Gamepad.forPlatform","href":"services/Gamepad/Gamepad.forPlatform.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Returns a functional instance of this class, or a mock on unsupported platforms.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"batteryLevel","qualifiedName":"services.Gamepad.batteryLevel","href":"services/Gamepad/batteryLevel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The current battery of the controller, or GamepadBatteryLevel.unknown if disconnected.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"controllerIndex","qualifiedName":"services.Gamepad.controllerIndex","href":"services/Gamepad/controllerIndex.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The unique number assigned to this controller by the operating system.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"dispose","qualifiedName":"services.Gamepad.dispose","href":"services/Gamepad/dispose.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Cleans up any resources used by the service.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"getState","qualifiedName":"services.Gamepad.getState","href":"services/Gamepad/getState.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets the current state of the gamepad, or null if it's not connected.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"hashCode","qualifiedName":"services.Gamepad.hashCode","href":"services/Gamepad/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"init","qualifiedName":"services.Gamepad.init","href":"services/Gamepad/init.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Initializes the service.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"isConnected","qualifiedName":"services.Gamepad.isConnected","href":"services/Gamepad/isConnected.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the gamepad is currently connected.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"noSuchMethod","qualifiedName":"services.Gamepad.noSuchMethod","href":"services/Gamepad/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"operator ==","qualifiedName":"services.Gamepad.operator ==","href":"services/Gamepad/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"pulse","qualifiedName":"services.Gamepad.pulse","href":"services/Gamepad/pulse.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Makes the gamepad vibrate a small \"pulse\"","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"runtimeType","qualifiedName":"services.Gamepad.runtimeType","href":"services/Gamepad/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"stopVibrating","qualifiedName":"services.Gamepad.stopVibrating","href":"services/Gamepad/stopVibrating.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Stops vibrating the controller.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"toString","qualifiedName":"services.Gamepad.toString","href":"services/Gamepad/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"vibrate","qualifiedName":"services.Gamepad.vibrate","href":"services/Gamepad/vibrate.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Vibrates the gamepad at the given intensity, from a scale of 0.0 to 1.0.","enclosedBy":{"name":"Gamepad","kind":3,"href":"services/Gamepad-class.html"}},{"name":"GamepadBatteryLevel","qualifiedName":"services.GamepadBatteryLevel","href":"services/GamepadBatteryLevel.html","kind":5,"overriddenDepth":0,"packageRank":0,"desc":"The battery level of a gamepad.","enclosedBy":{"name":"state","kind":9,"href":"services/services-library.html"}},{"name":"fromPercent","qualifiedName":"services.GamepadBatteryLevel.fromPercent","href":"services/GamepadBatteryLevel/fromPercent.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Returns a battery level from a percentage.","enclosedBy":{"name":"GamepadBatteryLevel","kind":5,"href":"services/GamepadBatteryLevel.html"}},{"name":"hashCode","qualifiedName":"services.GamepadBatteryLevel.hashCode","href":"services/GamepadBatteryLevel/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"GamepadBatteryLevel","kind":5,"href":"services/GamepadBatteryLevel.html"}},{"name":"index","qualifiedName":"services.GamepadBatteryLevel.index","href":"services/GamepadBatteryLevel/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A numeric identifier for the enumerated value.","enclosedBy":{"name":"GamepadBatteryLevel","kind":5,"href":"services/GamepadBatteryLevel.html"}},{"name":"noSuchMethod","qualifiedName":"services.GamepadBatteryLevel.noSuchMethod","href":"services/GamepadBatteryLevel/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"GamepadBatteryLevel","kind":5,"href":"services/GamepadBatteryLevel.html"}},{"name":"operator ==","qualifiedName":"services.GamepadBatteryLevel.operator ==","href":"services/GamepadBatteryLevel/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"GamepadBatteryLevel","kind":5,"href":"services/GamepadBatteryLevel.html"}},{"name":"runtimeType","qualifiedName":"services.GamepadBatteryLevel.runtimeType","href":"services/GamepadBatteryLevel/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"GamepadBatteryLevel","kind":5,"href":"services/GamepadBatteryLevel.html"}},{"name":"toString","qualifiedName":"services.GamepadBatteryLevel.toString","href":"services/GamepadBatteryLevel/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"GamepadBatteryLevel","kind":5,"href":"services/GamepadBatteryLevel.html"}},{"name":"values","qualifiedName":"services.GamepadBatteryLevel.values","href":"services/GamepadBatteryLevel/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"A constant List of the values in this enum, in order of their declaration.","enclosedBy":{"name":"GamepadBatteryLevel","kind":5,"href":"services/GamepadBatteryLevel.html"}},{"name":"GamepadService","qualifiedName":"services.GamepadService","href":"services/GamepadService-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A service to match operators to gamepads.","enclosedBy":{"name":"service","kind":9,"href":"services/services-library.html"}},{"name":"GamepadService","qualifiedName":"services.GamepadService.GamepadService","href":"services/GamepadService/GamepadService.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"connect","qualifiedName":"services.GamepadService.connect","href":"services/GamepadService/connect.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Connects the given operator to the first available gamepad.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"dispose","qualifiedName":"services.GamepadService.dispose","href":"services/GamepadService/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Cleans up any resources used by the service.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"gamepads","qualifiedName":"services.GamepadService.gamepads","href":"services/GamepadService/gamepads.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of gamepads that are currently connected.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"hashCode","qualifiedName":"services.GamepadService.hashCode","href":"services/GamepadService/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"init","qualifiedName":"services.GamepadService.init","href":"services/GamepadService/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes the service.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"maxGamepads","qualifiedName":"services.GamepadService.maxGamepads","href":"services/GamepadService/maxGamepads-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The maximum number of gamepads that will be connected.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"noSuchMethod","qualifiedName":"services.GamepadService.noSuchMethod","href":"services/GamepadService/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"operator ==","qualifiedName":"services.GamepadService.operator ==","href":"services/GamepadService/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"osIndexes","qualifiedName":"services.GamepadService.osIndexes","href":"services/GamepadService/osIndexes.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of Gamepad.controllerIndexes for each currently connected controller.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"runtimeType","qualifiedName":"services.GamepadService.runtimeType","href":"services/GamepadService/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"toString","qualifiedName":"services.GamepadService.toString","href":"services/GamepadService/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"GamepadState","qualifiedName":"services.GamepadState","href":"services/GamepadState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The complete state of a gamepad.","enclosedBy":{"name":"state","kind":9,"href":"services/services-library.html"}},{"name":"GamepadState","qualifiedName":"services.GamepadState.GamepadState","href":"services/GamepadState/GamepadState.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a new representation of the gamepad state.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"buttonA","qualifiedName":"services.GamepadState.buttonA","href":"services/GamepadState/buttonA.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the A button was pressed.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"buttonB","qualifiedName":"services.GamepadState.buttonB","href":"services/GamepadState/buttonB.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the B button was pressed.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"buttonBack","qualifiedName":"services.GamepadState.buttonBack","href":"services/GamepadState/buttonBack.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the Back or Select button was pressed.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"buttonStart","qualifiedName":"services.GamepadState.buttonStart","href":"services/GamepadState/buttonStart.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the Start or Options button was pressed.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"buttonX","qualifiedName":"services.GamepadState.buttonX","href":"services/GamepadState/buttonX.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the X button was pressed.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"buttonY","qualifiedName":"services.GamepadState.buttonY","href":"services/GamepadState/buttonY.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the Y button was pressed.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"dpadDown","qualifiedName":"services.GamepadState.dpadDown","href":"services/GamepadState/dpadDown.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the D-pad's down button is being pressed.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"dpadUp","qualifiedName":"services.GamepadState.dpadUp","href":"services/GamepadState/dpadUp.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the D-pad's up button is being pressed.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"hashCode","qualifiedName":"services.GamepadState.hashCode","href":"services/GamepadState/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"leftShoulder","qualifiedName":"services.GamepadState.leftShoulder","href":"services/GamepadState/leftShoulder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the left shoulder is being pressed.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"noSuchMethod","qualifiedName":"services.GamepadState.noSuchMethod","href":"services/GamepadState/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"normalDpadX","qualifiedName":"services.GamepadState.normalDpadX","href":"services/GamepadState/normalDpadX.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A normalized reading of the D-pad's X-axis.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"normalDpadY","qualifiedName":"services.GamepadState.normalDpadY","href":"services/GamepadState/normalDpadY.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A normalized reading of the D-pad's X-axis.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"normalLeftX","qualifiedName":"services.GamepadState.normalLeftX","href":"services/GamepadState/normalLeftX.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A normalized reading of the left joystick's X-axis.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"normalLeftY","qualifiedName":"services.GamepadState.normalLeftY","href":"services/GamepadState/normalLeftY.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A normalized reading of the left joystick's Y-axis.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"normalRightX","qualifiedName":"services.GamepadState.normalRightX","href":"services/GamepadState/normalRightX.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A normalized reading of the right joystick's X-axis.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"normalRightY","qualifiedName":"services.GamepadState.normalRightY","href":"services/GamepadState/normalRightY.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A normalized reading of the right joystick's X-axis.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"normalShoulder","qualifiedName":"services.GamepadState.normalShoulder","href":"services/GamepadState/normalShoulder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A normalized reading of the shoulder buttons.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"normalTrigger","qualifiedName":"services.GamepadState.normalTrigger","href":"services/GamepadState/normalTrigger.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A normalized reading of the triggers.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"operator ==","qualifiedName":"services.GamepadState.operator ==","href":"services/GamepadState/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"rightShoulder","qualifiedName":"services.GamepadState.rightShoulder","href":"services/GamepadState/rightShoulder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the right shoulder is being pressed.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"runtimeType","qualifiedName":"services.GamepadState.runtimeType","href":"services/GamepadState/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"toString","qualifiedName":"services.GamepadState.toString","href":"services/GamepadState/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"GamepadState","kind":3,"href":"services/GamepadState-class.html"}},{"name":"MalformedSerialPacket","qualifiedName":"services.MalformedSerialPacket","href":"services/MalformedSerialPacket-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that a data packet has come malformed.","enclosedBy":{"name":"serial_errors","kind":9,"href":"services/services-library.html"}},{"name":"MalformedSerialPacket","qualifiedName":"services.MalformedSerialPacket.MalformedSerialPacket","href":"services/MalformedSerialPacket/MalformedSerialPacket.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates an error about a malformed packet.","enclosedBy":{"name":"MalformedSerialPacket","kind":3,"href":"services/MalformedSerialPacket-class.html"}},{"name":"packet","qualifiedName":"services.MalformedSerialPacket.packet","href":"services/MalformedSerialPacket/packet.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The malformed packet.","enclosedBy":{"name":"MalformedSerialPacket","kind":3,"href":"services/MalformedSerialPacket-class.html"}},{"name":"toString","qualifiedName":"services.MalformedSerialPacket.toString","href":"services/MalformedSerialPacket/toString.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"MalformedSerialPacket","kind":3,"href":"services/MalformedSerialPacket-class.html"}},{"name":"MultipleDevicesFound","qualifiedName":"services.MultipleDevicesFound","href":"services/MultipleDevicesFound-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that multiple devices are available to connect to.","enclosedBy":{"name":"serial_errors","kind":9,"href":"services/services-library.html"}},{"name":"MultipleDevicesFound","qualifiedName":"services.MultipleDevicesFound.MultipleDevicesFound","href":"services/MultipleDevicesFound/MultipleDevicesFound.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates an error that contains the list of available devices.","enclosedBy":{"name":"MultipleDevicesFound","kind":3,"href":"services/MultipleDevicesFound-class.html"}},{"name":"devices","qualifiedName":"services.MultipleDevicesFound.devices","href":"services/MultipleDevicesFound/devices.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The list of available devices.","enclosedBy":{"name":"MultipleDevicesFound","kind":3,"href":"services/MultipleDevicesFound-class.html"}},{"name":"toString","qualifiedName":"services.MultipleDevicesFound.toString","href":"services/MultipleDevicesFound/toString.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"MultipleDevicesFound","kind":3,"href":"services/MultipleDevicesFound-class.html"}},{"name":"NoDeviceFound","qualifiedName":"services.NoDeviceFound","href":"services/NoDeviceFound-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that no devices are available to connect to.","enclosedBy":{"name":"serial_errors","kind":9,"href":"services/services-library.html"}},{"name":"NoDeviceFound","qualifiedName":"services.NoDeviceFound.NoDeviceFound","href":"services/NoDeviceFound/NoDeviceFound.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"NoDeviceFound","kind":3,"href":"services/NoDeviceFound-class.html"}},{"name":"toString","qualifiedName":"services.NoDeviceFound.toString","href":"services/NoDeviceFound/toString.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"NoDeviceFound","kind":3,"href":"services/NoDeviceFound-class.html"}},{"name":"SerialCannotOpen","qualifiedName":"services.SerialCannotOpen","href":"services/SerialCannotOpen-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that the port could not be opened.","enclosedBy":{"name":"serial_errors","kind":9,"href":"services/services-library.html"}},{"name":"SerialCannotOpen","qualifiedName":"services.SerialCannotOpen.SerialCannotOpen","href":"services/SerialCannotOpen/SerialCannotOpen.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates an error about a port that won't open.","enclosedBy":{"name":"SerialCannotOpen","kind":3,"href":"services/SerialCannotOpen-class.html"}},{"name":"port","qualifiedName":"services.SerialCannotOpen.port","href":"services/SerialCannotOpen/port.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The port that failed to open.","enclosedBy":{"name":"SerialCannotOpen","kind":3,"href":"services/SerialCannotOpen-class.html"}},{"name":"toString","qualifiedName":"services.SerialCannotOpen.toString","href":"services/SerialCannotOpen/toString.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"SerialCannotOpen","kind":3,"href":"services/SerialCannotOpen-class.html"}},{"name":"SerialDevice","qualifiedName":"services.SerialDevice","href":"services/SerialDevice-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A service to connect to a single serial device.","enclosedBy":{"name":"serial","kind":9,"href":"services/services-library.html"}},{"name":"SerialDevice","qualifiedName":"services.SerialDevice.SerialDevice","href":"services/SerialDevice/SerialDevice.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Manages a connection to a Serial device.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"availablePorts","qualifiedName":"services.SerialDevice.availablePorts","href":"services/SerialDevice/availablePorts.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of all available ports to connect to.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"connect","qualifiedName":"services.SerialDevice.connect","href":"services/SerialDevice/connect.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Opens the Serial port and identifies the device on the other end.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"device","qualifiedName":"services.SerialDevice.device","href":"services/SerialDevice/device.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The device we're connected to.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"dispose","qualifiedName":"services.SerialDevice.dispose","href":"services/SerialDevice/dispose.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Closes the connection and resets the device.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"hashCode","qualifiedName":"services.SerialDevice.hashCode","href":"services/SerialDevice/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"noSuchMethod","qualifiedName":"services.SerialDevice.noSuchMethod","href":"services/SerialDevice/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"onMessage","qualifiedName":"services.SerialDevice.onMessage","href":"services/SerialDevice/onMessage.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A callback to run whenever a message is received by this device.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"operator ==","qualifiedName":"services.SerialDevice.operator ==","href":"services/SerialDevice/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"port","qualifiedName":"services.SerialDevice.port","href":"services/SerialDevice/port.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The port to connect to.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"resetCode","qualifiedName":"services.SerialDevice.resetCode","href":"services/SerialDevice/resetCode-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"Sending this code resets the Teensy to its \"unconnected\" state.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"runtimeType","qualifiedName":"services.SerialDevice.runtimeType","href":"services/SerialDevice/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"sendMessage","qualifiedName":"services.SerialDevice.sendMessage","href":"services/SerialDevice/sendMessage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Sends a message to the device, if the device accepts it.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"toString","qualifiedName":"services.SerialDevice.toString","href":"services/SerialDevice/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"SerialDevice","kind":3,"href":"services/SerialDevice-class.html"}},{"name":"SerialException","qualifiedName":"services.SerialException","href":"services/SerialException-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The base class for all exceptions relating to using Serial devices.","enclosedBy":{"name":"serial_errors","kind":9,"href":"services/services-library.html"}},{"name":"SerialException","qualifiedName":"services.SerialException.SerialException","href":"services/SerialException/SerialException.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Provides a const constructor.","enclosedBy":{"name":"SerialException","kind":3,"href":"services/SerialException-class.html"}},{"name":"SerialHandshakeFailed","qualifiedName":"services.SerialHandshakeFailed","href":"services/SerialHandshakeFailed-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that the Serial device did not reciprocate the handshake.","enclosedBy":{"name":"serial_errors","kind":9,"href":"services/services-library.html"}},{"name":"SerialHandshakeFailed","qualifiedName":"services.SerialHandshakeFailed.SerialHandshakeFailed","href":"services/SerialHandshakeFailed/SerialHandshakeFailed.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"SerialHandshakeFailed","kind":3,"href":"services/SerialHandshakeFailed-class.html"}},{"name":"toString","qualifiedName":"services.SerialHandshakeFailed.toString","href":"services/SerialHandshakeFailed/toString.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"SerialHandshakeFailed","kind":3,"href":"services/SerialHandshakeFailed-class.html"}},{"name":"SerialIOError","qualifiedName":"services.SerialIOError","href":"services/SerialIOError-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Indicates that the device is unreachable.","enclosedBy":{"name":"serial_errors","kind":9,"href":"services/services-library.html"}},{"name":"SerialIOError","qualifiedName":"services.SerialIOError.SerialIOError","href":"services/SerialIOError/SerialIOError.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates an SerialException to represent a SerialPortError.","enclosedBy":{"name":"SerialIOError","kind":3,"href":"services/SerialIOError-class.html"}},{"name":"error","qualifiedName":"services.SerialIOError.error","href":"services/SerialIOError/error.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The underlying IO error thrown by the libserialport library.","enclosedBy":{"name":"SerialIOError","kind":3,"href":"services/SerialIOError-class.html"}},{"name":"toString","qualifiedName":"services.SerialIOError.toString","href":"services/SerialIOError/toString.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"SerialIOError","kind":3,"href":"services/SerialIOError-class.html"}},{"name":"Services","qualifiedName":"services.Services","href":"services/Services-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A dependency injection service that manages the lifecycle of other services.","enclosedBy":{"name":"services","kind":9,"href":"services/services-library.html"}},{"name":"Services","qualifiedName":"services.Services.Services","href":"services/Services/Services.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Services","kind":3,"href":"services/Services-class.html"}},{"name":"dispose","qualifiedName":"services.Services.dispose","href":"services/Services/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Cleans up any resources used by the service.","enclosedBy":{"name":"Services","kind":3,"href":"services/Services-class.html"}},{"name":"error","qualifiedName":"services.Services.error","href":"services/Services/error.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The first error that occurred during startup.","enclosedBy":{"name":"Services","kind":3,"href":"services/Services-class.html"}},{"name":"files","qualifiedName":"services.Services.files","href":"services/Services/files.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A service that reads and writes to device files.","enclosedBy":{"name":"Services","kind":3,"href":"services/Services-class.html"}},{"name":"gamepad","qualifiedName":"services.Services.gamepad","href":"services/Services/gamepad.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A service that handles controller inputs.","enclosedBy":{"name":"Services","kind":3,"href":"services/Services-class.html"}},{"name":"hashCode","qualifiedName":"services.Services.hashCode","href":"services/Services/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"Services","kind":3,"href":"services/Services-class.html"}},{"name":"init","qualifiedName":"services.Services.init","href":"services/Services/init.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Initializes the service.","enclosedBy":{"name":"Services","kind":3,"href":"services/Services-class.html"}},{"name":"noSuchMethod","qualifiedName":"services.Services.noSuchMethod","href":"services/Services/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"Services","kind":3,"href":"services/Services-class.html"}},{"name":"operator ==","qualifiedName":"services.Services.operator ==","href":"services/Services/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"Services","kind":3,"href":"services/Services-class.html"}},{"name":"runtimeType","qualifiedName":"services.Services.runtimeType","href":"services/Services/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"Services","kind":3,"href":"services/Services-class.html"}},{"name":"toString","qualifiedName":"services.Services.toString","href":"services/Services/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"Services","kind":3,"href":"services/Services-class.html"}},{"name":"services","qualifiedName":"services.services","href":"services/services.html","kind":20,"overriddenDepth":0,"packageRank":0,"desc":"The singleton instance of the Services class.","enclosedBy":{"name":"services","kind":9,"href":"services/services-library.html"}},{"name":"widgets","qualifiedName":"widgets","href":"widgets/widgets-library.html","kind":9,"overriddenDepth":0,"packageRank":0,"desc":"Contains complex or reusable widgets."},{"name":"AutonomyCommandEditor","qualifiedName":"widgets.AutonomyCommandEditor","href":"widgets/AutonomyCommandEditor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to edit an AutonomyCommand.","enclosedBy":{"name":"autonomy_command","kind":9,"href":"widgets/widgets-library.html"}},{"name":"AutonomyCommandEditor","qualifiedName":"widgets.AutonomyCommandEditor.AutonomyCommandEditor","href":"widgets/AutonomyCommandEditor/AutonomyCommandEditor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"AutonomyCommandEditor","kind":3,"href":"widgets/AutonomyCommandEditor-class.html"}},{"name":"build","qualifiedName":"widgets.AutonomyCommandEditor.build","href":"widgets/AutonomyCommandEditor/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"AutonomyCommandEditor","kind":3,"href":"widgets/AutonomyCommandEditor-class.html"}},{"name":"createModel","qualifiedName":"widgets.AutonomyCommandEditor.createModel","href":"widgets/AutonomyCommandEditor/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"AutonomyCommandEditor","kind":3,"href":"widgets/AutonomyCommandEditor-class.html"}},{"name":"createTask","qualifiedName":"widgets.AutonomyCommandEditor.createTask","href":"widgets/AutonomyCommandEditor/createTask.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Opens a dialog to prompt the user to create an AutonomyCommand and sends it to the rover.","enclosedBy":{"name":"AutonomyCommandEditor","kind":3,"href":"widgets/AutonomyCommandEditor-class.html"}},{"name":"dataModel","qualifiedName":"widgets.AutonomyCommandEditor.dataModel","href":"widgets/AutonomyCommandEditor/dataModel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The autonomy view model.","enclosedBy":{"name":"AutonomyCommandEditor","kind":3,"href":"widgets/AutonomyCommandEditor-class.html"}},{"name":"BuildContextUtils","qualifiedName":"widgets.BuildContextUtils","href":"widgets/BuildContextUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Convenience functions on BuildContext.","enclosedBy":{"name":"widgets","kind":9,"href":"widgets/widgets-library.html"}},{"name":"colorScheme","qualifiedName":"widgets.BuildContextUtils.colorScheme","href":"widgets/BuildContextUtils/colorScheme.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Gets the color scheme of the app.","enclosedBy":{"name":"BuildContextUtils","kind":6,"href":"widgets/BuildContextUtils.html"}},{"name":"textTheme","qualifiedName":"widgets.BuildContextUtils.textTheme","href":"widgets/BuildContextUtils/textTheme.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Gets the text theme of the app.","enclosedBy":{"name":"BuildContextUtils","kind":6,"href":"widgets/BuildContextUtils.html"}},{"name":"CameraDetailsEditor","qualifiedName":"widgets.CameraDetailsEditor","href":"widgets/CameraDetailsEditor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to modify CameraDetails for a given camera, backed by a CameraDetailsBuilder.","enclosedBy":{"name":"camera_editor","kind":9,"href":"widgets/widgets-library.html"}},{"name":"CameraDetailsEditor","qualifiedName":"widgets.CameraDetailsEditor.CameraDetailsEditor","href":"widgets/CameraDetailsEditor/CameraDetailsEditor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a widget to modify a CameraDetails.","enclosedBy":{"name":"CameraDetailsEditor","kind":3,"href":"widgets/CameraDetailsEditor-class.html"}},{"name":"build","qualifiedName":"widgets.CameraDetailsEditor.build","href":"widgets/CameraDetailsEditor/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"CameraDetailsEditor","kind":3,"href":"widgets/CameraDetailsEditor-class.html"}},{"name":"createModel","qualifiedName":"widgets.CameraDetailsEditor.createModel","href":"widgets/CameraDetailsEditor/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"CameraDetailsEditor","kind":3,"href":"widgets/CameraDetailsEditor-class.html"}},{"name":"data","qualifiedName":"widgets.CameraDetailsEditor.data","href":"widgets/CameraDetailsEditor/data.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The data for the camera being modified.","enclosedBy":{"name":"CameraDetailsEditor","kind":3,"href":"widgets/CameraDetailsEditor-class.html"}},{"name":"ColorEditor","qualifiedName":"widgets.ColorEditor","href":"widgets/ColorEditor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to edit a color, backed by ColorBuilder.","enclosedBy":{"name":"editors","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ColorEditor","qualifiedName":"widgets.ColorEditor.ColorEditor","href":"widgets/ColorEditor/ColorEditor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A widget that modifies the given view model's color.","enclosedBy":{"name":"ColorEditor","kind":3,"href":"widgets/ColorEditor-class.html"}},{"name":"build","qualifiedName":"widgets.ColorEditor.build","href":"widgets/ColorEditor/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"ColorEditor","kind":3,"href":"widgets/ColorEditor-class.html"}},{"name":"ControlsDisplay","qualifiedName":"widgets.ControlsDisplay","href":"widgets/ControlsDisplay-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Displays controls for the given Controller.","enclosedBy":{"name":"sidebar","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ControlsDisplay","qualifiedName":"widgets.ControlsDisplay.ControlsDisplay","href":"widgets/ControlsDisplay/ControlsDisplay.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor for this widget.","enclosedBy":{"name":"ControlsDisplay","kind":3,"href":"widgets/ControlsDisplay-class.html"}},{"name":"build","qualifiedName":"widgets.ControlsDisplay.build","href":"widgets/ControlsDisplay/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"ControlsDisplay","kind":3,"href":"widgets/ControlsDisplay-class.html"}},{"name":"gamepadNum","qualifiedName":"widgets.ControlsDisplay.gamepadNum","href":"widgets/ControlsDisplay/gamepadNum.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The number gamepad being used.","enclosedBy":{"name":"ControlsDisplay","kind":3,"href":"widgets/ControlsDisplay-class.html"}},{"name":"DropdownEditor","qualifiedName":"widgets.DropdownEditor","href":"widgets/DropdownEditor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to choose a single value from a dropdown.","enclosedBy":{"name":"editors","kind":9,"href":"widgets/widgets-library.html"}},{"name":"DropdownEditor","qualifiedName":"widgets.DropdownEditor.DropdownEditor","href":"widgets/DropdownEditor/DropdownEditor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a DropdownButton list to choose between items.","enclosedBy":{"name":"DropdownEditor","kind":3,"href":"widgets/DropdownEditor-class.html"}},{"name":"build","qualifiedName":"widgets.DropdownEditor.build","href":"widgets/DropdownEditor/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"DropdownEditor","kind":3,"href":"widgets/DropdownEditor-class.html"}},{"name":"humanName","qualifiedName":"widgets.DropdownEditor.humanName","href":"widgets/DropdownEditor/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Converts a T item to a user-friendly string.","enclosedBy":{"name":"DropdownEditor","kind":3,"href":"widgets/DropdownEditor-class.html"}},{"name":"items","qualifiedName":"widgets.DropdownEditor.items","href":"widgets/DropdownEditor/items.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of items to choose from.","enclosedBy":{"name":"DropdownEditor","kind":3,"href":"widgets/DropdownEditor-class.html"}},{"name":"name","qualifiedName":"widgets.DropdownEditor.name","href":"widgets/DropdownEditor/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The name to show when editing these settings.","enclosedBy":{"name":"DropdownEditor","kind":3,"href":"widgets/DropdownEditor-class.html"}},{"name":"onChanged","qualifiedName":"widgets.DropdownEditor.onChanged","href":"widgets/DropdownEditor/onChanged.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A callback for when a new value is selected. Is not called when the user cancels.","enclosedBy":{"name":"DropdownEditor","kind":3,"href":"widgets/DropdownEditor-class.html"}},{"name":"value","qualifiedName":"widgets.DropdownEditor.value","href":"widgets/DropdownEditor/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The chosen value in the dropdown.","enclosedBy":{"name":"DropdownEditor","kind":3,"href":"widgets/DropdownEditor-class.html"}},{"name":"Footer","qualifiedName":"widgets.Footer","href":"widgets/Footer-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The footer, responsible for showing vitals and logs.","enclosedBy":{"name":"footer","kind":9,"href":"widgets/widgets-library.html"}},{"name":"Footer","qualifiedName":"widgets.Footer.Footer","href":"widgets/Footer/Footer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates the footer.","enclosedBy":{"name":"Footer","kind":3,"href":"widgets/Footer-class.html"}},{"name":"build","qualifiedName":"widgets.Footer.build","href":"widgets/Footer/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"Footer","kind":3,"href":"widgets/Footer-class.html"}},{"name":"showLogs","qualifiedName":"widgets.Footer.showLogs","href":"widgets/Footer/showLogs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to show logs. Disable this when on the logs page.","enclosedBy":{"name":"Footer","kind":3,"href":"widgets/Footer-class.html"}},{"name":"GamepadButton","qualifiedName":"widgets.GamepadButton","href":"widgets/GamepadButton-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to show the gamepad state and allow the user to switch its mode.","enclosedBy":{"name":"gamepad","kind":9,"href":"widgets/widgets-library.html"}},{"name":"GamepadButton","qualifiedName":"widgets.GamepadButton.GamepadButton","href":"widgets/GamepadButton/GamepadButton.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor for this widget.","enclosedBy":{"name":"GamepadButton","kind":3,"href":"widgets/GamepadButton-class.html"}},{"name":"build","qualifiedName":"widgets.GamepadButton.build","href":"widgets/GamepadButton/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"GamepadButton","kind":3,"href":"widgets/GamepadButton-class.html"}},{"name":"getColor","qualifiedName":"widgets.GamepadButton.getColor","href":"widgets/GamepadButton/getColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Returns a color representing the gamepad's battery level.","enclosedBy":{"name":"GamepadButton","kind":3,"href":"widgets/GamepadButton-class.html"}},{"name":"isDisabled","qualifiedName":"widgets.GamepadButton.isDisabled","href":"widgets/GamepadButton/isDisabled.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Whether the gamepad should be disabled in this mode.","enclosedBy":{"name":"GamepadButton","kind":3,"href":"widgets/GamepadButton-class.html"}},{"name":"GpsEditor","qualifiedName":"widgets.GpsEditor","href":"widgets/GpsEditor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to edit a GPS coordinate in degree/minute/seconds or decimal format.","enclosedBy":{"name":"editors","kind":9,"href":"widgets/widgets-library.html"}},{"name":"GpsEditor","qualifiedName":"widgets.GpsEditor.GpsEditor","href":"widgets/GpsEditor/GpsEditor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Listens to model to rebuild the UI.","enclosedBy":{"name":"GpsEditor","kind":3,"href":"widgets/GpsEditor-class.html"}},{"name":"build","qualifiedName":"widgets.GpsEditor.build","href":"widgets/GpsEditor/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"GpsEditor","kind":3,"href":"widgets/GpsEditor-class.html"}},{"name":"ImageLoader","qualifiedName":"widgets.ImageLoader","href":"widgets/ImageLoader-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A helper class to load and manage resources used by a ui.Image.","enclosedBy":{"name":"video_feed","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ImageLoader","qualifiedName":"widgets.ImageLoader.ImageLoader","href":"widgets/ImageLoader/ImageLoader.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"codec","qualifiedName":"widgets.ImageLoader.codec","href":"widgets/ImageLoader/codec.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The codec used by image.","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"dispose","qualifiedName":"widgets.ImageLoader.dispose","href":"widgets/ImageLoader/dispose.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Disposes all the resources associated with the current frame.","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"hasImage","qualifiedName":"widgets.ImageLoader.hasImage","href":"widgets/ImageLoader/hasImage.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether this loader has been initialized.","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"hashCode","qualifiedName":"widgets.ImageLoader.hashCode","href":"widgets/ImageLoader/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"image","qualifiedName":"widgets.ImageLoader.image","href":"widgets/ImageLoader/image.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The dart:ui instance of the current frame.","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"isLoading","qualifiedName":"widgets.ImageLoader.isLoading","href":"widgets/ImageLoader/isLoading.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether an image is currently loading.","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"load","qualifiedName":"widgets.ImageLoader.load","href":"widgets/ImageLoader/load.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Processes the next frame and stores the result in image.","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"noSuchMethod","qualifiedName":"widgets.ImageLoader.noSuchMethod","href":"widgets/ImageLoader/noSuchMethod.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Invoked when a nonexistent method or property is accessed.","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"operator ==","qualifiedName":"widgets.ImageLoader.operator ==","href":"widgets/ImageLoader/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"runtimeType","qualifiedName":"widgets.ImageLoader.runtimeType","href":"widgets/ImageLoader/runtimeType.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A representation of the runtime type of the object.","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"toString","qualifiedName":"widgets.ImageLoader.toString","href":"widgets/ImageLoader/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"ImageLoader","kind":3,"href":"widgets/ImageLoader-class.html"}},{"name":"MessageDisplay","qualifiedName":"widgets.MessageDisplay","href":"widgets/MessageDisplay-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Displays the latest TaskbarMessage from HomeModel.message.","enclosedBy":{"name":"footer","kind":9,"href":"widgets/widgets-library.html"}},{"name":"MessageDisplay","qualifiedName":"widgets.MessageDisplay.MessageDisplay","href":"widgets/MessageDisplay/MessageDisplay.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Provides a const constructor for this widget.","enclosedBy":{"name":"MessageDisplay","kind":3,"href":"widgets/MessageDisplay-class.html"}},{"name":"build","qualifiedName":"widgets.MessageDisplay.build","href":"widgets/MessageDisplay/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"MessageDisplay","kind":3,"href":"widgets/MessageDisplay-class.html"}},{"name":"getColor","qualifiedName":"widgets.MessageDisplay.getColor","href":"widgets/MessageDisplay/getColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets the appropriate color for the given severity.","enclosedBy":{"name":"MessageDisplay","kind":3,"href":"widgets/MessageDisplay-class.html"}},{"name":"getIcon","qualifiedName":"widgets.MessageDisplay.getIcon","href":"widgets/MessageDisplay/getIcon.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets the appropriate icon for the given severity.","enclosedBy":{"name":"MessageDisplay","kind":3,"href":"widgets/MessageDisplay-class.html"}},{"name":"showLogs","qualifiedName":"widgets.MessageDisplay.showLogs","href":"widgets/MessageDisplay/showLogs.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to show an option to open the logs page.","enclosedBy":{"name":"MessageDisplay","kind":3,"href":"widgets/MessageDisplay-class.html"}},{"name":"MetricsList","qualifiedName":"widgets.MetricsList","href":"widgets/MetricsList-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Displays metrics of all sorts in a collapsible list.","enclosedBy":{"name":"sidebar","kind":9,"href":"widgets/widgets-library.html"}},{"name":"MetricsList","qualifiedName":"widgets.MetricsList.MetricsList","href":"widgets/MetricsList/MetricsList.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor for this widget.","enclosedBy":{"name":"MetricsList","kind":3,"href":"widgets/MetricsList-class.html"}},{"name":"build","qualifiedName":"widgets.MetricsList.build","href":"widgets/MetricsList/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"MetricsList","kind":3,"href":"widgets/MetricsList-class.html"}},{"name":"MobileControls","qualifiedName":"widgets.MobileControls","href":"widgets/MobileControls-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Drive controls for mobile devices where gamepads aren't feasible.","enclosedBy":{"name":"mobile_controls","kind":9,"href":"widgets/widgets-library.html"}},{"name":"MobileControls","qualifiedName":"widgets.MobileControls.MobileControls","href":"widgets/MobileControls/MobileControls.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MobileControls","kind":3,"href":"widgets/MobileControls-class.html"}},{"name":"build","qualifiedName":"widgets.MobileControls.build","href":"widgets/MobileControls/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"MobileControls","kind":3,"href":"widgets/MobileControls-class.html"}},{"name":"createModel","qualifiedName":"widgets.MobileControls.createModel","href":"widgets/MobileControls/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"MobileControls","kind":3,"href":"widgets/MobileControls-class.html"}},{"name":"MobileControlsModel","qualifiedName":"widgets.MobileControlsModel","href":"widgets/MobileControlsModel-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Drive controls for mobile devices where gamepads aren't feasible.","enclosedBy":{"name":"mobile_controls","kind":9,"href":"widgets/widgets-library.html"}},{"name":"MobileControlsModel","qualifiedName":"widgets.MobileControlsModel.MobileControlsModel","href":"widgets/MobileControlsModel/MobileControlsModel.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Starts sending messages to the rover.","enclosedBy":{"name":"MobileControlsModel","kind":3,"href":"widgets/MobileControlsModel-class.html"}},{"name":"dispose","qualifiedName":"widgets.MobileControlsModel.dispose","href":"widgets/MobileControlsModel/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Discards any resources used by the object. After this is called, the\nobject is not in a usable state and should be discarded (calls to\naddListener will throw after the object is disposed).","enclosedBy":{"name":"MobileControlsModel","kind":3,"href":"widgets/MobileControlsModel-class.html"}},{"name":"left","qualifiedName":"widgets.MobileControlsModel.left","href":"widgets/MobileControlsModel/left.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The speed of the left wheels.","enclosedBy":{"name":"MobileControlsModel","kind":3,"href":"widgets/MobileControlsModel-class.html"}},{"name":"right","qualifiedName":"widgets.MobileControlsModel.right","href":"widgets/MobileControlsModel/right.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The speed of the right wheels.","enclosedBy":{"name":"MobileControlsModel","kind":3,"href":"widgets/MobileControlsModel-class.html"}},{"name":"updateLeft","qualifiedName":"widgets.MobileControlsModel.updateLeft","href":"widgets/MobileControlsModel/updateLeft.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the left speed.","enclosedBy":{"name":"MobileControlsModel","kind":3,"href":"widgets/MobileControlsModel-class.html"}},{"name":"updateRight","qualifiedName":"widgets.MobileControlsModel.updateRight","href":"widgets/MobileControlsModel/updateRight.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the right speed.","enclosedBy":{"name":"MobileControlsModel","kind":3,"href":"widgets/MobileControlsModel-class.html"}},{"name":"NetworkStatusIcon","qualifiedName":"widgets.NetworkStatusIcon","href":"widgets/NetworkStatusIcon-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A network status icon for the given device.","enclosedBy":{"name":"footer","kind":9,"href":"widgets/widgets-library.html"}},{"name":"NetworkStatusIcon","qualifiedName":"widgets.NetworkStatusIcon.NetworkStatusIcon","href":"widgets/NetworkStatusIcon/NetworkStatusIcon.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"NetworkStatusIcon","kind":3,"href":"widgets/NetworkStatusIcon-class.html"}},{"name":"build","qualifiedName":"widgets.NetworkStatusIcon.build","href":"widgets/NetworkStatusIcon/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"NetworkStatusIcon","kind":3,"href":"widgets/NetworkStatusIcon-class.html"}},{"name":"device","qualifiedName":"widgets.NetworkStatusIcon.device","href":"widgets/NetworkStatusIcon/device.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The device to monitor.","enclosedBy":{"name":"NetworkStatusIcon","kind":3,"href":"widgets/NetworkStatusIcon-class.html"}},{"name":"onPressed","qualifiedName":"widgets.NetworkStatusIcon.onPressed","href":"widgets/NetworkStatusIcon/onPressed.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"What to do when the button is pressed.","enclosedBy":{"name":"NetworkStatusIcon","kind":3,"href":"widgets/NetworkStatusIcon-class.html"}},{"name":"tooltip","qualifiedName":"widgets.NetworkStatusIcon.tooltip","href":"widgets/NetworkStatusIcon/tooltip.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"What to show as the tooltip.","enclosedBy":{"name":"NetworkStatusIcon","kind":3,"href":"widgets/NetworkStatusIcon-class.html"}},{"name":"NumberEditor","qualifiedName":"widgets.NumberEditor","href":"widgets/NumberEditor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to edit a number, backed by NumberBuilder.","enclosedBy":{"name":"editors","kind":9,"href":"widgets/widgets-library.html"}},{"name":"NumberEditor","qualifiedName":"widgets.NumberEditor.NumberEditor","href":"widgets/NumberEditor/NumberEditor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a widget to modify a number.","enclosedBy":{"name":"NumberEditor","kind":3,"href":"widgets/NumberEditor-class.html"}},{"name":"build","qualifiedName":"widgets.NumberEditor.build","href":"widgets/NumberEditor/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"NumberEditor","kind":3,"href":"widgets/NumberEditor-class.html"}},{"name":"name","qualifiedName":"widgets.NumberEditor.name","href":"widgets/NumberEditor/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value this number represents.","enclosedBy":{"name":"NumberEditor","kind":3,"href":"widgets/NumberEditor-class.html"}},{"name":"subtitle","qualifiedName":"widgets.NumberEditor.subtitle","href":"widgets/NumberEditor/subtitle.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Shows extra details.","enclosedBy":{"name":"NumberEditor","kind":3,"href":"widgets/NumberEditor-class.html"}},{"name":"titleFlex","qualifiedName":"widgets.NumberEditor.titleFlex","href":"widgets/NumberEditor/titleFlex.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The amount of space to allocate to the title.","enclosedBy":{"name":"NumberEditor","kind":3,"href":"widgets/NumberEditor-class.html"}},{"name":"width","qualifiedName":"widgets.NumberEditor.width","href":"widgets/NumberEditor/width.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"How much space to allocate in between the label and text field.","enclosedBy":{"name":"NumberEditor","kind":3,"href":"widgets/NumberEditor-class.html"}},{"name":"ReactiveWidget","qualifiedName":"widgets.ReactiveWidget","href":"widgets/ReactiveWidget-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget that listens to a ChangeNotifier and rebuilds when the model updates.","enclosedBy":{"name":"reactive_widget","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ReactiveWidget","qualifiedName":"widgets.ReactiveWidget.ReactiveWidget","href":"widgets/ReactiveWidget/ReactiveWidget.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ReactiveWidget","kind":3,"href":"widgets/ReactiveWidget-class.html"}},{"name":"createModel","qualifiedName":"widgets.ReactiveWidget.createModel","href":"widgets/ReactiveWidget/createModel.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"ReactiveWidget","kind":3,"href":"widgets/ReactiveWidget-class.html"}},{"name":"shouldDispose","qualifiedName":"widgets.ReactiveWidget.shouldDispose","href":"widgets/ReactiveWidget/shouldDispose.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether this widget should dispose the model after it's destroyed.","enclosedBy":{"name":"ReactiveWidget","kind":3,"href":"widgets/ReactiveWidget-class.html"}},{"name":"ReactiveWidgetInterface","qualifiedName":"widgets.ReactiveWidgetInterface","href":"widgets/ReactiveWidgetInterface-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget that listens to a ChangeNotifier (called the view model) and updates when it does.","enclosedBy":{"name":"reactive_widget","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ReactiveWidgetInterface","qualifiedName":"widgets.ReactiveWidgetInterface.ReactiveWidgetInterface","href":"widgets/ReactiveWidgetInterface/ReactiveWidgetInterface.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ReactiveWidgetInterface","kind":3,"href":"widgets/ReactiveWidgetInterface-class.html"}},{"name":"build","qualifiedName":"widgets.ReactiveWidgetInterface.build","href":"widgets/ReactiveWidgetInterface/build.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"ReactiveWidgetInterface","kind":3,"href":"widgets/ReactiveWidgetInterface-class.html"}},{"name":"createModel","qualifiedName":"widgets.ReactiveWidgetInterface.createModel","href":"widgets/ReactiveWidgetInterface/createModel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Creates the view model. This is only called once in the widget's lifetime.","enclosedBy":{"name":"ReactiveWidgetInterface","kind":3,"href":"widgets/ReactiveWidgetInterface-class.html"}},{"name":"createState","qualifiedName":"widgets.ReactiveWidgetInterface.createState","href":"widgets/ReactiveWidgetInterface/createState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates the mutable state for this widget at a given location in the tree.","enclosedBy":{"name":"ReactiveWidgetInterface","kind":3,"href":"widgets/ReactiveWidgetInterface-class.html"}},{"name":"didUpdateWidget","qualifiedName":"widgets.ReactiveWidgetInterface.didUpdateWidget","href":"widgets/ReactiveWidgetInterface/didUpdateWidget.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"This function gives you an opportunity to update the view model when the widget updates.","enclosedBy":{"name":"ReactiveWidgetInterface","kind":3,"href":"widgets/ReactiveWidgetInterface-class.html"}},{"name":"shouldDispose","qualifiedName":"widgets.ReactiveWidgetInterface.shouldDispose","href":"widgets/ReactiveWidgetInterface/shouldDispose.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether this widget should dispose the model after it's destroyed.","enclosedBy":{"name":"ReactiveWidgetInterface","kind":3,"href":"widgets/ReactiveWidgetInterface-class.html"}},{"name":"ReactiveWidgetState","qualifiedName":"widgets.ReactiveWidgetState","href":"widgets/ReactiveWidgetState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A state for ReactiveWidget that manages the model.","enclosedBy":{"name":"reactive_widget","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ReactiveWidgetState","qualifiedName":"widgets.ReactiveWidgetState.ReactiveWidgetState","href":"widgets/ReactiveWidgetState/ReactiveWidgetState.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ReactiveWidgetState","kind":3,"href":"widgets/ReactiveWidgetState-class.html"}},{"name":"build","qualifiedName":"widgets.ReactiveWidgetState.build","href":"widgets/ReactiveWidgetState/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"ReactiveWidgetState","kind":3,"href":"widgets/ReactiveWidgetState-class.html"}},{"name":"didUpdateWidget","qualifiedName":"widgets.ReactiveWidgetState.didUpdateWidget","href":"widgets/ReactiveWidgetState/didUpdateWidget.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Called whenever the widget configuration changes.","enclosedBy":{"name":"ReactiveWidgetState","kind":3,"href":"widgets/ReactiveWidgetState-class.html"}},{"name":"dispose","qualifiedName":"widgets.ReactiveWidgetState.dispose","href":"widgets/ReactiveWidgetState/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Called when this object is removed from the tree permanently.","enclosedBy":{"name":"ReactiveWidgetState","kind":3,"href":"widgets/ReactiveWidgetState-class.html"}},{"name":"initState","qualifiedName":"widgets.ReactiveWidgetState.initState","href":"widgets/ReactiveWidgetState/initState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Called when this object is inserted into the tree.","enclosedBy":{"name":"ReactiveWidgetState","kind":3,"href":"widgets/ReactiveWidgetState-class.html"}},{"name":"listener","qualifiedName":"widgets.ReactiveWidgetState.listener","href":"widgets/ReactiveWidgetState/listener.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the UI when model updates.","enclosedBy":{"name":"ReactiveWidgetState","kind":3,"href":"widgets/ReactiveWidgetState-class.html"}},{"name":"model","qualifiedName":"widgets.ReactiveWidgetState.model","href":"widgets/ReactiveWidgetState/model.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The model to listen to.","enclosedBy":{"name":"ReactiveWidgetState","kind":3,"href":"widgets/ReactiveWidgetState-class.html"}},{"name":"ReusableReactiveWidget","qualifiedName":"widgets.ReusableReactiveWidget","href":"widgets/ReusableReactiveWidget-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ReactiveWidgetInterface that \"borrows\" a view model and does not dispose of it.","enclosedBy":{"name":"reactive_widget","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ReusableReactiveWidget","qualifiedName":"widgets.ReusableReactiveWidget.ReusableReactiveWidget","href":"widgets/ReusableReactiveWidget/ReusableReactiveWidget.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ReusableReactiveWidget","kind":3,"href":"widgets/ReusableReactiveWidget-class.html"}},{"name":"createModel","qualifiedName":"widgets.ReusableReactiveWidget.createModel","href":"widgets/ReusableReactiveWidget/createModel.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates the view model. This is only called once in the widget's lifetime.","enclosedBy":{"name":"ReusableReactiveWidget","kind":3,"href":"widgets/ReusableReactiveWidget-class.html"}},{"name":"model","qualifiedName":"widgets.ReusableReactiveWidget.model","href":"widgets/ReusableReactiveWidget/model.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The model to borrow.","enclosedBy":{"name":"ReusableReactiveWidget","kind":3,"href":"widgets/ReusableReactiveWidget-class.html"}},{"name":"shouldDispose","qualifiedName":"widgets.ReusableReactiveWidget.shouldDispose","href":"widgets/ReusableReactiveWidget/shouldDispose.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether this widget should dispose the model after it's destroyed.","enclosedBy":{"name":"ReusableReactiveWidget","kind":3,"href":"widgets/ReusableReactiveWidget-class.html"}},{"name":"ScienceCommandEditor","qualifiedName":"widgets.ScienceCommandEditor","href":"widgets/ScienceCommandEditor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to create and send a ScienceCommand.","enclosedBy":{"name":"science_command","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ScienceCommandEditor","qualifiedName":"widgets.ScienceCommandEditor.ScienceCommandEditor","href":"widgets/ScienceCommandEditor/ScienceCommandEditor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommandEditor","kind":3,"href":"widgets/ScienceCommandEditor-class.html"}},{"name":"build","qualifiedName":"widgets.ScienceCommandEditor.build","href":"widgets/ScienceCommandEditor/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"ScienceCommandEditor","kind":3,"href":"widgets/ScienceCommandEditor-class.html"}},{"name":"createModel","qualifiedName":"widgets.ScienceCommandEditor.createModel","href":"widgets/ScienceCommandEditor/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"ScienceCommandEditor","kind":3,"href":"widgets/ScienceCommandEditor-class.html"}},{"name":"SerialButton","qualifiedName":"widgets.SerialButton","href":"widgets/SerialButton-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Allows the user to connect to the firmware directly, over Serial.","enclosedBy":{"name":"footer","kind":9,"href":"widgets/widgets-library.html"}},{"name":"SerialButton","qualifiedName":"widgets.SerialButton.SerialButton","href":"widgets/SerialButton/SerialButton.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Provides a const constructor.","enclosedBy":{"name":"SerialButton","kind":3,"href":"widgets/SerialButton-class.html"}},{"name":"build","qualifiedName":"widgets.SerialButton.build","href":"widgets/SerialButton/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"SerialButton","kind":3,"href":"widgets/SerialButton-class.html"}},{"name":"SeverityUtil","qualifiedName":"widgets.SeverityUtil","href":"widgets/SeverityUtil.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Extension for COlors on Severity","enclosedBy":{"name":"sidebar","kind":9,"href":"widgets/widgets-library.html"}},{"name":"color","qualifiedName":"widgets.SeverityUtil.color","href":"widgets/SeverityUtil/color.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Fetch the color based on the severity","enclosedBy":{"name":"SeverityUtil","kind":6,"href":"widgets/SeverityUtil.html"}},{"name":"Sidebar","qualifiedName":"widgets.Sidebar","href":"widgets/Sidebar-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to display metrics and controls off to the side.","enclosedBy":{"name":"sidebar","kind":9,"href":"widgets/widgets-library.html"}},{"name":"Sidebar","qualifiedName":"widgets.Sidebar.Sidebar","href":"widgets/Sidebar/Sidebar.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor for this widget.","enclosedBy":{"name":"Sidebar","kind":3,"href":"widgets/Sidebar-class.html"}},{"name":"build","qualifiedName":"widgets.Sidebar.build","href":"widgets/Sidebar/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"Sidebar","kind":3,"href":"widgets/Sidebar-class.html"}},{"name":"SliderSettings","qualifiedName":"widgets.SliderSettings","href":"widgets/SliderSettings-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Class that defines a slider for camera controls","enclosedBy":{"name":"video_feed","kind":9,"href":"widgets/widgets-library.html"}},{"name":"SliderSettings","qualifiedName":"widgets.SliderSettings.SliderSettings","href":"widgets/SliderSettings/SliderSettings.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Constructor for SliderSettings","enclosedBy":{"name":"SliderSettings","kind":3,"href":"widgets/SliderSettings-class.html"}},{"name":"build","qualifiedName":"widgets.SliderSettings.build","href":"widgets/SliderSettings/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"SliderSettings","kind":3,"href":"widgets/SliderSettings-class.html"}},{"name":"label","qualifiedName":"widgets.SliderSettings.label","href":"widgets/SliderSettings/label.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Name of the slider","enclosedBy":{"name":"SliderSettings","kind":3,"href":"widgets/SliderSettings-class.html"}},{"name":"max","qualifiedName":"widgets.SliderSettings.max","href":"widgets/SliderSettings/max.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The max value on this slider.","enclosedBy":{"name":"SliderSettings","kind":3,"href":"widgets/SliderSettings-class.html"}},{"name":"min","qualifiedName":"widgets.SliderSettings.min","href":"widgets/SliderSettings/min.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The min value on this slider.","enclosedBy":{"name":"SliderSettings","kind":3,"href":"widgets/SliderSettings-class.html"}},{"name":"onChanged","qualifiedName":"widgets.SliderSettings.onChanged","href":"widgets/SliderSettings/onChanged.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Value to change the position of the slider","enclosedBy":{"name":"SliderSettings","kind":3,"href":"widgets/SliderSettings-class.html"}},{"name":"value","qualifiedName":"widgets.SliderSettings.value","href":"widgets/SliderSettings/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Value corresponding to the slider","enclosedBy":{"name":"SliderSettings","kind":3,"href":"widgets/SliderSettings-class.html"}},{"name":"SocketEditor","qualifiedName":"widgets.SocketEditor","href":"widgets/SocketEditor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Creates a widget to edit a SocketInfo, backed by SocketBuilder.","enclosedBy":{"name":"editors","kind":9,"href":"widgets/widgets-library.html"}},{"name":"SocketEditor","qualifiedName":"widgets.SocketEditor.SocketEditor","href":"widgets/SocketEditor/SocketEditor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a widget to edit host and port data for a socket.","enclosedBy":{"name":"SocketEditor","kind":3,"href":"widgets/SocketEditor-class.html"}},{"name":"build","qualifiedName":"widgets.SocketEditor.build","href":"widgets/SocketEditor/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"SocketEditor","kind":3,"href":"widgets/SocketEditor-class.html"}},{"name":"editPort","qualifiedName":"widgets.SocketEditor.editPort","href":"widgets/SocketEditor/editPort.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether to edit the port as well.","enclosedBy":{"name":"SocketEditor","kind":3,"href":"widgets/SocketEditor-class.html"}},{"name":"name","qualifiedName":"widgets.SocketEditor.name","href":"widgets/SocketEditor/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The name of the socket being edited.","enclosedBy":{"name":"SocketEditor","kind":3,"href":"widgets/SocketEditor-class.html"}},{"name":"StatusIcons","qualifiedName":"widgets.StatusIcons","href":"widgets/StatusIcons-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A few icons displaying the rover's current status.","enclosedBy":{"name":"footer","kind":9,"href":"widgets/widgets-library.html"}},{"name":"StatusIcons","qualifiedName":"widgets.StatusIcons.StatusIcons","href":"widgets/StatusIcons/StatusIcons.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Provides a const constructor.","enclosedBy":{"name":"StatusIcons","kind":3,"href":"widgets/StatusIcons-class.html"}},{"name":"build","qualifiedName":"widgets.StatusIcons.build","href":"widgets/StatusIcons/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"StatusIcons","kind":3,"href":"widgets/StatusIcons-class.html"}},{"name":"getBatteryIcon","qualifiedName":"widgets.StatusIcons.getBatteryIcon","href":"widgets/StatusIcons/getBatteryIcon.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"An appropriate battery icon in increments of 1/8 battery level.","enclosedBy":{"name":"StatusIcons","kind":3,"href":"widgets/StatusIcons-class.html"}},{"name":"getColor","qualifiedName":"widgets.StatusIcons.getColor","href":"widgets/StatusIcons/getColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A color representing a meter's fill.","enclosedBy":{"name":"StatusIcons","kind":3,"href":"widgets/StatusIcons-class.html"}},{"name":"getLedColor","qualifiedName":"widgets.StatusIcons.getLedColor","href":"widgets/StatusIcons/getLedColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets the Flutter color for the given Protobuf color.","enclosedBy":{"name":"StatusIcons","kind":3,"href":"widgets/StatusIcons-class.html"}},{"name":"getStatusColor","qualifiedName":"widgets.StatusIcons.getStatusColor","href":"widgets/StatusIcons/getStatusColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The color of the rover's status icon.","enclosedBy":{"name":"StatusIcons","kind":3,"href":"widgets/StatusIcons-class.html"}},{"name":"getStatusIcon","qualifiedName":"widgets.StatusIcons.getStatusIcon","href":"widgets/StatusIcons/getStatusIcon.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"An appropriate battery icon representing the rover's current status.","enclosedBy":{"name":"StatusIcons","kind":3,"href":"widgets/StatusIcons-class.html"}},{"name":"ThrottleEditor","qualifiedName":"widgets.ThrottleEditor","href":"widgets/ThrottleEditor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"An AlertDialog to prompt the user for a throttle value and send it to the rover.","enclosedBy":{"name":"editors","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ThrottleEditor","qualifiedName":"widgets.ThrottleEditor.ThrottleEditor","href":"widgets/ThrottleEditor/ThrottleEditor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ThrottleEditor","kind":3,"href":"widgets/ThrottleEditor-class.html"}},{"name":"build","qualifiedName":"widgets.ThrottleEditor.build","href":"widgets/ThrottleEditor/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"ThrottleEditor","kind":3,"href":"widgets/ThrottleEditor-class.html"}},{"name":"createModel","qualifiedName":"widgets.ThrottleEditor.createModel","href":"widgets/ThrottleEditor/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"ThrottleEditor","kind":3,"href":"widgets/ThrottleEditor-class.html"}},{"name":"TimerEditor","qualifiedName":"widgets.TimerEditor","href":"widgets/TimerEditor-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to edit a color, backed by TimerBuilder.","enclosedBy":{"name":"editors","kind":9,"href":"widgets/widgets-library.html"}},{"name":"TimerEditor","qualifiedName":"widgets.TimerEditor.TimerEditor","href":"widgets/TimerEditor/TimerEditor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"TimerEditor","kind":3,"href":"widgets/TimerEditor-class.html"}},{"name":"build","qualifiedName":"widgets.TimerEditor.build","href":"widgets/TimerEditor/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"TimerEditor","kind":3,"href":"widgets/TimerEditor-class.html"}},{"name":"createModel","qualifiedName":"widgets.TimerEditor.createModel","href":"widgets/TimerEditor/createModel.html","kind":10,"overriddenDepth":2,"packageRank":0,"desc":"A function to create or find the model. This function will only be called once.","enclosedBy":{"name":"TimerEditor","kind":3,"href":"widgets/TimerEditor-class.html"}},{"name":"TimerWidget","qualifiedName":"widgets.TimerWidget","href":"widgets/TimerWidget-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to view timer\nCan also stop and start timer","enclosedBy":{"name":"timer","kind":9,"href":"widgets/widgets-library.html"}},{"name":"TimerWidget","qualifiedName":"widgets.TimerWidget.TimerWidget","href":"widgets/TimerWidget/TimerWidget.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates a new Timer widget","enclosedBy":{"name":"TimerWidget","kind":3,"href":"widgets/TimerWidget-class.html"}},{"name":"build","qualifiedName":"widgets.TimerWidget.build","href":"widgets/TimerWidget/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"TimerWidget","kind":3,"href":"widgets/TimerWidget-class.html"}},{"name":"getStyle","qualifiedName":"widgets.TimerWidget.getStyle","href":"widgets/TimerWidget/getStyle.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Gets the text style for the timer.","enclosedBy":{"name":"TimerWidget","kind":3,"href":"widgets/TimerWidget-class.html"}},{"name":"VideoFeed","qualifiedName":"widgets.VideoFeed","href":"widgets/VideoFeed-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Displays frames of a video feed.","enclosedBy":{"name":"video_feed","kind":9,"href":"widgets/widgets-library.html"}},{"name":"VideoFeed","qualifiedName":"widgets.VideoFeed.VideoFeed","href":"widgets/VideoFeed/VideoFeed.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Displays a video feed for the given camera.","enclosedBy":{"name":"VideoFeed","kind":3,"href":"widgets/VideoFeed-class.html"}},{"name":"createState","qualifiedName":"widgets.VideoFeed.createState","href":"widgets/VideoFeed/createState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates the mutable state for this widget at a given location in the tree.","enclosedBy":{"name":"VideoFeed","kind":3,"href":"widgets/VideoFeed-class.html"}},{"name":"index","qualifiedName":"widgets.VideoFeed.index","href":"widgets/VideoFeed/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The index of this view.","enclosedBy":{"name":"VideoFeed","kind":3,"href":"widgets/VideoFeed-class.html"}},{"name":"name","qualifiedName":"widgets.VideoFeed.name","href":"widgets/VideoFeed/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The feed to show in this widget.","enclosedBy":{"name":"VideoFeed","kind":3,"href":"widgets/VideoFeed-class.html"}},{"name":"VideoFeedState","qualifiedName":"widgets.VideoFeedState","href":"widgets/VideoFeedState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The logic for updating a VideoFeed.","enclosedBy":{"name":"video_feed","kind":9,"href":"widgets/widgets-library.html"}},{"name":"VideoFeedState","qualifiedName":"widgets.VideoFeedState.VideoFeedState","href":"widgets/VideoFeedState/VideoFeedState.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"brightness","qualifiedName":"widgets.VideoFeedState.brightness","href":"widgets/VideoFeedState/brightness.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Value for brightness","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"build","qualifiedName":"widgets.VideoFeedState.build","href":"widgets/VideoFeedState/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"buildChild","qualifiedName":"widgets.VideoFeedState.buildChild","href":"widgets/VideoFeedState/buildChild.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Builds the inside of the video feed. Either a video frame or an error message.","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"data","qualifiedName":"widgets.VideoFeedState.data","href":"widgets/VideoFeedState/data.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The data being streamed.","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"dispose","qualifiedName":"widgets.VideoFeedState.dispose","href":"widgets/VideoFeedState/dispose.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Called when this object is removed from the tree permanently.","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"errorMessage","qualifiedName":"widgets.VideoFeedState.errorMessage","href":"widgets/VideoFeedState/errorMessage.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Displays an error message describing why image == null.","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"focus","qualifiedName":"widgets.VideoFeedState.focus","href":"widgets/VideoFeedState/focus.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Value for focus","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"imageLoader","qualifiedName":"widgets.VideoFeedState.imageLoader","href":"widgets/VideoFeedState/imageLoader.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A helper class responsible for managing and loading an image.","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"initState","qualifiedName":"widgets.VideoFeedState.initState","href":"widgets/VideoFeedState/initState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Called when this object is inserted into the tree.","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"isOpened","qualifiedName":"widgets.VideoFeedState.isOpened","href":"widgets/VideoFeedState/isOpened.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Checks if the current slider for video camera is open","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"isReady","qualifiedName":"widgets.VideoFeedState.isReady","href":"widgets/VideoFeedState/isReady.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether there is a frame ready to display.","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"pan","qualifiedName":"widgets.VideoFeedState.pan","href":"widgets/VideoFeedState/pan.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Value for pan","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"toggleSettings","qualifiedName":"widgets.VideoFeedState.toggleSettings","href":"widgets/VideoFeedState/toggleSettings.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Opens or closes the settings panel.","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"updateImage","qualifiedName":"widgets.VideoFeedState.updateImage","href":"widgets/VideoFeedState/updateImage.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Grabs the new frame, renders it, and replaces the old frame.","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"zoom","qualifiedName":"widgets.VideoFeedState.zoom","href":"widgets/VideoFeedState/zoom.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Value for zoom","enclosedBy":{"name":"VideoFeedState","kind":3,"href":"widgets/VideoFeedState-class.html"}},{"name":"VideoSettingsState","qualifiedName":"widgets.VideoSettingsState","href":"widgets/VideoSettingsState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A state for VideoSettingsWidget.","enclosedBy":{"name":"video_feed","kind":9,"href":"widgets/widgets-library.html"}},{"name":"VideoSettingsState","qualifiedName":"widgets.VideoSettingsState.VideoSettingsState","href":"widgets/VideoSettingsState/VideoSettingsState.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"VideoSettingsState","kind":3,"href":"widgets/VideoSettingsState-class.html"}},{"name":"autofocus","qualifiedName":"widgets.VideoSettingsState.autofocus","href":"widgets/VideoSettingsState/autofocus.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the camera should autofocus.","enclosedBy":{"name":"VideoSettingsState","kind":3,"href":"widgets/VideoSettingsState-class.html"}},{"name":"build","qualifiedName":"widgets.VideoSettingsState.build","href":"widgets/VideoSettingsState/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"VideoSettingsState","kind":3,"href":"widgets/VideoSettingsState-class.html"}},{"name":"focus","qualifiedName":"widgets.VideoSettingsState.focus","href":"widgets/VideoSettingsState/focus.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The focus level, if autofocus is disabled.","enclosedBy":{"name":"VideoSettingsState","kind":3,"href":"widgets/VideoSettingsState-class.html"}},{"name":"pan","qualifiedName":"widgets.VideoSettingsState.pan","href":"widgets/VideoSettingsState/pan.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The pan level, when zoomed in.","enclosedBy":{"name":"VideoSettingsState","kind":3,"href":"widgets/VideoSettingsState-class.html"}},{"name":"tilt","qualifiedName":"widgets.VideoSettingsState.tilt","href":"widgets/VideoSettingsState/tilt.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The tilt level, when zoomed in.","enclosedBy":{"name":"VideoSettingsState","kind":3,"href":"widgets/VideoSettingsState-class.html"}},{"name":"zoom","qualifiedName":"widgets.VideoSettingsState.zoom","href":"widgets/VideoSettingsState/zoom.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The zoom level. Camera-specific.","enclosedBy":{"name":"VideoSettingsState","kind":3,"href":"widgets/VideoSettingsState-class.html"}},{"name":"VideoSettingsWidget","qualifiedName":"widgets.VideoSettingsWidget","href":"widgets/VideoSettingsWidget-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to edit camera settings.","enclosedBy":{"name":"video_feed","kind":9,"href":"widgets/widgets-library.html"}},{"name":"VideoSettingsWidget","qualifiedName":"widgets.VideoSettingsWidget.VideoSettingsWidget","href":"widgets/VideoSettingsWidget/VideoSettingsWidget.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Creates the video settings widget.","enclosedBy":{"name":"VideoSettingsWidget","kind":3,"href":"widgets/VideoSettingsWidget-class.html"}},{"name":"createState","qualifiedName":"widgets.VideoSettingsWidget.createState","href":"widgets/VideoSettingsWidget/createState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates the mutable state for this widget at a given location in the tree.","enclosedBy":{"name":"VideoSettingsWidget","kind":3,"href":"widgets/VideoSettingsWidget-class.html"}},{"name":"details","qualifiedName":"widgets.VideoSettingsWidget.details","href":"widgets/VideoSettingsWidget/details.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The details being sent to the camera.","enclosedBy":{"name":"VideoSettingsWidget","kind":3,"href":"widgets/VideoSettingsWidget-class.html"}},{"name":"id","qualifiedName":"widgets.VideoSettingsWidget.id","href":"widgets/VideoSettingsWidget/id.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The ID of the camera being edited.","enclosedBy":{"name":"VideoSettingsWidget","kind":3,"href":"widgets/VideoSettingsWidget-class.html"}},{"name":"ViewsCounter","qualifiedName":"widgets.ViewsCounter","href":"widgets/ViewsCounter-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A dropdown to select more or less views.","enclosedBy":{"name":"sidebar","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ViewsCounter","qualifiedName":"widgets.ViewsCounter.ViewsCounter","href":"widgets/ViewsCounter/ViewsCounter.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Provides a const constructor for this widget.","enclosedBy":{"name":"ViewsCounter","kind":3,"href":"widgets/ViewsCounter-class.html"}},{"name":"build","qualifiedName":"widgets.ViewsCounter.build","href":"widgets/ViewsCounter/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"ViewsCounter","kind":3,"href":"widgets/ViewsCounter-class.html"}},{"name":"ViewsList","qualifiedName":"widgets.ViewsList","href":"widgets/ViewsList-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A list of views for the user to drag into their desired view area","enclosedBy":{"name":"views_list","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ViewsList","qualifiedName":"widgets.ViewsList.ViewsList","href":"widgets/ViewsList/ViewsList.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor","enclosedBy":{"name":"ViewsList","kind":3,"href":"widgets/ViewsList-class.html"}},{"name":"build","qualifiedName":"widgets.ViewsList.build","href":"widgets/ViewsList/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"ViewsList","kind":3,"href":"widgets/ViewsList-class.html"}},{"name":"draggingIconSize","qualifiedName":"widgets.ViewsList.draggingIconSize","href":"widgets/ViewsList/draggingIconSize-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The size of the icon to appear under the mouse pointer when dragging","enclosedBy":{"name":"ViewsList","kind":3,"href":"widgets/ViewsList-class.html"}},{"name":"ViewsSelector","qualifiedName":"widgets.ViewsSelector","href":"widgets/ViewsSelector-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A button for the user to select a new view.","enclosedBy":{"name":"views_list","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ViewsSelector","qualifiedName":"widgets.ViewsSelector.ViewsSelector","href":"widgets/ViewsSelector/ViewsSelector.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ViewsSelector","kind":3,"href":"widgets/ViewsSelector-class.html"}},{"name":"build","qualifiedName":"widgets.ViewsSelector.build","href":"widgets/ViewsSelector/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Describes the part of the user interface represented by this widget.","enclosedBy":{"name":"ViewsSelector","kind":3,"href":"widgets/ViewsSelector-class.html"}},{"name":"index","qualifiedName":"widgets.ViewsSelector.index","href":"widgets/ViewsSelector/index.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The index of this view.","enclosedBy":{"name":"ViewsSelector","kind":3,"href":"widgets/ViewsSelector-class.html"}},{"name":"ViewsWidget","qualifiedName":"widgets.ViewsWidget","href":"widgets/ViewsWidget-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to render all the views the user selected.","enclosedBy":{"name":"views","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ViewsWidget","qualifiedName":"widgets.ViewsWidget.ViewsWidget","href":"widgets/ViewsWidget/ViewsWidget.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ViewsWidget","kind":3,"href":"widgets/ViewsWidget-class.html"}},{"name":"build","qualifiedName":"widgets.ViewsWidget.build","href":"widgets/ViewsWidget/build.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Builds the UI according to the state in model.","enclosedBy":{"name":"ViewsWidget","kind":3,"href":"widgets/ViewsWidget-class.html"}}] diff --git a/docs/main/main-library-sidebar.html b/docs/main/main-library-sidebar.html new file mode 100644 index 0000000000..d0826eeadd --- /dev/null +++ b/docs/main/main-library-sidebar.html @@ -0,0 +1,15 @@ +
    + + + + +
  1. Constants
  2. +
  3. networkErrors
  4. + + +
  5. Functions
  6. +
  7. main
  8. + + + +
diff --git a/docs/main/main-library.html b/docs/main/main-library.html new file mode 100644 index 0000000000..99a9b15dc6 --- /dev/null +++ b/docs/main/main-library.html @@ -0,0 +1,165 @@ + + + + + + + + main library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
main
+ +
+ +
+
+
+
+ +
+ + + +

+ main + library + + +

+
+ + +
+

The entrypoint of the app.

+

These library declarations are not needed, the default name for a Dart library is simply the +name of the file. However, DartDoc comments placed above a library declaration will show up on +the libraries page in the generated documentation.

+

This library's main purpose is to execute the app defined in the app library and is designed to +be as simple as possible.

+
+ + + + + + + +
+

Constants

+
+
+ networkErrors + → const Set<int> + + +
+
+ Network errors that can be fixed by a simple reset. + + +
+ +
+
+ + +
+

Functions

+
+
+ main() + → void + + + +
+
+ + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/main/main.html b/docs/main/main.html new file mode 100644 index 0000000000..904e9162ff --- /dev/null +++ b/docs/main/main.html @@ -0,0 +1,124 @@ + + + + + + + + main function - main library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
main
+ +
+ +
+
+
+
+
+ +

main function + +

+ +
+ +void +main() + + + +
+ + + + +
+

Implementation

+
void main() async {
+	runZonedGuarded(
+		() => runApp(RoverControlDashboard()),
+		(error, stack) async {
+			if (error is SocketException && networkErrors.contains(error.osError!.errorCode)) {
+				models.home.setMessage(severity: Severity.critical, text: "Network error, restart by clicking the network icon");
+			} else {
+        models.home.setMessage(severity: Severity.critical, text: "Dashboard error. See the logs");
+        await services.files.logError(error, stack);
+				Error.throwWithStackTrace(error, stack);
+			}
+		}
+	);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/main/networkErrors-constant.html b/docs/main/networkErrors-constant.html new file mode 100644 index 0000000000..011a310077 --- /dev/null +++ b/docs/main/networkErrors-constant.html @@ -0,0 +1,113 @@ + + + + + + + + networkErrors constant - main library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
networkErrors
+ +
+ +
+
+
+
+
+ +

networkErrors top-level constant + +

+ +
+ + Set<int> + const networkErrors + + +
+ +
+

Network errors that can be fixed by a simple reset.

+
+ + +
+

Implementation

+
const networkErrors = {1234, 1231};
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AddressBuilder-class-sidebar.html b/docs/models/AddressBuilder-class-sidebar.html new file mode 100644 index 0000000000..6cd93c9874 --- /dev/null +++ b/docs/models/AddressBuilder-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. AddressBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. controller
  8. +
  9. error
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. isValid
  16. +
  17. otherBuilders
  18. +
  19. runtimeType
  20. +
  21. value
  22. + +
  23. Methods
  24. +
  25. addListener
  26. +
  27. dispose
  28. +
  29. noSuchMethod
  30. +
  31. notifyListeners
  32. +
  33. removeListener
  34. +
  35. toString
  36. +
  37. update
  38. + +
  39. Operators
  40. +
  41. operator ==
  42. + + + + +
  43. Static properties
  44. +
  45. regex
  46. + + +
diff --git a/docs/models/AddressBuilder-class.html b/docs/models/AddressBuilder-class.html new file mode 100644 index 0000000000..e37121d995 --- /dev/null +++ b/docs/models/AddressBuilder-class.html @@ -0,0 +1,383 @@ + + + + + + + + AddressBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AddressBuilder
+ +
+ +
+
+
+
+
+ +

AddressBuilder class + +

+ + +
+

A specialized TextBuilder to handle IP addresses.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ AddressBuilder(InternetAddress value) +
+
+ Creates an IP address builder with the given initial value. +
+
+
+ +
+

Properties

+
+
+ controller + TextEditingController + + +
+
+ The controller for the TextField. +
finalinherited
+ +
+ +
+ error + ↔ String? + + +
+
+ The error to display in the UI, if any. +
getter/setter pairinherited
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setterinherited
+ +
+ +
+ otherBuilders + → List<ChangeNotifier> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + ↔ InternetAddress + + +
+
+ The value being updated in the UI. +
getter/setter pairinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(String input) + → void + + + +
+
+ Updates the value based on the user's input. +
override
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ +
+

Static Properties

+
+
+ regex + → RegExp + + +
+
+ A regular expression representing a valid IP address. +
final
+ +
+ +
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AddressBuilder/AddressBuilder.html b/docs/models/AddressBuilder/AddressBuilder.html new file mode 100644 index 0000000000..5282e67d38 --- /dev/null +++ b/docs/models/AddressBuilder/AddressBuilder.html @@ -0,0 +1,112 @@ + + + + + + + + AddressBuilder constructor - AddressBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AddressBuilder
+ +
+ +
+
+
+
+
+ +

AddressBuilder constructor +

+ +
+ + AddressBuilder(
  1. InternetAddress value
  2. +
) +
+ +
+

Creates an IP address builder with the given initial value.

+
+ + + +
+

Implementation

+
AddressBuilder(super.value) : super(text: value.address);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AddressBuilder/regex.html b/docs/models/AddressBuilder/regex.html new file mode 100644 index 0000000000..a3fce7e66e --- /dev/null +++ b/docs/models/AddressBuilder/regex.html @@ -0,0 +1,115 @@ + + + + + + + + regex property - AddressBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
regex
+ +
+ +
+
+
+
+
+ +

regex property +

+ + +
+ + RegExp + regex +
final
+ +
+ +
+

A regular expression representing a valid IP address.

+
+ + +
+

Implementation

+
static final regex = RegExp(r"\d+\.\d+\.\d+\.\d+");
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AddressBuilder/update.html b/docs/models/AddressBuilder/update.html new file mode 100644 index 0000000000..effe451f5b --- /dev/null +++ b/docs/models/AddressBuilder/update.html @@ -0,0 +1,136 @@ + + + + + + + + update method - AddressBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
update
+ +
+ +
+
+
+
+
+ +

update method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +update(
  1. String input
  2. +
) + +
override
+ +
+ +
+

Updates the value based on the user's input.

+

Perform validation here and set error accordingly. You do not have to set value in this +function -- for example, if the user entered an invalid input.

+
+ + + +
+

Implementation

+
@override
+void update(String input) {
+	if (input.isEmpty) {
+		error = "Must not be blank";
+	} else if (regex.stringMatch(input) != input || input.endsWith(".")) {
+		error = "Not a valid IP";
+	} else if (input.split(".").any((part) => int.parse(part) > 255)) {
+		error = "IP out of range";
+	} else {
+		error = null;
+		value = InternetAddress(input);
+	}
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls-class-sidebar.html b/docs/models/ArmControls-class-sidebar.html new file mode 100644 index 0000000000..865a6dd821 --- /dev/null +++ b/docs/models/ArmControls-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. ArmControls
  4. + + + +
  5. + Properties +
  6. +
  7. buttonMapping
  8. +
  9. hashCode
  10. +
  11. ik
  12. +
  13. isAPressed
  14. +
  15. isBPressed
  16. +
  17. isXPressed
  18. +
  19. isYPressed
  20. +
  21. mode
  22. +
  23. onDispose
  24. +
  25. runtimeType
  26. +
  27. settings
  28. + +
  29. Methods
  30. +
  31. noSuchMethod
  32. +
  33. parseInputs
  34. +
  35. toString
  36. +
  37. updateState
  38. + +
  39. Operators
  40. +
  41. operator ==
  42. + + + + + + +
diff --git a/docs/models/ArmControls-class.html b/docs/models/ArmControls-class.html new file mode 100644 index 0000000000..35baef5416 --- /dev/null +++ b/docs/models/ArmControls-class.html @@ -0,0 +1,359 @@ + + + + + + + + ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmControls
+ +
+ +
+
+
+
+
+ +

ArmControls class + +

+ + +
+

A RoverControls that controls the arm.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ArmControls() +
+
+ +
+
+
+ +
+

Properties

+
+
+ buttonMapping + → Map<String, String> + + +
+
+ A human-readable explanation of what the controls are. +
no setteroverride
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ ik + Coordinates + + +
+
+ The coordinates of the gripper. +
getter/setter pair
+ +
+ +
+ isAPressed + ↔ bool + + +
+
+ Tracks whether the A button is pressed, so the action is only done once. +
getter/setter pair
+ +
+ +
+ isBPressed + ↔ bool + + +
+
+ Tracks whether the B button is pressed, so the action is only done once. +
getter/setter pair
+ +
+ +
+ isXPressed + ↔ bool + + +
+
+ Tracks whether the X button is pressed, so the action is only done once. +
getter/setter pair
+ +
+ +
+ isYPressed + ↔ bool + + +
+
+ Tracks whether the Y button is pressed, so the action is only done once. +
getter/setter pair
+ +
+ +
+ mode + OperatingMode + + +
+
+ The OperatingMode for these controls. +
no setteroverride
+ +
+ +
+ onDispose + → List<Message> + + +
+
+ A list of commands that disables the subsystem. +
no setteroverride
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ settings + ArmSettings + + +
+
+ The user's arm settings. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ parseInputs(GamepadState state) + → List<Message> + + + +
+
+ Return a list of commands based on the current state of the gamepad. +
override
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateState(GamepadState state) + → void + + + +
+
+ Any logic to run before checking parseInputs. +
override
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/ArmControls.html b/docs/models/ArmControls/ArmControls.html new file mode 100644 index 0000000000..05af9d16b1 --- /dev/null +++ b/docs/models/ArmControls/ArmControls.html @@ -0,0 +1,104 @@ + + + + + + + + ArmControls constructor - ArmControls - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmControls
+ +
+ +
+
+
+
+
+ +

ArmControls constructor +

+ +
+ + ArmControls() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/buttonMapping.html b/docs/models/ArmControls/buttonMapping.html new file mode 100644 index 0000000000..578187dae0 --- /dev/null +++ b/docs/models/ArmControls/buttonMapping.html @@ -0,0 +1,149 @@ + + + + + + + + buttonMapping property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonMapping
+ +
+ +
+
+
+
+
+ +

buttonMapping property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + get + buttonMapping +
override
+ +
+ +
+

A human-readable explanation of what the controls are.

+

Keys are the actions, values are the buttons that trigger them.

+
+ + +
+

Implementation

+
@override
+Map<String, String> get buttonMapping => {
+    // Manual control
+    "Swivel": "Right joystick (horizontal)",
+    "Shoulder": "Right joystick (vertical)",
+    "Elbow": "Left stick (vertical)",
+    "Pseudo-IK": "Bumpers",
+
+	// Gripper
+	"Lift gripper": "D-pad up/down",
+	"Rotate gripper": "D-pad left/right",
+	"Pinch": "Triggers",
+
+	// Custom actions
+	"Fully close": "A",
+	"Fully open": "B",
+	"Press keyboard": "X",
+	"Spin gripper": "Y",
+
+	// General
+	"Stop": "Select",
+	"Calibrate": "Start",
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/ik.html b/docs/models/ArmControls/ik.html new file mode 100644 index 0000000000..78bd2d2ff1 --- /dev/null +++ b/docs/models/ArmControls/ik.html @@ -0,0 +1,116 @@ + + + + + + + + ik property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ik
+ +
+ +
+
+
+
+
+ +

ik property +

+ + +
+ + Coordinates + ik +
getter/setter pair
+ +
+ +
+

The coordinates of the gripper.

+

The arm uses IK to move all the joints to stay at these coordinates.

+
+ + +
+

Implementation

+
Coordinates ik = Coordinates(x: 0.5, y: 0.5, z: 0.5);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/isAPressed.html b/docs/models/ArmControls/isAPressed.html new file mode 100644 index 0000000000..5cd7fb68d8 --- /dev/null +++ b/docs/models/ArmControls/isAPressed.html @@ -0,0 +1,115 @@ + + + + + + + + isAPressed property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isAPressed
+ +
+ +
+
+
+
+
+ +

isAPressed property +

+ + +
+ + bool + isAPressed +
getter/setter pair
+ +
+ +
+

Tracks whether the A button is pressed, so the action is only done once.

+
+ + +
+

Implementation

+
bool isAPressed = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/isBPressed.html b/docs/models/ArmControls/isBPressed.html new file mode 100644 index 0000000000..b79ceae5f1 --- /dev/null +++ b/docs/models/ArmControls/isBPressed.html @@ -0,0 +1,115 @@ + + + + + + + + isBPressed property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isBPressed
+ +
+ +
+
+
+
+
+ +

isBPressed property +

+ + +
+ + bool + isBPressed +
getter/setter pair
+ +
+ +
+

Tracks whether the B button is pressed, so the action is only done once.

+
+ + +
+

Implementation

+
bool isBPressed = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/isXPressed.html b/docs/models/ArmControls/isXPressed.html new file mode 100644 index 0000000000..283961c1ae --- /dev/null +++ b/docs/models/ArmControls/isXPressed.html @@ -0,0 +1,115 @@ + + + + + + + + isXPressed property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isXPressed
+ +
+ +
+
+
+
+
+ +

isXPressed property +

+ + +
+ + bool + isXPressed +
getter/setter pair
+ +
+ +
+

Tracks whether the X button is pressed, so the action is only done once.

+
+ + +
+

Implementation

+
bool isXPressed = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/isYPressed.html b/docs/models/ArmControls/isYPressed.html new file mode 100644 index 0000000000..2eb6714760 --- /dev/null +++ b/docs/models/ArmControls/isYPressed.html @@ -0,0 +1,115 @@ + + + + + + + + isYPressed property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isYPressed
+ +
+ +
+
+
+
+
+ +

isYPressed property +

+ + +
+ + bool + isYPressed +
getter/setter pair
+ +
+ +
+

Tracks whether the Y button is pressed, so the action is only done once.

+
+ + +
+

Implementation

+
bool isYPressed = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/mode.html b/docs/models/ArmControls/mode.html new file mode 100644 index 0000000000..95e5aa65bc --- /dev/null +++ b/docs/models/ArmControls/mode.html @@ -0,0 +1,127 @@ + + + + + + + + mode property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
mode
+ +
+ +
+
+
+
+
+ +

mode property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + get + mode +
override
+ +
+ +
+

The OperatingMode for these controls.

+
+ + +
+

Implementation

+
@override
+OperatingMode get mode => OperatingMode.arm;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/onDispose.html b/docs/models/ArmControls/onDispose.html new file mode 100644 index 0000000000..478114a0ea --- /dev/null +++ b/docs/models/ArmControls/onDispose.html @@ -0,0 +1,128 @@ + + + + + + + + onDispose property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onDispose
+ +
+ +
+
+
+
+
+ +

onDispose property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + get + onDispose +
override
+ +
+ +
+

A list of commands that disables the subsystem.

+

For example, after driving this should set the speed to 0.

+
+ + +
+

Implementation

+
@override
+List<Message> get onDispose => [ ArmCommand(stop: true), GripperCommand(stop: true) ];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/parseInputs.html b/docs/models/ArmControls/parseInputs.html new file mode 100644 index 0000000000..1093e57599 --- /dev/null +++ b/docs/models/ArmControls/parseInputs.html @@ -0,0 +1,149 @@ + + + + + + + + parseInputs method - ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseInputs
+ +
+ +
+
+
+
+
+ +

parseInputs method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+List<Message> +parseInputs(
  1. GamepadState state
  2. +
) + +
override
+ +
+ +
+

Return a list of commands based on the current state of the gamepad.

+
+ + + +
+

Implementation

+
@override
+List<Message> parseInputs(GamepadState state) => [
+    // Manual control
+    if (state.normalRightX.abs() > state.normalRightY.abs() && state.normalRightX != 0)
+      ArmCommand(swivel: MotorCommand(moveRadians: state.normalRightX * settings.swivel)),
+    if (state.normalRightY.abs() > state.normalRightX.abs() && state.normalRightY != 0)
+      ArmCommand(shoulder: MotorCommand(moveRadians: state.normalRightY * settings.shoulder)),
+    if (state.normalLeftY != 0) ArmCommand(elbow: MotorCommand(moveRadians: state.normalLeftY * settings.elbow)),
+    // The bumpers should be pseudo-IK: Move the shoulder and elbow in sync.
+    if (state.normalShoulder != 0) ArmCommand(
+      shoulder: MotorCommand(moveRadians: state.normalShoulder * settings.shoulder * -1),
+      elbow: MotorCommand(moveRadians: state.normalShoulder * settings.elbow),
+    ),
+
+	// Gripper
+	if (state.normalDpadY != 0) GripperCommand(lift: MotorCommand(moveRadians: state.normalDpadY * settings.lift)),
+	if (state.normalDpadX != 0) GripperCommand(rotate: MotorCommand(moveRadians: state.normalDpadX * settings.rotate)),
+	if (state.normalTrigger != 0) GripperCommand(pinch: MotorCommand(moveRadians: state.normalTrigger * settings.pinch)),
+
+	// Custom actions
+	if (state.buttonA && !isAPressed) () { isAPressed = true; return GripperCommand(open: true); }(),
+	if (state.buttonB && !isBPressed) () { isBPressed = true; return GripperCommand(close: true); }(),
+	if (state.buttonX && !isXPressed) () { isXPressed = true; return ArmCommand(jab: true); }(),
+	if (state.buttonY && !isYPressed) () { isYPressed = true; return GripperCommand(spin: true); }(),
+
+	// General commands
+	if (state.buttonBack) ...[ArmCommand(stop: true), GripperCommand(stop: true)],
+	if (state.buttonStart) ...[ArmCommand(calibrate: true), GripperCommand(calibrate: true)],
+];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/settings.html b/docs/models/ArmControls/settings.html new file mode 100644 index 0000000000..24657cafa6 --- /dev/null +++ b/docs/models/ArmControls/settings.html @@ -0,0 +1,121 @@ + + + + + + + + settings property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
settings
+ +
+ +
+
+
+
+
+ +

settings property +

+ + + + + +
+
+ + ArmSettings + get + settings + + +
+ +
+

The user's arm settings.

+
+ + +
+

Implementation

+
ArmSettings get settings => models.settings.arm;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmControls/updateState.html b/docs/models/ArmControls/updateState.html new file mode 100644 index 0000000000..f4e6baf238 --- /dev/null +++ b/docs/models/ArmControls/updateState.html @@ -0,0 +1,127 @@ + + + + + + + + updateState method - ArmControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateState
+ +
+ +
+
+
+
+
+ +

updateState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +updateState(
  1. GamepadState state
  2. +
) + +
override
+ +
+ +
+

Any logic to run before checking parseInputs.

+
+ + + +
+

Implementation

+
@override
+void updateState(GamepadState state) {
+	if (!state.buttonA) isAPressed = false;
+	if (!state.buttonB) isBPressed = false;
+	if (!state.buttonX) isXPressed = false;
+	if (!state.buttonY) isYPressed = false;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder-class-sidebar.html b/docs/models/ArmSettingsBuilder-class-sidebar.html new file mode 100644 index 0000000000..f7fb60a355 --- /dev/null +++ b/docs/models/ArmSettingsBuilder-class-sidebar.html @@ -0,0 +1,43 @@ +
    + +
  1. Constructors
  2. +
  3. ArmSettingsBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. elbow
  8. +
  9. hashCode
  10. +
  11. hasListeners
  12. +
  13. ik
  14. +
  15. isValid
  16. +
  17. lift
  18. +
  19. otherBuilders
  20. +
  21. pinch
  22. +
  23. rotate
  24. +
  25. runtimeType
  26. +
  27. shoulder
  28. +
  29. swivel
  30. +
  31. useIK
  32. +
  33. value
  34. + +
  35. Methods
  36. +
  37. addListener
  38. +
  39. dispose
  40. +
  41. noSuchMethod
  42. +
  43. notifyListeners
  44. +
  45. removeListener
  46. +
  47. toString
  48. +
  49. updateIK
  50. + +
  51. Operators
  52. +
  53. operator ==
  54. + + + + + + +
diff --git a/docs/models/ArmSettingsBuilder-class.html b/docs/models/ArmSettingsBuilder-class.html new file mode 100644 index 0000000000..fdc6c1c7db --- /dev/null +++ b/docs/models/ArmSettingsBuilder-class.html @@ -0,0 +1,437 @@ + + + + + + + + ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmSettingsBuilder
+ +
+ +
+
+
+
+
+ +

ArmSettingsBuilder class + +

+ + +
+

A ValueBuilder representing an ArmSettings.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ArmSettingsBuilder(ArmSettings initial) +
+
+ Modifies the given ArmSettings. +
+
+
+ +
+

Properties

+
+
+ elbow + NumberBuilder<double> + + +
+
+ The view model for ArmSettings.elbow. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ ik + NumberBuilder<double> + + +
+
+ The view model for ArmSettings.ikIncrement. +
final
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ lift + NumberBuilder<double> + + +
+
+ The view model for ArmSettings.lift. +
final
+ +
+ +
+ otherBuilders + → List<ChangeNotifier> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ pinch + NumberBuilder<double> + + +
+
+ The view model for ArmSettings.pinch. +
final
+ +
+ +
+ rotate + NumberBuilder<double> + + +
+
+ The view model for ArmSettings.rotate. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shoulder + NumberBuilder<double> + + +
+
+ The view model for ArmSettings.shoulder. +
final
+ +
+ +
+ swivel + NumberBuilder<double> + + +
+
+ The view model for ArmSettings.swivel. +
final
+ +
+ +
+ useIK + ↔ bool + + +
+
+ Whether to use manual control or IK. +
getter/setter pair
+ +
+ +
+ value + ArmSettings + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateIK(bool input) + → void + + + +
+
+ Updates the useIK variable. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/ArmSettingsBuilder.html b/docs/models/ArmSettingsBuilder/ArmSettingsBuilder.html new file mode 100644 index 0000000000..36abb25674 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/ArmSettingsBuilder.html @@ -0,0 +1,129 @@ + + + + + + + + ArmSettingsBuilder constructor - ArmSettingsBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmSettingsBuilder
+ +
+ +
+
+
+
+
+ +

ArmSettingsBuilder constructor +

+ +
+ + ArmSettingsBuilder(
  1. ArmSettings initial
  2. +
) +
+ +
+

Modifies the given ArmSettings.

+
+ + + +
+

Implementation

+
ArmSettingsBuilder(ArmSettings initial) :
+	swivel = NumberBuilder(initial.swivel),
+	shoulder = NumberBuilder(initial.shoulder),
+	elbow = NumberBuilder(initial.elbow),
+	lift = NumberBuilder(initial.lift),
+	rotate = NumberBuilder(initial.rotate),
+	pinch = NumberBuilder(initial.pinch),
+	ik = NumberBuilder(initial.ikIncrement),
+	useIK = initial.useIK
+{
+	swivel.addListener(notifyListeners);
+	shoulder.addListener(notifyListeners);
+	elbow.addListener(notifyListeners);
+	lift.addListener(notifyListeners);
+	rotate.addListener(notifyListeners);
+	pinch.addListener(notifyListeners);
+	ik.addListener(notifyListeners);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/elbow.html b/docs/models/ArmSettingsBuilder/elbow.html new file mode 100644 index 0000000000..6d7142ed21 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/elbow.html @@ -0,0 +1,115 @@ + + + + + + + + elbow property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
elbow
+ +
+ +
+
+
+
+
+ +

elbow property +

+ + +
+ + NumberBuilder<double> + elbow +
final
+ +
+ +
+

The view model for ArmSettings.elbow.

+
+ + +
+

Implementation

+
final NumberBuilder<double> elbow;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/ik.html b/docs/models/ArmSettingsBuilder/ik.html new file mode 100644 index 0000000000..a1dc8d254b --- /dev/null +++ b/docs/models/ArmSettingsBuilder/ik.html @@ -0,0 +1,115 @@ + + + + + + + + ik property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ik
+ +
+ +
+
+
+
+
+ +

ik property +

+ + +
+ + NumberBuilder<double> + ik +
final
+ +
+ +
+

The view model for ArmSettings.ikIncrement.

+
+ + +
+

Implementation

+
final NumberBuilder<double> ik;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/isValid.html b/docs/models/ArmSettingsBuilder/isValid.html new file mode 100644 index 0000000000..589b148028 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/isValid.html @@ -0,0 +1,134 @@ + + + + + + + + isValid property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => swivel.isValid
+	&& shoulder.isValid
+	&& elbow.isValid
+	&& lift.isValid
+	&& rotate.isValid
+	&& pinch.isValid
+	&& ik.isValid;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/lift.html b/docs/models/ArmSettingsBuilder/lift.html new file mode 100644 index 0000000000..d5e81f5aa8 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/lift.html @@ -0,0 +1,115 @@ + + + + + + + + lift property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
lift
+ +
+ +
+
+
+
+
+ +

lift property +

+ + +
+ + NumberBuilder<double> + lift +
final
+ +
+ +
+

The view model for ArmSettings.lift.

+
+ + +
+

Implementation

+
final NumberBuilder<double> lift;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/pinch.html b/docs/models/ArmSettingsBuilder/pinch.html new file mode 100644 index 0000000000..07eca01cea --- /dev/null +++ b/docs/models/ArmSettingsBuilder/pinch.html @@ -0,0 +1,115 @@ + + + + + + + + pinch property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pinch
+ +
+ +
+
+
+
+
+ +

pinch property +

+ + +
+ + NumberBuilder<double> + pinch +
final
+ +
+ +
+

The view model for ArmSettings.pinch.

+
+ + +
+

Implementation

+
final NumberBuilder<double> pinch;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/rotate.html b/docs/models/ArmSettingsBuilder/rotate.html new file mode 100644 index 0000000000..5a49a786c9 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/rotate.html @@ -0,0 +1,115 @@ + + + + + + + + rotate property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rotate
+ +
+ +
+
+
+
+
+ +

rotate property +

+ + +
+ + NumberBuilder<double> + rotate +
final
+ +
+ +
+

The view model for ArmSettings.rotate.

+
+ + +
+

Implementation

+
final NumberBuilder<double> rotate;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/shoulder.html b/docs/models/ArmSettingsBuilder/shoulder.html new file mode 100644 index 0000000000..9f278a8385 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/shoulder.html @@ -0,0 +1,115 @@ + + + + + + + + shoulder property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
shoulder
+ +
+ +
+
+
+
+
+ +

shoulder property +

+ + +
+ + NumberBuilder<double> + shoulder +
final
+ +
+ +
+

The view model for ArmSettings.shoulder.

+
+ + +
+

Implementation

+
final NumberBuilder<double> shoulder;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/swivel.html b/docs/models/ArmSettingsBuilder/swivel.html new file mode 100644 index 0000000000..065eacaefd --- /dev/null +++ b/docs/models/ArmSettingsBuilder/swivel.html @@ -0,0 +1,115 @@ + + + + + + + + swivel property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
swivel
+ +
+ +
+
+
+
+
+ +

swivel property +

+ + +
+ + NumberBuilder<double> + swivel +
final
+ +
+ +
+

The view model for ArmSettings.swivel.

+
+ + +
+

Implementation

+
final NumberBuilder<double> swivel;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/updateIK.html b/docs/models/ArmSettingsBuilder/updateIK.html new file mode 100644 index 0000000000..4863deae3f --- /dev/null +++ b/docs/models/ArmSettingsBuilder/updateIK.html @@ -0,0 +1,119 @@ + + + + + + + + updateIK method - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateIK
+ +
+ +
+
+
+
+
+ +

updateIK method +

+ +
+ +void +updateIK(
  1. bool input
  2. +
) + + + +
+ +
+

Updates the useIK variable.

+
+ + + +
+

Implementation

+
void updateIK(bool input) {	// ignore: avoid_positional_boolean_parameters
+	useIK = input;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/useIK.html b/docs/models/ArmSettingsBuilder/useIK.html new file mode 100644 index 0000000000..6f974e0704 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/useIK.html @@ -0,0 +1,115 @@ + + + + + + + + useIK property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
useIK
+ +
+ +
+
+
+
+
+ +

useIK property +

+ + +
+ + bool + useIK +
getter/setter pair
+ +
+ +
+

Whether to use manual control or IK.

+
+ + +
+

Implementation

+
bool useIK;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ArmSettingsBuilder/value.html b/docs/models/ArmSettingsBuilder/value.html new file mode 100644 index 0000000000..c47393f7b9 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/value.html @@ -0,0 +1,136 @@ + + + + + + + + value property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ ArmSettings + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+ArmSettings get value => ArmSettings(
+	shoulder: shoulder.value,
+	elbow: elbow.value,
+	swivel: swivel.value,
+	pinch: pinch.value,
+	lift: lift.value,
+	rotate: rotate.value,
+	ikIncrement: ik.value,
+	useIK: useIK,
+);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCell-enum-sidebar.html b/docs/models/AutonomyCell-enum-sidebar.html new file mode 100644 index 0000000000..352799a9db --- /dev/null +++ b/docs/models/AutonomyCell-enum-sidebar.html @@ -0,0 +1,34 @@ +
    + + +
  1. Values
  2. +
  3. rover
  4. +
  5. destination
  6. +
  7. obstacle
  8. +
  9. path
  10. +
  11. empty
  12. +
  13. marker
  14. + + +
  15. + Properties +
  16. +
  17. hashCode
  18. +
  19. index
  20. +
  21. runtimeType
  22. + +
  23. Methods
  24. +
  25. noSuchMethod
  26. +
  27. toString
  28. + +
  29. Operators
  30. +
  31. operator ==
  32. + + + + + + +
  33. Constants
  34. +
  35. values
  36. +
diff --git a/docs/models/AutonomyCell.html b/docs/models/AutonomyCell.html new file mode 100644 index 0000000000..fca7ff1241 --- /dev/null +++ b/docs/models/AutonomyCell.html @@ -0,0 +1,303 @@ + + + + + + + + AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyCell
+ +
+ +
+
+
+
+
+ + +

+ AutonomyCell + enum + + +

+
+ + +
+

Represents the state of a cell on the autonomy map.

+
+ + + +
+

Values

+
+
+ rover + → const AutonomyCell + + +
+
+

This is where the rover currently is.

+ + +
+ +
+ destination + → const AutonomyCell + + +
+
+

This is where the rover is trying to go.

+ + +
+ +
+ obstacle + → const AutonomyCell + + +
+
+

This cell has an obstacle the rover needs to avoid.

+ + +
+ +
+ path + → const AutonomyCell + + +
+
+

This cell is along the rover's path to its destination.

+ + +
+ +
+ empty + → const AutonomyCell + + +
+
+

This cell is traversable but otherwise not of interest.

+ + +
+ +
+ marker + → const AutonomyCell + + +
+
+

THis cell was manually marked as a point of interest.

+ + +
+ +
+
+ + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ A numeric identifier for the enumerated value. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ values + → const List<AutonomyCell> + + +
+
+ A constant List of the values in this enum, in order of their declaration. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCell/hashCode.html b/docs/models/AutonomyCell/hashCode.html new file mode 100644 index 0000000000..30aae10d56 --- /dev/null +++ b/docs/models/AutonomyCell/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCell/index.html b/docs/models/AutonomyCell/index.html new file mode 100644 index 0000000000..d324b14971 --- /dev/null +++ b/docs/models/AutonomyCell/index.html @@ -0,0 +1,125 @@ + + + + + + + + index property - AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+

index property +

+ + + + + +
+
+ + int + get + index +
inherited
+ +
+ +
+

A numeric identifier for the enumerated value.

+

The values of a single enumeration are numbered +consecutively from zero to one less than the +number of values. +This is also the index of the value in the +enumerated type's static values list.

+
+ + +
+

Implementation

+
int get index;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCell/noSuchMethod.html b/docs/models/AutonomyCell/noSuchMethod.html new file mode 100644 index 0000000000..0b6c1be77d --- /dev/null +++ b/docs/models/AutonomyCell/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCell/operator_equals.html b/docs/models/AutonomyCell/operator_equals.html new file mode 100644 index 0000000000..eeedb33476 --- /dev/null +++ b/docs/models/AutonomyCell/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCell/runtimeType.html b/docs/models/AutonomyCell/runtimeType.html new file mode 100644 index 0000000000..9876b9c282 --- /dev/null +++ b/docs/models/AutonomyCell/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCell/toString.html b/docs/models/AutonomyCell/toString.html new file mode 100644 index 0000000000..2a63f7112a --- /dev/null +++ b/docs/models/AutonomyCell/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCell/values-constant.html b/docs/models/AutonomyCell/values-constant.html new file mode 100644 index 0000000000..f6b6bbc956 --- /dev/null +++ b/docs/models/AutonomyCell/values-constant.html @@ -0,0 +1,111 @@ + + + + + + + + values constant - AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<AutonomyCell> + const values + + +
+ +
+

A constant List of the values in this enum, in order of their declaration.

+
+ + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder-class-sidebar.html b/docs/models/AutonomyCommandBuilder-class-sidebar.html new file mode 100644 index 0000000000..c610cc9c0b --- /dev/null +++ b/docs/models/AutonomyCommandBuilder-class-sidebar.html @@ -0,0 +1,41 @@ +
    + +
  1. Constructors
  2. +
  3. AutonomyCommandBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. gps
  8. +
  9. hashCode
  10. +
  11. hasListeners
  12. +
  13. isLoading
  14. +
  15. isValid
  16. +
  17. otherBuilders
  18. +
  19. runtimeType
  20. +
  21. task
  22. +
  23. value
  24. + +
  25. Methods
  26. +
  27. abort
  28. +
  29. addListener
  30. +
  31. dispose
  32. +
  33. init
  34. +
  35. noSuchMethod
  36. +
  37. notifyListeners
  38. +
  39. removeListener
  40. +
  41. submit
  42. +
  43. toString
  44. +
  45. updateTask
  46. + +
  47. Operators
  48. +
  49. operator ==
  50. + + + + + + +
diff --git a/docs/models/AutonomyCommandBuilder-class.html b/docs/models/AutonomyCommandBuilder-class.html new file mode 100644 index 0000000000..bd129c7d46 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder-class.html @@ -0,0 +1,416 @@ + + + + + + + + AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyCommandBuilder
+ +
+ +
+
+
+
+
+ +

AutonomyCommandBuilder class + +

+ + +
+

A ValueBuilder to modify and send an AutonomyCommand.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ AutonomyCommandBuilder() +
+
+ A constructor to call init when created. +
+
+
+ +
+

Properties

+
+
+ gps + GpsBuilder + + +
+
+ The view model to edit the AutonomyCommand.destination. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isLoading + ↔ bool + + +
+
+ Whether the dashboard is awaiting a response from the rover. +
getter/setter pair
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ otherBuilders + → List<ChangeNotifier> + + +
+
+ Other builders to listen to. +
no setteroverride
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ task + AutonomyTask + + +
+
+ The type of task the rover should complete. +
getter/setter pair
+ +
+ +
+ value + AutonomyCommand + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ abort() + → Future<void> + + + +
+
+ Forces the rover to go back to the previous waypoint. + + +
+ +
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Listens for incoming confirmations from the rover that it received the command. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ submit() + → Future<void> + + + +
+
+ Sends this command to the rover using Sockets.autonomy. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateTask(AutonomyTask input) + → void + + + +
+
+ Updates the type of task being performed. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/AutonomyCommandBuilder.html b/docs/models/AutonomyCommandBuilder/AutonomyCommandBuilder.html new file mode 100644 index 0000000000..b0ab15f289 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/AutonomyCommandBuilder.html @@ -0,0 +1,111 @@ + + + + + + + + AutonomyCommandBuilder constructor - AutonomyCommandBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyCommandBuilder
+ +
+ +
+
+
+
+
+ +

AutonomyCommandBuilder constructor +

+ +
+ + AutonomyCommandBuilder() +
+ +
+

A constructor to call init when created.

+
+ + + +
+

Implementation

+
AutonomyCommandBuilder() { init(); }
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/abort.html b/docs/models/AutonomyCommandBuilder/abort.html new file mode 100644 index 0000000000..95302b0824 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/abort.html @@ -0,0 +1,133 @@ + + + + + + + + abort method - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
abort
+ +
+ +
+
+
+
+
+ +

abort method +

+ +
+ +Future<void> +abort() + + + +
+ +
+

Forces the rover to go back to the previous waypoint.

+
+ + + +
+

Implementation

+
Future<void> abort() async {
+	_handshake = null;
+	isLoading = true;
+	notifyListeners();
+	final message = AutonomyCommand(abort: true);
+	// x3 just in case
+	models.sockets.autonomy.sendMessage(message);
+	models.sockets.autonomy.sendMessage(message);
+	models.sockets.autonomy.sendMessage(message);
+	models.home.setMessage(severity: Severity.info, text: "Aborting...");
+	await Future<void>.delayed(const Duration(seconds: 1));
+	if (_handshake != null) {
+		models.home.setMessage(severity: Severity.info, text: "Command received");
+	} else {
+		models.home.setMessage(severity: Severity.critical, text: "Command not received");
+	}
+	isLoading = false;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/dispose.html b/docs/models/AutonomyCommandBuilder/dispose.html new file mode 100644 index 0000000000..a11efc0eb9 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/dispose.html @@ -0,0 +1,130 @@ + + + + + + + + dispose method - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+	models.messages.removeHandler(AutonomyCommand().messageName);
+	super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/gps.html b/docs/models/AutonomyCommandBuilder/gps.html new file mode 100644 index 0000000000..637fcb8353 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/gps.html @@ -0,0 +1,115 @@ + + + + + + + + gps property - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gps
+ +
+ +
+
+
+
+
+ +

gps property +

+ + +
+ + GpsBuilder + gps +
final
+ +
+ +
+

The view model to edit the AutonomyCommand.destination.

+
+ + +
+

Implementation

+
final gps = GpsBuilder();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/init.html b/docs/models/AutonomyCommandBuilder/init.html new file mode 100644 index 0000000000..b51d4ac20e --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/init.html @@ -0,0 +1,122 @@ + + + + + + + + init method - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +Future<void> +init() + + + +
+ +
+

Listens for incoming confirmations from the rover that it received the command.

+
+ + + +
+

Implementation

+
Future<void> init() async {
+    await Future<void>.delayed(const Duration(seconds: 1));
+	models.messages.registerHandler<AutonomyCommand>(
+		name: AutonomyCommand().messageName,
+		decoder: AutonomyCommand.fromBuffer,
+		handler: (data) => _handshake = data,
+	);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/isLoading.html b/docs/models/AutonomyCommandBuilder/isLoading.html new file mode 100644 index 0000000000..9e14991226 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/isLoading.html @@ -0,0 +1,115 @@ + + + + + + + + isLoading property - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isLoading
+ +
+ +
+
+
+
+
+ +

isLoading property +

+ + +
+ + bool + isLoading +
getter/setter pair
+ +
+ +
+

Whether the dashboard is awaiting a response from the rover.

+
+ + +
+

Implementation

+
bool isLoading = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/isValid.html b/docs/models/AutonomyCommandBuilder/isValid.html new file mode 100644 index 0000000000..04035679be --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/isValid.html @@ -0,0 +1,128 @@ + + + + + + + + isValid property - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => gps.isValid;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/otherBuilders.html b/docs/models/AutonomyCommandBuilder/otherBuilders.html new file mode 100644 index 0000000000..c3bc79c501 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/otherBuilders.html @@ -0,0 +1,127 @@ + + + + + + + + otherBuilders property - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
otherBuilders
+ +
+ +
+
+
+
+
+ +

otherBuilders property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<ChangeNotifier> + get + otherBuilders +
override
+ +
+ +
+

Other builders to listen to.

+
+ + +
+

Implementation

+
@override
+List<ChangeNotifier> get otherBuilders => [models.rover.status];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/submit.html b/docs/models/AutonomyCommandBuilder/submit.html new file mode 100644 index 0000000000..7cafdd7b4f --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/submit.html @@ -0,0 +1,129 @@ + + + + + + + + submit method - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
submit
+ +
+ +
+
+
+
+
+ +

submit method +

+ +
+ +Future<void> +submit() + + + +
+ +
+

Sends this command to the rover using Sockets.autonomy.

+
+ + + +
+

Implementation

+
Future<void> submit() async {
+	_handshake = null;
+	isLoading = true;
+	notifyListeners();
+	models.sockets.autonomy.sendMessage(value);
+	models.home.setMessage(severity: Severity.info, text: "Submitting autonomy command...");
+	await Future<void>.delayed(const Duration(seconds: 1));
+	if (_handshake != null) {
+		models.home.setMessage(severity: Severity.info, text: "Command received");
+	} else {
+		models.home.setMessage(severity: Severity.error, text: "Command not received");
+	}
+	isLoading = false;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/task.html b/docs/models/AutonomyCommandBuilder/task.html new file mode 100644 index 0000000000..7d591c0309 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/task.html @@ -0,0 +1,115 @@ + + + + + + + + task property - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
task
+ +
+ +
+
+
+
+
+ +

task property +

+ + +
+ + AutonomyTask + task +
getter/setter pair
+ +
+ +
+

The type of task the rover should complete.

+
+ + +
+

Implementation

+
AutonomyTask task = AutonomyTask.GPS_ONLY;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/updateTask.html b/docs/models/AutonomyCommandBuilder/updateTask.html new file mode 100644 index 0000000000..39bd3bec73 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/updateTask.html @@ -0,0 +1,119 @@ + + + + + + + + updateTask method - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateTask
+ +
+ +
+
+
+
+
+ +

updateTask method +

+ +
+ +void +updateTask(
  1. AutonomyTask input
  2. +
) + + + +
+ +
+

Updates the type of task being performed.

+
+ + + +
+

Implementation

+
void updateTask(AutonomyTask input) {
+	task = input;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyCommandBuilder/value.html b/docs/models/AutonomyCommandBuilder/value.html new file mode 100644 index 0000000000..8bdcb3a6ab --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/value.html @@ -0,0 +1,130 @@ + + + + + + + + value property - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ AutonomyCommand + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+AutonomyCommand get value => AutonomyCommand(
+	destination: gps.value,
+	task: task,
+);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel-class-sidebar.html b/docs/models/AutonomyModel-class-sidebar.html new file mode 100644 index 0000000000..b172817187 --- /dev/null +++ b/docs/models/AutonomyModel-class-sidebar.html @@ -0,0 +1,59 @@ +
    + +
  1. Constructors
  2. +
  3. AutonomyModel
  4. + + + +
  5. + Properties +
  6. +
  7. badAppleAudioPlayer
  8. +
  9. badAppleFrame
  10. +
  11. badAppleTimer
  12. +
  13. data
  14. +
  15. empty
  16. +
  17. grid
  18. +
  19. gridSize
  20. +
  21. hashCode
  22. +
  23. hasListeners
  24. +
  25. isPlayingBadApple
  26. +
  27. markerBuilder
  28. +
  29. markers
  30. +
  31. offset
  32. +
  33. roverHeading
  34. +
  35. roverPosition
  36. +
  37. runtimeType
  38. + +
  39. Methods
  40. +
  41. addListener
  42. +
  43. clearMarkers
  44. +
  45. dispose
  46. +
  47. gpsToBlock
  48. +
  49. init
  50. +
  51. markCell
  52. +
  53. noSuchMethod
  54. +
  55. notifyListeners
  56. +
  57. onNewData
  58. +
  59. placeMarker
  60. +
  61. placeMarkerOnRover
  62. +
  63. recenterRover
  64. +
  65. removeListener
  66. +
  67. startBadApple
  68. +
  69. stopBadApple
  70. +
  71. toString
  72. +
  73. updateMarker
  74. +
  75. zoom
  76. + +
  77. Operators
  78. +
  79. operator ==
  80. + + + + + + +
  81. Constants
  82. +
  83. badAppleFps
  84. +
  85. badAppleLastFrame
  86. +
diff --git a/docs/models/AutonomyModel-class.html b/docs/models/AutonomyModel-class.html new file mode 100644 index 0000000000..65ffc84335 --- /dev/null +++ b/docs/models/AutonomyModel-class.html @@ -0,0 +1,635 @@ + + + + + + + + AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyModel
+ +
+ +
+
+
+
+
+ +

AutonomyModel class + +

+ + +
+

A view model for the autonomy page to render a grid map.

+

Shows a bird's-eye map of where the rover is, what's around it, where the goal is, and the path +to get there. This class uses AutonomyData to keep track of the data as reported by the rover. +The grid is a 2D map of width and height gridSize that keeps the roverPosition in the +center (by keeping track of its offset) and filling the other cells with AutonomyCells.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ AutonomyModel() +
+
+ Listens for incoming autonomy or position data. +
+
+
+ +
+

Properties

+
+
+ badAppleAudioPlayer + AudioPlayer + + +
+
+ The audio player for the Bad Apple music +
final
+ +
+ +
+ badAppleFrame + ↔ int + + +
+
+ Which frame in the Bad Apple video we are up to right now +
getter/setter pair
+ +
+ +
+ badAppleTimer + ↔ Timer? + + +
+
+ A timer to update the map for every frame of Bad Apple +
getter/setter pair
+ +
+ +
+ data + AutonomyData + + +
+
+ The autonomy data as received from the rover. +
getter/setter pair
+ +
+ +
+ empty + → List<List<(GpsCoordinates, AutonomyCell)>> + + +
+
+ An empty grid of size gridSize. +
no setter
+ +
+ +
+ grid + → List<List<(GpsCoordinates, AutonomyCell)>> + + +
+
+ The grid of size gridSize with the rover in the center, ready to draw on the UI. +
no setter
+ +
+ +
+ gridSize + ↔ int + + +
+
+ The amount of blocks in the width and height of the grid. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isPlayingBadApple + ↔ bool + + +
+
+ Whether the UI is currently playing Bad Apple +
getter/setter pair
+ +
+ +
+ markerBuilder + GpsBuilder + + +
+
+ The view model to edit the coordinate of the marker. +
getter/setter pair
+ +
+ +
+ markers + ↔ List<GpsCoordinates> + + +
+
+ A list of markers manually placed by the user. Useful for the Extreme Retrieval Mission. +
getter/setter pair
+ +
+ +
+ offset + GridOffset + + +
+
+ The offset to add to all other coordinates, based on roverPosition. See recenterRover. +
getter/setter pair
+ +
+ +
+ roverHeading + → double + + +
+
+ The rover's heading +
no setter
+ +
+ +
+ roverPosition + GpsCoordinates + + +
+
+ The rover's current position. +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ clearMarkers() + → void + + + +
+
+ Deletes all the markers in markers. + + +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ gpsToBlock(double value) + → int + + + +
+
+ Converts a decimal GPS coordinate to an index representing the block in the grid. + + +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes the view model. + + +
+ +
+ markCell(List<List<(GpsCoordinates, AutonomyCell)>> list, GpsCoordinates gps, AutonomyCell value) + → void + + + +
+
+ Calculates a new position for gps based on offset and adds it to the list. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ onNewData(AutonomyData value) + → void + + + +
+
+ A handler to call when new data arrives. Updates data and the UI. + + +
+ +
+ placeMarker() + → void + + + +
+
+ Places the marker in markerBuilder. + + +
+ +
+ placeMarkerOnRover() + → void + + + +
+
+ Places a marker at the rover's current position. + + +
+ +
+ recenterRover() + → void + + + +
+
+ Determines the new offset based on the current roverPosition. + + +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ startBadApple() + → Future<void> + + + +
+
+ Starts playing Bad Apple. + + +
+ +
+ stopBadApple() + → void + + + +
+
+ Stops playing Bad Apple and resets the UI. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateMarker(GpsCoordinates gps) + → void + + + +
+
+ Removes a marker in gps + + +
+ +
+ zoom(int newSize) + → void + + + +
+
+ Zooms in or out by modifying gridSize. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ badAppleFps + → const int + + +
+
+ How many frames in a second are being shown + + +
+ +
+ badAppleLastFrame + → const int + + +
+
+ The last frame of Bad Apple + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/AutonomyModel.html b/docs/models/AutonomyModel/AutonomyModel.html new file mode 100644 index 0000000000..51c7fae63d --- /dev/null +++ b/docs/models/AutonomyModel/AutonomyModel.html @@ -0,0 +1,111 @@ + + + + + + + + AutonomyModel constructor - AutonomyModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyModel
+ +
+ +
+
+
+
+
+ +

AutonomyModel constructor +

+ +
+ + AutonomyModel() +
+ +
+

Listens for incoming autonomy or position data.

+
+ + + +
+

Implementation

+
AutonomyModel() { init(); }
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/badAppleAudioPlayer.html b/docs/models/AutonomyModel/badAppleAudioPlayer.html new file mode 100644 index 0000000000..d14bf0528f --- /dev/null +++ b/docs/models/AutonomyModel/badAppleAudioPlayer.html @@ -0,0 +1,115 @@ + + + + + + + + badAppleAudioPlayer property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
badAppleAudioPlayer
+ +
+ +
+
+
+
+
+ +

badAppleAudioPlayer property +

+ + +
+ + AudioPlayer + badAppleAudioPlayer +
final
+ +
+ +
+

The audio player for the Bad Apple music

+
+ + +
+

Implementation

+
final badAppleAudioPlayer = AudioPlayer();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/badAppleFps-constant.html b/docs/models/AutonomyModel/badAppleFps-constant.html new file mode 100644 index 0000000000..691c1edc45 --- /dev/null +++ b/docs/models/AutonomyModel/badAppleFps-constant.html @@ -0,0 +1,115 @@ + + + + + + + + badAppleFps constant - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
badAppleFps
+ +
+ +
+
+
+
+
+ +

badAppleFps constant +

+ + +
+ + int + const badAppleFps + + +
+ +
+

How many frames in a second are being shown

+
+ + +
+

Implementation

+
static const badAppleFps = 1;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/badAppleFrame.html b/docs/models/AutonomyModel/badAppleFrame.html new file mode 100644 index 0000000000..2ed1de26be --- /dev/null +++ b/docs/models/AutonomyModel/badAppleFrame.html @@ -0,0 +1,115 @@ + + + + + + + + badAppleFrame property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
badAppleFrame
+ +
+ +
+
+
+
+
+ +

badAppleFrame property +

+ + +
+ + int + badAppleFrame +
getter/setter pair
+ +
+ +
+

Which frame in the Bad Apple video we are up to right now

+
+ + +
+

Implementation

+
int badAppleFrame = 0;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/badAppleLastFrame-constant.html b/docs/models/AutonomyModel/badAppleLastFrame-constant.html new file mode 100644 index 0000000000..bcb9291d60 --- /dev/null +++ b/docs/models/AutonomyModel/badAppleLastFrame-constant.html @@ -0,0 +1,115 @@ + + + + + + + + badAppleLastFrame constant - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
badAppleLastFrame
+ +
+ +
+
+
+
+
+ +

badAppleLastFrame constant +

+ + +
+ + int + const badAppleLastFrame + + +
+ +
+

The last frame of Bad Apple

+
+ + +
+

Implementation

+
static const badAppleLastFrame = 6570;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/badAppleTimer.html b/docs/models/AutonomyModel/badAppleTimer.html new file mode 100644 index 0000000000..e8d8971a89 --- /dev/null +++ b/docs/models/AutonomyModel/badAppleTimer.html @@ -0,0 +1,115 @@ + + + + + + + + badAppleTimer property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
badAppleTimer
+ +
+ +
+
+
+
+
+ +

badAppleTimer property +

+ + +
+ + Timer? + badAppleTimer +
getter/setter pair
+ +
+ +
+

A timer to update the map for every frame of Bad Apple

+
+ + +
+

Implementation

+
Timer? badAppleTimer;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/clearMarkers.html b/docs/models/AutonomyModel/clearMarkers.html new file mode 100644 index 0000000000..a3337e61e3 --- /dev/null +++ b/docs/models/AutonomyModel/clearMarkers.html @@ -0,0 +1,119 @@ + + + + + + + + clearMarkers method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clearMarkers
+ +
+ +
+
+
+
+
+ +

clearMarkers method +

+ +
+ +void +clearMarkers() + + + +
+ +
+

Deletes all the markers in markers.

+
+ + + +
+

Implementation

+
void clearMarkers() {
+	markers.clear();
+	markerBuilder.clear();
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/data.html b/docs/models/AutonomyModel/data.html new file mode 100644 index 0000000000..75d4d8031b --- /dev/null +++ b/docs/models/AutonomyModel/data.html @@ -0,0 +1,115 @@ + + + + + + + + data property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
data
+ +
+ +
+
+
+
+
+ +

data property +

+ + +
+ + AutonomyData + data +
getter/setter pair
+ +
+ +
+

The autonomy data as received from the rover.

+
+ + +
+

Implementation

+
AutonomyData data = AutonomyData();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/dispose.html b/docs/models/AutonomyModel/dispose.html new file mode 100644 index 0000000000..772ec1b936 --- /dev/null +++ b/docs/models/AutonomyModel/dispose.html @@ -0,0 +1,133 @@ + + + + + + + + dispose method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+	models.messages.removeHandler(AutonomyData().messageName);
+	models.settings.removeListener(notifyListeners);
+	models.rover.metrics.position.removeListener(recenterRover);
+    badAppleAudioPlayer.dispose();
+	super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/empty.html b/docs/models/AutonomyModel/empty.html new file mode 100644 index 0000000000..0369074363 --- /dev/null +++ b/docs/models/AutonomyModel/empty.html @@ -0,0 +1,126 @@ + + + + + + + + empty property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
empty
+ +
+ +
+
+
+
+
+ +

empty property +

+ + + + + +
+
+ + List<List<(GpsCoordinates, AutonomyCell)>> + get + empty + + +
+ +
+

An empty grid of size gridSize.

+
+ + +
+

Implementation

+
List<List<(GpsCoordinates, AutonomyCell)>> get empty => [
+	for (int i = 0; i < gridSize; i++) [
+		for (int j = 0; j < gridSize; j++)
+			(GpsCoordinates(), AutonomyCell.empty),
+	],
+];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/gpsToBlock.html b/docs/models/AutonomyModel/gpsToBlock.html new file mode 100644 index 0000000000..a9c88026b6 --- /dev/null +++ b/docs/models/AutonomyModel/gpsToBlock.html @@ -0,0 +1,116 @@ + + + + + + + + gpsToBlock method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gpsToBlock
+ +
+ +
+
+
+
+
+ +

gpsToBlock method +

+ +
+ +int +gpsToBlock(
  1. double value
  2. +
) + + + +
+ +
+

Converts a decimal GPS coordinate to an index representing the block in the grid.

+
+ + + +
+

Implementation

+
int gpsToBlock(double value) => (value / models.settings.dashboard.mapBlockSize).round();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/grid.html b/docs/models/AutonomyModel/grid.html new file mode 100644 index 0000000000..bab80af6b8 --- /dev/null +++ b/docs/models/AutonomyModel/grid.html @@ -0,0 +1,137 @@ + + + + + + + + grid property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
grid
+ +
+ +
+
+
+
+
+ +

grid property +

+ + + + + +
+
+ + List<List<(GpsCoordinates, AutonomyCell)>> + get + grid + + +
+ +
+

The grid of size gridSize with the rover in the center, ready to draw on the UI.

+
+ + +
+

Implementation

+
List<List<(GpsCoordinates, AutonomyCell)>> get grid {
+	final result = empty;
+	for (final obstacle in data.obstacles) {
+		markCell(result, obstacle, AutonomyCell.obstacle);
+	}
+    if (isPlayingBadApple) return result;
+	for (final path in data.path) {
+		markCell(result, path, AutonomyCell.path);
+	}
+	for (final marker in markers) {
+		markCell(result, marker, AutonomyCell.marker);
+	}
+    // Marks the rover and destination -- these should be last
+    if (data.hasDestination()) markCell(result, data.destination, AutonomyCell.destination);
+	markCell(result, roverPosition, AutonomyCell.rover);
+	return result;
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/gridSize.html b/docs/models/AutonomyModel/gridSize.html new file mode 100644 index 0000000000..1455e29089 --- /dev/null +++ b/docs/models/AutonomyModel/gridSize.html @@ -0,0 +1,116 @@ + + + + + + + + gridSize property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gridSize
+ +
+ +
+
+
+
+
+ +

gridSize property +

+ + +
+ + int + gridSize +
getter/setter pair
+ +
+ +
+

The amount of blocks in the width and height of the grid.

+

Keep this an odd number to keep the rover in the center.

+
+ + +
+

Implementation

+
int gridSize = 11;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/init.html b/docs/models/AutonomyModel/init.html new file mode 100644 index 0000000000..df6d12f726 --- /dev/null +++ b/docs/models/AutonomyModel/init.html @@ -0,0 +1,128 @@ + + + + + + + + init method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +Future<void> +init() + + + +
+ +
+

Initializes the view model.

+
+ + + +
+

Implementation

+
Future<void> init() async {
+		recenterRover();
+  await Future<void>.delayed(const Duration(seconds: 1));
+		models.messages.registerHandler<AutonomyData>(
+			name: AutonomyData().messageName,
+			decoder: AutonomyData.fromBuffer,
+			handler: onNewData,
+		);
+		models.rover.metrics.position.addListener(recenterRover);
+  models.settings.addListener(notifyListeners);
+		// Force the initial update, even with no new data.
+		recenterRover();
+		onNewData(AutonomyData());
+	}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/isPlayingBadApple.html b/docs/models/AutonomyModel/isPlayingBadApple.html new file mode 100644 index 0000000000..76914dd131 --- /dev/null +++ b/docs/models/AutonomyModel/isPlayingBadApple.html @@ -0,0 +1,115 @@ + + + + + + + + isPlayingBadApple property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isPlayingBadApple
+ +
+ +
+
+
+
+
+ +

isPlayingBadApple property +

+ + +
+ + bool + isPlayingBadApple +
getter/setter pair
+ +
+ +
+

Whether the UI is currently playing Bad Apple

+
+ + +
+

Implementation

+
bool isPlayingBadApple = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/markCell.html b/docs/models/AutonomyModel/markCell.html new file mode 100644 index 0000000000..d533b50f2f --- /dev/null +++ b/docs/models/AutonomyModel/markCell.html @@ -0,0 +1,130 @@ + + + + + + + + markCell method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
markCell
+ +
+ +
+
+
+
+
+ +

markCell method +

+ +
+ +void +markCell(
  1. List<List<(GpsCoordinates, AutonomyCell)>> list,
  2. +
  3. GpsCoordinates gps,
  4. +
  5. AutonomyCell value
  6. +
) + + + +
+ +
+

Calculates a new position for gps based on offset and adds it to the list.

+

This function filters out any coordinates that shouldn't be shown based on gridSize.

+
+ + + +
+

Implementation

+
void markCell(List<List<(GpsCoordinates, AutonomyCell)>> list, GpsCoordinates gps, AutonomyCell value) {
+	// Latitude is y-axis, longitude is x-axis
+	// The rover will occupy the center of the grid, so
+	// - rover.longitude => (gridSize - 1) / 2
+	// - rover.latitude => (gridSize - 1) / 2
+	// Then, everything else should be offset by that
+	final x = -1 * gpsToBlock(gps.longitude) + offset.x;
+	final y = gpsToBlock(gps.latitude) + offset.y;
+	if (x < 0 || x >= gridSize) return;
+	if (y < 0 || y >= gridSize) return;
+	list[y][x] = (gps, value);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/markerBuilder.html b/docs/models/AutonomyModel/markerBuilder.html new file mode 100644 index 0000000000..58143c8e43 --- /dev/null +++ b/docs/models/AutonomyModel/markerBuilder.html @@ -0,0 +1,115 @@ + + + + + + + + markerBuilder property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
markerBuilder
+ +
+ +
+
+
+
+
+ +

markerBuilder property +

+ + +
+ + GpsBuilder + markerBuilder +
getter/setter pair
+ +
+ +
+

The view model to edit the coordinate of the marker.

+
+ + +
+

Implementation

+
GpsBuilder markerBuilder = GpsBuilder();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/markers.html b/docs/models/AutonomyModel/markers.html new file mode 100644 index 0000000000..2330f451a4 --- /dev/null +++ b/docs/models/AutonomyModel/markers.html @@ -0,0 +1,115 @@ + + + + + + + + markers property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
markers
+ +
+ +
+
+
+
+
+ +

markers property +

+ + +
+ + List<GpsCoordinates> + markers +
getter/setter pair
+ +
+ +
+

A list of markers manually placed by the user. Useful for the Extreme Retrieval Mission.

+
+ + +
+

Implementation

+
List<GpsCoordinates> markers = [];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/offset.html b/docs/models/AutonomyModel/offset.html new file mode 100644 index 0000000000..7a2387c530 --- /dev/null +++ b/docs/models/AutonomyModel/offset.html @@ -0,0 +1,115 @@ + + + + + + + + offset property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
offset
+ +
+ +
+
+
+
+
+ +

offset property +

+ + +
+ + GridOffset + offset +
getter/setter pair
+ +
+ +
+

The offset to add to all other coordinates, based on roverPosition. See recenterRover.

+
+ + +
+

Implementation

+
GridOffset offset = const GridOffset(0, 0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/onNewData.html b/docs/models/AutonomyModel/onNewData.html new file mode 100644 index 0000000000..d379e736d6 --- /dev/null +++ b/docs/models/AutonomyModel/onNewData.html @@ -0,0 +1,120 @@ + + + + + + + + onNewData method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onNewData
+ +
+ +
+
+
+
+
+ +

onNewData method +

+ +
+ +void +onNewData(
  1. AutonomyData value
  2. +
) + + + +
+ +
+

A handler to call when new data arrives. Updates data and the UI.

+
+ + + +
+

Implementation

+
void onNewData(AutonomyData value) {
+	data = value;
+	services.files.logData(value);
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/placeMarker.html b/docs/models/AutonomyModel/placeMarker.html new file mode 100644 index 0000000000..eb73a2b240 --- /dev/null +++ b/docs/models/AutonomyModel/placeMarker.html @@ -0,0 +1,119 @@ + + + + + + + + placeMarker method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
placeMarker
+ +
+ +
+
+
+
+
+ +

placeMarker method +

+ +
+ +void +placeMarker() + + + +
+ +
+

Places the marker in markerBuilder.

+
+ + + +
+

Implementation

+
void placeMarker() {
+	markers.add(markerBuilder.value);
+	markerBuilder.clear();
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/placeMarkerOnRover.html b/docs/models/AutonomyModel/placeMarkerOnRover.html new file mode 100644 index 0000000000..fac71b93fd --- /dev/null +++ b/docs/models/AutonomyModel/placeMarkerOnRover.html @@ -0,0 +1,118 @@ + + + + + + + + placeMarkerOnRover method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
placeMarkerOnRover
+ +
+ +
+
+
+
+
+ +

placeMarkerOnRover method +

+ +
+ +void +placeMarkerOnRover() + + + +
+ +
+

Places a marker at the rover's current position.

+
+ + + +
+

Implementation

+
void placeMarkerOnRover() {
+  markers.add(roverPosition);
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/recenterRover.html b/docs/models/AutonomyModel/recenterRover.html new file mode 100644 index 0000000000..677928b66b --- /dev/null +++ b/docs/models/AutonomyModel/recenterRover.html @@ -0,0 +1,130 @@ + + + + + + + + recenterRover method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
recenterRover
+ +
+ +
+
+
+
+
+ +

recenterRover method +

+ +
+ +void +recenterRover() + + + +
+ +
+

Determines the new offset based on the current roverPosition.

+

The autonomy grid is inherently unbounded, meaning we have to choose somewhere to bound the +grid. We chose to draw a grid of size gridSize with the rover in the center. This means we +need to add an offset to every other coordinates to draw it relative to the rover on-screen.

+

For example, say the rover is at (2, 3), and there is an obstacle at (1, 2), with a grid +size of 11. The rover should be at the center, (5, 5), so we need to add an offset of +(3, 2) to get it there. That means we should also add (3, 2) to the obstacle's position +so it remains (-1, -1) away from the rover's new position, yielding (4, 4).

+
+ + + +
+

Implementation

+
void recenterRover() {
+    // final position = isPlayingBadApple ? GpsCoordinates() : roverPosition;
+    final position = isPlayingBadApple ? GpsCoordinates(latitude: (gridSize ~/ 2).toDouble(), longitude: (gridSize ~/ 2).toDouble()) : roverPosition;
+	final midpoint = ((gridSize - 1) / 2).floor();
+	final offsetX = midpoint - -1 * gpsToBlock(position.longitude);
+	final offsetY = midpoint - gpsToBlock(position.latitude);
+	offset = GridOffset(offsetX, offsetY);
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/roverHeading.html b/docs/models/AutonomyModel/roverHeading.html new file mode 100644 index 0000000000..5dfea0ea9f --- /dev/null +++ b/docs/models/AutonomyModel/roverHeading.html @@ -0,0 +1,121 @@ + + + + + + + + roverHeading property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
roverHeading
+ +
+ +
+
+
+
+
+ +

roverHeading property +

+ + + + + +
+
+ + double + get + roverHeading + + +
+ +
+

The rover's heading

+
+ + +
+

Implementation

+
double get roverHeading => models.rover.metrics.position.angle;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/roverPosition.html b/docs/models/AutonomyModel/roverPosition.html new file mode 100644 index 0000000000..168d2ead5e --- /dev/null +++ b/docs/models/AutonomyModel/roverPosition.html @@ -0,0 +1,121 @@ + + + + + + + + roverPosition property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
roverPosition
+ +
+ +
+
+
+
+
+ +

roverPosition property +

+ + + + + +
+
+ + GpsCoordinates + get + roverPosition + + +
+ +
+

The rover's current position.

+
+ + +
+

Implementation

+
GpsCoordinates get roverPosition => models.rover.metrics.position.data.gps;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/startBadApple.html b/docs/models/AutonomyModel/startBadApple.html new file mode 100644 index 0000000000..e549a6abe1 --- /dev/null +++ b/docs/models/AutonomyModel/startBadApple.html @@ -0,0 +1,123 @@ + + + + + + + + startBadApple method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
startBadApple
+ +
+ +
+
+
+
+
+ +

startBadApple method +

+ +
+ +Future<void> +startBadApple() + + + +
+ +
+

Starts playing Bad Apple.

+
+ + + +
+

Implementation

+
Future<void> startBadApple() async {
+  isPlayingBadApple = true;
+  notifyListeners();
+  zoom(50);
+  badAppleFrame = 0;
+  badAppleTimer = Timer.periodic(const Duration(milliseconds: 1000 ~/ 30), _loadBadAppleFrame);
+  await badAppleAudioPlayer.setAsset("assets/bad_apple2.mp3");
+  badAppleAudioPlayer.play().ignore();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/stopBadApple.html b/docs/models/AutonomyModel/stopBadApple.html new file mode 100644 index 0000000000..64966061fa --- /dev/null +++ b/docs/models/AutonomyModel/stopBadApple.html @@ -0,0 +1,122 @@ + + + + + + + + stopBadApple method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
stopBadApple
+ +
+ +
+
+
+
+
+ +

stopBadApple method +

+ +
+ +void +stopBadApple() + + + +
+ +
+

Stops playing Bad Apple and resets the UI.

+
+ + + +
+

Implementation

+
void stopBadApple() {
+  isPlayingBadApple = false;
+  badAppleTimer?.cancel();
+  data = AutonomyData();
+  badAppleAudioPlayer.stop();
+  zoom(11);
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/updateMarker.html b/docs/models/AutonomyModel/updateMarker.html new file mode 100644 index 0000000000..4c52087ab2 --- /dev/null +++ b/docs/models/AutonomyModel/updateMarker.html @@ -0,0 +1,122 @@ + + + + + + + + updateMarker method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateMarker
+ +
+ +
+
+
+
+
+ +

updateMarker method +

+ +
+ +void +updateMarker(
  1. GpsCoordinates gps
  2. +
) + + + +
+ +
+

Removes a marker in gps

+
+ + + +
+

Implementation

+
void updateMarker(GpsCoordinates gps) {
+		if(markers.remove(gps)){
+		  notifyListeners();
+  } else {
+    models.home.setMessage(severity: Severity.info, text: "Marker not found");
+  }
+	}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/AutonomyModel/zoom.html b/docs/models/AutonomyModel/zoom.html new file mode 100644 index 0000000000..ed53cbfc95 --- /dev/null +++ b/docs/models/AutonomyModel/zoom.html @@ -0,0 +1,119 @@ + + + + + + + + zoom method - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
zoom
+ +
+ +
+
+
+
+
+ +

zoom method +

+ +
+ +void +zoom(
  1. int newSize
  2. +
) + + + +
+ +
+

Zooms in or out by modifying gridSize.

+
+ + + +
+

Implementation

+
void zoom(int newSize) {
+	gridSize = newSize;
+	recenterRover();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls-class-sidebar.html b/docs/models/CameraControls-class-sidebar.html new file mode 100644 index 0000000000..5498736e57 --- /dev/null +++ b/docs/models/CameraControls-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. CameraControls
  4. + + + +
  5. + Properties +
  6. +
  7. armTilt
  8. +
  9. buttonMapping
  10. +
  11. frontSwivel
  12. +
  13. frontTilt
  14. +
  15. hashCode
  16. +
  17. mode
  18. +
  19. onDispose
  20. +
  21. rearSwivel
  22. +
  23. rearTilt
  24. +
  25. runtimeType
  26. + +
  27. Methods
  28. +
  29. noSuchMethod
  30. +
  31. parseInputs
  32. +
  33. toString
  34. +
  35. updateState
  36. + +
  37. Operators
  38. +
  39. operator ==
  40. + + + + + + +
  41. Constants
  42. +
  43. cameraSwivelIncrement
  44. +
  45. cameraTiltIncrement
  46. +
diff --git a/docs/models/CameraControls-class.html b/docs/models/CameraControls-class.html new file mode 100644 index 0000000000..766acebf64 --- /dev/null +++ b/docs/models/CameraControls-class.html @@ -0,0 +1,376 @@ + + + + + + + + CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraControls
+ +
+ +
+
+
+
+
+ +

CameraControls class + +

+ + +
+

A RoverControls for the rover's front and rear cameras.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ CameraControls() +
+
+ +
+
+
+ +
+

Properties

+
+
+ armTilt + ↔ double + + +
+
+ The angle of the arm camera tilt. +
getter/setter pair
+ +
+ +
+ buttonMapping + → Map<String, String> + + +
+
+ A human-readable explanation of what the controls are. +
no setteroverride
+ +
+ +
+ frontSwivel + ↔ double + + +
+
+ The angle of the front swivel servo. +
getter/setter pair
+ +
+ +
+ frontTilt + ↔ double + + +
+
+ The angle of the front tilt servo. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ mode + OperatingMode + + +
+
+ The OperatingMode for these controls. +
no setteroverride
+ +
+ +
+ onDispose + → List<Message> + + +
+
+ A list of commands that disables the subsystem. +
no setteroverride
+ +
+ +
+ rearSwivel + ↔ double + + +
+
+ The angle of the rear swivel servo. +
getter/setter pair
+ +
+ +
+ rearTilt + ↔ double + + +
+
+ The angle of the rear tilt servo. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ parseInputs(GamepadState state) + → List<Message> + + + +
+
+ Return a list of commands based on the current state of the gamepad. +
override
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateState(GamepadState state) + → void + + + +
+
+ Any logic to run before checking parseInputs. +
override
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ cameraSwivelIncrement + → const int + + +
+
+ How far to swivel the cameras each tick. + + +
+ +
+ cameraTiltIncrement + → const int + + +
+
+ How far to tilt the cameras each tick. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/CameraControls.html b/docs/models/CameraControls/CameraControls.html new file mode 100644 index 0000000000..7827c6b910 --- /dev/null +++ b/docs/models/CameraControls/CameraControls.html @@ -0,0 +1,104 @@ + + + + + + + + CameraControls constructor - CameraControls - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraControls
+ +
+ +
+
+
+
+
+ +

CameraControls constructor +

+ +
+ + CameraControls() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/armTilt.html b/docs/models/CameraControls/armTilt.html new file mode 100644 index 0000000000..89a1cd923d --- /dev/null +++ b/docs/models/CameraControls/armTilt.html @@ -0,0 +1,115 @@ + + + + + + + + armTilt property - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
armTilt
+ +
+ +
+
+
+
+
+ +

armTilt property +

+ + +
+ + double + armTilt +
getter/setter pair
+ +
+ +
+

The angle of the arm camera tilt.

+
+ + +
+

Implementation

+
double armTilt = 90;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/buttonMapping.html b/docs/models/CameraControls/buttonMapping.html new file mode 100644 index 0000000000..62f8690717 --- /dev/null +++ b/docs/models/CameraControls/buttonMapping.html @@ -0,0 +1,131 @@ + + + + + + + + buttonMapping property - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonMapping
+ +
+ +
+
+
+
+
+ +

buttonMapping property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + get + buttonMapping +
override
+ +
+ +
+

A human-readable explanation of what the controls are.

+

Keys are the actions, values are the buttons that trigger them.

+
+ + +
+

Implementation

+
@override
+Map<String, String> get buttonMapping => {
+	"Front camera": "Right trigger + joystick",
+	"Rear camera": "Left trigger + joystick",
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/cameraSwivelIncrement-constant.html b/docs/models/CameraControls/cameraSwivelIncrement-constant.html new file mode 100644 index 0000000000..30d48b15d5 --- /dev/null +++ b/docs/models/CameraControls/cameraSwivelIncrement-constant.html @@ -0,0 +1,115 @@ + + + + + + + + cameraSwivelIncrement constant - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
cameraSwivelIncrement
+ +
+ +
+
+
+
+
+ +

cameraSwivelIncrement constant +

+ + +
+ + int + const cameraSwivelIncrement + + +
+ +
+

How far to swivel the cameras each tick.

+
+ + +
+

Implementation

+
static const cameraSwivelIncrement = 1;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/cameraTiltIncrement-constant.html b/docs/models/CameraControls/cameraTiltIncrement-constant.html new file mode 100644 index 0000000000..a32b2c7c8e --- /dev/null +++ b/docs/models/CameraControls/cameraTiltIncrement-constant.html @@ -0,0 +1,115 @@ + + + + + + + + cameraTiltIncrement constant - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
cameraTiltIncrement
+ +
+ +
+
+
+
+
+ +

cameraTiltIncrement constant +

+ + +
+ + int + const cameraTiltIncrement + + +
+ +
+

How far to tilt the cameras each tick.

+
+ + +
+

Implementation

+
static const cameraTiltIncrement = 1;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/frontSwivel.html b/docs/models/CameraControls/frontSwivel.html new file mode 100644 index 0000000000..f46c7cefe4 --- /dev/null +++ b/docs/models/CameraControls/frontSwivel.html @@ -0,0 +1,115 @@ + + + + + + + + frontSwivel property - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frontSwivel
+ +
+ +
+
+
+
+
+ +

frontSwivel property +

+ + +
+ + double + frontSwivel +
getter/setter pair
+ +
+ +
+

The angle of the front swivel servo.

+
+ + +
+

Implementation

+
double frontSwivel = 90;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/frontTilt.html b/docs/models/CameraControls/frontTilt.html new file mode 100644 index 0000000000..7d308ecfb9 --- /dev/null +++ b/docs/models/CameraControls/frontTilt.html @@ -0,0 +1,115 @@ + + + + + + + + frontTilt property - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frontTilt
+ +
+ +
+
+
+
+
+ +

frontTilt property +

+ + +
+ + double + frontTilt +
getter/setter pair
+ +
+ +
+

The angle of the front tilt servo.

+
+ + +
+

Implementation

+
double frontTilt = 90;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/mode.html b/docs/models/CameraControls/mode.html new file mode 100644 index 0000000000..a201127333 --- /dev/null +++ b/docs/models/CameraControls/mode.html @@ -0,0 +1,127 @@ + + + + + + + + mode property - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
mode
+ +
+ +
+
+
+
+
+ +

mode property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + get + mode +
override
+ +
+ +
+

The OperatingMode for these controls.

+
+ + +
+

Implementation

+
@override
+OperatingMode get mode => OperatingMode.cameras;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/onDispose.html b/docs/models/CameraControls/onDispose.html new file mode 100644 index 0000000000..e42834d12a --- /dev/null +++ b/docs/models/CameraControls/onDispose.html @@ -0,0 +1,128 @@ + + + + + + + + onDispose property - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onDispose
+ +
+ +
+
+
+
+
+ +

onDispose property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + get + onDispose +
override
+ +
+ +
+

A list of commands that disables the subsystem.

+

For example, after driving this should set the speed to 0.

+
+ + +
+

Implementation

+
@override
+List<Message> get onDispose => [];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/parseInputs.html b/docs/models/CameraControls/parseInputs.html new file mode 100644 index 0000000000..30621bfb43 --- /dev/null +++ b/docs/models/CameraControls/parseInputs.html @@ -0,0 +1,128 @@ + + + + + + + + parseInputs method - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseInputs
+ +
+ +
+
+
+
+
+ +

parseInputs method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+List<Message> +parseInputs(
  1. GamepadState state
  2. +
) + +
override
+ +
+ +
+

Return a list of commands based on the current state of the gamepad.

+
+ + + +
+

Implementation

+
@override
+List<Message> parseInputs(GamepadState state) => [
+    DriveCommand(frontSwivel: frontSwivel),
+    DriveCommand(frontTilt: frontTilt),
+    DriveCommand(rearSwivel: rearSwivel),
+    DriveCommand(rearTilt: rearTilt),
+    GripperCommand(servoAngle: armTilt.round()),
+];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/rearSwivel.html b/docs/models/CameraControls/rearSwivel.html new file mode 100644 index 0000000000..cb9fe89a83 --- /dev/null +++ b/docs/models/CameraControls/rearSwivel.html @@ -0,0 +1,115 @@ + + + + + + + + rearSwivel property - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rearSwivel
+ +
+ +
+
+
+
+
+ +

rearSwivel property +

+ + +
+ + double + rearSwivel +
getter/setter pair
+ +
+ +
+

The angle of the rear swivel servo.

+
+ + +
+

Implementation

+
double rearSwivel = 90;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/rearTilt.html b/docs/models/CameraControls/rearTilt.html new file mode 100644 index 0000000000..2992f352ae --- /dev/null +++ b/docs/models/CameraControls/rearTilt.html @@ -0,0 +1,115 @@ + + + + + + + + rearTilt property - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rearTilt
+ +
+ +
+
+
+
+
+ +

rearTilt property +

+ + +
+ + double + rearTilt +
getter/setter pair
+ +
+ +
+

The angle of the rear tilt servo.

+
+ + +
+

Implementation

+
double rearTilt = 90;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraControls/updateState.html b/docs/models/CameraControls/updateState.html new file mode 100644 index 0000000000..894879554e --- /dev/null +++ b/docs/models/CameraControls/updateState.html @@ -0,0 +1,149 @@ + + + + + + + + updateState method - CameraControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateState
+ +
+ +
+
+
+
+
+ +

updateState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +updateState(
  1. GamepadState state
  2. +
) + +
override
+ +
+ +
+

Any logic to run before checking parseInputs.

+
+ + + +
+

Implementation

+
@override
+void updateState(GamepadState state) {
+  // Update only ONE camera. Go left to right.
+  final newFrontSwivel = state.normalLeftX;
+  final newFrontTilt = state.normalLeftY;
+  final newRearSwivel = state.normalRightX;
+  final newRearTilt = -1 * state.normalRightY;
+  if (newFrontSwivel.abs() >= 0.05 || newFrontTilt.abs() >= 0.05) {
+    // Update the front camera. Now, choose which axis
+    if (newFrontSwivel.abs() > newFrontTilt.abs()) {
+      frontSwivel += newFrontSwivel * cameraSwivelIncrement;
+    } else {
+      frontTilt += newFrontTilt * cameraTiltIncrement;
+    }
+  } else if (newRearSwivel.abs() >= 0.05 || newRearTilt.abs() >= 0.05) {
+    if (newRearSwivel.abs() > newRearTilt.abs()) {
+      rearSwivel += newRearSwivel * cameraSwivelIncrement;
+    } else {
+      rearTilt += newRearTilt * cameraTiltIncrement * -1;
+    }
+  }
+
+  armTilt += -1 * state.normalDpadY * cameraTiltIncrement;
+  armTilt = armTilt.clamp(0, 180);
+  frontSwivel = frontSwivel.clamp(0, 180);
+  frontTilt = frontTilt.clamp(0, 60);
+  rearSwivel = rearSwivel.clamp(0, 180);
+  rearTilt = rearTilt.clamp(0, 180);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder-class-sidebar.html b/docs/models/CameraDetailsBuilder-class-sidebar.html new file mode 100644 index 0000000000..7aac683a50 --- /dev/null +++ b/docs/models/CameraDetailsBuilder-class-sidebar.html @@ -0,0 +1,47 @@ +
    + +
  1. Constructors
  2. +
  3. CameraDetailsBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. autofocus
  8. +
  9. error
  10. +
  11. fps
  12. +
  13. hashCode
  14. +
  15. hasListeners
  16. +
  17. isLoading
  18. +
  19. isValid
  20. +
  21. name
  22. +
  23. otherBuilders
  24. +
  25. quality
  26. +
  27. resolutionHeight
  28. +
  29. resolutionWidth
  30. +
  31. runtimeType
  32. +
  33. status
  34. +
  35. value
  36. + +
  37. Methods
  38. +
  39. addListener
  40. +
  41. dispose
  42. +
  43. noSuchMethod
  44. +
  45. notifyListeners
  46. +
  47. removeListener
  48. +
  49. saveSettings
  50. +
  51. toString
  52. +
  53. updateStatus
  54. + +
  55. Operators
  56. +
  57. operator ==
  58. + + + + + + +
  59. Constants
  60. +
  61. okStatuses
  62. +
diff --git a/docs/models/CameraDetailsBuilder-class.html b/docs/models/CameraDetailsBuilder-class.html new file mode 100644 index 0000000000..d9aa442284 --- /dev/null +++ b/docs/models/CameraDetailsBuilder-class.html @@ -0,0 +1,479 @@ + + + + + + + + CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraDetailsBuilder
+ +
+ +
+
+
+
+
+ +

CameraDetailsBuilder class + +

+ + +
+

A ValueBuilder view model to modify a CameraDetails.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ CameraDetailsBuilder(CameraDetails data) +
+
+ Creates a ValueBuilder view model to change a CameraDetails. +
+
+
+ +
+

Properties

+
+
+ autofocus + ↔ bool + + +
+
+ Current status of the camera's autofocus +
getter/setter pair
+ +
+ +
+ error + ↔ String? + + +
+
+ The error that occurred when changing these settings, if any. +
getter/setter pair
+ +
+ +
+ fps + NumberBuilder<int> + + +
+
+ How many frames per second to capture. See CameraDetails.fps. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isLoading + ↔ bool + + +
+
+ Whether changes are loading. +
getter/setter pair
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ name + CameraName + + +
+
+ The name of this camera. +
final
+ +
+ +
+ otherBuilders + → List<ValueBuilder> + + +
+
+ Other builders to listen to. +
no setteroverride
+ +
+ +
+ quality + NumberBuilder<int> + + +
+
+ The quality of the camera, as a percentage. See CameraDetails.quality. +
final
+ +
+ +
+ resolutionHeight + NumberBuilder<int> + + +
+
+ The camera resolution's height. See CameraDetails.resolutionHeight. +
final
+ +
+ +
+ resolutionWidth + NumberBuilder<int> + + +
+
+ The camera resolution's width. See CameraDetails.resolutionWidth. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ status + CameraStatus + + +
+
+ The camera's status. +
getter/setter pair
+ +
+ +
+ value + CameraDetails + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ saveSettings(String id) + → Future<bool> + + + +
+
+ Saves these settings to the rover and updates the UI. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateStatus(CameraStatus? input) + → void + + + +
+
+ Updates the status field. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ okStatuses + → const List<CameraStatus> + + +
+
+ Statuses the user can set the camera to. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/CameraDetailsBuilder.html b/docs/models/CameraDetailsBuilder/CameraDetailsBuilder.html new file mode 100644 index 0000000000..9077a6172a --- /dev/null +++ b/docs/models/CameraDetailsBuilder/CameraDetailsBuilder.html @@ -0,0 +1,119 @@ + + + + + + + + CameraDetailsBuilder constructor - CameraDetailsBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraDetailsBuilder
+ +
+ +
+
+
+
+
+ +

CameraDetailsBuilder constructor +

+ +
+ + CameraDetailsBuilder(
  1. CameraDetails data
  2. +
) +
+ +
+

Creates a ValueBuilder view model to change a CameraDetails.

+
+ + + +
+

Implementation

+
CameraDetailsBuilder(CameraDetails data) :
+	resolutionHeight = NumberBuilder(data.resolutionHeight, min: 0, max: 300),
+	resolutionWidth = NumberBuilder(data.resolutionWidth, min: 0, max: 300),
+	quality = NumberBuilder(data.quality, min: 0, max: 100),
+	fps = NumberBuilder(data.fps, min: 0, max: 60),
+	name = data.name,
+	status = CameraStatus.CAMERA_ENABLED,
+    autofocus = data.autofocus;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/autofocus.html b/docs/models/CameraDetailsBuilder/autofocus.html new file mode 100644 index 0000000000..52a98ed6b1 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/autofocus.html @@ -0,0 +1,115 @@ + + + + + + + + autofocus property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
autofocus
+ +
+ +
+
+
+
+
+ +

autofocus property +

+ + +
+ + bool + autofocus +
getter/setter pair
+ +
+ +
+

Current status of the camera's autofocus

+
+ + +
+

Implementation

+
bool autofocus = true;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/error.html b/docs/models/CameraDetailsBuilder/error.html new file mode 100644 index 0000000000..1cf155432d --- /dev/null +++ b/docs/models/CameraDetailsBuilder/error.html @@ -0,0 +1,115 @@ + + + + + + + + error property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
error
+ +
+ +
+
+
+
+
+ +

error property +

+ + +
+ + String? + error +
getter/setter pair
+ +
+ +
+

The error that occurred when changing these settings, if any.

+
+ + +
+

Implementation

+
String? error;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/fps.html b/docs/models/CameraDetailsBuilder/fps.html new file mode 100644 index 0000000000..b508ebb9d4 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/fps.html @@ -0,0 +1,115 @@ + + + + + + + + fps property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
fps
+ +
+ +
+
+
+
+
+ +

fps property +

+ + +
+ + NumberBuilder<int> + fps +
final
+ +
+ +
+

How many frames per second to capture. See CameraDetails.fps.

+
+ + +
+

Implementation

+
final NumberBuilder<int> fps;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/isLoading.html b/docs/models/CameraDetailsBuilder/isLoading.html new file mode 100644 index 0000000000..3c02701000 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/isLoading.html @@ -0,0 +1,115 @@ + + + + + + + + isLoading property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isLoading
+ +
+ +
+
+
+
+
+ +

isLoading property +

+ + +
+ + bool + isLoading +
getter/setter pair
+ +
+ +
+

Whether changes are loading.

+
+ + +
+

Implementation

+
bool isLoading = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/isValid.html b/docs/models/CameraDetailsBuilder/isValid.html new file mode 100644 index 0000000000..e6b4e44174 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/isValid.html @@ -0,0 +1,132 @@ + + + + + + + + isValid property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => resolutionHeight.isValid
+	&& resolutionWidth.isValid
+	&& quality.isValid
+	&& fps.isValid
+	&& okStatuses.contains(status);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/name.html b/docs/models/CameraDetailsBuilder/name.html new file mode 100644 index 0000000000..d68a4a4870 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/name.html @@ -0,0 +1,117 @@ + + + + + + + + name property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + +
+ + CameraName + name +
final
+ +
+ +
+

The name of this camera.

+

This should not be changed by the user as it will cause multiple cameras to stream +data under the same name and confuse the dashboard.

+
+ + +
+

Implementation

+
final CameraName name;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/okStatuses-constant.html b/docs/models/CameraDetailsBuilder/okStatuses-constant.html new file mode 100644 index 0000000000..a09b0e9f87 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/okStatuses-constant.html @@ -0,0 +1,115 @@ + + + + + + + + okStatuses constant - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
okStatuses
+ +
+ +
+
+
+
+
+ +

okStatuses constant +

+ + +
+ + List<CameraStatus> + const okStatuses + + +
+ +
+

Statuses the user can set the camera to.

+
+ + +
+

Implementation

+
static const okStatuses = [CameraStatus.CAMERA_ENABLED, CameraStatus.CAMERA_DISABLED];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/otherBuilders.html b/docs/models/CameraDetailsBuilder/otherBuilders.html new file mode 100644 index 0000000000..6777f86751 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/otherBuilders.html @@ -0,0 +1,127 @@ + + + + + + + + otherBuilders property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
otherBuilders
+ +
+ +
+
+
+
+
+ +

otherBuilders property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<ValueBuilder> + get + otherBuilders +
override
+ +
+ +
+

Other builders to listen to.

+
+ + +
+

Implementation

+
@override
+List<ValueBuilder<dynamic>> get otherBuilders => [resolutionHeight, resolutionWidth, quality, fps];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/quality.html b/docs/models/CameraDetailsBuilder/quality.html new file mode 100644 index 0000000000..232ace3180 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/quality.html @@ -0,0 +1,115 @@ + + + + + + + + quality property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
quality
+ +
+ +
+
+
+
+
+ +

quality property +

+ + +
+ + NumberBuilder<int> + quality +
final
+ +
+ +
+

The quality of the camera, as a percentage. See CameraDetails.quality.

+
+ + +
+

Implementation

+
final NumberBuilder<int> quality;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/resolutionHeight.html b/docs/models/CameraDetailsBuilder/resolutionHeight.html new file mode 100644 index 0000000000..b90f8a38c4 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/resolutionHeight.html @@ -0,0 +1,115 @@ + + + + + + + + resolutionHeight property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
resolutionHeight
+ +
+ +
+
+
+
+
+ +

resolutionHeight property +

+ + +
+ + NumberBuilder<int> + resolutionHeight +
final
+ +
+ +
+

The camera resolution's height. See CameraDetails.resolutionHeight.

+
+ + +
+

Implementation

+
final NumberBuilder<int> resolutionHeight;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/resolutionWidth.html b/docs/models/CameraDetailsBuilder/resolutionWidth.html new file mode 100644 index 0000000000..802ba6a22d --- /dev/null +++ b/docs/models/CameraDetailsBuilder/resolutionWidth.html @@ -0,0 +1,115 @@ + + + + + + + + resolutionWidth property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
resolutionWidth
+ +
+ +
+
+
+
+
+ +

resolutionWidth property +

+ + +
+ + NumberBuilder<int> + resolutionWidth +
final
+ +
+ +
+

The camera resolution's width. See CameraDetails.resolutionWidth.

+
+ + +
+

Implementation

+
final NumberBuilder<int> resolutionWidth;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/saveSettings.html b/docs/models/CameraDetailsBuilder/saveSettings.html new file mode 100644 index 0000000000..60b2aee742 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/saveSettings.html @@ -0,0 +1,128 @@ + + + + + + + + saveSettings method - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
saveSettings
+ +
+ +
+
+
+
+
+ +

saveSettings method +

+ +
+ +Future<bool> +saveSettings(
  1. String id
  2. +
) + + + +
+ +
+

Saves these settings to the rover and updates the UI.

+
+ + + +
+

Implementation

+
Future<bool> saveSettings(String id) async {
+	isLoading = true;
+	error = null;
+	notifyListeners();
+	try {
+		await models.video.updateCamera(id, value);
+	} on RequestNotAccepted {
+		error = "Rover did not accept this request";
+	}
+	isLoading = false;
+	notifyListeners();
+	return error == null;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/status.html b/docs/models/CameraDetailsBuilder/status.html new file mode 100644 index 0000000000..bd9dcc31f0 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/status.html @@ -0,0 +1,116 @@ + + + + + + + + status property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
status
+ +
+ +
+
+
+
+
+ +

status property +

+ + +
+ + CameraStatus + status +
getter/setter pair
+ +
+ +
+

The camera's status.

+

The user cannot change this to any status, like CameraStatus.CAMERA_DISCONNECTED.

+
+ + +
+

Implementation

+
CameraStatus status;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/updateStatus.html b/docs/models/CameraDetailsBuilder/updateStatus.html new file mode 100644 index 0000000000..21ccb7b674 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/updateStatus.html @@ -0,0 +1,127 @@ + + + + + + + + updateStatus method - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateStatus
+ +
+ +
+
+
+
+
+ +

updateStatus method +

+ +
+ +void +updateStatus(
  1. CameraStatus? input
  2. +
) + + + +
+ +
+

Updates the status field.

+
+ + + +
+

Implementation

+
void updateStatus(CameraStatus? input) {
+	if (input == null) return;
+	if (!okStatuses.contains(input)) {
+		error = "You can't set that status";
+		notifyListeners();
+		return;
+	} else {
+		error = null;
+	}
+	status = input;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/value.html b/docs/models/CameraDetailsBuilder/value.html new file mode 100644 index 0000000000..e3134fcb0f --- /dev/null +++ b/docs/models/CameraDetailsBuilder/value.html @@ -0,0 +1,139 @@ + + + + + + + + value property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ CameraDetails + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+	CameraDetails get value => CameraDetails(
+		resolutionHeight: resolutionHeight.value,
+		resolutionWidth: resolutionWidth.value,
+		quality: quality.value,
+		fps: fps.value,
+		name: name,
+		status: status,
+  focus: 0,
+  zoom: 100,
+  pan: 0,
+  tilt: 0,
+  autofocus: true,
+	);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ColorBuilder-class-sidebar.html b/docs/models/ColorBuilder-class-sidebar.html new file mode 100644 index 0000000000..2a8c2b1091 --- /dev/null +++ b/docs/models/ColorBuilder-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  1. Constructors
  2. +
  3. ColorBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. blink
  8. +
  9. color
  10. +
  11. errorText
  12. +
  13. hashCode
  14. +
  15. hasListeners
  16. +
  17. isLoading
  18. +
  19. runtimeType
  20. + +
  21. Methods
  22. +
  23. addListener
  24. +
  25. dispose
  26. +
  27. noSuchMethod
  28. +
  29. notifyListeners
  30. +
  31. removeListener
  32. +
  33. setColor
  34. +
  35. toString
  36. +
  37. updateBlink
  38. +
  39. updateColor
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/models/ColorBuilder-class.html b/docs/models/ColorBuilder-class.html new file mode 100644 index 0000000000..7a38031b50 --- /dev/null +++ b/docs/models/ColorBuilder-class.html @@ -0,0 +1,377 @@ + + + + + + + + ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ColorBuilder
+ +
+ +
+
+
+
+
+ +

ColorBuilder class + +

+ + +
+

A view model to modify a color and send it to the rover.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ ColorBuilder() +
+
+ Sets color to the rover's current color. +
+
+
+ +
+

Properties

+
+ +
+ Whether the LED strip should blink this color. +
getter/setter pair
+ +
+ +
+ color + ProtoColor + + +
+
+ The color being chosen. +
getter/setter pair
+ +
+ +
+ errorText + ↔ String? + + +
+
+ The error when calling setColor, if any. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isLoading + ↔ bool + + +
+
+ Whether setColor is still running. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ setColor() + → Future<bool> + + + +
+
+ Sends the color to the rover. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ + +
+ Updates blink. + + +
+ +
+ updateColor(Set<ProtoColor>? value) + → void + + + +
+
+ Updates the color being chosen. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ColorBuilder/ColorBuilder.html b/docs/models/ColorBuilder/ColorBuilder.html new file mode 100644 index 0000000000..7d00270c3f --- /dev/null +++ b/docs/models/ColorBuilder/ColorBuilder.html @@ -0,0 +1,112 @@ + + + + + + + + ColorBuilder constructor - ColorBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ColorBuilder
+ +
+ +
+
+
+
+
+ +

ColorBuilder constructor +

+ +
+ + ColorBuilder() +
+ +
+

Sets color to the rover's current color.

+
+ + + +
+

Implementation

+
ColorBuilder() :
+    color = models.rover.metrics.drive.data.color;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ColorBuilder/blink.html b/docs/models/ColorBuilder/blink.html new file mode 100644 index 0000000000..97dc7fe7c0 --- /dev/null +++ b/docs/models/ColorBuilder/blink.html @@ -0,0 +1,115 @@ + + + + + + + + blink property - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
blink
+ +
+ +
+
+
+
+
+ +

blink property +

+ + +
+ + bool + blink +
getter/setter pair
+ +
+ +
+

Whether the LED strip should blink this color.

+
+ + +
+

Implementation

+
bool blink = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ColorBuilder/color.html b/docs/models/ColorBuilder/color.html new file mode 100644 index 0000000000..9f79879151 --- /dev/null +++ b/docs/models/ColorBuilder/color.html @@ -0,0 +1,115 @@ + + + + + + + + color property - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
color
+ +
+ +
+
+
+
+
+ +

color property +

+ + +
+ + ProtoColor + color +
getter/setter pair
+ +
+ +
+

The color being chosen.

+
+ + +
+

Implementation

+
ProtoColor color;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ColorBuilder/errorText.html b/docs/models/ColorBuilder/errorText.html new file mode 100644 index 0000000000..4f0d8382e8 --- /dev/null +++ b/docs/models/ColorBuilder/errorText.html @@ -0,0 +1,115 @@ + + + + + + + + errorText property - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
errorText
+ +
+ +
+
+
+
+
+ +

errorText property +

+ + +
+ + String? + errorText +
getter/setter pair
+ +
+ +
+

The error when calling setColor, if any.

+
+ + +
+

Implementation

+
String? errorText;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ColorBuilder/isLoading.html b/docs/models/ColorBuilder/isLoading.html new file mode 100644 index 0000000000..a0558879e0 --- /dev/null +++ b/docs/models/ColorBuilder/isLoading.html @@ -0,0 +1,115 @@ + + + + + + + + isLoading property - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isLoading
+ +
+ +
+
+
+
+
+ +

isLoading property +

+ + +
+ + bool + isLoading +
getter/setter pair
+ +
+ +
+

Whether setColor is still running.

+
+ + +
+

Implementation

+
bool isLoading = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ColorBuilder/setColor.html b/docs/models/ColorBuilder/setColor.html new file mode 100644 index 0000000000..eb522e521a --- /dev/null +++ b/docs/models/ColorBuilder/setColor.html @@ -0,0 +1,123 @@ + + + + + + + + setColor method - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setColor
+ +
+ +
+
+
+
+
+ +

setColor method +

+ +
+ +Future<bool> +setColor() + + + +
+ +
+

Sends the color to the rover.

+
+ + + +
+

Implementation

+
Future<bool> setColor() async {
+		isLoading = true;
+		notifyListeners();
+		final result = await models.rover.settings.setColor(color, blink: blink);
+		errorText = result ? null : "The rover did not accept this command";
+		isLoading = false;
+		notifyListeners();
+		return result;
+	}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ColorBuilder/updateBlink.html b/docs/models/ColorBuilder/updateBlink.html new file mode 100644 index 0000000000..31897d5ac7 --- /dev/null +++ b/docs/models/ColorBuilder/updateBlink.html @@ -0,0 +1,121 @@ + + + + + + + + updateBlink method - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateBlink
+ +
+ +
+
+
+
+
+ +

updateBlink method +

+ +
+ +void +updateBlink(
  1. bool? value
  2. +
) + + + +
+ +
+

Updates blink.

+
+ + + +
+

Implementation

+
// ignore: avoid_positional_boolean_parameters
+void updateBlink(bool? value) {
+  if (value == null) return;
+  blink = value;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ColorBuilder/updateColor.html b/docs/models/ColorBuilder/updateColor.html new file mode 100644 index 0000000000..9e49072ca3 --- /dev/null +++ b/docs/models/ColorBuilder/updateColor.html @@ -0,0 +1,120 @@ + + + + + + + + updateColor method - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateColor
+ +
+ +
+
+
+
+
+ +

updateColor method +

+ +
+ +void +updateColor(
  1. Set<ProtoColor>? value
  2. +
) + + + +
+ +
+

Updates the color being chosen.

+
+ + + +
+

Implementation

+
void updateColor(Set<ProtoColor>? value) {
+  if (value == null) return;
+  color = value.isEmpty ? ProtoColor.UNLIT : value.first;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller-class-sidebar.html b/docs/models/Controller-class-sidebar.html new file mode 100644 index 0000000000..423778826d --- /dev/null +++ b/docs/models/Controller-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. Controller
  4. + + + +
  5. + Properties +
  6. +
  7. controls
  8. +
  9. gamepad
  10. +
  11. gamepadTimer
  12. +
  13. hashCode
  14. +
  15. hasListeners
  16. +
  17. index
  18. +
  19. isConnected
  20. +
  21. mode
  22. +
  23. runtimeType
  24. + +
  25. Methods
  26. +
  27. addListener
  28. +
  29. connect
  30. +
  31. dispose
  32. +
  33. init
  34. +
  35. noSuchMethod
  36. +
  37. notifyListeners
  38. +
  39. otherControllerIs
  40. +
  41. removeListener
  42. +
  43. setMode
  44. +
  45. setModeIndex
  46. +
  47. toString
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/models/Controller-class.html b/docs/models/Controller-class.html new file mode 100644 index 0000000000..5a5e795c4f --- /dev/null +++ b/docs/models/Controller-class.html @@ -0,0 +1,434 @@ + + + + + + + + Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Controller
+ +
+ +
+
+
+
+
+ +

Controller class + +

+ + +
+

Uses the gamepad to control the rover.

+

Each gamepad can only control one subsystem at a time, so this class uses controls to +keep track of what each button does in the current OperatingMode.

+

Once every gamepadDelay, the gamepadTimer will trigger, which _updates the gamepad and +call RoverControls.parseInputs to see what actions can be done. Each command is then sent +with MessagesModel.sendMessage, which will either send them over the network or via serial.

+
+ + +
+
+ +
Inheritance
+
+
    +
  • Object
  • +
  • Model
  • +
  • Controller
  • +
+
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ Controller(int index, RoverControls controls) +
+
+ Maps button presses on gamepad to controls. +
+
+
+ +
+

Properties

+
+
+ controls + RoverControls + + +
+
+ Defines what the current controls are for the current mode. +
getter/setter pair
+ +
+ +
+ gamepad + Gamepad + + +
+
+ The gamepad to read from. +
no setter
+ +
+ +
+ gamepadTimer + ↔ Timer + + +
+
+ Reads the gamepad and controls the rover when triggered. +
latefinal
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ The index of the gamepad to read from. Does not match Gamepad.controllerIndex. +
final
+ +
+ +
+ isConnected + → bool + + +
+
+ Whether this controller is ready to use. +
no setter
+ +
+ +
+ mode + OperatingMode + + +
+
+ The current operating mode. +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ connect() + → Future<void> + + + +
+
+ Connects the gamepad to the user's device. + + +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ otherControllerIs(OperatingMode mode) + → bool + + + +
+
+ Returns Whether another controller is set to the given mode. + + +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ setMode(OperatingMode? mode) + → void + + + +
+
+ Changes the current mode this gamepad is controlling, and chooses a new RoverControls. + + +
+ +
+ setModeIndex(int index) + → void + + + +
+
+ Same as setMode, but uses OperatingMode.index instead. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/Controller.html b/docs/models/Controller/Controller.html new file mode 100644 index 0000000000..899d783161 --- /dev/null +++ b/docs/models/Controller/Controller.html @@ -0,0 +1,113 @@ + + + + + + + + Controller constructor - Controller - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Controller
+ +
+ +
+
+
+
+
+ +

Controller constructor +

+ +
+ + Controller(
  1. int index,
  2. +
  3. RoverControls controls
  4. +
) +
+ +
+

Maps button presses on gamepad to controls.

+
+ + + +
+

Implementation

+
Controller(this.index, this.controls);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/connect.html b/docs/models/Controller/connect.html new file mode 100644 index 0000000000..f07ea3eecf --- /dev/null +++ b/docs/models/Controller/connect.html @@ -0,0 +1,123 @@ + + + + + + + + connect method - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
connect
+ +
+ +
+
+
+
+
+ +

connect method +

+ +
+ +Future<void> +connect() + + + +
+ +
+

Connects the gamepad to the user's device.

+
+ + + +
+

Implementation

+
Future<void> connect() async {
+  await services.gamepad.connect(index);
+  if (gamepad.isConnected) {
+    models.home.setMessage(severity: Severity.info, text: "Connected to gamepad");
+  } else {
+    models.home.setMessage(severity: Severity.error, text: "No gamepad connected");
+  }
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/controls.html b/docs/models/Controller/controls.html new file mode 100644 index 0000000000..9903247c06 --- /dev/null +++ b/docs/models/Controller/controls.html @@ -0,0 +1,115 @@ + + + + + + + + controls property - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
controls
+ +
+ +
+
+
+
+
+ +

controls property +

+ + +
+ + RoverControls + controls +
getter/setter pair
+ +
+ +
+

Defines what the current controls are for the current mode.

+
+ + +
+

Implementation

+
RoverControls controls;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/dispose.html b/docs/models/Controller/dispose.html new file mode 100644 index 0000000000..99b79ded44 --- /dev/null +++ b/docs/models/Controller/dispose.html @@ -0,0 +1,132 @@ + + + + + + + + dispose method - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+  gamepadTimer.cancel();
+  models.settings.removeListener(notifyListeners);
+  controls.onDispose.forEach(models.messages.sendMessage);
+  super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/gamepad.html b/docs/models/Controller/gamepad.html new file mode 100644 index 0000000000..e99a2de913 --- /dev/null +++ b/docs/models/Controller/gamepad.html @@ -0,0 +1,121 @@ + + + + + + + + gamepad property - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gamepad
+ +
+ +
+
+
+
+
+ +

gamepad property +

+ + + + + +
+
+ + Gamepad + get + gamepad + + +
+ +
+

The gamepad to read from.

+
+ + +
+

Implementation

+
Gamepad get gamepad => services.gamepad.gamepads[index];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/gamepadTimer.html b/docs/models/Controller/gamepadTimer.html new file mode 100644 index 0000000000..9812fa4be4 --- /dev/null +++ b/docs/models/Controller/gamepadTimer.html @@ -0,0 +1,115 @@ + + + + + + + + gamepadTimer property - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gamepadTimer
+ +
+ +
+
+
+
+
+ +

gamepadTimer property +

+ + +
+ + Timer + gamepadTimer +
latefinal
+ +
+ +
+

Reads the gamepad and controls the rover when triggered.

+
+ + +
+

Implementation

+
late final Timer gamepadTimer;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/index.html b/docs/models/Controller/index.html new file mode 100644 index 0000000000..0a20e0b923 --- /dev/null +++ b/docs/models/Controller/index.html @@ -0,0 +1,115 @@ + + + + + + + + index property - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+ +

index property +

+ + +
+ + int + index +
final
+ +
+ +
+

The index of the gamepad to read from. Does not match Gamepad.controllerIndex.

+
+ + +
+

Implementation

+
final int index;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/init.html b/docs/models/Controller/init.html new file mode 100644 index 0000000000..e78b658723 --- /dev/null +++ b/docs/models/Controller/init.html @@ -0,0 +1,124 @@ + + + + + + + + init method - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
override
+ +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+  gamepadTimer = Timer.periodic(gamepadDelay, _update);
+  models.settings.addListener(notifyListeners);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/isConnected.html b/docs/models/Controller/isConnected.html new file mode 100644 index 0000000000..a245d155d6 --- /dev/null +++ b/docs/models/Controller/isConnected.html @@ -0,0 +1,121 @@ + + + + + + + + isConnected property - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isConnected
+ +
+ +
+
+
+
+
+ +

isConnected property +

+ + + + + +
+
+ + bool + get + isConnected + + +
+ +
+

Whether this controller is ready to use.

+
+ + +
+

Implementation

+
bool get isConnected => gamepad.isConnected;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/mode.html b/docs/models/Controller/mode.html new file mode 100644 index 0000000000..8549401b6f --- /dev/null +++ b/docs/models/Controller/mode.html @@ -0,0 +1,121 @@ + + + + + + + + mode property - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
mode
+ +
+ +
+
+
+
+
+ +

mode property +

+ + + + + +
+
+ + OperatingMode + get + mode + + +
+ +
+

The current operating mode.

+
+ + +
+

Implementation

+
OperatingMode get mode => controls.mode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/otherControllerIs.html b/docs/models/Controller/otherControllerIs.html new file mode 100644 index 0000000000..842d9810f6 --- /dev/null +++ b/docs/models/Controller/otherControllerIs.html @@ -0,0 +1,117 @@ + + + + + + + + otherControllerIs method - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
otherControllerIs
+ +
+ +
+
+
+
+
+ +

otherControllerIs method +

+ +
+ +bool +otherControllerIs(
  1. OperatingMode mode
  2. +
) + + + +
+ +
+

Returns Whether another controller is set to the given mode.

+
+ + + +
+

Implementation

+
bool otherControllerIs(OperatingMode mode) => models.rover.controllers
+  .any((other) => other.index != index && other.mode == mode);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/setMode.html b/docs/models/Controller/setMode.html new file mode 100644 index 0000000000..2ae85e9442 --- /dev/null +++ b/docs/models/Controller/setMode.html @@ -0,0 +1,135 @@ + + + + + + + + setMode method - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setMode
+ +
+ +
+
+
+
+
+ +

setMode method +

+ +
+ +void +setMode(
  1. OperatingMode? mode
  2. +
) + + + +
+ +
+

Changes the current mode this gamepad is controlling, and chooses a new RoverControls.

+
+ + + +
+

Implementation

+
void setMode(OperatingMode? mode) {
+  if (mode == null) return;
+  if (mode != OperatingMode.none && otherControllerIs(mode)) {
+    models.home.setMessage(severity: Severity.error, text: "Another controller is set to that mode");
+    return;
+  } else if (mode == OperatingMode.drive && otherControllerIs(OperatingMode.modernDrive)) {
+    models.home.setMessage(severity: Severity.error, text: "Cannot use both tank and drive controls");
+    return;
+  } else if (mode == OperatingMode.modernDrive && otherControllerIs(OperatingMode.drive)) {
+    models.home.setMessage(severity: Severity.error, text: "Cannot use both tank and drive controls");
+    return;
+  } else if (mode == OperatingMode.cameras && !models.settings.dashboard.splitCameras) {
+    models.home.setMessage(severity: Severity.error, text: "Enable split camera controls in the settings");
+    return;
+  }
+  controls.onDispose.forEach(models.messages.sendMessage);
+  controls = RoverControls.forMode(mode);
+  gamepad.pulse();
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Controller/setModeIndex.html b/docs/models/Controller/setModeIndex.html new file mode 100644 index 0000000000..5f60d3f626 --- /dev/null +++ b/docs/models/Controller/setModeIndex.html @@ -0,0 +1,116 @@ + + + + + + + + setModeIndex method - Controller class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setModeIndex
+ +
+ +
+
+
+
+
+ +

setModeIndex method +

+ +
+ +void +setModeIndex(
  1. int index
  2. +
) + + + +
+ +
+

Same as setMode, but uses OperatingMode.index instead.

+
+ + + +
+

Implementation

+
void setModeIndex(int index) => setMode(OperatingMode.values[index]);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder-class-sidebar.html b/docs/models/DashboardSettingsBuilder-class-sidebar.html new file mode 100644 index 0000000000..b8e41a2e84 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder-class-sidebar.html @@ -0,0 +1,46 @@ +
    + +
  1. Constructors
  2. +
  3. DashboardSettingsBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. blockSize
  8. +
  9. fps
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. isValid
  16. +
  17. otherBuilders
  18. +
  19. preferTankControls
  20. +
  21. runtimeType
  22. +
  23. splitCameras
  24. +
  25. splitMode
  26. +
  27. themeMode
  28. +
  29. value
  30. +
  31. versionChecking
  32. + +
  33. Methods
  34. +
  35. addListener
  36. +
  37. dispose
  38. +
  39. noSuchMethod
  40. +
  41. notifyListeners
  42. +
  43. removeListener
  44. +
  45. toString
  46. +
  47. updateCameras
  48. +
  49. updateSplitMode
  50. +
  51. updateTank
  52. +
  53. updateThemeMode
  54. +
  55. updateVersionChecking
  56. + +
  57. Operators
  58. +
  59. operator ==
  60. + + + + + + +
diff --git a/docs/models/DashboardSettingsBuilder-class.html b/docs/models/DashboardSettingsBuilder-class.html new file mode 100644 index 0000000000..507e75c835 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder-class.html @@ -0,0 +1,477 @@ + + + + + + + + DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DashboardSettingsBuilder
+ +
+ +
+
+
+
+
+ +

DashboardSettingsBuilder class + +

+ + +
+

A ValueBuilder that modifies a DashboardSettings.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ DashboardSettingsBuilder(DashboardSettings initial) +
+
+ Modifies the given DashboardSettings. +
+
+
+ +
+

Properties

+
+
+ blockSize + NumberBuilder<double> + + +
+
+ The precision of the GPS grid. See DashboardSettings.mapBlockSize. +
final
+ +
+ +
+ fps + NumberBuilder<int> + + +
+
+ The builder for the FPS count. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ otherBuilders + → List<ChangeNotifier> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ preferTankControls + ↔ bool + + +
+
+ Whether to default to tank controls. See DashboardSettings.preferTankControls. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ splitCameras + ↔ bool + + +
+
+ Whether to split cameras into their own controls. See DashboardSettings.splitCameras. +
getter/setter pair
+ +
+ +
+ splitMode + SplitMode + + +
+
+ How the Dashboard should split when only two views are present. +
getter/setter pair
+ +
+ +
+ themeMode + ThemeMode + + +
+
+ The theme of the Dashboard. See DashboardSettings.themeMode. +
getter/setter pair
+ +
+ +
+ value + DashboardSettings + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+ versionChecking + ↔ bool + + +
+
+ Whether to use version checking. See DashboardSettings.versionChecking. +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateCameras(bool? input) + → void + + + +
+
+ Updates splitCameras. + + +
+ +
+ updateSplitMode(SplitMode? mode) + → void + + + +
+
+ Updates the splitMode when a new one is selected. + + +
+ +
+ updateTank(bool? input) + → void + + + +
+
+ Updates preferTankControls. + + +
+ +
+ updateThemeMode(ThemeMode? input) + → void + + + +
+
+ Updates the themeMode. + + +
+ +
+ updateVersionChecking(bool? input) + → void + + + +
+
+ Updates versionChecking. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/DashboardSettingsBuilder.html b/docs/models/DashboardSettingsBuilder/DashboardSettingsBuilder.html new file mode 100644 index 0000000000..be842a18b8 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/DashboardSettingsBuilder.html @@ -0,0 +1,119 @@ + + + + + + + + DashboardSettingsBuilder constructor - DashboardSettingsBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DashboardSettingsBuilder
+ +
+ +
+
+
+
+
+ +

DashboardSettingsBuilder constructor +

+ +
+ + DashboardSettingsBuilder(
  1. DashboardSettings initial
  2. +
) +
+ +
+

Modifies the given DashboardSettings.

+
+ + + +
+

Implementation

+
DashboardSettingsBuilder(DashboardSettings initial) :
+	fps = NumberBuilder(initial.maxFps),
+	blockSize = NumberBuilder(initial.mapBlockSize),
+    splitMode = initial.splitMode,
+    splitCameras = initial.splitCameras,
+    preferTankControls = initial.preferTankControls,
+    versionChecking = initial.versionChecking,
+    themeMode = initial.themeMode;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/blockSize.html b/docs/models/DashboardSettingsBuilder/blockSize.html new file mode 100644 index 0000000000..e4f13be7bd --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/blockSize.html @@ -0,0 +1,115 @@ + + + + + + + + blockSize property - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
blockSize
+ +
+ +
+
+
+
+
+ +

blockSize property +

+ + +
+ + NumberBuilder<double> + blockSize +
final
+ +
+ +
+

The precision of the GPS grid. See DashboardSettings.mapBlockSize.

+
+ + +
+

Implementation

+
final NumberBuilder<double> blockSize;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/fps.html b/docs/models/DashboardSettingsBuilder/fps.html new file mode 100644 index 0000000000..c1fa90b3c9 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/fps.html @@ -0,0 +1,115 @@ + + + + + + + + fps property - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
fps
+ +
+ +
+
+
+
+
+ +

fps property +

+ + +
+ + NumberBuilder<int> + fps +
final
+ +
+ +
+

The builder for the FPS count.

+
+ + +
+

Implementation

+
final NumberBuilder<int> fps;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/isValid.html b/docs/models/DashboardSettingsBuilder/isValid.html new file mode 100644 index 0000000000..637d13107d --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/isValid.html @@ -0,0 +1,128 @@ + + + + + + + + isValid property - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => fps.isValid && blockSize.isValid;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/preferTankControls.html b/docs/models/DashboardSettingsBuilder/preferTankControls.html new file mode 100644 index 0000000000..f2afbe41fa --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/preferTankControls.html @@ -0,0 +1,115 @@ + + + + + + + + preferTankControls property - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
preferTankControls
+ +
+ +
+
+
+
+
+ +

preferTankControls property +

+ + +
+ + bool + preferTankControls +
getter/setter pair
+ +
+ +
+

Whether to default to tank controls. See DashboardSettings.preferTankControls.

+
+ + +
+

Implementation

+
bool preferTankControls;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/splitCameras.html b/docs/models/DashboardSettingsBuilder/splitCameras.html new file mode 100644 index 0000000000..b6642b2c3d --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/splitCameras.html @@ -0,0 +1,115 @@ + + + + + + + + splitCameras property - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
splitCameras
+ +
+ +
+
+
+
+
+ +

splitCameras property +

+ + +
+ + bool + splitCameras +
getter/setter pair
+ +
+ +
+

Whether to split cameras into their own controls. See DashboardSettings.splitCameras.

+
+ + +
+

Implementation

+
bool splitCameras;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/splitMode.html b/docs/models/DashboardSettingsBuilder/splitMode.html new file mode 100644 index 0000000000..7d910b7806 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/splitMode.html @@ -0,0 +1,115 @@ + + + + + + + + splitMode property - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
splitMode
+ +
+ +
+
+
+
+
+ +

splitMode property +

+ + +
+ + SplitMode + splitMode +
getter/setter pair
+ +
+ +
+

How the Dashboard should split when only two views are present.

+
+ + +
+

Implementation

+
SplitMode splitMode;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/themeMode.html b/docs/models/DashboardSettingsBuilder/themeMode.html new file mode 100644 index 0000000000..54841a3947 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/themeMode.html @@ -0,0 +1,115 @@ + + + + + + + + themeMode property - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
themeMode
+ +
+ +
+
+
+
+
+ +

themeMode property +

+ + +
+ + ThemeMode + themeMode +
getter/setter pair
+ +
+ +
+

The theme of the Dashboard. See DashboardSettings.themeMode.

+
+ + +
+

Implementation

+
ThemeMode themeMode;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/updateCameras.html b/docs/models/DashboardSettingsBuilder/updateCameras.html new file mode 100644 index 0000000000..5db0855b0b --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/updateCameras.html @@ -0,0 +1,120 @@ + + + + + + + + updateCameras method - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateCameras
+ +
+ +
+
+
+
+
+ +

updateCameras method +

+ +
+ +void +updateCameras(
  1. bool? input
  2. +
) + + + +
+ +
+

Updates splitCameras.

+
+ + + +
+

Implementation

+
void updateCameras(bool? input) {  // ignore: avoid_positional_boolean_parameters
+  if (input == null) return;
+  splitCameras = input;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/updateSplitMode.html b/docs/models/DashboardSettingsBuilder/updateSplitMode.html new file mode 100644 index 0000000000..5bbeb6726d --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/updateSplitMode.html @@ -0,0 +1,120 @@ + + + + + + + + updateSplitMode method - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateSplitMode
+ +
+ +
+
+
+
+
+ +

updateSplitMode method +

+ +
+ +void +updateSplitMode(
  1. SplitMode? mode
  2. +
) + + + +
+ +
+

Updates the splitMode when a new one is selected.

+
+ + + +
+

Implementation

+
void updateSplitMode(SplitMode? mode) {
+  if (mode == null) return;
+  splitMode = mode;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/updateTank.html b/docs/models/DashboardSettingsBuilder/updateTank.html new file mode 100644 index 0000000000..41f1b69834 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/updateTank.html @@ -0,0 +1,120 @@ + + + + + + + + updateTank method - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateTank
+ +
+ +
+
+
+
+
+ +

updateTank method +

+ +
+ +void +updateTank(
  1. bool? input
  2. +
) + + + +
+ +
+

Updates preferTankControls.

+
+ + + +
+

Implementation

+
void updateTank(bool? input) {  // ignore: avoid_positional_boolean_parameters
+  if (input == null) return;
+  preferTankControls = input;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/updateThemeMode.html b/docs/models/DashboardSettingsBuilder/updateThemeMode.html new file mode 100644 index 0000000000..63afa1d435 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/updateThemeMode.html @@ -0,0 +1,120 @@ + + + + + + + + updateThemeMode method - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateThemeMode
+ +
+ +
+
+
+
+
+ +

updateThemeMode method +

+ +
+ +void +updateThemeMode(
  1. ThemeMode? input
  2. +
) + + + +
+ +
+

Updates the themeMode.

+
+ + + +
+

Implementation

+
void updateThemeMode(ThemeMode? input) {
+  if (input == null) return;
+  themeMode = input;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/updateVersionChecking.html b/docs/models/DashboardSettingsBuilder/updateVersionChecking.html new file mode 100644 index 0000000000..c41911c15a --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/updateVersionChecking.html @@ -0,0 +1,120 @@ + + + + + + + + updateVersionChecking method - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateVersionChecking
+ +
+ +
+
+
+
+
+ +

updateVersionChecking method +

+ +
+ +void +updateVersionChecking(
  1. bool? input
  2. +
) + + + +
+ +
+

Updates versionChecking.

+
+ + + +
+

Implementation

+
void updateVersionChecking(bool? input){ // ignore: avoid_positional_boolean_parameters
+  if (input == null) return;
+  versionChecking = input;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/value.html b/docs/models/DashboardSettingsBuilder/value.html new file mode 100644 index 0000000000..ec9e301b44 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/value.html @@ -0,0 +1,135 @@ + + + + + + + + value property - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ DashboardSettings + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+DashboardSettings get value => DashboardSettings(
+  maxFps: fps.value,
+  mapBlockSize: blockSize.value,
+  splitMode: splitMode,
+  themeMode: themeMode,
+  splitCameras: splitCameras,
+  preferTankControls: preferTankControls,
+  versionChecking: versionChecking,
+);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/versionChecking.html b/docs/models/DashboardSettingsBuilder/versionChecking.html new file mode 100644 index 0000000000..571d0be028 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/versionChecking.html @@ -0,0 +1,115 @@ + + + + + + + + versionChecking property - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
versionChecking
+ +
+ +
+
+
+
+
+ +

versionChecking property +

+ + +
+ + bool + versionChecking +
getter/setter pair
+ +
+ +
+

Whether to use version checking. See DashboardSettings.versionChecking.

+
+ + +
+

Implementation

+
bool versionChecking;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DriveControls-class-sidebar.html b/docs/models/DriveControls-class-sidebar.html new file mode 100644 index 0000000000..7fb9707d84 --- /dev/null +++ b/docs/models/DriveControls-class-sidebar.html @@ -0,0 +1,34 @@ +
    + +
  1. Constructors
  2. +
  3. DriveControls
  4. + + + +
  5. + Properties +
  6. +
  7. buttonMapping
  8. +
  9. hashCode
  10. +
  11. leftShoulderFlag
  12. +
  13. mode
  14. +
  15. onDispose
  16. +
  17. rightShoulderFlag
  18. +
  19. runtimeType
  20. +
  21. throttle
  22. + +
  23. Methods
  24. +
  25. noSuchMethod
  26. +
  27. parseInputs
  28. +
  29. toString
  30. +
  31. updateState
  32. + +
  33. Operators
  34. +
  35. operator ==
  36. + + + + + + +
diff --git a/docs/models/DriveControls-class.html b/docs/models/DriveControls-class.html new file mode 100644 index 0000000000..cae0308ace --- /dev/null +++ b/docs/models/DriveControls-class.html @@ -0,0 +1,323 @@ + + + + + + + + DriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveControls
+ +
+ +
+
+
+
+
+ +

DriveControls class + +

+ + +
+

The skid-steer drive controls.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ DriveControls() +
+
+ +
+
+
+ +
+

Properties

+
+
+ buttonMapping + → Map<String, String> + + +
+
+ A human-readable explanation of what the controls are. +
no setteroverride
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ leftShoulderFlag + ↔ bool + + +
+
+ Whether the left shoulder was pressed last tick. +
getter/setter pair
+ +
+ +
+ mode + OperatingMode + + +
+
+ The OperatingMode for these controls. +
no setteroverride
+ +
+ +
+ onDispose + → List<Message> + + +
+
+ A list of commands that disables the subsystem. +
no setteroverride
+ +
+ +
+ rightShoulderFlag + ↔ bool + + +
+
+ Whether the right shoulder was pressed last tick. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ throttle + ↔ double + + +
+
+ The throttle the rover should be at. +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ parseInputs(GamepadState state) + → List<Message> + + + +
+
+ Return a list of commands based on the current state of the gamepad. +
override
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateState(GamepadState state) + → void + + + +
+
+ Any logic to run before checking parseInputs. +
override
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DriveControls/DriveControls.html b/docs/models/DriveControls/DriveControls.html new file mode 100644 index 0000000000..958adecfd7 --- /dev/null +++ b/docs/models/DriveControls/DriveControls.html @@ -0,0 +1,104 @@ + + + + + + + + DriveControls constructor - DriveControls - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DriveControls
+ +
+ +
+
+
+
+
+ +

DriveControls constructor +

+ +
+ + DriveControls() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DriveControls/buttonMapping.html b/docs/models/DriveControls/buttonMapping.html new file mode 100644 index 0000000000..ef0bb50869 --- /dev/null +++ b/docs/models/DriveControls/buttonMapping.html @@ -0,0 +1,133 @@ + + + + + + + + buttonMapping property - DriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonMapping
+ +
+ +
+
+
+
+
+ +

buttonMapping property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + get + buttonMapping +
override
+ +
+ +
+

A human-readable explanation of what the controls are.

+

Keys are the actions, values are the buttons that trigger them.

+
+ + +
+

Implementation

+
@override
+Map<String, String> get buttonMapping => {
+  "Left Throttle": "Left joystick (vertical)",
+  "Right Throttle": "Right joystick (vertical)",
+  "Increase throttle": "Right bumper (R1)",
+  "Decrease throttle": "Left bumper (L1)",
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DriveControls/leftShoulderFlag.html b/docs/models/DriveControls/leftShoulderFlag.html new file mode 100644 index 0000000000..bd191ea16c --- /dev/null +++ b/docs/models/DriveControls/leftShoulderFlag.html @@ -0,0 +1,115 @@ + + + + + + + + leftShoulderFlag property - DriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
leftShoulderFlag
+ +
+ +
+
+
+
+
+ +

leftShoulderFlag property +

+ + +
+ + bool + leftShoulderFlag +
getter/setter pair
+ +
+ +
+

Whether the left shoulder was pressed last tick.

+
+ + +
+

Implementation

+
bool leftShoulderFlag = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DriveControls/mode.html b/docs/models/DriveControls/mode.html new file mode 100644 index 0000000000..7f09579f5a --- /dev/null +++ b/docs/models/DriveControls/mode.html @@ -0,0 +1,127 @@ + + + + + + + + mode property - DriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
mode
+ +
+ +
+
+
+
+
+ +

mode property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + get + mode +
override
+ +
+ +
+

The OperatingMode for these controls.

+
+ + +
+

Implementation

+
@override
+OperatingMode get mode => OperatingMode.drive;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DriveControls/onDispose.html b/docs/models/DriveControls/onDispose.html new file mode 100644 index 0000000000..a604ecd7b9 --- /dev/null +++ b/docs/models/DriveControls/onDispose.html @@ -0,0 +1,132 @@ + + + + + + + + onDispose property - DriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onDispose
+ +
+ +
+
+
+
+
+ +

onDispose property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + get + onDispose +
override
+ +
+ +
+

A list of commands that disables the subsystem.

+

For example, after driving this should set the speed to 0.

+
+ + +
+

Implementation

+
@override
+List<Message> get onDispose => [
+  DriveCommand(setThrottle: true, throttle: 0),
+  DriveCommand(setLeft: true, left: 0),
+  DriveCommand(setRight: true, right: 0),
+];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DriveControls/parseInputs.html b/docs/models/DriveControls/parseInputs.html new file mode 100644 index 0000000000..4b1837c3b8 --- /dev/null +++ b/docs/models/DriveControls/parseInputs.html @@ -0,0 +1,126 @@ + + + + + + + + parseInputs method - DriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseInputs
+ +
+ +
+
+
+
+
+ +

parseInputs method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+List<Message> +parseInputs(
  1. GamepadState state
  2. +
) + +
override
+ +
+ +
+

Return a list of commands based on the current state of the gamepad.

+
+ + + +
+

Implementation

+
@override
+List<Message> parseInputs(GamepadState state) => [
+  DriveCommand(throttle: throttle, setThrottle: true),
+  DriveCommand(setLeft: true, left: state.normalLeftY),
+  DriveCommand(setRight: true, right: -1*state.normalRightY),
+];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DriveControls/rightShoulderFlag.html b/docs/models/DriveControls/rightShoulderFlag.html new file mode 100644 index 0000000000..9a305ba834 --- /dev/null +++ b/docs/models/DriveControls/rightShoulderFlag.html @@ -0,0 +1,115 @@ + + + + + + + + rightShoulderFlag property - DriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rightShoulderFlag
+ +
+ +
+
+
+
+
+ +

rightShoulderFlag property +

+ + +
+ + bool + rightShoulderFlag +
getter/setter pair
+ +
+ +
+

Whether the right shoulder was pressed last tick.

+
+ + +
+

Implementation

+
bool rightShoulderFlag = true;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DriveControls/throttle.html b/docs/models/DriveControls/throttle.html new file mode 100644 index 0000000000..57ff7f10e5 --- /dev/null +++ b/docs/models/DriveControls/throttle.html @@ -0,0 +1,115 @@ + + + + + + + + throttle property - DriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
throttle
+ +
+ +
+
+
+
+
+ +

throttle property +

+ + +
+ + double + throttle +
getter/setter pair
+ +
+ +
+

The throttle the rover should be at.

+
+ + +
+

Implementation

+
double throttle = 0;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/DriveControls/updateState.html b/docs/models/DriveControls/updateState.html new file mode 100644 index 0000000000..2d8d88e49e --- /dev/null +++ b/docs/models/DriveControls/updateState.html @@ -0,0 +1,128 @@ + + + + + + + + updateState method - DriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateState
+ +
+ +
+
+
+
+
+ +

updateState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +updateState(
  1. GamepadState state
  2. +
) + +
override
+ +
+ +
+

Any logic to run before checking parseInputs.

+
+ + + +
+

Implementation

+
@override
+void updateState(GamepadState state) {
+  if (!leftShoulderFlag && state.leftShoulder) throttle -= 0.1;
+  leftShoulderFlag = state.leftShoulder;
+  if (!rightShoulderFlag && state.rightShoulder) throttle += 0.1;
+  rightShoulderFlag = state.rightShoulder;
+  throttle = throttle.clamp(0, 1);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder-class-sidebar.html b/docs/models/EasterEggsSettingsBuilder-class-sidebar.html new file mode 100644 index 0000000000..d91a588b8f --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. EasterEggsSettingsBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. badApple
  8. +
  9. enableClippy
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. isValid
  16. +
  17. otherBuilders
  18. +
  19. runtimeType
  20. +
  21. segaIntro
  22. +
  23. segaSound
  24. +
  25. value
  26. + +
  27. Methods
  28. +
  29. addListener
  30. +
  31. dispose
  32. +
  33. noSuchMethod
  34. +
  35. notifyListeners
  36. +
  37. removeListener
  38. +
  39. toString
  40. +
  41. updateBadApple
  42. +
  43. updateClippy
  44. +
  45. updateSegaIntro
  46. +
  47. updateSegaSound
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/models/EasterEggsSettingsBuilder-class.html b/docs/models/EasterEggsSettingsBuilder-class.html new file mode 100644 index 0000000000..0b25cede4d --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder-class.html @@ -0,0 +1,428 @@ + + + + + + + + EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
EasterEggsSettingsBuilder
+ +
+ +
+
+
+
+
+ +

EasterEggsSettingsBuilder class + +

+ + +
+

A ValueBuilder that modifies an EasterEggsSettings.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ EasterEggsSettingsBuilder(EasterEggsSettings initial) +
+
+ Fills in the fields with the given initial settings. +
+
+
+ +
+

Properties

+
+
+ badApple + ↔ bool + + +
+
+ Whether to render Bad Apple in the Map page. See EasterEggsSettings.badApple. +
getter/setter pair
+ +
+ +
+ enableClippy + ↔ bool + + +
+
+ Whether Clippy should appear by log messages. See EasterEggsSettings.enableClippy. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ otherBuilders + → List<ChangeNotifier> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ segaIntro + ↔ bool + + +
+
+ Whether to show a SEGA intro. See EasterEggsSettings.segaIntro. +
getter/setter pair
+ +
+ +
+ segaSound + ↔ bool + + +
+
+ Whether to say "Binghamton" in the SEGA style. See EasterEggsSettings.segaSound. +
getter/setter pair
+ +
+ +
+ value + EasterEggsSettings + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateBadApple(bool input) + → void + + + +
+
+ Updates the value of badApple. + + +
+ +
+ updateClippy(bool input) + → void + + + +
+
+ Updates the value of EasterEggsSettings.enableClippy. + + +
+ +
+ updateSegaIntro(bool input) + → void + + + +
+
+ Updates the value of EasterEggsSettings.segaIntro. + + +
+ +
+ updateSegaSound(bool input) + → void + + + +
+
+ Updates the value of segaSound. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder/EasterEggsSettingsBuilder.html b/docs/models/EasterEggsSettingsBuilder/EasterEggsSettingsBuilder.html new file mode 100644 index 0000000000..6e7b1fd976 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/EasterEggsSettingsBuilder.html @@ -0,0 +1,116 @@ + + + + + + + + EasterEggsSettingsBuilder constructor - EasterEggsSettingsBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
EasterEggsSettingsBuilder
+ +
+ +
+
+
+
+
+ +

EasterEggsSettingsBuilder constructor +

+ +
+ + EasterEggsSettingsBuilder(
  1. EasterEggsSettings initial
  2. +
) +
+ +
+

Fills in the fields with the given initial settings.

+
+ + + +
+

Implementation

+
EasterEggsSettingsBuilder(EasterEggsSettings initial) :
+    badApple = initial.badApple,
+    enableClippy = initial.enableClippy,
+    segaSound = initial.segaSound,
+	segaIntro = initial.segaIntro;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder/badApple.html b/docs/models/EasterEggsSettingsBuilder/badApple.html new file mode 100644 index 0000000000..a505c123a0 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/badApple.html @@ -0,0 +1,115 @@ + + + + + + + + badApple property - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
badApple
+ +
+ +
+
+
+
+
+ +

badApple property +

+ + +
+ + bool + badApple +
getter/setter pair
+ +
+ +
+

Whether to render Bad Apple in the Map page. See EasterEggsSettings.badApple.

+
+ + +
+

Implementation

+
bool badApple;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder/enableClippy.html b/docs/models/EasterEggsSettingsBuilder/enableClippy.html new file mode 100644 index 0000000000..48aa636d37 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/enableClippy.html @@ -0,0 +1,115 @@ + + + + + + + + enableClippy property - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
enableClippy
+ +
+ +
+
+
+
+
+ +

enableClippy property +

+ + +
+ + bool + enableClippy +
getter/setter pair
+ +
+ +
+

Whether Clippy should appear by log messages. See EasterEggsSettings.enableClippy.

+
+ + +
+

Implementation

+
bool enableClippy;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder/isValid.html b/docs/models/EasterEggsSettingsBuilder/isValid.html new file mode 100644 index 0000000000..6b4602b4c1 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/isValid.html @@ -0,0 +1,128 @@ + + + + + + + + isValid property - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => true;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder/segaIntro.html b/docs/models/EasterEggsSettingsBuilder/segaIntro.html new file mode 100644 index 0000000000..3131094a73 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/segaIntro.html @@ -0,0 +1,115 @@ + + + + + + + + segaIntro property - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
segaIntro
+ +
+ +
+
+
+
+
+ +

segaIntro property +

+ + +
+ + bool + segaIntro +
getter/setter pair
+ +
+ +
+

Whether to show a SEGA intro. See EasterEggsSettings.segaIntro.

+
+ + +
+

Implementation

+
bool segaIntro;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder/segaSound.html b/docs/models/EasterEggsSettingsBuilder/segaSound.html new file mode 100644 index 0000000000..fc8c3f72b4 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/segaSound.html @@ -0,0 +1,115 @@ + + + + + + + + segaSound property - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
segaSound
+ +
+ +
+
+
+
+
+ +

segaSound property +

+ + +
+ + bool + segaSound +
getter/setter pair
+ +
+ +
+

Whether to say "Binghamton" in the SEGA style. See EasterEggsSettings.segaSound.

+
+ + +
+

Implementation

+
bool segaSound;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder/updateBadApple.html b/docs/models/EasterEggsSettingsBuilder/updateBadApple.html new file mode 100644 index 0000000000..e45fe987d6 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/updateBadApple.html @@ -0,0 +1,119 @@ + + + + + + + + updateBadApple method - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateBadApple
+ +
+ +
+
+
+
+
+ +

updateBadApple method +

+ +
+ +void +updateBadApple(
  1. bool input
  2. +
) + + + +
+ +
+

Updates the value of badApple.

+
+ + + +
+

Implementation

+
void updateBadApple(bool input) {  // ignore: avoid_positional_boolean_parameters
+  badApple = input;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder/updateClippy.html b/docs/models/EasterEggsSettingsBuilder/updateClippy.html new file mode 100644 index 0000000000..eb4fc1d433 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/updateClippy.html @@ -0,0 +1,119 @@ + + + + + + + + updateClippy method - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateClippy
+ +
+ +
+
+
+
+
+ +

updateClippy method +

+ +
+ +void +updateClippy(
  1. bool input
  2. +
) + + + +
+ +
+

Updates the value of EasterEggsSettings.enableClippy.

+
+ + + +
+

Implementation

+
void updateClippy(bool input) {  // ignore: avoid_positional_boolean_parameters
+  enableClippy = input;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder/updateSegaIntro.html b/docs/models/EasterEggsSettingsBuilder/updateSegaIntro.html new file mode 100644 index 0000000000..483c01f249 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/updateSegaIntro.html @@ -0,0 +1,119 @@ + + + + + + + + updateSegaIntro method - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateSegaIntro
+ +
+ +
+
+
+
+
+ +

updateSegaIntro method +

+ +
+ +void +updateSegaIntro(
  1. bool input
  2. +
) + + + +
+ +
+

Updates the value of EasterEggsSettings.segaIntro.

+
+ + + +
+

Implementation

+
void updateSegaIntro(bool input) {  // ignore: avoid_positional_boolean_parameters
+	segaIntro = input;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder/updateSegaSound.html b/docs/models/EasterEggsSettingsBuilder/updateSegaSound.html new file mode 100644 index 0000000000..929c1cb0ad --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/updateSegaSound.html @@ -0,0 +1,119 @@ + + + + + + + + updateSegaSound method - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateSegaSound
+ +
+ +
+
+
+
+
+ +

updateSegaSound method +

+ +
+ +void +updateSegaSound(
  1. bool input
  2. +
) + + + +
+ +
+

Updates the value of segaSound.

+
+ + + +
+

Implementation

+
void updateSegaSound(bool input) {  // ignore: avoid_positional_boolean_parameters
+  segaSound = input;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder/value.html b/docs/models/EasterEggsSettingsBuilder/value.html new file mode 100644 index 0000000000..b530e0704b --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/value.html @@ -0,0 +1,132 @@ + + + + + + + + value property - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ EasterEggsSettings + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+EasterEggsSettings get value => EasterEggsSettings(
+    segaIntro: segaIntro,
+    segaSound: segaSound,
+    enableClippy: enableClippy,
+    badApple: badApple,
+  );
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel-class-sidebar.html b/docs/models/ElectricalModel-class-sidebar.html new file mode 100644 index 0000000000..7575817e20 --- /dev/null +++ b/docs/models/ElectricalModel-class-sidebar.html @@ -0,0 +1,43 @@ +
    + +
  1. Constructors
  2. +
  3. ElectricalModel
  4. + + + +
  5. + Properties +
  6. +
  7. axis
  8. +
  9. currentReadings
  10. +
  11. firstTimestamp
  12. +
  13. hashCode
  14. +
  15. hasListeners
  16. +
  17. leftSpeeds
  18. +
  19. metrics
  20. +
  21. rightSpeeds
  22. +
  23. runtimeType
  24. +
  25. timer
  26. +
  27. voltageReadings
  28. + +
  29. Methods
  30. +
  31. addListener
  32. +
  33. changeDirection
  34. +
  35. clear
  36. +
  37. dispose
  38. +
  39. noSuchMethod
  40. +
  41. notifyListeners
  42. +
  43. removeListener
  44. +
  45. toString
  46. + +
  47. Operators
  48. +
  49. operator ==
  50. + + + + + + +
  51. Constants
  52. +
  53. maxReadings
  54. +
diff --git a/docs/models/ElectricalModel-class.html b/docs/models/ElectricalModel-class.html new file mode 100644 index 0000000000..c105c7e808 --- /dev/null +++ b/docs/models/ElectricalModel-class.html @@ -0,0 +1,429 @@ + + + + + + + + ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ElectricalModel
+ +
+ +
+
+
+
+
+ +

ElectricalModel class + +

+ + +
+

The view model for the electrical analysis page.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ ElectricalModel() +
+
+ Listens to all the DriveMetrics and updates the UI. +
+
+
+ +
+

Properties

+
+
+ axis + ↔ bool + + +
+
+ Orientation for the graphs on page. true is row, false is column +
getter/setter pair
+ +
+ +
+ currentReadings + → DoubleLinkedQueue<SensorReading> + + +
+
+ Current readings over time. +
final
+ +
+ +
+ firstTimestamp + ↔ DateTime? + + +
+
+ The timestamp of the first or earliest reading. All other timestamps are based on this. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ leftSpeeds + → DoubleLinkedQueue<SensorReading> + + +
+
+ Left speed readings over time. +
final
+ +
+ +
+ metrics + DriveMetrics + + +
+
+ The Metrics model for electrical data. +
no setter
+ +
+ +
+ rightSpeeds + → DoubleLinkedQueue<SensorReading> + + +
+
+ Right speed readings over time. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ timer + ↔ Timer? + + +
+
+ The timer that grabs new data for these graphs. +
getter/setter pair
+ +
+ +
+ voltageReadings + → DoubleLinkedQueue<SensorReading> + + +
+
+ Voltage readings over time. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ changeDirection() + → void + + + +
+
+ Changes the axis that the UI displays the graphs + + +
+ +
+ clear() + → void + + + +
+
+ Clears all the readings from all the samples. + + +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ maxReadings + → const int + + +
+
+ The maximum amount of readings on-screen before the data starts scrolling. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/ElectricalModel.html b/docs/models/ElectricalModel/ElectricalModel.html new file mode 100644 index 0000000000..64f789c11c --- /dev/null +++ b/docs/models/ElectricalModel/ElectricalModel.html @@ -0,0 +1,114 @@ + + + + + + + + ElectricalModel constructor - ElectricalModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ElectricalModel
+ +
+ +
+
+
+
+
+ +

ElectricalModel constructor +

+ +
+ + ElectricalModel() +
+ +
+

Listens to all the DriveMetrics and updates the UI.

+
+ + + +
+

Implementation

+
ElectricalModel() {
+    metrics.addListener(_setFlag);
+    timer = Timer.periodic(const Duration(milliseconds: 10), _updateData);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/axis.html b/docs/models/ElectricalModel/axis.html new file mode 100644 index 0000000000..aa2c346bcf --- /dev/null +++ b/docs/models/ElectricalModel/axis.html @@ -0,0 +1,115 @@ + + + + + + + + axis property - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
axis
+ +
+ +
+
+
+
+
+ +

axis property +

+ + +
+ + bool + axis +
getter/setter pair
+ +
+ +
+

Orientation for the graphs on page. true is row, false is column

+
+ + +
+

Implementation

+
bool axis = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/changeDirection.html b/docs/models/ElectricalModel/changeDirection.html new file mode 100644 index 0000000000..d1d1455676 --- /dev/null +++ b/docs/models/ElectricalModel/changeDirection.html @@ -0,0 +1,118 @@ + + + + + + + + changeDirection method - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
changeDirection
+ +
+ +
+
+
+
+
+ +

changeDirection method +

+ +
+ +void +changeDirection() + + + +
+ +
+

Changes the axis that the UI displays the graphs

+
+ + + +
+

Implementation

+
void changeDirection(){
+  axis = !axis;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/clear.html b/docs/models/ElectricalModel/clear.html new file mode 100644 index 0000000000..74aa0c5e12 --- /dev/null +++ b/docs/models/ElectricalModel/clear.html @@ -0,0 +1,122 @@ + + + + + + + + clear method - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clear
+ +
+ +
+
+
+
+
+ +

clear method +

+ +
+ +void +clear() + + + +
+ +
+

Clears all the readings from all the samples.

+
+ + + +
+

Implementation

+
void clear() {
+    voltageReadings.clear();
+    currentReadings.clear();
+    leftSpeeds.clear();
+    rightSpeeds.clear();
+    firstTimestamp = null;
+    notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/currentReadings.html b/docs/models/ElectricalModel/currentReadings.html new file mode 100644 index 0000000000..7eb97ba248 --- /dev/null +++ b/docs/models/ElectricalModel/currentReadings.html @@ -0,0 +1,115 @@ + + + + + + + + currentReadings property - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
currentReadings
+ +
+ +
+
+
+
+
+ +

currentReadings property +

+ + +
+ + DoubleLinkedQueue<SensorReading> + currentReadings +
final
+ +
+ +
+

Current readings over time.

+
+ + +
+

Implementation

+
final DoubleLinkedQueue<SensorReading> currentReadings = DoubleLinkedQueue<SensorReading>();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/dispose.html b/docs/models/ElectricalModel/dispose.html new file mode 100644 index 0000000000..16a8e9d781 --- /dev/null +++ b/docs/models/ElectricalModel/dispose.html @@ -0,0 +1,131 @@ + + + + + + + + dispose method - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+	metrics.removeListener(_setFlag);
+    timer?.cancel();
+	super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/firstTimestamp.html b/docs/models/ElectricalModel/firstTimestamp.html new file mode 100644 index 0000000000..64569bc427 --- /dev/null +++ b/docs/models/ElectricalModel/firstTimestamp.html @@ -0,0 +1,115 @@ + + + + + + + + firstTimestamp property - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
firstTimestamp
+ +
+ +
+
+
+
+
+ +

firstTimestamp property +

+ + +
+ + DateTime? + firstTimestamp +
getter/setter pair
+ +
+ +
+

The timestamp of the first or earliest reading. All other timestamps are based on this.

+
+ + +
+

Implementation

+
DateTime? firstTimestamp;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/leftSpeeds.html b/docs/models/ElectricalModel/leftSpeeds.html new file mode 100644 index 0000000000..aaeaeaeea4 --- /dev/null +++ b/docs/models/ElectricalModel/leftSpeeds.html @@ -0,0 +1,115 @@ + + + + + + + + leftSpeeds property - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
leftSpeeds
+ +
+ +
+
+
+
+
+ +

leftSpeeds property +

+ + +
+ + DoubleLinkedQueue<SensorReading> + leftSpeeds +
final
+ +
+ +
+

Left speed readings over time.

+
+ + +
+

Implementation

+
final DoubleLinkedQueue<SensorReading> leftSpeeds = DoubleLinkedQueue<SensorReading>();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/maxReadings-constant.html b/docs/models/ElectricalModel/maxReadings-constant.html new file mode 100644 index 0000000000..bb36cbe01a --- /dev/null +++ b/docs/models/ElectricalModel/maxReadings-constant.html @@ -0,0 +1,115 @@ + + + + + + + + maxReadings constant - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
maxReadings
+ +
+ +
+
+
+
+
+ +

maxReadings constant +

+ + +
+ + int + const maxReadings + + +
+ +
+

The maximum amount of readings on-screen before the data starts scrolling.

+
+ + +
+

Implementation

+
static const maxReadings = 300;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/metrics.html b/docs/models/ElectricalModel/metrics.html new file mode 100644 index 0000000000..50b3d6c0d5 --- /dev/null +++ b/docs/models/ElectricalModel/metrics.html @@ -0,0 +1,121 @@ + + + + + + + + metrics property - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
metrics
+ +
+ +
+
+
+
+
+ +

metrics property +

+ + + + + +
+
+ + DriveMetrics + get + metrics + + +
+ +
+

The Metrics model for electrical data.

+
+ + +
+

Implementation

+
DriveMetrics get metrics => models.rover.metrics.drive;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/rightSpeeds.html b/docs/models/ElectricalModel/rightSpeeds.html new file mode 100644 index 0000000000..9f8132c667 --- /dev/null +++ b/docs/models/ElectricalModel/rightSpeeds.html @@ -0,0 +1,115 @@ + + + + + + + + rightSpeeds property - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rightSpeeds
+ +
+ +
+
+
+
+
+ +

rightSpeeds property +

+ + +
+ + DoubleLinkedQueue<SensorReading> + rightSpeeds +
final
+ +
+ +
+

Right speed readings over time.

+
+ + +
+

Implementation

+
final DoubleLinkedQueue<SensorReading> rightSpeeds = DoubleLinkedQueue<SensorReading>();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/timer.html b/docs/models/ElectricalModel/timer.html new file mode 100644 index 0000000000..2bc2d5eca5 --- /dev/null +++ b/docs/models/ElectricalModel/timer.html @@ -0,0 +1,115 @@ + + + + + + + + timer property - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
timer
+ +
+ +
+
+
+
+
+ +

timer property +

+ + +
+ + Timer? + timer +
getter/setter pair
+ +
+ +
+

The timer that grabs new data for these graphs.

+
+ + +
+

Implementation

+
Timer? timer;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ElectricalModel/voltageReadings.html b/docs/models/ElectricalModel/voltageReadings.html new file mode 100644 index 0000000000..24ab33642e --- /dev/null +++ b/docs/models/ElectricalModel/voltageReadings.html @@ -0,0 +1,115 @@ + + + + + + + + voltageReadings property - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
voltageReadings
+ +
+ +
+
+
+
+
+ +

voltageReadings property +

+ + +
+ + DoubleLinkedQueue<SensorReading> + voltageReadings +
final
+ +
+ +
+

Voltage readings over time.

+
+ + +
+

Implementation

+
final DoubleLinkedQueue<SensorReading> voltageReadings = DoubleLinkedQueue<SensorReading>();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder-class-sidebar.html b/docs/models/GpsBuilder-class-sidebar.html new file mode 100644 index 0000000000..5131738c49 --- /dev/null +++ b/docs/models/GpsBuilder-class-sidebar.html @@ -0,0 +1,45 @@ +
    + +
  1. Constructors
  2. +
  3. GpsBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. isValid
  12. +
  13. latDecimal
  14. +
  15. latDegrees
  16. +
  17. latMinutes
  18. +
  19. latSeconds
  20. +
  21. longDecimal
  22. +
  23. longDegrees
  24. +
  25. longMinutes
  26. +
  27. longSeconds
  28. +
  29. otherBuilders
  30. +
  31. runtimeType
  32. +
  33. type
  34. +
  35. value
  36. + +
  37. Methods
  38. +
  39. addListener
  40. +
  41. clear
  42. +
  43. dispose
  44. +
  45. noSuchMethod
  46. +
  47. notifyListeners
  48. +
  49. removeListener
  50. +
  51. toString
  52. +
  53. updateType
  54. + +
  55. Operators
  56. +
  57. operator ==
  58. + + + + + + +
diff --git a/docs/models/GpsBuilder-class.html b/docs/models/GpsBuilder-class.html new file mode 100644 index 0000000000..a55412b021 --- /dev/null +++ b/docs/models/GpsBuilder-class.html @@ -0,0 +1,462 @@ + + + + + + + + GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GpsBuilder
+ +
+ +
+
+
+
+
+ +

GpsBuilder class + +

+ + +
+

A ValueBuilder to modify a GpsCoordinates object in either GpsType.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ GpsBuilder() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ latDecimal + NumberBuilder<double> + + +
+
+ Latitude in decimal degrees. +
final
+ +
+ +
+ latDegrees + NumberBuilder<int> + + +
+
+ Latitude in degrees. +
final
+ +
+ +
+ latMinutes + NumberBuilder<int> + + +
+
+ Latitude in minutes. +
final
+ +
+ +
+ latSeconds + NumberBuilder<int> + + +
+
+ Latitude in seconds. +
final
+ +
+ +
+ longDecimal + NumberBuilder<double> + + +
+
+ Longitude in decimal degrees. +
final
+ +
+ +
+ longDegrees + NumberBuilder<int> + + +
+
+ Longitude in degrees. +
final
+ +
+ +
+ longMinutes + NumberBuilder<int> + + +
+
+ Longitude in minutes. +
final
+ +
+ +
+ longSeconds + NumberBuilder<int> + + +
+
+ Longitude in seconds. +
final
+ +
+ +
+ otherBuilders + → List<NumberBuilder> + + +
+
+ Other builders to listen to. +
no setteroverride
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ type + GpsType + + +
+
+ The format to enter a GPS coordinate. +
getter/setter pair
+ +
+ +
+ value + GpsCoordinates + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all the data in these text boxes. + + +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateType(GpsType input) + → void + + + +
+
+ Updates the GpsType. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/GpsBuilder.html b/docs/models/GpsBuilder/GpsBuilder.html new file mode 100644 index 0000000000..c2ffa2d855 --- /dev/null +++ b/docs/models/GpsBuilder/GpsBuilder.html @@ -0,0 +1,104 @@ + + + + + + + + GpsBuilder constructor - GpsBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GpsBuilder
+ +
+ +
+
+
+
+
+ +

GpsBuilder constructor +

+ +
+ + GpsBuilder() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/clear.html b/docs/models/GpsBuilder/clear.html new file mode 100644 index 0000000000..9cf9c7d93d --- /dev/null +++ b/docs/models/GpsBuilder/clear.html @@ -0,0 +1,126 @@ + + + + + + + + clear method - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clear
+ +
+ +
+
+
+
+
+ +

clear method +

+ +
+ +void +clear() + + + +
+ +
+

Clears all the data in these text boxes.

+
+ + + +
+

Implementation

+
void clear() {
+	longDecimal.clear();
+	longDegrees.clear();
+	longMinutes.clear();
+	longSeconds.clear();
+
+	latDecimal.clear();
+	latDegrees.clear();
+	latMinutes.clear();
+	latSeconds.clear();
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/isValid.html b/docs/models/GpsBuilder/isValid.html new file mode 100644 index 0000000000..422eb4da41 --- /dev/null +++ b/docs/models/GpsBuilder/isValid.html @@ -0,0 +1,130 @@ + + + + + + + + isValid property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => type == GpsType.decimal
+	? (latDecimal.isValid && longDecimal.isValid)
+	: (latDegrees.isValid && longDegrees.isValid && latMinutes.isValid && longMinutes.isValid && latSeconds.isValid && longSeconds.isValid);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/latDecimal.html b/docs/models/GpsBuilder/latDecimal.html new file mode 100644 index 0000000000..93fbea9094 --- /dev/null +++ b/docs/models/GpsBuilder/latDecimal.html @@ -0,0 +1,115 @@ + + + + + + + + latDecimal property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
latDecimal
+ +
+ +
+
+
+
+
+ +

latDecimal property +

+ + +
+ + NumberBuilder<double> + latDecimal +
final
+ +
+ +
+

Latitude in decimal degrees.

+
+ + +
+

Implementation

+
final latDecimal = NumberBuilder<double>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/latDegrees.html b/docs/models/GpsBuilder/latDegrees.html new file mode 100644 index 0000000000..9f97f1dccc --- /dev/null +++ b/docs/models/GpsBuilder/latDegrees.html @@ -0,0 +1,115 @@ + + + + + + + + latDegrees property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
latDegrees
+ +
+ +
+
+
+
+
+ +

latDegrees property +

+ + +
+ + NumberBuilder<int> + latDegrees +
final
+ +
+ +
+

Latitude in degrees.

+
+ + +
+

Implementation

+
final latDegrees = NumberBuilder<int>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/latMinutes.html b/docs/models/GpsBuilder/latMinutes.html new file mode 100644 index 0000000000..47007da5f8 --- /dev/null +++ b/docs/models/GpsBuilder/latMinutes.html @@ -0,0 +1,115 @@ + + + + + + + + latMinutes property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
latMinutes
+ +
+ +
+
+
+
+
+ +

latMinutes property +

+ + +
+ + NumberBuilder<int> + latMinutes +
final
+ +
+ +
+

Latitude in minutes.

+
+ + +
+

Implementation

+
final latMinutes = NumberBuilder<int>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/latSeconds.html b/docs/models/GpsBuilder/latSeconds.html new file mode 100644 index 0000000000..a639a16750 --- /dev/null +++ b/docs/models/GpsBuilder/latSeconds.html @@ -0,0 +1,115 @@ + + + + + + + + latSeconds property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
latSeconds
+ +
+ +
+
+
+
+
+ +

latSeconds property +

+ + +
+ + NumberBuilder<int> + latSeconds +
final
+ +
+ +
+

Latitude in seconds.

+
+ + +
+

Implementation

+
final latSeconds = NumberBuilder<int>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/longDecimal.html b/docs/models/GpsBuilder/longDecimal.html new file mode 100644 index 0000000000..ecca0b40ba --- /dev/null +++ b/docs/models/GpsBuilder/longDecimal.html @@ -0,0 +1,115 @@ + + + + + + + + longDecimal property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
longDecimal
+ +
+ +
+
+
+
+
+ +

longDecimal property +

+ + +
+ + NumberBuilder<double> + longDecimal +
final
+ +
+ +
+

Longitude in decimal degrees.

+
+ + +
+

Implementation

+
final longDecimal = NumberBuilder<double>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/longDegrees.html b/docs/models/GpsBuilder/longDegrees.html new file mode 100644 index 0000000000..04c0e77170 --- /dev/null +++ b/docs/models/GpsBuilder/longDegrees.html @@ -0,0 +1,115 @@ + + + + + + + + longDegrees property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
longDegrees
+ +
+ +
+
+
+
+
+ +

longDegrees property +

+ + +
+ + NumberBuilder<int> + longDegrees +
final
+ +
+ +
+

Longitude in degrees.

+
+ + +
+

Implementation

+
final longDegrees = NumberBuilder<int>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/longMinutes.html b/docs/models/GpsBuilder/longMinutes.html new file mode 100644 index 0000000000..c1f22b27d5 --- /dev/null +++ b/docs/models/GpsBuilder/longMinutes.html @@ -0,0 +1,115 @@ + + + + + + + + longMinutes property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
longMinutes
+ +
+ +
+
+
+
+
+ +

longMinutes property +

+ + +
+ + NumberBuilder<int> + longMinutes +
final
+ +
+ +
+

Longitude in minutes.

+
+ + +
+

Implementation

+
final longMinutes = NumberBuilder<int>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/longSeconds.html b/docs/models/GpsBuilder/longSeconds.html new file mode 100644 index 0000000000..803a1d601c --- /dev/null +++ b/docs/models/GpsBuilder/longSeconds.html @@ -0,0 +1,115 @@ + + + + + + + + longSeconds property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
longSeconds
+ +
+ +
+
+
+
+
+ +

longSeconds property +

+ + +
+ + NumberBuilder<int> + longSeconds +
final
+ +
+ +
+

Longitude in seconds.

+
+ + +
+

Implementation

+
final longSeconds = NumberBuilder<int>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/otherBuilders.html b/docs/models/GpsBuilder/otherBuilders.html new file mode 100644 index 0000000000..c58722e9b5 --- /dev/null +++ b/docs/models/GpsBuilder/otherBuilders.html @@ -0,0 +1,131 @@ + + + + + + + + otherBuilders property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
otherBuilders
+ +
+ +
+
+
+
+
+ +

otherBuilders property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<NumberBuilder> + get + otherBuilders +
override
+ +
+ +
+

Other builders to listen to.

+
+ + +
+

Implementation

+
@override
+List<NumberBuilder<dynamic>> get otherBuilders => [
+	longDecimal, latDecimal,
+	longDegrees, longMinutes, longSeconds,
+	latDegrees, latMinutes, latSeconds,
+];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/type.html b/docs/models/GpsBuilder/type.html new file mode 100644 index 0000000000..77a725011a --- /dev/null +++ b/docs/models/GpsBuilder/type.html @@ -0,0 +1,115 @@ + + + + + + + + type property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
type
+ +
+ +
+
+
+
+
+ +

type property +

+ + +
+ + GpsType + type +
getter/setter pair
+ +
+ +
+

The format to enter a GPS coordinate.

+
+ + +
+

Implementation

+
GpsType type = GpsType.decimal;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/updateType.html b/docs/models/GpsBuilder/updateType.html new file mode 100644 index 0000000000..1d2450e613 --- /dev/null +++ b/docs/models/GpsBuilder/updateType.html @@ -0,0 +1,119 @@ + + + + + + + + updateType method - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateType
+ +
+ +
+
+
+
+
+ +

updateType method +

+ +
+ +void +updateType(
  1. GpsType input
  2. +
) + + + +
+ +
+

Updates the GpsType.

+
+ + + +
+

Implementation

+
void updateType(GpsType input) {
+	type = input;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsBuilder/value.html b/docs/models/GpsBuilder/value.html new file mode 100644 index 0000000000..65c92289c9 --- /dev/null +++ b/docs/models/GpsBuilder/value.html @@ -0,0 +1,133 @@ + + + + + + + + value property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ GpsCoordinates + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+GpsCoordinates get value => switch (type) {
+	GpsType.decimal => GpsCoordinates(longitude: longDecimal.value, latitude: latDecimal.value),
+	GpsType.degrees => GpsCoordinates(
+		longitude: longDegrees.value + (longMinutes.value / 60) + (longSeconds.value / 3600),
+		latitude: latDegrees.value + (latMinutes.value / 60) + (latSeconds.value / 3600),
+	),
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsType-enum-sidebar.html b/docs/models/GpsType-enum-sidebar.html new file mode 100644 index 0000000000..52c1cbeb36 --- /dev/null +++ b/docs/models/GpsType-enum-sidebar.html @@ -0,0 +1,31 @@ +
    + + +
  1. Values
  2. +
  3. degrees
  4. +
  5. decimal
  6. + + +
  7. + Properties +
  8. +
  9. hashCode
  10. +
  11. humanName
  12. +
  13. index
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. noSuchMethod
  20. +
  21. toString
  22. + +
  23. Operators
  24. +
  25. operator ==
  26. + + + + + + +
  27. Constants
  28. +
  29. values
  30. +
diff --git a/docs/models/GpsType.html b/docs/models/GpsType.html new file mode 100644 index 0000000000..cb70adeaeb --- /dev/null +++ b/docs/models/GpsType.html @@ -0,0 +1,268 @@ + + + + + + + + GpsType enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GpsType
+ +
+ +
+
+
+
+
+ + +

+ GpsType + enum + + +

+
+ + +
+

The format to enter a GPS coordinate.

+

Internally, all the math is done in decimal, but GpsBuilder supports degrees as well.

+
+ + + +
+

Values

+
+
+ degrees + → const GpsType + + +
+
+

Degrees, minutes, seconds format.

+ + +
+ +
+ decimal + → const GpsType + + +
+
+

Decimal longitude and latitude.

+ + +
+ +
+
+ + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ humanName + → String + + +
+
+ The human-readable name of the GPS type. +
no setter
+ +
+ +
+ index + → int + + +
+
+ A numeric identifier for the enumerated value. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ values + → const List<GpsType> + + +
+
+ A constant List of the values in this enum, in order of their declaration. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsType/hashCode.html b/docs/models/GpsType/hashCode.html new file mode 100644 index 0000000000..df335d1f87 --- /dev/null +++ b/docs/models/GpsType/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - GpsType enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsType/humanName.html b/docs/models/GpsType/humanName.html new file mode 100644 index 0000000000..fc598cffa2 --- /dev/null +++ b/docs/models/GpsType/humanName.html @@ -0,0 +1,124 @@ + + + + + + + + humanName property - GpsType enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + + + + +
+
+ + String + get + humanName + + +
+ +
+

The human-readable name of the GPS type.

+
+ + +
+

Implementation

+
String get humanName => switch (this) {
+	GpsType.degrees => "Degrees",
+	GpsType.decimal => "Decimal",
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsType/index.html b/docs/models/GpsType/index.html new file mode 100644 index 0000000000..63e2d2e4c0 --- /dev/null +++ b/docs/models/GpsType/index.html @@ -0,0 +1,125 @@ + + + + + + + + index property - GpsType enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+

index property +

+ + + + + +
+
+ + int + get + index +
inherited
+ +
+ +
+

A numeric identifier for the enumerated value.

+

The values of a single enumeration are numbered +consecutively from zero to one less than the +number of values. +This is also the index of the value in the +enumerated type's static values list.

+
+ + +
+

Implementation

+
int get index;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsType/noSuchMethod.html b/docs/models/GpsType/noSuchMethod.html new file mode 100644 index 0000000000..ea972218a5 --- /dev/null +++ b/docs/models/GpsType/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - GpsType enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsType/operator_equals.html b/docs/models/GpsType/operator_equals.html new file mode 100644 index 0000000000..3cc485d27a --- /dev/null +++ b/docs/models/GpsType/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - GpsType enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsType/runtimeType.html b/docs/models/GpsType/runtimeType.html new file mode 100644 index 0000000000..b8fe87d7d0 --- /dev/null +++ b/docs/models/GpsType/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - GpsType enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsType/toString.html b/docs/models/GpsType/toString.html new file mode 100644 index 0000000000..7ea98bdbb3 --- /dev/null +++ b/docs/models/GpsType/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - GpsType enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GpsType/values-constant.html b/docs/models/GpsType/values-constant.html new file mode 100644 index 0000000000..a2aa4b585d --- /dev/null +++ b/docs/models/GpsType/values-constant.html @@ -0,0 +1,111 @@ + + + + + + + + values constant - GpsType enum - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<GpsType> + const values + + +
+ +
+

A constant List of the values in this enum, in order of their declaration.

+
+ + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GridOffset-class-sidebar.html b/docs/models/GridOffset-class-sidebar.html new file mode 100644 index 0000000000..7804f9bfe0 --- /dev/null +++ b/docs/models/GridOffset-class-sidebar.html @@ -0,0 +1,28 @@ +
    + +
  1. Constructors
  2. +
  3. GridOffset
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. +
  11. x
  12. +
  13. y
  14. + +
  15. Methods
  16. +
  17. noSuchMethod
  18. +
  19. toString
  20. + +
  21. Operators
  22. +
  23. operator ==
  24. + + + + + + +
diff --git a/docs/models/GridOffset-class.html b/docs/models/GridOffset-class.html new file mode 100644 index 0000000000..f6ece20bb0 --- /dev/null +++ b/docs/models/GridOffset-class.html @@ -0,0 +1,231 @@ + + + + + + + + GridOffset class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GridOffset
+ +
+ +
+
+
+
+
+ +

GridOffset class + +

+ + +
+

Like an Offset from Flutter, but using integers instead of doubles.

+

This is used to represent an offset from a position in a grid. Since the grid is represented +as a 2D list, the x and y coordinates must be integers to act as indexes. Use this class to +keep the rover centered in the UI.

+
+ + + + +
+

Constructors

+
+
+ GridOffset(int x, int y) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ x + → int + + +
+
+ The X offset. +
final
+ +
+ +
+ y + → int + + +
+
+ The Y offset. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GridOffset/GridOffset.html b/docs/models/GridOffset/GridOffset.html new file mode 100644 index 0000000000..8fb5ba7885 --- /dev/null +++ b/docs/models/GridOffset/GridOffset.html @@ -0,0 +1,113 @@ + + + + + + + + GridOffset constructor - GridOffset - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GridOffset
+ +
+ +
+
+
+
+
+ +

GridOffset constructor +

+ +
+ const + GridOffset(
  1. int x,
  2. +
  3. int y
  4. +
) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const GridOffset(this.x, this.y);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GridOffset/hashCode.html b/docs/models/GridOffset/hashCode.html new file mode 100644 index 0000000000..94397b33f5 --- /dev/null +++ b/docs/models/GridOffset/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - GridOffset class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GridOffset/noSuchMethod.html b/docs/models/GridOffset/noSuchMethod.html new file mode 100644 index 0000000000..db489f428d --- /dev/null +++ b/docs/models/GridOffset/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - GridOffset class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GridOffset/operator_equals.html b/docs/models/GridOffset/operator_equals.html new file mode 100644 index 0000000000..7b74107be3 --- /dev/null +++ b/docs/models/GridOffset/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - GridOffset class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GridOffset/runtimeType.html b/docs/models/GridOffset/runtimeType.html new file mode 100644 index 0000000000..32534fda86 --- /dev/null +++ b/docs/models/GridOffset/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - GridOffset class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GridOffset/toString.html b/docs/models/GridOffset/toString.html new file mode 100644 index 0000000000..c5d85c326c --- /dev/null +++ b/docs/models/GridOffset/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - GridOffset class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GridOffset/x.html b/docs/models/GridOffset/x.html new file mode 100644 index 0000000000..efc2b7390b --- /dev/null +++ b/docs/models/GridOffset/x.html @@ -0,0 +1,115 @@ + + + + + + + + x property - GridOffset class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
x
+ +
+ +
+
+
+
+
+ +

x property +

+ + +
+ + int + x +
final
+ +
+ +
+

The X offset.

+
+ + +
+

Implementation

+
final int x;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/GridOffset/y.html b/docs/models/GridOffset/y.html new file mode 100644 index 0000000000..92a25b2838 --- /dev/null +++ b/docs/models/GridOffset/y.html @@ -0,0 +1,115 @@ + + + + + + + + y property - GridOffset class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
y
+ +
+ +
+
+
+
+
+ +

y property +

+ + +
+ + int + y +
final
+ +
+ +
+

The Y offset.

+
+ + +
+

Implementation

+
final int y;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/HomeModel-class-sidebar.html b/docs/models/HomeModel-class-sidebar.html new file mode 100644 index 0000000000..ea93fa81db --- /dev/null +++ b/docs/models/HomeModel-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. HomeModel
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. message
  12. +
  13. mission
  14. +
  15. runtimeType
  16. +
  17. version
  18. + +
  19. Methods
  20. +
  21. addListener
  22. +
  23. clear
  24. +
  25. dispose
  26. +
  27. init
  28. +
  29. noSuchMethod
  30. +
  31. notifyListeners
  32. +
  33. removeListener
  34. +
  35. setMessage
  36. +
  37. toString
  38. + +
  39. Operators
  40. +
  41. operator ==
  42. + + + + + + +
diff --git a/docs/models/HomeModel-class.html b/docs/models/HomeModel-class.html new file mode 100644 index 0000000000..2ce4dbefcb --- /dev/null +++ b/docs/models/HomeModel-class.html @@ -0,0 +1,367 @@ + + + + + + + + HomeModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
HomeModel
+ +
+ +
+
+
+
+
+ +

HomeModel class + +

+ + +
+

The view model for the main page.

+
+ + +
+
+ +
Inheritance
+
+
    +
  • Object
  • +
  • Model
  • +
  • HomeModel
  • +
+
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ HomeModel() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ message + TaskbarMessage? + + +
+
+ The message currently displaying on the taskbar. +
getter/setter pair
+ +
+ +
+ mission + MissionTimer + + +
+
+ Mission timer displayed on homepage +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ version + ↔ String? + + +
+
+ The dashboard's version from the pubspec.yaml. +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ clear({bool clearErrors = false}) + → void + + + +
+
+ Clears the current message. Errors won't be cleared unless clearErrors is set. + + +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ setMessage({required Severity severity, required String text, bool permanent = false}) + → void + + + +
+
+ Sets a new message that will disappear in 3 seconds. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/HomeModel/HomeModel.html b/docs/models/HomeModel/HomeModel.html new file mode 100644 index 0000000000..a5586085e2 --- /dev/null +++ b/docs/models/HomeModel/HomeModel.html @@ -0,0 +1,104 @@ + + + + + + + + HomeModel constructor - HomeModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
HomeModel
+ +
+ +
+
+
+
+
+ +

HomeModel constructor +

+ +
+ + HomeModel() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/HomeModel/clear.html b/docs/models/HomeModel/clear.html new file mode 100644 index 0000000000..85a5970758 --- /dev/null +++ b/docs/models/HomeModel/clear.html @@ -0,0 +1,121 @@ + + + + + + + + clear method - HomeModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clear
+ +
+ +
+
+
+
+
+ +

clear method +

+ +
+ +void +clear({
  1. bool clearErrors = false,
  2. +
}) + + + +
+ +
+

Clears the current message. Errors won't be cleared unless clearErrors is set.

+
+ + + +
+

Implementation

+
void clear({bool clearErrors = false}) {
+  if (_hasError && !clearErrors) return;
+  _hasError = false;
+  message = null;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/HomeModel/dispose.html b/docs/models/HomeModel/dispose.html new file mode 100644 index 0000000000..c88332d552 --- /dev/null +++ b/docs/models/HomeModel/dispose.html @@ -0,0 +1,132 @@ + + + + + + + + dispose method - HomeModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+  _messageTimer?.cancel();
+  mission.cancel();
+  models.settings.removeListener(notifyListeners);
+  super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/HomeModel/init.html b/docs/models/HomeModel/init.html new file mode 100644 index 0000000000..ebbe8baadd --- /dev/null +++ b/docs/models/HomeModel/init.html @@ -0,0 +1,126 @@ + + + + + + + + init method - HomeModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
override
+ +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+    models.settings.addListener(notifyListeners);
+	final info = await PackageInfo.fromPlatform();
+	version = "${info.version}+${info.buildNumber}";
+	if (services.error != null) setMessage(severity: Severity.critical, text: services.error!);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/HomeModel/message.html b/docs/models/HomeModel/message.html new file mode 100644 index 0000000000..2b5b97c617 --- /dev/null +++ b/docs/models/HomeModel/message.html @@ -0,0 +1,115 @@ + + + + + + + + message property - HomeModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
message
+ +
+ +
+
+
+
+
+ +

message property +

+ + +
+ + TaskbarMessage? + message +
getter/setter pair
+ +
+ +
+

The message currently displaying on the taskbar.

+
+ + +
+

Implementation

+
TaskbarMessage? message;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/HomeModel/mission.html b/docs/models/HomeModel/mission.html new file mode 100644 index 0000000000..f21c759335 --- /dev/null +++ b/docs/models/HomeModel/mission.html @@ -0,0 +1,115 @@ + + + + + + + + mission property - HomeModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
mission
+ +
+ +
+
+
+
+
+ +

mission property +

+ + +
+ + MissionTimer + mission +
final
+ +
+ +
+

Mission timer displayed on homepage

+
+ + +
+

Implementation

+
final mission = MissionTimer();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/HomeModel/setMessage.html b/docs/models/HomeModel/setMessage.html new file mode 100644 index 0000000000..02c7115c14 --- /dev/null +++ b/docs/models/HomeModel/setMessage.html @@ -0,0 +1,125 @@ + + + + + + + + setMessage method - HomeModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setMessage
+ +
+ +
+
+
+
+
+ +

setMessage method +

+ +
+ +void +setMessage({
  1. required Severity severity,
  2. +
  3. required String text,
  4. +
  5. bool permanent = false,
  6. +
}) + + + +
+ +
+

Sets a new message that will disappear in 3 seconds.

+
+ + + +
+

Implementation

+
void setMessage({required Severity severity, required String text, bool permanent = false}) {
+    if (_hasError && severity != Severity.critical) return;  // Don't replace critical messages
+	_messageTimer?.cancel();  // the new message might be cleared if the old one were about to
+	message = TaskbarMessage(severity: severity, text: text);
+	notifyListeners();
+    _hasError = permanent;
+    _messageTimer = Timer(const Duration(seconds: 3), clear);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/HomeModel/version.html b/docs/models/HomeModel/version.html new file mode 100644 index 0000000000..a6e8e32fdd --- /dev/null +++ b/docs/models/HomeModel/version.html @@ -0,0 +1,115 @@ + + + + + + + + version property - HomeModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
version
+ +
+ +
+
+
+
+
+ +

version property +

+ + +
+ + String? + version +
getter/setter pair
+ +
+ +
+

The dashboard's version from the pubspec.yaml.

+
+ + +
+

Implementation

+
String? version;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel-class-sidebar.html b/docs/models/LogsModel-class-sidebar.html new file mode 100644 index 0000000000..9c05efbf1e --- /dev/null +++ b/docs/models/LogsModel-class-sidebar.html @@ -0,0 +1,45 @@ +
    + +
  1. Constructors
  2. +
  3. LogsModel
  4. + + + +
  5. + Properties +
  6. +
  7. allLogs
  8. +
  9. autonomyLogs
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. runtimeType
  16. +
  17. saveToFileBuffer
  18. +
  19. saveToFileTimer
  20. +
  21. stream
  22. +
  23. subsystemLogs
  24. +
  25. videoLogs
  26. + +
  27. Methods
  28. +
  29. addListener
  30. +
  31. clear
  32. +
  33. dispose
  34. +
  35. handleLog
  36. +
  37. init
  38. +
  39. logsForDevice
  40. +
  41. noSuchMethod
  42. +
  43. notifyListeners
  44. +
  45. removeListener
  46. +
  47. saveToFile
  48. +
  49. toString
  50. + +
  51. Operators
  52. +
  53. operator ==
  54. + + + + + + +
  55. Constants
  56. +
  57. saveToFileInterval
  58. +
diff --git a/docs/models/LogsModel-class.html b/docs/models/LogsModel-class.html new file mode 100644 index 0000000000..908d7c17eb --- /dev/null +++ b/docs/models/LogsModel-class.html @@ -0,0 +1,461 @@ + + + + + + + + LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsModel
+ +
+ +
+
+
+
+
+ +

LogsModel class + +

+ + +
+

A data model that collects and stores logs from the rover.

+

The logs are kept in-memory in separate lists for subsystems, video, and autonomy, and are also saved to disk for retroactive +debugging. To prevent slowing down the dashboard or consuming too much memory, the in-memory +list is limited to maxLogCount, and logs are only saved to disk every saveToFileInterval.

+
+ + +
+
+ +
Inheritance
+
+
    +
  • Object
  • +
  • Model
  • +
  • LogsModel
  • +
+
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ LogsModel() +
+
+ +
+
+
+ +
+

Properties

+
+
+ allLogs + → ListQueue<BurtLog> + + +
+
+ The most recent maxLogCount logs received. +
final
+ +
+ +
+ autonomyLogs + → ListQueue<BurtLog> + + +
+
+ The most recent maxLogCount received for Device.SUBSYSTEMS +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ saveToFileBuffer + ↔ List<BurtLog> + + +
+
+ The logs received since the last flush to disk. See saveToFileInterval. +
getter/setter pair
+ +
+ +
+ saveToFileTimer + ↔ Timer? + + +
+
+ A timer that checks for unsaved logs and flushes them to disk. +
getter/setter pair
+ +
+ +
+ stream + → Stream<BurtLog> + + +
+
+ A stream of incoming logs. +
no setter
+ +
+ +
+ subsystemLogs + → ListQueue<BurtLog> + + +
+
+ The most recent maxLogCount received for Device.SUBSYSTEMS +
final
+ +
+ +
+ videoLogs + → ListQueue<BurtLog> + + +
+
+ The most recent maxLogCount received for Device.SUBSYSTEMS +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears all the logs from memory (but not from disk). + + +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ handleLog(BurtLog log) + → void + + + +
+
+ Sends a log message to be shown in the footer. + + +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. +
override
+ +
+ +
+ logsForDevice(Device? device) + → ListQueue<BurtLog>? + + + +
+
+ Returns the list of log messages for the corresponding device + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ saveToFile(dynamic _) + → Future<void> + + + +
+
+ Saves all the logs in saveToFileBuffer to disk. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ saveToFileInterval + → const Duration + + +
+
+ How often to save the buffered logs to the log file. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/LogsModel.html b/docs/models/LogsModel/LogsModel.html new file mode 100644 index 0000000000..bb6afce491 --- /dev/null +++ b/docs/models/LogsModel/LogsModel.html @@ -0,0 +1,104 @@ + + + + + + + + LogsModel constructor - LogsModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsModel
+ +
+ +
+
+
+
+
+ +

LogsModel constructor +

+ +
+ + LogsModel() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/allLogs.html b/docs/models/LogsModel/allLogs.html new file mode 100644 index 0000000000..6fe7f2db21 --- /dev/null +++ b/docs/models/LogsModel/allLogs.html @@ -0,0 +1,115 @@ + + + + + + + + allLogs property - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
allLogs
+ +
+ +
+
+
+
+
+ +

allLogs property +

+ + +
+ + ListQueue<BurtLog> + allLogs +
final
+ +
+ +
+

The most recent maxLogCount logs received.

+
+ + +
+

Implementation

+
final ListQueue<BurtLog> allLogs = ListQueue();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/autonomyLogs.html b/docs/models/LogsModel/autonomyLogs.html new file mode 100644 index 0000000000..acd0cd0e44 --- /dev/null +++ b/docs/models/LogsModel/autonomyLogs.html @@ -0,0 +1,115 @@ + + + + + + + + autonomyLogs property - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
autonomyLogs
+ +
+ +
+
+
+
+
+ +

autonomyLogs property +

+ + +
+ + ListQueue<BurtLog> + autonomyLogs +
final
+ +
+ +
+

The most recent maxLogCount received for Device.SUBSYSTEMS

+
+ + +
+

Implementation

+
final ListQueue<BurtLog> autonomyLogs = ListQueue();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/clear.html b/docs/models/LogsModel/clear.html new file mode 100644 index 0000000000..258acfa2dc --- /dev/null +++ b/docs/models/LogsModel/clear.html @@ -0,0 +1,122 @@ + + + + + + + + clear method - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clear
+ +
+ +
+
+
+
+
+ +

clear method +

+ +
+ +void +clear() + + + +
+ +
+

Clears all the logs from memory (but not from disk).

+
+ + + +
+

Implementation

+
void clear() {
+  allLogs.clear();
+  subsystemLogs.clear();
+  videoLogs.clear();
+  autonomyLogs.clear();
+  models.home.clear(clearErrors: true);
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/handleLog.html b/docs/models/LogsModel/handleLog.html new file mode 100644 index 0000000000..cba07d04f3 --- /dev/null +++ b/docs/models/LogsModel/handleLog.html @@ -0,0 +1,134 @@ + + + + + + + + handleLog method - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
handleLog
+ +
+ +
+
+
+
+
+ +

handleLog method +

+ +
+ +void +handleLog(
  1. BurtLog log
  2. +
) + + + +
+ +
+

Sends a log message to be shown in the footer.

+
+ + + +
+

Implementation

+
void handleLog(BurtLog log) {
+  // Save to disk and memory
+  saveToFileBuffer.add(log);
+  logsForDevice(log.device)?.addWithLimit(log);
+  _controller.add(log);
+  allLogs.addWithLimit(log);
+  notifyListeners();
+
+  // Show important messages to the footer.
+  switch (log.level) {
+    case BurtLogLevel.critical: models.home.setMessage(severity: Severity.critical, text: log.title, permanent: true);
+    case BurtLogLevel.warning: models.home.setMessage(severity: Severity.warning, text: log.title);
+    case BurtLogLevel.error: models.home.setMessage(severity: Severity.error, text: log.title);
+    case BurtLogLevel.info:  // Info messages from other devices are not important enough to show here
+    case BurtLogLevel.debug:
+    case BurtLogLevel.trace:
+    case BurtLogLevel.BURT_LOG_LEVEL_UNDEFINED:
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/init.html b/docs/models/LogsModel/init.html new file mode 100644 index 0000000000..220fe2fa2f --- /dev/null +++ b/docs/models/LogsModel/init.html @@ -0,0 +1,124 @@ + + + + + + + + init method - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
override
+ +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+  models.messages.registerHandler<BurtLog>(name: BurtLog().messageName, decoder: BurtLog.fromBuffer, handler: handleLog);
+  saveToFileTimer = Timer.periodic(saveToFileInterval, saveToFile);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/logsForDevice.html b/docs/models/LogsModel/logsForDevice.html new file mode 100644 index 0000000000..c0d4e43fe4 --- /dev/null +++ b/docs/models/LogsModel/logsForDevice.html @@ -0,0 +1,122 @@ + + + + + + + + logsForDevice method - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
logsForDevice
+ +
+ +
+
+
+
+
+ +

logsForDevice method +

+ +
+ +ListQueue<BurtLog>? +logsForDevice(
  1. Device? device
  2. +
) + + + +
+ +
+

Returns the list of log messages for the corresponding device

+
+ + + +
+

Implementation

+
ListQueue<BurtLog>? logsForDevice(Device? device) => switch (device) {
+  Device.SUBSYSTEMS => subsystemLogs,
+  Device.VIDEO => videoLogs,
+  Device.AUTONOMY => autonomyLogs,
+  null => allLogs,
+  _ => null,
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/saveToFile.html b/docs/models/LogsModel/saveToFile.html new file mode 100644 index 0000000000..b32a324ef2 --- /dev/null +++ b/docs/models/LogsModel/saveToFile.html @@ -0,0 +1,122 @@ + + + + + + + + saveToFile method - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
saveToFile
+ +
+ +
+
+
+
+
+ +

saveToFile method +

+ +
+ +Future<void> +saveToFile(
  1. dynamic _
  2. +
) + + + +
+ +
+

Saves all the logs in saveToFileBuffer to disk.

+
+ + + +
+

Implementation

+
Future<void> saveToFile(_) async {
+  if (saveToFileBuffer.isEmpty) return;
+  for (final log in List<BurtLog>.from(saveToFileBuffer)) {
+    await services.files.logMessage(log);
+  }
+  saveToFileBuffer.clear();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/saveToFileBuffer.html b/docs/models/LogsModel/saveToFileBuffer.html new file mode 100644 index 0000000000..ceeac56361 --- /dev/null +++ b/docs/models/LogsModel/saveToFileBuffer.html @@ -0,0 +1,115 @@ + + + + + + + + saveToFileBuffer property - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
saveToFileBuffer
+ +
+ +
+
+
+
+
+ +

saveToFileBuffer property +

+ + +
+ + List<BurtLog> + saveToFileBuffer +
getter/setter pair
+ +
+ +
+

The logs received since the last flush to disk. See saveToFileInterval.

+
+ + +
+

Implementation

+
List<BurtLog> saveToFileBuffer = [];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/saveToFileInterval-constant.html b/docs/models/LogsModel/saveToFileInterval-constant.html new file mode 100644 index 0000000000..5d19b5480a --- /dev/null +++ b/docs/models/LogsModel/saveToFileInterval-constant.html @@ -0,0 +1,115 @@ + + + + + + + + saveToFileInterval constant - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
saveToFileInterval
+ +
+ +
+
+
+
+
+ +

saveToFileInterval constant +

+ + +
+ + Duration + const saveToFileInterval + + +
+ +
+

How often to save the buffered logs to the log file.

+
+ + +
+

Implementation

+
static const saveToFileInterval = Duration(seconds: 5);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/saveToFileTimer.html b/docs/models/LogsModel/saveToFileTimer.html new file mode 100644 index 0000000000..4d85066f1b --- /dev/null +++ b/docs/models/LogsModel/saveToFileTimer.html @@ -0,0 +1,115 @@ + + + + + + + + saveToFileTimer property - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
saveToFileTimer
+ +
+ +
+
+
+
+
+ +

saveToFileTimer property +

+ + +
+ + Timer? + saveToFileTimer +
getter/setter pair
+ +
+ +
+

A timer that checks for unsaved logs and flushes them to disk.

+
+ + +
+

Implementation

+
Timer? saveToFileTimer;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/stream.html b/docs/models/LogsModel/stream.html new file mode 100644 index 0000000000..5e7234585d --- /dev/null +++ b/docs/models/LogsModel/stream.html @@ -0,0 +1,121 @@ + + + + + + + + stream property - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
stream
+ +
+ +
+
+
+
+
+ +

stream property +

+ + + + + +
+
+ + Stream<BurtLog> + get + stream + + +
+ +
+

A stream of incoming logs.

+
+ + +
+

Implementation

+
Stream<BurtLog> get stream => _controller.stream;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/subsystemLogs.html b/docs/models/LogsModel/subsystemLogs.html new file mode 100644 index 0000000000..5af7b3ef51 --- /dev/null +++ b/docs/models/LogsModel/subsystemLogs.html @@ -0,0 +1,115 @@ + + + + + + + + subsystemLogs property - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
subsystemLogs
+ +
+ +
+
+
+
+
+ +

subsystemLogs property +

+ + +
+ + ListQueue<BurtLog> + subsystemLogs +
final
+ +
+ +
+

The most recent maxLogCount received for Device.SUBSYSTEMS

+
+ + +
+

Implementation

+
final ListQueue<BurtLog> subsystemLogs = ListQueue();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsModel/videoLogs.html b/docs/models/LogsModel/videoLogs.html new file mode 100644 index 0000000000..a906a6a029 --- /dev/null +++ b/docs/models/LogsModel/videoLogs.html @@ -0,0 +1,115 @@ + + + + + + + + videoLogs property - LogsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
videoLogs
+ +
+ +
+
+
+
+
+ +

videoLogs property +

+ + +
+ + ListQueue<BurtLog> + videoLogs +
final
+ +
+ +
+

The most recent maxLogCount received for Device.SUBSYSTEMS

+
+ + +
+

Implementation

+
final ListQueue<BurtLog> videoLogs = ListQueue();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel-class-sidebar.html b/docs/models/LogsOptionsViewModel-class-sidebar.html new file mode 100644 index 0000000000..329b17c5c5 --- /dev/null +++ b/docs/models/LogsOptionsViewModel-class-sidebar.html @@ -0,0 +1,45 @@ +
    + +
  1. Constructors
  2. +
  3. LogsOptionsViewModel
  4. + + + +
  5. + Properties +
  6. +
  7. autoscroll
  8. +
  9. deviceFilter
  10. +
  11. deviceSeverity
  12. +
  13. hashCode
  14. +
  15. hasListeners
  16. +
  17. levelFilter
  18. +
  19. paused
  20. +
  21. runtimeType
  22. + +
  23. Methods
  24. +
  25. addListener
  26. +
  27. dispose
  28. +
  29. getSeverity
  30. +
  31. noSuchMethod
  32. +
  33. notifyListeners
  34. +
  35. onNewLog
  36. +
  37. openSsh
  38. +
  39. ping
  40. +
  41. removeListener
  42. +
  43. resetDevice
  44. +
  45. setAutoscroll
  46. +
  47. setDeviceFilter
  48. +
  49. setLevelFilter
  50. +
  51. togglePause
  52. +
  53. toString
  54. + +
  55. Operators
  56. +
  57. operator ==
  58. + + + + + + +
diff --git a/docs/models/LogsOptionsViewModel-class.html b/docs/models/LogsOptionsViewModel-class.html new file mode 100644 index 0000000000..78d8631523 --- /dev/null +++ b/docs/models/LogsOptionsViewModel-class.html @@ -0,0 +1,469 @@ + + + + + + + + LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsOptionsViewModel
+ +
+ +
+
+
+
+
+ +

LogsOptionsViewModel class + +

+ + +
+

A view model to track options for the logs page.

+

This view model is needed to separate the menus from the main logs page as whenever a new log +message is added to the page, the currently-selected menu item would flicker.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ LogsOptionsViewModel() +
+
+ +
+
+
+ +
+

Properties

+
+
+ autoscroll + ↔ bool + + +
+
+ Whether this page should autoscroll. +
getter/setter pair
+ +
+ +
+ deviceFilter + Device? + + +
+
+ Only show logs from this device. If null, show all devices. +
getter/setter pair
+ +
+ +
+ deviceSeverity + → Map<Device, BurtLogLevel> + + +
+
+ Contains the highest severity that each device emitted. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ levelFilter + BurtLogLevel + + +
+
+ The level at which to show logs. All logs at this level or above are shown. +
getter/setter pair
+ +
+ +
+ paused + ↔ bool + + +
+
+ Whether or not to temporarily pause log updating +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ getSeverity(Device device) + BurtLogLevel + + + +
+
+ Gets the highest severity the given device emitted. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ onNewLog(BurtLog log) + → void + + + +
+
+ Updates deviceSeverity when a new message comes in. + + +
+ +
+ openSsh(Device device, DashboardSocket socket) + → void + + + +
+
+ Opens an SSH session (on Windows) for the given device. + + +
+ +
+ ping(Device device) + → void + + + +
+
+ Opens a Command prompt on Windows to ping the device. + + +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ resetDevice(Device device) + → void + + + +
+
+ Resets the given device by sending RoverStatus.RESTART. + + +
+ +
+ setAutoscroll(bool? input) + → void + + + +
+
+ Enables or disables autoscroll. + + +
+ +
+ setDeviceFilter(Device? input) + → void + + + +
+
+ Sets deviceFilter and updates the UI. + + +
+ +
+ setLevelFilter(BurtLogLevel? input) + → void + + + +
+
+ Sets levelFilter and updates the UI. + + +
+ +
+ togglePause() + → void + + + +
+
+ Toggles whether new logs are received. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/LogsOptionsViewModel.html b/docs/models/LogsOptionsViewModel/LogsOptionsViewModel.html new file mode 100644 index 0000000000..b8cd34bdc9 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/LogsOptionsViewModel.html @@ -0,0 +1,104 @@ + + + + + + + + LogsOptionsViewModel constructor - LogsOptionsViewModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsOptionsViewModel
+ +
+ +
+
+
+
+
+ +

LogsOptionsViewModel constructor +

+ +
+ + LogsOptionsViewModel() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/autoscroll.html b/docs/models/LogsOptionsViewModel/autoscroll.html new file mode 100644 index 0000000000..27f7ab1a8c --- /dev/null +++ b/docs/models/LogsOptionsViewModel/autoscroll.html @@ -0,0 +1,116 @@ + + + + + + + + autoscroll property - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
autoscroll
+ +
+ +
+
+
+
+
+ +

autoscroll property +

+ + +
+ + bool + autoscroll +
getter/setter pair
+ +
+ +
+

Whether this page should autoscroll.

+

When scrolling manually, this will be set to false for convenience.

+
+ + +
+

Implementation

+
bool autoscroll = true;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/deviceFilter.html b/docs/models/LogsOptionsViewModel/deviceFilter.html new file mode 100644 index 0000000000..b063e1563f --- /dev/null +++ b/docs/models/LogsOptionsViewModel/deviceFilter.html @@ -0,0 +1,115 @@ + + + + + + + + deviceFilter property - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
deviceFilter
+ +
+ +
+
+
+
+
+ +

deviceFilter property +

+ + +
+ + Device? + deviceFilter +
getter/setter pair
+ +
+ +
+

Only show logs from this device. If null, show all devices.

+
+ + +
+

Implementation

+
Device? deviceFilter;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/deviceSeverity.html b/docs/models/LogsOptionsViewModel/deviceSeverity.html new file mode 100644 index 0000000000..342f42050b --- /dev/null +++ b/docs/models/LogsOptionsViewModel/deviceSeverity.html @@ -0,0 +1,115 @@ + + + + + + + + deviceSeverity property - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
deviceSeverity
+ +
+ +
+
+
+
+
+ +

deviceSeverity property +

+ + +
+ + Map<Device, BurtLogLevel> + deviceSeverity +
final
+ +
+ +
+

Contains the highest severity that each device emitted.

+
+ + +
+

Implementation

+
final Map<Device, BurtLogLevel> deviceSeverity = {};
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/getSeverity.html b/docs/models/LogsOptionsViewModel/getSeverity.html new file mode 100644 index 0000000000..e9a76a38d2 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/getSeverity.html @@ -0,0 +1,116 @@ + + + + + + + + getSeverity method - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getSeverity
+ +
+ +
+
+
+
+
+ +

getSeverity method +

+ +
+ +BurtLogLevel +getSeverity(
  1. Device device
  2. +
) + + + +
+ +
+

Gets the highest severity the given device emitted.

+
+ + + +
+

Implementation

+
BurtLogLevel getSeverity(Device device) => deviceSeverity[device] ?? BurtLogLevel.info;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/levelFilter.html b/docs/models/LogsOptionsViewModel/levelFilter.html new file mode 100644 index 0000000000..2fecf593a8 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/levelFilter.html @@ -0,0 +1,115 @@ + + + + + + + + levelFilter property - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
levelFilter
+ +
+ +
+
+
+
+
+ +

levelFilter property +

+ + +
+ + BurtLogLevel + levelFilter +
getter/setter pair
+ +
+ +
+

The level at which to show logs. All logs at this level or above are shown.

+
+ + +
+

Implementation

+
BurtLogLevel levelFilter = BurtLogLevel.info;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/onNewLog.html b/docs/models/LogsOptionsViewModel/onNewLog.html new file mode 100644 index 0000000000..74cb14710b --- /dev/null +++ b/docs/models/LogsOptionsViewModel/onNewLog.html @@ -0,0 +1,122 @@ + + + + + + + + onNewLog method - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onNewLog
+ +
+ +
+
+
+
+
+ +

onNewLog method +

+ +
+ +void +onNewLog(
  1. BurtLog log
  2. +
) + + + +
+ +
+

Updates deviceSeverity when a new message comes in.

+
+ + + +
+

Implementation

+
void onNewLog(BurtLog log) {
+  final oldSeverity = deviceSeverity[log.device];
+  if (oldSeverity == null || log.level.isMoreSevereThan(oldSeverity)) {
+    deviceSeverity[log.device] = log.level;
+    notifyListeners();
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/openSsh.html b/docs/models/LogsOptionsViewModel/openSsh.html new file mode 100644 index 0000000000..95cc94476e --- /dev/null +++ b/docs/models/LogsOptionsViewModel/openSsh.html @@ -0,0 +1,133 @@ + + + + + + + + openSsh method - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
openSsh
+ +
+ +
+
+
+
+
+ +

openSsh method +

+ +
+ +void +openSsh(
  1. Device device,
  2. +
  3. DashboardSocket socket
  4. +
) + + + +
+ +
+

Opens an SSH session (on Windows) for the given device.

+
+ + + +
+

Implementation

+
void openSsh(Device device, DashboardSocket socket) {
+  if (models.sockets.rover == RoverType.localhost) {
+    models.home.setMessage(severity: Severity.error, text: "You can't SSH into your own computer silly!");
+  } else if (socket.destination?.address == null) {
+    models.home.setMessage(
+      severity: Severity.error,
+      text: "Unable to find IP Address for ${device.humanName}, try resetting the network.",
+    );
+  } else {
+    Process.run("cmd", [
+      // Keep a Powershell window open
+      "/k", "start", "powershell", "-NoExit", "-command",
+      // SSH to the IP address, and do not care if the device fingerprint has changed
+      "ssh pi@${socket.destination!.address.address} -o StrictHostkeyChecking=no",
+    ]);
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/paused.html b/docs/models/LogsOptionsViewModel/paused.html new file mode 100644 index 0000000000..070a995681 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/paused.html @@ -0,0 +1,116 @@ + + + + + + + + paused property - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
paused
+ +
+ +
+
+
+
+
+ +

paused property +

+ + +
+ + bool + paused +
getter/setter pair
+ +
+ +
+

Whether or not to temporarily pause log updating

+

Makes scrolling and viewing past logs significantly easier

+
+ + +
+

Implementation

+
bool paused = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/ping.html b/docs/models/LogsOptionsViewModel/ping.html new file mode 100644 index 0000000000..2852eb3f71 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/ping.html @@ -0,0 +1,128 @@ + + + + + + + + ping method - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ping
+ +
+ +
+
+
+
+
+ +

ping method +

+ +
+ +void +ping(
  1. Device device
  2. +
) + + + +
+ +
+

Opens a Command prompt on Windows to ping the device.

+
+ + + +
+

Implementation

+
void ping(Device device) {
+  final socket = models.sockets.socketForDevice(device);
+  if (socket == null || socket.destination == null) {
+    models.home.setMessage(severity: Severity.error, text: "Could not determine IP address for ${device.humanName}");
+  } else {
+    Process.run("cmd", [
+      // Keep a CMD window open
+      "/k", "start", "cmd", "/k",
+      // Ping the IP address. -t means indefinitely
+      "ping", "-t", socket.destination!.address.address,
+    ]);
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/resetDevice.html b/docs/models/LogsOptionsViewModel/resetDevice.html new file mode 100644 index 0000000000..dca9242fe2 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/resetDevice.html @@ -0,0 +1,128 @@ + + + + + + + + resetDevice method - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
resetDevice
+ +
+ +
+
+
+
+
+ +

resetDevice method +

+ +
+ +void +resetDevice(
  1. Device device
  2. +
) + + + +
+ +
+

Resets the given device by sending RoverStatus.RESTART.

+
+ + + +
+

Implementation

+
void resetDevice(Device device) {
+  models.home.clear(clearErrors: true);
+  final socket = switch (device) {
+    Device.SUBSYSTEMS => models.sockets.data,
+    Device.AUTONOMY => models.sockets.autonomy,
+    Device.VIDEO => models.sockets.video,
+    _ => null,
+  };
+  deviceSeverity[device] = BurtLogLevel.info;
+  final message = UpdateSetting(status: RoverStatus.RESTART);
+  socket?.sendMessage(message);
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/setAutoscroll.html b/docs/models/LogsOptionsViewModel/setAutoscroll.html new file mode 100644 index 0000000000..0be6fa9319 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/setAutoscroll.html @@ -0,0 +1,121 @@ + + + + + + + + setAutoscroll method - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setAutoscroll
+ +
+ +
+
+
+
+
+ +

setAutoscroll method +

+ +
+ +void +setAutoscroll(
  1. bool? input
  2. +
) + + + +
+ +
+

Enables or disables autoscroll.

+
+ + + +
+

Implementation

+
// ignore: avoid_positional_boolean_parameters
+void setAutoscroll(bool? input) {
+  if (input == null || autoscroll == input) return;
+  autoscroll = input;
+  Timer.run(notifyListeners);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/setDeviceFilter.html b/docs/models/LogsOptionsViewModel/setDeviceFilter.html new file mode 100644 index 0000000000..6756352e67 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/setDeviceFilter.html @@ -0,0 +1,119 @@ + + + + + + + + setDeviceFilter method - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setDeviceFilter
+ +
+ +
+
+
+
+
+ +

setDeviceFilter method +

+ +
+ +void +setDeviceFilter(
  1. Device? input
  2. +
) + + + +
+ +
+

Sets deviceFilter and updates the UI.

+
+ + + +
+

Implementation

+
void setDeviceFilter(Device? input) {
+  deviceFilter = input;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/setLevelFilter.html b/docs/models/LogsOptionsViewModel/setLevelFilter.html new file mode 100644 index 0000000000..a643751904 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/setLevelFilter.html @@ -0,0 +1,120 @@ + + + + + + + + setLevelFilter method - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setLevelFilter
+ +
+ +
+
+
+
+
+ +

setLevelFilter method +

+ +
+ +void +setLevelFilter(
  1. BurtLogLevel? input
  2. +
) + + + +
+ +
+

Sets levelFilter and updates the UI.

+
+ + + +
+

Implementation

+
void setLevelFilter(BurtLogLevel? input) {
+  if (input == null) return;
+  levelFilter = input;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/togglePause.html b/docs/models/LogsOptionsViewModel/togglePause.html new file mode 100644 index 0000000000..508e2ef193 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/togglePause.html @@ -0,0 +1,118 @@ + + + + + + + + togglePause method - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
togglePause
+ +
+ +
+
+
+
+
+ +

togglePause method +

+ +
+ +void +togglePause() + + + +
+ +
+

Toggles whether new logs are received.

+
+ + + +
+

Implementation

+
void togglePause() {
+  paused = !paused;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsViewModel-class-sidebar.html b/docs/models/LogsViewModel-class-sidebar.html new file mode 100644 index 0000000000..ad548e510b --- /dev/null +++ b/docs/models/LogsViewModel-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. LogsViewModel
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. logs
  12. +
  13. options
  14. +
  15. runtimeType
  16. +
  17. scrollController
  18. + +
  19. Methods
  20. +
  21. addListener
  22. +
  23. dispose
  24. +
  25. jumpToBottom
  26. +
  27. noSuchMethod
  28. +
  29. notifyListeners
  30. +
  31. onNewLog
  32. +
  33. onScroll
  34. +
  35. removeListener
  36. +
  37. toString
  38. + +
  39. Operators
  40. +
  41. operator ==
  42. + + + + + + +
diff --git a/docs/models/LogsViewModel-class.html b/docs/models/LogsViewModel-class.html new file mode 100644 index 0000000000..908808ef2c --- /dev/null +++ b/docs/models/LogsViewModel-class.html @@ -0,0 +1,365 @@ + + + + + + + + LogsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsViewModel
+ +
+ +
+
+
+
+
+ +

LogsViewModel class + +

+ + +
+

A view model for the logs page to control which logs are shown.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ LogsViewModel() +
+
+ Listens for incoming logs. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ logs + → List<BurtLog> + + +
+
+ The logs that should be shown, according to LogsOptionsViewModel. +
no setter
+ +
+ +
+ options + LogsOptionsViewModel + + +
+
+ The options for the log page. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ scrollController + ScrollController + + +
+
+ The scroll controller used to implement autoscroll. +
latefinal
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ jumpToBottom() + → void + + + +
+
+ Jumps to the bottom of the logs. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ onNewLog() + → void + + + +
+
+ Scrolls to the bottom when a new log appears (if LogsOptionsViewModel.autoscroll is true). + + +
+ +
+ onScroll() + → void + + + +
+
+ Disables LogsOptionsViewModel.autoscroll when the user scrolls manually. + + +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsViewModel/LogsViewModel.html b/docs/models/LogsViewModel/LogsViewModel.html new file mode 100644 index 0000000000..cf4fd19239 --- /dev/null +++ b/docs/models/LogsViewModel/LogsViewModel.html @@ -0,0 +1,119 @@ + + + + + + + + LogsViewModel constructor - LogsViewModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsViewModel
+ +
+ +
+
+
+
+
+ +

LogsViewModel constructor +

+ +
+ + LogsViewModel() +
+ +
+

Listens for incoming logs.

+
+ + + +
+

Implementation

+
LogsViewModel() {
+  scrollController = ScrollController(
+    onAttach: _listenForScroll,
+    onDetach: _stopListeningForScroll,
+  );
+  models.logs.addListener(onNewLog);
+  models.sockets.addListener(notifyListeners);
+  models.logs.stream.listen(options.onNewLog);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsViewModel/dispose.html b/docs/models/LogsViewModel/dispose.html new file mode 100644 index 0000000000..59d4b0273a --- /dev/null +++ b/docs/models/LogsViewModel/dispose.html @@ -0,0 +1,130 @@ + + + + + + + + dispose method - LogsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+  models.logs.removeListener(onNewLog);
+  super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsViewModel/jumpToBottom.html b/docs/models/LogsViewModel/jumpToBottom.html new file mode 100644 index 0000000000..2108c058d0 --- /dev/null +++ b/docs/models/LogsViewModel/jumpToBottom.html @@ -0,0 +1,118 @@ + + + + + + + + jumpToBottom method - LogsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
jumpToBottom
+ +
+ +
+
+
+
+
+ +

jumpToBottom method +

+ +
+ +void +jumpToBottom() + + + +
+ +
+

Jumps to the bottom of the logs.

+
+ + + +
+

Implementation

+
void jumpToBottom() {
+  if (!scrollController.hasClients) return;
+  scrollController.animateTo(0, duration: const Duration(milliseconds: 500), curve: Curves.easeOutBack);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsViewModel/logs.html b/docs/models/LogsViewModel/logs.html new file mode 100644 index 0000000000..b7cd5c89fb --- /dev/null +++ b/docs/models/LogsViewModel/logs.html @@ -0,0 +1,127 @@ + + + + + + + + logs property - LogsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
logs
+ +
+ +
+
+
+
+
+ +

logs property +

+ + + + + +
+
+ + List<BurtLog> + get + logs + + +
+ +
+

The logs that should be shown, according to LogsOptionsViewModel.

+
+ + +
+

Implementation

+
List<BurtLog> get logs {
+  final device = options.deviceFilter;
+  final logList = models.logs.logsForDevice(device);
+  if (logList == null) return [];
+  return logList.toList().reversed
+    .where((log) => log.level.isAtLeast(options.levelFilter)).toList();
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsViewModel/onNewLog.html b/docs/models/LogsViewModel/onNewLog.html new file mode 100644 index 0000000000..1a3b105fd2 --- /dev/null +++ b/docs/models/LogsViewModel/onNewLog.html @@ -0,0 +1,120 @@ + + + + + + + + onNewLog method - LogsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onNewLog
+ +
+ +
+
+
+
+
+ +

onNewLog method +

+ +
+ +void +onNewLog() + + + +
+ +
+

Scrolls to the bottom when a new log appears (if LogsOptionsViewModel.autoscroll is true).

+
+ + + +
+

Implementation

+
void onNewLog() {
+  if (options.paused) return;
+  notifyListeners();
+  if (!scrollController.hasClients) return;
+  scrollController.jumpTo(options.autoscroll ? 0 : scrollController.offset + 67);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsViewModel/onScroll.html b/docs/models/LogsViewModel/onScroll.html new file mode 100644 index 0000000000..985f47f5d9 --- /dev/null +++ b/docs/models/LogsViewModel/onScroll.html @@ -0,0 +1,120 @@ + + + + + + + + onScroll method - LogsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onScroll
+ +
+ +
+
+
+
+
+ +

onScroll method +

+ +
+ +void +onScroll() + + + +
+ +
+

Disables LogsOptionsViewModel.autoscroll when the user scrolls manually.

+
+ + + +
+

Implementation

+
void onScroll() {
+  final disableAutoscroll = scrollController.position.pixels > 0;
+  if (disableAutoscroll != options.autoscroll && options.autoscroll) {
+    options.setAutoscroll(disableAutoscroll);
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsViewModel/options.html b/docs/models/LogsViewModel/options.html new file mode 100644 index 0000000000..3def8c60de --- /dev/null +++ b/docs/models/LogsViewModel/options.html @@ -0,0 +1,115 @@ + + + + + + + + options property - LogsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
options
+ +
+ +
+
+
+
+
+ +

options property +

+ + +
+ + LogsOptionsViewModel + options +
final
+ +
+ +
+

The options for the log page.

+
+ + +
+

Implementation

+
final options = LogsOptionsViewModel();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/LogsViewModel/scrollController.html b/docs/models/LogsViewModel/scrollController.html new file mode 100644 index 0000000000..44d4500c5a --- /dev/null +++ b/docs/models/LogsViewModel/scrollController.html @@ -0,0 +1,115 @@ + + + + + + + + scrollController property - LogsViewModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
scrollController
+ +
+ +
+
+
+
+
+ +

scrollController property +

+ + +
+ + ScrollController + scrollController +
latefinal
+ +
+ +
+

The scroll controller used to implement autoscroll.

+
+ + +
+

Implementation

+
late final ScrollController scrollController;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel-class-sidebar.html b/docs/models/MessagesModel-class-sidebar.html new file mode 100644 index 0000000000..7d63767fb9 --- /dev/null +++ b/docs/models/MessagesModel-class-sidebar.html @@ -0,0 +1,32 @@ +
    + +
  1. Constructors
  2. +
  3. MessagesModel
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. onMessage
  16. +
  17. registerHandler
  18. +
  19. removeHandler
  20. +
  21. sendMessage
  22. +
  23. toString
  24. + +
  25. Operators
  26. +
  27. operator ==
  28. + + + + + + +
  29. Constants
  30. +
  31. allowedFallthrough
  32. +
diff --git a/docs/models/MessagesModel-class.html b/docs/models/MessagesModel-class.html new file mode 100644 index 0000000000..1015657ef6 --- /dev/null +++ b/docs/models/MessagesModel-class.html @@ -0,0 +1,277 @@ + + + + + + + + MessagesModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MessagesModel
+ +
+ +
+
+
+
+
+ +

MessagesModel class + +

+ + +
+

A mixin that delegates WrappedMessages to a handler via registerHandler.

+ +
+ + + + +
+

Constructors

+
+
+ MessagesModel() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ onMessage(WrappedMessage wrapper) + → void + + + +
+
+ Delegates the message contents to the appropriate handler. + + +
+ +
+ registerHandler<T extends Message>({required String name, required MessageDecoder<T> decoder, required MessageHandler<T> handler}) + → void + + + +
+
+ Adds a handler for the given message type. + + +
+ +
+ removeHandler(String name) + → void + + + +
+
+ Removes the handler for a given message type. + + +
+ +
+ sendMessage(Message message, {bool checkVersion = true}) + → void + + + +
+
+ Sends a command over the network or over Serial. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ allowedFallthrough + → const Set<String> + + +
+
+ A set of message types that are allowed to pass through without being handled. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel/MessagesModel.html b/docs/models/MessagesModel/MessagesModel.html new file mode 100644 index 0000000000..438a2951ab --- /dev/null +++ b/docs/models/MessagesModel/MessagesModel.html @@ -0,0 +1,104 @@ + + + + + + + + MessagesModel constructor - MessagesModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MessagesModel
+ +
+ +
+
+
+
+
+ +

MessagesModel constructor +

+ +
+ + MessagesModel() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel/allowedFallthrough-constant.html b/docs/models/MessagesModel/allowedFallthrough-constant.html new file mode 100644 index 0000000000..3ade13ce37 --- /dev/null +++ b/docs/models/MessagesModel/allowedFallthrough-constant.html @@ -0,0 +1,115 @@ + + + + + + + + allowedFallthrough constant - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
allowedFallthrough
+ +
+ +
+
+
+
+
+ +

allowedFallthrough constant +

+ + +
+ + Set<String> + const allowedFallthrough + + +
+ +
+

A set of message types that are allowed to pass through without being handled.

+
+ + +
+

Implementation

+
static const Set<String> allowedFallthrough = {"AutonomyData", "Disconnect"};
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel/hashCode.html b/docs/models/MessagesModel/hashCode.html new file mode 100644 index 0000000000..19e42a5c75 --- /dev/null +++ b/docs/models/MessagesModel/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel/noSuchMethod.html b/docs/models/MessagesModel/noSuchMethod.html new file mode 100644 index 0000000000..3bae6f6a8b --- /dev/null +++ b/docs/models/MessagesModel/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel/onMessage.html b/docs/models/MessagesModel/onMessage.html new file mode 100644 index 0000000000..0d93bd5865 --- /dev/null +++ b/docs/models/MessagesModel/onMessage.html @@ -0,0 +1,127 @@ + + + + + + + + onMessage method - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onMessage
+ +
+ +
+
+
+
+
+ +

onMessage method +

+ +
+ +void +onMessage(
  1. WrappedMessage wrapper
  2. +
) + + + +
+ +
+

Delegates the message contents to the appropriate handler.

+
+ + + +
+

Implementation

+
void onMessage(WrappedMessage wrapper) {
+	final rawHandler = _handlers[wrapper.name];
+	if (rawHandler == null) {
+		if (allowedFallthrough.contains(wrapper.name)) return;
+		throw StateError("No handler registered for ${wrapper.name} message");
+	}
+	try {
+      return rawHandler(wrapper.data);
+    } on InvalidProtocolBufferException {
+      // Data is corrupt, ignore it
+    }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel/operator_equals.html b/docs/models/MessagesModel/operator_equals.html new file mode 100644 index 0000000000..76681d835c --- /dev/null +++ b/docs/models/MessagesModel/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel/registerHandler.html b/docs/models/MessagesModel/registerHandler.html new file mode 100644 index 0000000000..4f36b4e1ea --- /dev/null +++ b/docs/models/MessagesModel/registerHandler.html @@ -0,0 +1,138 @@ + + + + + + + + registerHandler method - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
registerHandler
+ +
+ +
+
+
+
+
+ +

registerHandler<T extends Message> method +

+ +
+ +void +registerHandler<T extends Message>({
  1. required String name,
  2. +
  3. required MessageDecoder<T> decoder,
  4. +
  5. required MessageHandler<T> handler,
  6. +
}) + + + +
+ +
+

Adds a handler for the given message type.

+

When a new message is received, onMessage checks to see if its type matches name. +If so, it calls decoder to parse the binary data into a Protobuf class, and then +calls handler with that parsed data class.

+

For example, with a message called ScienceData, you would use this function as:

+
registerHandler<ScienceData>(
+	name: ScienceData().messageName,  // identify the data as a ScienceData message
+	decoder: ScienceData.fromBuffer,  // deserialize into a ScienceData instance
+	handler: (ScienceData data) => print(data.methane),  // do something with the data
+);
+
+
+ + + +
+

Implementation

+
void registerHandler<T extends Message>({
+	required String name,
+	required MessageDecoder<T> decoder,
+	required MessageHandler<T> handler,
+}) {
+	if (_handlers.containsKey(name)) {  // handler was already registered
+		throw ArgumentError("There's already a message handler for $name.");
+	} else {
+		_handlers[name] = (data) => handler(decoder(data));
+	}
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel/removeHandler.html b/docs/models/MessagesModel/removeHandler.html new file mode 100644 index 0000000000..27844d7a77 --- /dev/null +++ b/docs/models/MessagesModel/removeHandler.html @@ -0,0 +1,117 @@ + + + + + + + + removeHandler method - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
removeHandler
+ +
+ +
+
+
+
+
+ +

removeHandler method +

+ +
+ +void +removeHandler(
  1. String name
  2. +
) + + + +
+ +
+

Removes the handler for a given message type.

+

This is useful if you register a handler to update a piece of UI that is no longer on-screen.

+
+ + + +
+

Implementation

+
void removeHandler(String name) => _handlers.remove(name);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel/runtimeType.html b/docs/models/MessagesModel/runtimeType.html new file mode 100644 index 0000000000..2fef56166f --- /dev/null +++ b/docs/models/MessagesModel/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel/sendMessage.html b/docs/models/MessagesModel/sendMessage.html new file mode 100644 index 0000000000..4e7f31eaf9 --- /dev/null +++ b/docs/models/MessagesModel/sendMessage.html @@ -0,0 +1,127 @@ + + + + + + + + sendMessage method - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sendMessage
+ +
+ +
+
+
+
+
+ +

sendMessage method +

+ +
+ +void +sendMessage(
  1. Message message, {
  2. +
  3. bool checkVersion = true,
  4. +
}) + + + +
+ +
+

Sends a command over the network or over Serial.

+
+ + + +
+

Implementation

+
void sendMessage(Message message, {bool checkVersion = true}) {
+    final shouldCheck = checkVersion && models.settings.dashboard.versionChecking;
+    if (shouldCheck && !models.rover.metrics.isSupportedVersion(message)) {
+      if (models.rover.isConnected) {
+        models.home.setMessage(severity: Severity.error, text: "Rover has the wrong ${message.messageName} version!");
+      }
+      return;
+    }
+	models.serial.sendMessage(message);
+	models.sockets.data.sendMessage(message);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MessagesModel/toString.html b/docs/models/MessagesModel/toString.html new file mode 100644 index 0000000000..fe2df91ef8 --- /dev/null +++ b/docs/models/MessagesModel/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MissionTimer-class-sidebar.html b/docs/models/MissionTimer-class-sidebar.html new file mode 100644 index 0000000000..4a932d917a --- /dev/null +++ b/docs/models/MissionTimer-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. MissionTimer
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. isPaused
  12. +
  13. runtimeType
  14. +
  15. timeLeft
  16. +
  17. title
  18. +
  19. underMin
  20. + +
  21. Methods
  22. +
  23. addListener
  24. +
  25. cancel
  26. +
  27. dispose
  28. +
  29. noSuchMethod
  30. +
  31. notifyListeners
  32. +
  33. pause
  34. +
  35. removeListener
  36. +
  37. resume
  38. +
  39. start
  40. +
  41. toString
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/models/MissionTimer-class.html b/docs/models/MissionTimer-class.html new file mode 100644 index 0000000000..6d263792cd --- /dev/null +++ b/docs/models/MissionTimer-class.html @@ -0,0 +1,391 @@ + + + + + + + + MissionTimer class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MissionTimer
+ +
+ +
+
+
+
+
+ +

MissionTimer class + +

+ + +
+

A timer to keep track of progress in a mission.

+

Control using start, pause, resume, and cancel.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ MissionTimer() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isPaused + ↔ bool + + +
+
+ Whether this timer is paused. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ timeLeft + ↔ Duration + + +
+
+ The time remaining. Stops decreasing when isPaused is true. +
getter/setter pair
+ +
+ +
+ title + ↔ String? + + +
+
+ The title for this timer. Null means no timer has been set. +
getter/setter pair
+ +
+ +
+ underMin + → bool + + +
+
+ Whether this timer has under a minute remaining. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ cancel() + → void + + + +
+
+ Cancels the timer. + + +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ pause() + → void + + + +
+
+ Pauses the timer. + + +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ resume() + → void + + + +
+
+ Resumes the timer. + + +
+ +
+ start({required String title, required Duration duration}) + → void + + + +
+
+ Starts a new timer with the given title and duration. Cancels any previous timer. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MissionTimer/MissionTimer.html b/docs/models/MissionTimer/MissionTimer.html new file mode 100644 index 0000000000..ca1572f0b3 --- /dev/null +++ b/docs/models/MissionTimer/MissionTimer.html @@ -0,0 +1,104 @@ + + + + + + + + MissionTimer constructor - MissionTimer - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MissionTimer
+ +
+ +
+
+
+
+
+ +

MissionTimer constructor +

+ +
+ + MissionTimer() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MissionTimer/cancel.html b/docs/models/MissionTimer/cancel.html new file mode 100644 index 0000000000..2aa68e6655 --- /dev/null +++ b/docs/models/MissionTimer/cancel.html @@ -0,0 +1,119 @@ + + + + + + + + cancel method - MissionTimer class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
cancel
+ +
+ +
+
+
+
+
+ +

cancel method +

+ +
+ +void +cancel() + + + +
+ +
+

Cancels the timer.

+
+ + + +
+

Implementation

+
void cancel() {
+  title = null;
+  _timer?.cancel();
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MissionTimer/isPaused.html b/docs/models/MissionTimer/isPaused.html new file mode 100644 index 0000000000..7d4d53969d --- /dev/null +++ b/docs/models/MissionTimer/isPaused.html @@ -0,0 +1,115 @@ + + + + + + + + isPaused property - MissionTimer class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isPaused
+ +
+ +
+
+
+
+
+ +

isPaused property +

+ + +
+ + bool + isPaused +
getter/setter pair
+ +
+ +
+

Whether this timer is paused.

+
+ + +
+

Implementation

+
bool isPaused = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MissionTimer/pause.html b/docs/models/MissionTimer/pause.html new file mode 100644 index 0000000000..148e89d31d --- /dev/null +++ b/docs/models/MissionTimer/pause.html @@ -0,0 +1,119 @@ + + + + + + + + pause method - MissionTimer class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pause
+ +
+ +
+
+
+
+
+ +

pause method +

+ +
+ +void +pause() + + + +
+ +
+

Pauses the timer.

+
+ + + +
+

Implementation

+
void pause() {
+  isPaused = true;
+  _timer?.cancel();
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MissionTimer/resume.html b/docs/models/MissionTimer/resume.html new file mode 100644 index 0000000000..90993d5d2f --- /dev/null +++ b/docs/models/MissionTimer/resume.html @@ -0,0 +1,118 @@ + + + + + + + + resume method - MissionTimer class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
resume
+ +
+ +
+
+
+
+
+ +

resume method +

+ +
+ +void +resume() + + + +
+ +
+

Resumes the timer.

+
+ + + +
+

Implementation

+
void resume() {
+  isPaused = false;
+  _timer = Timer.periodic(const Duration(seconds: 1), _update);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MissionTimer/start.html b/docs/models/MissionTimer/start.html new file mode 100644 index 0000000000..4fed8153c7 --- /dev/null +++ b/docs/models/MissionTimer/start.html @@ -0,0 +1,124 @@ + + + + + + + + start method - MissionTimer class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
start
+ +
+ +
+
+
+
+
+ +

start method +

+ +
+ +void +start({
  1. required String title,
  2. +
  3. required Duration duration,
  4. +
}) + + + +
+ +
+

Starts a new timer with the given title and duration. Cancels any previous timer.

+
+ + + +
+

Implementation

+
void start({required String title, required Duration duration}) {
+  cancel();
+  isPaused = false;
+  this.title = title;
+  timeLeft = duration;
+  _timer = Timer.periodic(const Duration(seconds: 1), _update);
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MissionTimer/timeLeft.html b/docs/models/MissionTimer/timeLeft.html new file mode 100644 index 0000000000..0dff280c27 --- /dev/null +++ b/docs/models/MissionTimer/timeLeft.html @@ -0,0 +1,115 @@ + + + + + + + + timeLeft property - MissionTimer class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
timeLeft
+ +
+ +
+
+
+
+
+ +

timeLeft property +

+ + +
+ + Duration + timeLeft +
getter/setter pair
+ +
+ +
+

The time remaining. Stops decreasing when isPaused is true.

+
+ + +
+

Implementation

+
Duration timeLeft = Duration.zero;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MissionTimer/title.html b/docs/models/MissionTimer/title.html new file mode 100644 index 0000000000..c1e176a62f --- /dev/null +++ b/docs/models/MissionTimer/title.html @@ -0,0 +1,115 @@ + + + + + + + + title property - MissionTimer class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
title
+ +
+ +
+
+
+
+
+ +

title property +

+ + +
+ + String? + title +
getter/setter pair
+ +
+ +
+

The title for this timer. Null means no timer has been set.

+
+ + +
+

Implementation

+
String? title;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/MissionTimer/underMin.html b/docs/models/MissionTimer/underMin.html new file mode 100644 index 0000000000..234638b5d9 --- /dev/null +++ b/docs/models/MissionTimer/underMin.html @@ -0,0 +1,121 @@ + + + + + + + + underMin property - MissionTimer class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
underMin
+ +
+ +
+
+
+
+
+ +

underMin property +

+ + + + + +
+
+ + bool + get + underMin + + +
+ +
+

Whether this timer has under a minute remaining.

+
+ + +
+

Implementation

+
bool get underMin => timeLeft <= const Duration(minutes: 1);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Model-class-sidebar.html b/docs/models/Model-class-sidebar.html new file mode 100644 index 0000000000..8449ffbdfe --- /dev/null +++ b/docs/models/Model-class-sidebar.html @@ -0,0 +1,32 @@ +
    + +
  1. Constructors
  2. +
  3. Model
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. runtimeType
  12. + +
  13. Methods
  14. +
  15. addListener
  16. +
  17. dispose
  18. +
  19. init
  20. +
  21. noSuchMethod
  22. +
  23. notifyListeners
  24. +
  25. removeListener
  26. +
  27. toString
  28. + +
  29. Operators
  30. +
  31. operator ==
  32. + + + + + + +
diff --git a/docs/models/Model-class.html b/docs/models/Model-class.html new file mode 100644 index 0000000000..a5cc0a95e0 --- /dev/null +++ b/docs/models/Model-class.html @@ -0,0 +1,318 @@ + + + + + + + + Model class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Model
+ +
+ +
+
+
+
+
+ +

Model class + abstract + +

+ + +
+

A data model that handles data from services.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ +
Implementers
+
+ + + + + +
+
+ + +
+

Constructors

+
+
+ Model() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Model/Model.html b/docs/models/Model/Model.html new file mode 100644 index 0000000000..7ceb8f98f2 --- /dev/null +++ b/docs/models/Model/Model.html @@ -0,0 +1,104 @@ + + + + + + + + Model constructor - Model - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Model
+ +
+ +
+
+
+
+
+ +

Model constructor +

+ +
+ + Model() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Model/init.html b/docs/models/Model/init.html new file mode 100644 index 0000000000..5b84bfc5e6 --- /dev/null +++ b/docs/models/Model/init.html @@ -0,0 +1,115 @@ + + + + + + + + init method - Model class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init abstract method +

+ +
+ +Future<void> +init() + + + +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
Future<void> init();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models-class-sidebar.html b/docs/models/Models-class-sidebar.html new file mode 100644 index 0000000000..b48e8732ec --- /dev/null +++ b/docs/models/Models-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. Models
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. home
  12. +
  13. isReady
  14. +
  15. logs
  16. +
  17. messages
  18. +
  19. rover
  20. +
  21. runtimeType
  22. +
  23. serial
  24. +
  25. settings
  26. +
  27. sockets
  28. +
  29. video
  30. +
  31. views
  32. + +
  33. Methods
  34. +
  35. addListener
  36. +
  37. dispose
  38. +
  39. init
  40. +
  41. noSuchMethod
  42. +
  43. notifyListeners
  44. +
  45. removeListener
  46. +
  47. toString
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/models/Models-class.html b/docs/models/Models-class.html new file mode 100644 index 0000000000..3daf905b4f --- /dev/null +++ b/docs/models/Models-class.html @@ -0,0 +1,434 @@ + + + + + + + + Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Models
+ +
+ +
+
+
+
+
+ +

Models class + +

+ + +
+

A wrapper model around all other data models used by the app.

+

Use this class to ensure a data model will be initialized before the dashboard starts. For a +view model (a model that only needs to be used in one part of the UI), use the model directly +with a ChangeNotifierProvider from package:provider.

+

When adding a new model to this class, be sure to:

+
    +
  1. Add it as a field
  2. +
  3. Initialize it in init
  4. +
  5. Add it to the MultiProvider in app.dart
  6. +
+
+ + +
+
+ +
Inheritance
+
+
    +
  • Object
  • +
  • Model
  • +
  • Models
  • +
+
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ Models() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ home + HomeModel + + +
+
+ Contains persistent data about the dashboard's current state. +
final
+ +
+ +
+ isReady + ↔ bool + + +
+
+ Whether all models have been initialized. +
getter/setter pair
+ +
+ +
+ logs + LogsModel + + +
+
+ The logs model. +
final
+ +
+ +
+ messages + MessagesModel + + +
+
+ The messages model. +
final
+ +
+ +
+ rover + Rover + + +
+
+ Controls and interacts with the rover. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ serial + SerialModel + + +
+
+ Responsible for connecting to and monitoring Serial devices. +
final
+ +
+ +
+ settings + SettingsModel + + +
+
+ Caches the settings and updates them to all listeners. +
final
+ +
+ +
+ sockets + Sockets + + +
+
+ The data model responsible for communicating over Protobuf. +
final
+ +
+ +
+ video + VideoModel + + +
+
+ The data model to provide video from the rover. +
final
+ +
+ +
+ views + ViewsModel + + +
+
+ The views data model. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/Models.html b/docs/models/Models/Models.html new file mode 100644 index 0000000000..1d696b77ca --- /dev/null +++ b/docs/models/Models/Models.html @@ -0,0 +1,104 @@ + + + + + + + + Models constructor - Models - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Models
+ +
+ +
+
+
+
+
+ +

Models constructor +

+ +
+ + Models() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/dispose.html b/docs/models/Models/dispose.html new file mode 100644 index 0000000000..faa0e6d5d7 --- /dev/null +++ b/docs/models/Models/dispose.html @@ -0,0 +1,137 @@ + + + + + + + + dispose method - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+	settings.dispose();
+	home.dispose();
+	video.dispose();
+	rover.dispose();
+	serial.dispose();
+	sockets.dispose();
+	views.dispose();
+
+	super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/home.html b/docs/models/Models/home.html new file mode 100644 index 0000000000..c4597a756a --- /dev/null +++ b/docs/models/Models/home.html @@ -0,0 +1,115 @@ + + + + + + + + home property - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
home
+ +
+ +
+
+
+
+
+ +

home property +

+ + +
+ + HomeModel + home +
final
+ +
+ +
+

Contains persistent data about the dashboard's current state.

+
+ + +
+

Implementation

+
final home = HomeModel();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/init.html b/docs/models/Models/init.html new file mode 100644 index 0000000000..8f4170d52d --- /dev/null +++ b/docs/models/Models/init.html @@ -0,0 +1,134 @@ + + + + + + + + init method - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
override
+ +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+	// initialize all models here
+	await settings.init();
+	await home.init();
+    await logs.init();
+	await video.init();
+	await rover.init();
+	await serial.init();
+	await sockets.init();
+	await views.init();
+
+	isReady = true;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/isReady.html b/docs/models/Models/isReady.html new file mode 100644 index 0000000000..1db2ae5423 --- /dev/null +++ b/docs/models/Models/isReady.html @@ -0,0 +1,115 @@ + + + + + + + + isReady property - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isReady
+ +
+ +
+
+
+
+
+ +

isReady property +

+ + +
+ + bool + isReady +
getter/setter pair
+ +
+ +
+

Whether all models have been initialized.

+
+ + +
+

Implementation

+
bool isReady = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/logs.html b/docs/models/Models/logs.html new file mode 100644 index 0000000000..916bf198cf --- /dev/null +++ b/docs/models/Models/logs.html @@ -0,0 +1,115 @@ + + + + + + + + logs property - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
logs
+ +
+ +
+
+
+
+
+ +

logs property +

+ + +
+ + LogsModel + logs +
final
+ +
+ +
+

The logs model.

+
+ + +
+

Implementation

+
final logs = LogsModel();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/messages.html b/docs/models/Models/messages.html new file mode 100644 index 0000000000..0b65f7f0f7 --- /dev/null +++ b/docs/models/Models/messages.html @@ -0,0 +1,115 @@ + + + + + + + + messages property - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
messages
+ +
+ +
+
+
+
+
+ +

messages property +

+ + +
+ + MessagesModel + messages +
final
+ +
+ +
+

The messages model.

+
+ + +
+

Implementation

+
final messages = MessagesModel();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/rover.html b/docs/models/Models/rover.html new file mode 100644 index 0000000000..0484a71def --- /dev/null +++ b/docs/models/Models/rover.html @@ -0,0 +1,115 @@ + + + + + + + + rover property - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rover
+ +
+ +
+
+
+
+
+ +

rover property +

+ + +
+ + Rover + rover +
final
+ +
+ +
+

Controls and interacts with the rover.

+
+ + +
+

Implementation

+
final rover = Rover();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/serial.html b/docs/models/Models/serial.html new file mode 100644 index 0000000000..a168a43b38 --- /dev/null +++ b/docs/models/Models/serial.html @@ -0,0 +1,115 @@ + + + + + + + + serial property - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
serial
+ +
+ +
+
+
+
+
+ +

serial property +

+ + +
+ + SerialModel + serial +
final
+ +
+ +
+

Responsible for connecting to and monitoring Serial devices.

+
+ + +
+

Implementation

+
final serial = SerialModel();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/settings.html b/docs/models/Models/settings.html new file mode 100644 index 0000000000..d2b1357e6c --- /dev/null +++ b/docs/models/Models/settings.html @@ -0,0 +1,115 @@ + + + + + + + + settings property - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
settings
+ +
+ +
+
+
+
+
+ +

settings property +

+ + +
+ + SettingsModel + settings +
final
+ +
+ +
+

Caches the settings and updates them to all listeners.

+
+ + +
+

Implementation

+
final settings = SettingsModel();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/sockets.html b/docs/models/Models/sockets.html new file mode 100644 index 0000000000..8bbf7583f1 --- /dev/null +++ b/docs/models/Models/sockets.html @@ -0,0 +1,115 @@ + + + + + + + + sockets property - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sockets
+ +
+ +
+
+
+
+
+ +

sockets property +

+ + +
+ + Sockets + sockets +
final
+ +
+ +
+

The data model responsible for communicating over Protobuf.

+
+ + +
+

Implementation

+
final sockets = Sockets();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/video.html b/docs/models/Models/video.html new file mode 100644 index 0000000000..6250aaef5f --- /dev/null +++ b/docs/models/Models/video.html @@ -0,0 +1,115 @@ + + + + + + + + video property - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
video
+ +
+ +
+
+
+
+
+ +

video property +

+ + +
+ + VideoModel + video +
final
+ +
+ +
+

The data model to provide video from the rover.

+
+ + +
+

Implementation

+
final video = VideoModel();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Models/views.html b/docs/models/Models/views.html new file mode 100644 index 0000000000..820bc381a5 --- /dev/null +++ b/docs/models/Models/views.html @@ -0,0 +1,115 @@ + + + + + + + + views property - Models class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
views
+ +
+ +
+
+
+
+
+ +

views property +

+ + +
+ + ViewsModel + views +
final
+ +
+ +
+

The views data model.

+
+ + +
+

Implementation

+
final views = ViewsModel();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls-class-sidebar.html b/docs/models/ModernDriveControls-class-sidebar.html new file mode 100644 index 0000000000..3e645f7e95 --- /dev/null +++ b/docs/models/ModernDriveControls-class-sidebar.html @@ -0,0 +1,46 @@ +
    + +
  1. Constructors
  2. +
  3. ModernDriveControls
  4. + + + +
  5. + Properties +
  6. +
  7. buttonMapping
  8. +
  9. frontSwivel
  10. +
  11. frontTilt
  12. +
  13. hashCode
  14. +
  15. leftShoulderFlag
  16. +
  17. mode
  18. +
  19. onDispose
  20. +
  21. rearSwivel
  22. +
  23. rearTilt
  24. +
  25. rightShoulderFlag
  26. +
  27. runtimeType
  28. +
  29. throttle
  30. + +
  31. Methods
  32. +
  33. getCameraCommands
  34. +
  35. getWheelCommands
  36. +
  37. getWheelSpeeds
  38. +
  39. noSuchMethod
  40. +
  41. parseInputs
  42. +
  43. toString
  44. +
  45. updateCameras
  46. +
  47. updateState
  48. +
  49. updateThrottle
  50. + +
  51. Operators
  52. +
  53. operator ==
  54. + + + + + + +
  55. Constants
  56. +
  57. cameraSwivelIncrement
  58. +
  59. cameraTiltIncrement
  60. +
diff --git a/docs/models/ModernDriveControls-class.html b/docs/models/ModernDriveControls-class.html new file mode 100644 index 0000000000..29ca904d8d --- /dev/null +++ b/docs/models/ModernDriveControls-class.html @@ -0,0 +1,467 @@ + + + + + + + + ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ModernDriveControls
+ +
+ +
+
+
+
+
+ +

ModernDriveControls class + +

+ + +
+

Modern drive controls, similar to most racing video games.

+

Triggers are for acceleration, left stick for steering. +Also includes camera controls on the D-pad and right stick.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ModernDriveControls() +
+
+ +
+
+
+ +
+

Properties

+
+
+ buttonMapping + → Map<String, String> + + +
+
+ A human-readable explanation of what the controls are. +
no setteroverride
+ +
+ +
+ frontSwivel + ↔ double + + +
+
+ The angle of the front swivel servo. +
getter/setter pair
+ +
+ +
+ frontTilt + ↔ double + + +
+
+ The angle of the front tilt servo. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ leftShoulderFlag + ↔ bool + + +
+
+ Whether the left shoulder was pressed last tick. +
getter/setter pair
+ +
+ +
+ mode + OperatingMode + + +
+
+ The OperatingMode for these controls. +
no setteroverride
+ +
+ +
+ onDispose + → List<Message> + + +
+
+ A list of commands that disables the subsystem. +
no setteroverride
+ +
+ +
+ rearSwivel + ↔ double + + +
+
+ The angle of the rear swivel servo. +
getter/setter pair
+ +
+ +
+ rearTilt + ↔ double + + +
+
+ The angle of the rear tilt servo. +
getter/setter pair
+ +
+ +
+ rightShoulderFlag + ↔ bool + + +
+
+ Whether the right shoulder was pressed last tick. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ throttle + ↔ double + + +
+
+ The throttle value. +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ getCameraCommands(GamepadState state) + → List<DriveCommand> + + + +
+
+ Gets all camera commands based on the gamepad state. + + +
+ +
+ getWheelCommands(GamepadState state) + → List<DriveCommand> + + + +
+
+ Gets all commands for the wheels based on the gamepad state. + + +
+ +
+ getWheelSpeeds(double speed, double direction) + → (double, double) + + + +
+
+ Gets the speeds of the wheels based on the speed and direction. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ parseInputs(GamepadState state) + → List<Message> + + + +
+
+ Return a list of commands based on the current state of the gamepad. +
override
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateCameras(GamepadState state) + → void + + + +
+
+ Updates variables for both cameras' servos. + + +
+ +
+ updateState(GamepadState state) + → void + + + +
+
+ Any logic to run before checking parseInputs. +
override
+ +
+ +
+ updateThrottle(GamepadState state) + → void + + + +
+
+ Updates the throttle if either shoulder button is pressed. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ cameraSwivelIncrement + → const int + + +
+
+ How far to swivel the cameras each tick. + + +
+ +
+ cameraTiltIncrement + → const double + + +
+
+ How far to tilt the cameras each tick. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/ModernDriveControls.html b/docs/models/ModernDriveControls/ModernDriveControls.html new file mode 100644 index 0000000000..ac865a2d2b --- /dev/null +++ b/docs/models/ModernDriveControls/ModernDriveControls.html @@ -0,0 +1,104 @@ + + + + + + + + ModernDriveControls constructor - ModernDriveControls - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ModernDriveControls
+ +
+ +
+
+
+
+
+ +

ModernDriveControls constructor +

+ +
+ + ModernDriveControls() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/buttonMapping.html b/docs/models/ModernDriveControls/buttonMapping.html new file mode 100644 index 0000000000..a3685fd904 --- /dev/null +++ b/docs/models/ModernDriveControls/buttonMapping.html @@ -0,0 +1,136 @@ + + + + + + + + buttonMapping property - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonMapping
+ +
+ +
+
+
+
+
+ +

buttonMapping property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + get + buttonMapping +
override
+ +
+ +
+

A human-readable explanation of what the controls are.

+

Keys are the actions, values are the buttons that trigger them.

+
+ + +
+

Implementation

+
@override
+Map<String, String> get buttonMapping => {
+  "Forward": "Right trigger",
+  "Reverse / Brake": "Left trigger",
+  "Steering": "Left joystick (horizontal)",
+  "Decrease throttle": "Left bumper",
+  "Increase throttle": "Right bumper",
+  "Rear camera": "D-pad",
+  "Front camera": "Right joystick",
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/cameraSwivelIncrement-constant.html b/docs/models/ModernDriveControls/cameraSwivelIncrement-constant.html new file mode 100644 index 0000000000..5c6af539ed --- /dev/null +++ b/docs/models/ModernDriveControls/cameraSwivelIncrement-constant.html @@ -0,0 +1,115 @@ + + + + + + + + cameraSwivelIncrement constant - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
cameraSwivelIncrement
+ +
+ +
+
+
+
+
+ +

cameraSwivelIncrement constant +

+ + +
+ + int + const cameraSwivelIncrement + + +
+ +
+

How far to swivel the cameras each tick.

+
+ + +
+

Implementation

+
static const cameraSwivelIncrement = -1;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/cameraTiltIncrement-constant.html b/docs/models/ModernDriveControls/cameraTiltIncrement-constant.html new file mode 100644 index 0000000000..19468437cd --- /dev/null +++ b/docs/models/ModernDriveControls/cameraTiltIncrement-constant.html @@ -0,0 +1,115 @@ + + + + + + + + cameraTiltIncrement constant - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
cameraTiltIncrement
+ +
+ +
+
+
+
+
+ +

cameraTiltIncrement constant +

+ + +
+ + double + const cameraTiltIncrement + + +
+ +
+

How far to tilt the cameras each tick.

+
+ + +
+

Implementation

+
static const cameraTiltIncrement = -0.75;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/frontSwivel.html b/docs/models/ModernDriveControls/frontSwivel.html new file mode 100644 index 0000000000..16a3013710 --- /dev/null +++ b/docs/models/ModernDriveControls/frontSwivel.html @@ -0,0 +1,115 @@ + + + + + + + + frontSwivel property - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frontSwivel
+ +
+ +
+
+
+
+
+ +

frontSwivel property +

+ + +
+ + double + frontSwivel +
getter/setter pair
+ +
+ +
+

The angle of the front swivel servo.

+
+ + +
+

Implementation

+
double frontSwivel = 90;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/frontTilt.html b/docs/models/ModernDriveControls/frontTilt.html new file mode 100644 index 0000000000..46d9d1dc15 --- /dev/null +++ b/docs/models/ModernDriveControls/frontTilt.html @@ -0,0 +1,115 @@ + + + + + + + + frontTilt property - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frontTilt
+ +
+ +
+
+
+
+
+ +

frontTilt property +

+ + +
+ + double + frontTilt +
getter/setter pair
+ +
+ +
+

The angle of the front tilt servo.

+
+ + +
+

Implementation

+
double frontTilt = 90;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/getCameraCommands.html b/docs/models/ModernDriveControls/getCameraCommands.html new file mode 100644 index 0000000000..26bf88db56 --- /dev/null +++ b/docs/models/ModernDriveControls/getCameraCommands.html @@ -0,0 +1,121 @@ + + + + + + + + getCameraCommands method - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getCameraCommands
+ +
+ +
+
+
+
+
+ +

getCameraCommands method +

+ +
+ +List<DriveCommand> +getCameraCommands(
  1. GamepadState state
  2. +
) + + + +
+ +
+

Gets all camera commands based on the gamepad state.

+
+ + + +
+

Implementation

+
List<DriveCommand> getCameraCommands(GamepadState state) => [
+  DriveCommand(frontSwivel: frontSwivel),
+  DriveCommand(frontTilt: frontTilt),
+  DriveCommand(rearSwivel: rearSwivel),
+  DriveCommand(rearTilt: rearTilt),
+];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/getWheelCommands.html b/docs/models/ModernDriveControls/getWheelCommands.html new file mode 100644 index 0000000000..3ab048a11e --- /dev/null +++ b/docs/models/ModernDriveControls/getWheelCommands.html @@ -0,0 +1,134 @@ + + + + + + + + getWheelCommands method - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getWheelCommands
+ +
+ +
+
+
+
+
+ +

getWheelCommands method +

+ +
+ +List<DriveCommand> +getWheelCommands(
  1. GamepadState state
  2. +
) + + + +
+ +
+

Gets all commands for the wheels based on the gamepad state.

+
+ + + +
+

Implementation

+
List<DriveCommand> getWheelCommands(GamepadState state) {
+  final speed = state.normalTrigger;  // sum of both triggers, [-1, 1]
+  if (speed == 0) {
+    final left = state.normalLeftX;
+    final right = state.normalLeftX;
+    return [
+      DriveCommand(left: left / 2, setLeft: true),
+      DriveCommand(right: right / 2, setRight: true),
+      DriveCommand(throttle: throttle, setThrottle: true),
+    ];
+  }
+  final direction = state.normalLeftX * 20;  // [-1, 1] --> [-45, 45]
+  final (double left, double right) = getWheelSpeeds(speed, direction);
+  return [
+    DriveCommand(left: speed * left, setLeft: true),
+    DriveCommand(right: speed * right, setRight: true),
+    DriveCommand(throttle: throttle, setThrottle: true),
+  ];
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/getWheelSpeeds.html b/docs/models/ModernDriveControls/getWheelSpeeds.html new file mode 100644 index 0000000000..753997485d --- /dev/null +++ b/docs/models/ModernDriveControls/getWheelSpeeds.html @@ -0,0 +1,126 @@ + + + + + + + + getWheelSpeeds method - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getWheelSpeeds
+ +
+ +
+
+
+
+
+ +

getWheelSpeeds method +

+ +
+ +(double, double) +getWheelSpeeds(
  1. double speed,
  2. +
  3. double direction
  4. +
) + + + +
+ +
+

Gets the speeds of the wheels based on the speed and direction.

+
+ + + +
+

Implementation

+
(double, double) getWheelSpeeds(double speed, double direction) {
+  const slope = 1 / 90;
+  if (direction < -45) {  // trying to turn too far left
+    return (-1, 1);
+  } else if (direction >= -45 && direction < 45) {  // [-45, 45]
+    return (slope * direction + 0.5, slope * direction - 0.5);
+  } else {  // trying to turn too far right
+    return (1, -1);
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/leftShoulderFlag.html b/docs/models/ModernDriveControls/leftShoulderFlag.html new file mode 100644 index 0000000000..868d461245 --- /dev/null +++ b/docs/models/ModernDriveControls/leftShoulderFlag.html @@ -0,0 +1,115 @@ + + + + + + + + leftShoulderFlag property - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
leftShoulderFlag
+ +
+ +
+
+
+
+
+ +

leftShoulderFlag property +

+ + +
+ + bool + leftShoulderFlag +
getter/setter pair
+ +
+ +
+

Whether the left shoulder was pressed last tick.

+
+ + +
+

Implementation

+
bool leftShoulderFlag = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/mode.html b/docs/models/ModernDriveControls/mode.html new file mode 100644 index 0000000000..b0b1d2f981 --- /dev/null +++ b/docs/models/ModernDriveControls/mode.html @@ -0,0 +1,127 @@ + + + + + + + + mode property - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
mode
+ +
+ +
+
+
+
+
+ +

mode property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + get + mode +
override
+ +
+ +
+

The OperatingMode for these controls.

+
+ + +
+

Implementation

+
@override
+OperatingMode get mode => OperatingMode.modernDrive;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/onDispose.html b/docs/models/ModernDriveControls/onDispose.html new file mode 100644 index 0000000000..e147a808ca --- /dev/null +++ b/docs/models/ModernDriveControls/onDispose.html @@ -0,0 +1,132 @@ + + + + + + + + onDispose property - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onDispose
+ +
+ +
+
+
+
+
+ +

onDispose property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + get + onDispose +
override
+ +
+ +
+

A list of commands that disables the subsystem.

+

For example, after driving this should set the speed to 0.

+
+ + +
+

Implementation

+
@override
+List<Message> get onDispose => [
+  DriveCommand(setThrottle: true, throttle: 0),
+		DriveCommand(setLeft: true, left: 0),
+		DriveCommand(setRight: true, right: 0),
+];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/parseInputs.html b/docs/models/ModernDriveControls/parseInputs.html new file mode 100644 index 0000000000..656ab18431 --- /dev/null +++ b/docs/models/ModernDriveControls/parseInputs.html @@ -0,0 +1,126 @@ + + + + + + + + parseInputs method - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseInputs
+ +
+ +
+
+
+
+
+ +

parseInputs method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+List<Message> +parseInputs(
  1. GamepadState state
  2. +
) + +
override
+ +
+ +
+

Return a list of commands based on the current state of the gamepad.

+
+ + + +
+

Implementation

+
@override
+List<Message> parseInputs(GamepadState state) => [
+  ...getWheelCommands(state),
+  if (!models.settings.dashboard.splitCameras)
+    ...getCameraCommands(state),
+];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/rearSwivel.html b/docs/models/ModernDriveControls/rearSwivel.html new file mode 100644 index 0000000000..185f6bb423 --- /dev/null +++ b/docs/models/ModernDriveControls/rearSwivel.html @@ -0,0 +1,115 @@ + + + + + + + + rearSwivel property - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rearSwivel
+ +
+ +
+
+
+
+
+ +

rearSwivel property +

+ + +
+ + double + rearSwivel +
getter/setter pair
+ +
+ +
+

The angle of the rear swivel servo.

+
+ + +
+

Implementation

+
double rearSwivel = 90;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/rearTilt.html b/docs/models/ModernDriveControls/rearTilt.html new file mode 100644 index 0000000000..4cdf38bb3b --- /dev/null +++ b/docs/models/ModernDriveControls/rearTilt.html @@ -0,0 +1,115 @@ + + + + + + + + rearTilt property - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rearTilt
+ +
+ +
+
+
+
+
+ +

rearTilt property +

+ + +
+ + double + rearTilt +
getter/setter pair
+ +
+ +
+

The angle of the rear tilt servo.

+
+ + +
+

Implementation

+
double rearTilt = 90;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/rightShoulderFlag.html b/docs/models/ModernDriveControls/rightShoulderFlag.html new file mode 100644 index 0000000000..9f22df9a18 --- /dev/null +++ b/docs/models/ModernDriveControls/rightShoulderFlag.html @@ -0,0 +1,115 @@ + + + + + + + + rightShoulderFlag property - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rightShoulderFlag
+ +
+ +
+
+
+
+
+ +

rightShoulderFlag property +

+ + +
+ + bool + rightShoulderFlag +
getter/setter pair
+ +
+ +
+

Whether the right shoulder was pressed last tick.

+
+ + +
+

Implementation

+
bool rightShoulderFlag = true;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/throttle.html b/docs/models/ModernDriveControls/throttle.html new file mode 100644 index 0000000000..607503813f --- /dev/null +++ b/docs/models/ModernDriveControls/throttle.html @@ -0,0 +1,115 @@ + + + + + + + + throttle property - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
throttle
+ +
+ +
+
+
+
+
+ +

throttle property +

+ + +
+ + double + throttle +
getter/setter pair
+ +
+ +
+

The throttle value.

+
+ + +
+

Implementation

+
double throttle = 0;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/updateCameras.html b/docs/models/ModernDriveControls/updateCameras.html new file mode 100644 index 0000000000..d88ba5211b --- /dev/null +++ b/docs/models/ModernDriveControls/updateCameras.html @@ -0,0 +1,141 @@ + + + + + + + + updateCameras method - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateCameras
+ +
+ +
+
+
+
+
+ +

updateCameras method +

+ +
+ +void +updateCameras(
  1. GamepadState state
  2. +
) + + + +
+ +
+

Updates variables for both cameras' servos.

+
+ + + +
+

Implementation

+
void updateCameras(GamepadState state) {
+  // Update only ONE camera. Go left to right.
+  final newFrontSwivel = state.normalDpadX;
+  final newFrontTilt = state.normalDpadY;
+  final newRearSwivel = state.normalRightX;
+  final newRearTilt = state.normalRightY;
+  if (newFrontSwivel.abs() >= 0.05 || newFrontTilt.abs() >= 0.05) {
+    // Update the front camera. Now, choose which axis
+    if (newFrontSwivel.abs() > newFrontTilt.abs()) {
+      frontSwivel += newFrontSwivel * cameraSwivelIncrement;
+    } else {
+      frontTilt += newFrontTilt * cameraTiltIncrement;
+    }
+  } else if (newRearSwivel.abs() >= 0.05 || newRearTilt.abs() >= 0.05) {
+    if (newRearSwivel.abs() > newRearTilt.abs()) {
+      rearSwivel += newRearSwivel * cameraSwivelIncrement;
+    } else {
+      rearTilt += newRearTilt * cameraTiltIncrement * -1;
+    }
+  }
+  // Clamp cameras
+  frontSwivel = frontSwivel.clamp(0, 180);
+  frontTilt = frontTilt.clamp(0, 180);
+  rearSwivel = rearSwivel.clamp(0, 180);
+  rearTilt = rearTilt.clamp(0, 180);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/updateState.html b/docs/models/ModernDriveControls/updateState.html new file mode 100644 index 0000000000..e4e89e06d3 --- /dev/null +++ b/docs/models/ModernDriveControls/updateState.html @@ -0,0 +1,125 @@ + + + + + + + + updateState method - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateState
+ +
+ +
+
+
+
+
+ +

updateState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +updateState(
  1. GamepadState state
  2. +
) + +
override
+ +
+ +
+

Any logic to run before checking parseInputs.

+
+ + + +
+

Implementation

+
@override
+void updateState(GamepadState state) {
+  updateThrottle(state);
+  updateCameras(state);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ModernDriveControls/updateThrottle.html b/docs/models/ModernDriveControls/updateThrottle.html new file mode 100644 index 0000000000..3e0a377e36 --- /dev/null +++ b/docs/models/ModernDriveControls/updateThrottle.html @@ -0,0 +1,122 @@ + + + + + + + + updateThrottle method - ModernDriveControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateThrottle
+ +
+ +
+
+
+
+
+ +

updateThrottle method +

+ +
+ +void +updateThrottle(
  1. GamepadState state
  2. +
) + + + +
+ +
+

Updates the throttle if either shoulder button is pressed.

+
+ + + +
+

Implementation

+
void updateThrottle(GamepadState state) {
+  if (!leftShoulderFlag && state.leftShoulder) throttle -= 0.1;
+  leftShoulderFlag = state.leftShoulder;
+  if (!rightShoulderFlag && state.rightShoulder) throttle += 0.1;
+  rightShoulderFlag = state.rightShoulder;
+  throttle = throttle.clamp(0, 1);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder-class-sidebar.html b/docs/models/NetworkSettingsBuilder-class-sidebar.html new file mode 100644 index 0000000000..35bbe48a8c --- /dev/null +++ b/docs/models/NetworkSettingsBuilder-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. NetworkSettingsBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. autonomySocket
  8. +
  9. connectionTimeout
  10. +
  11. dataSocket
  12. +
  13. hashCode
  14. +
  15. hasListeners
  16. +
  17. isValid
  18. +
  19. otherBuilders
  20. +
  21. runtimeType
  22. +
  23. tankSocket
  24. +
  25. value
  26. +
  27. videoSocket
  28. + +
  29. Methods
  30. +
  31. addListener
  32. +
  33. dispose
  34. +
  35. noSuchMethod
  36. +
  37. notifyListeners
  38. +
  39. removeListener
  40. +
  41. toString
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/models/NetworkSettingsBuilder-class.html b/docs/models/NetworkSettingsBuilder-class.html new file mode 100644 index 0000000000..e058574d36 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder-class.html @@ -0,0 +1,388 @@ + + + + + + + + NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NetworkSettingsBuilder
+ +
+ +
+
+
+
+
+ +

NetworkSettingsBuilder class + +

+ + +
+

A ValueBuilder representing a NetworkSettings.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ NetworkSettingsBuilder(NetworkSettings initial) +
+
+ Creates the view model based on the current Settings. +
+
+
+ +
+

Properties

+
+
+ autonomySocket + SocketBuilder + + +
+
+ The view model representing the SocketInfo for the autonomy program. +
final
+ +
+ +
+ connectionTimeout + NumberBuilder<double> + + +
+
+ The view model for NetworkSettings.connectionTimeout. +
final
+ +
+ +
+ dataSocket + SocketBuilder + + +
+
+ The view model representing the SocketInfo for the subsystems program. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ otherBuilders + → List<SocketBuilder> + + +
+
+ Other builders to listen to. +
no setteroverride
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ tankSocket + SocketBuilder + + +
+
+ The view model representing the SocketInfo for the tank. +
final
+ +
+ +
+ value + NetworkSettings + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+ videoSocket + SocketBuilder + + +
+
+ The view model representing the SocketInfo for the video program. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder/NetworkSettingsBuilder.html b/docs/models/NetworkSettingsBuilder/NetworkSettingsBuilder.html new file mode 100644 index 0000000000..c7423c3318 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/NetworkSettingsBuilder.html @@ -0,0 +1,117 @@ + + + + + + + + NetworkSettingsBuilder constructor - NetworkSettingsBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NetworkSettingsBuilder
+ +
+ +
+
+
+
+
+ +

NetworkSettingsBuilder constructor +

+ +
+ + NetworkSettingsBuilder(
  1. NetworkSettings initial
  2. +
) +
+ +
+

Creates the view model based on the current Settings.

+
+ + + +
+

Implementation

+
NetworkSettingsBuilder(NetworkSettings initial) :
+	dataSocket = SocketBuilder(initial.subsystemsSocket),
+	videoSocket = SocketBuilder(initial.videoSocket),
+	autonomySocket = SocketBuilder(initial.autonomySocket),
+	tankSocket = SocketBuilder(initial.tankSocket),
+    connectionTimeout = NumberBuilder<double>(initial.connectionTimeout, min: 0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder/autonomySocket.html b/docs/models/NetworkSettingsBuilder/autonomySocket.html new file mode 100644 index 0000000000..4d31862a87 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/autonomySocket.html @@ -0,0 +1,115 @@ + + + + + + + + autonomySocket property - NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
autonomySocket
+ +
+ +
+
+
+
+
+ +

autonomySocket property +

+ + +
+ + SocketBuilder + autonomySocket +
final
+ +
+ +
+

The view model representing the SocketInfo for the autonomy program.

+
+ + +
+

Implementation

+
final SocketBuilder autonomySocket;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder/connectionTimeout.html b/docs/models/NetworkSettingsBuilder/connectionTimeout.html new file mode 100644 index 0000000000..02144d101a --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/connectionTimeout.html @@ -0,0 +1,115 @@ + + + + + + + + connectionTimeout property - NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
connectionTimeout
+ +
+ +
+
+
+
+
+ +

connectionTimeout property +

+ + +
+ + NumberBuilder<double> + connectionTimeout +
final
+ +
+ +
+

The view model for NetworkSettings.connectionTimeout.

+
+ + +
+

Implementation

+
final NumberBuilder<double> connectionTimeout;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder/dataSocket.html b/docs/models/NetworkSettingsBuilder/dataSocket.html new file mode 100644 index 0000000000..ab931c1416 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/dataSocket.html @@ -0,0 +1,115 @@ + + + + + + + + dataSocket property - NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dataSocket
+ +
+ +
+
+
+
+
+ +

dataSocket property +

+ + +
+ + SocketBuilder + dataSocket +
final
+ +
+ +
+

The view model representing the SocketInfo for the subsystems program.

+
+ + +
+

Implementation

+
final SocketBuilder dataSocket;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder/isValid.html b/docs/models/NetworkSettingsBuilder/isValid.html new file mode 100644 index 0000000000..422b5969db --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/isValid.html @@ -0,0 +1,131 @@ + + + + + + + + isValid property - NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => dataSocket.isValid
+	&& videoSocket.isValid
+	&& autonomySocket.isValid
+	&& tankSocket.isValid;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder/otherBuilders.html b/docs/models/NetworkSettingsBuilder/otherBuilders.html new file mode 100644 index 0000000000..a7bb259dff --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/otherBuilders.html @@ -0,0 +1,127 @@ + + + + + + + + otherBuilders property - NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
otherBuilders
+ +
+ +
+
+
+
+
+ +

otherBuilders property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<SocketBuilder> + get + otherBuilders +
override
+ +
+ +
+

Other builders to listen to.

+
+ + +
+

Implementation

+
@override
+List<SocketBuilder> get otherBuilders => [dataSocket, videoSocket, autonomySocket, tankSocket];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder/tankSocket.html b/docs/models/NetworkSettingsBuilder/tankSocket.html new file mode 100644 index 0000000000..07dcfc847b --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/tankSocket.html @@ -0,0 +1,116 @@ + + + + + + + + tankSocket property - NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
tankSocket
+ +
+ +
+
+
+
+
+ +

tankSocket property +

+ + +
+ + SocketBuilder + tankSocket +
final
+ +
+ +
+

The view model representing the SocketInfo for the tank.

+

Since the tank runs multiple programs, the port is discarded and only the address is used.

+
+ + +
+

Implementation

+
final SocketBuilder tankSocket;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder/value.html b/docs/models/NetworkSettingsBuilder/value.html new file mode 100644 index 0000000000..1d966d2693 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/value.html @@ -0,0 +1,133 @@ + + + + + + + + value property - NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ NetworkSettings + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+NetworkSettings get value => NetworkSettings(
+	subsystemsSocket: dataSocket.value,
+	videoSocket: videoSocket.value,
+	autonomySocket: autonomySocket.value,
+	tankSocket: tankSocket.value,
+	connectionTimeout: connectionTimeout.value,
+);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder/videoSocket.html b/docs/models/NetworkSettingsBuilder/videoSocket.html new file mode 100644 index 0000000000..2ddfa95656 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/videoSocket.html @@ -0,0 +1,115 @@ + + + + + + + + videoSocket property - NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
videoSocket
+ +
+ +
+
+
+
+
+ +

videoSocket property +

+ + +
+ + SocketBuilder + videoSocket +
final
+ +
+ +
+

The view model representing the SocketInfo for the video program.

+
+ + +
+

Implementation

+
final SocketBuilder videoSocket;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NoControls-class-sidebar.html b/docs/models/NoControls-class-sidebar.html new file mode 100644 index 0000000000..2ddee64b9c --- /dev/null +++ b/docs/models/NoControls-class-sidebar.html @@ -0,0 +1,31 @@ +
    + +
  1. Constructors
  2. +
  3. NoControls
  4. + + + +
  5. + Properties +
  6. +
  7. buttonMapping
  8. +
  9. hashCode
  10. +
  11. mode
  12. +
  13. onDispose
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. noSuchMethod
  20. +
  21. parseInputs
  22. +
  23. toString
  24. +
  25. updateState
  26. + +
  27. Operators
  28. +
  29. operator ==
  30. + + + + + + +
diff --git a/docs/models/NoControls-class.html b/docs/models/NoControls-class.html new file mode 100644 index 0000000000..625eb855f3 --- /dev/null +++ b/docs/models/NoControls-class.html @@ -0,0 +1,287 @@ + + + + + + + + NoControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NoControls
+ +
+ +
+
+
+
+
+ +

NoControls class + +

+ + +
+

A RoverControls that does nothing.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ NoControls() +
+
+ +
+
+
+ +
+

Properties

+
+
+ buttonMapping + → Map<String, String> + + +
+
+ A human-readable explanation of what the controls are. +
no setteroverride
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ mode + OperatingMode + + +
+
+ The OperatingMode for these controls. +
no setteroverride
+ +
+ +
+ onDispose + → List<Message> + + +
+
+ A list of commands that disables the subsystem. +
no setteroverride
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ parseInputs(GamepadState state) + → List<Message> + + + +
+
+ Return a list of commands based on the current state of the gamepad. +
override
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateState(GamepadState state) + → void + + + +
+
+ Any logic to run before checking parseInputs. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NoControls/NoControls.html b/docs/models/NoControls/NoControls.html new file mode 100644 index 0000000000..95dcb889e0 --- /dev/null +++ b/docs/models/NoControls/NoControls.html @@ -0,0 +1,104 @@ + + + + + + + + NoControls constructor - NoControls - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NoControls
+ +
+ +
+
+
+
+
+ +

NoControls constructor +

+ +
+ + NoControls() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NoControls/buttonMapping.html b/docs/models/NoControls/buttonMapping.html new file mode 100644 index 0000000000..8acb81eb9a --- /dev/null +++ b/docs/models/NoControls/buttonMapping.html @@ -0,0 +1,128 @@ + + + + + + + + buttonMapping property - NoControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonMapping
+ +
+ +
+
+
+
+
+ +

buttonMapping property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + get + buttonMapping +
override
+ +
+ +
+

A human-readable explanation of what the controls are.

+

Keys are the actions, values are the buttons that trigger them.

+
+ + +
+

Implementation

+
@override
+Map<String, String> get buttonMapping => {};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NoControls/mode.html b/docs/models/NoControls/mode.html new file mode 100644 index 0000000000..2d59f1a5fa --- /dev/null +++ b/docs/models/NoControls/mode.html @@ -0,0 +1,127 @@ + + + + + + + + mode property - NoControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
mode
+ +
+ +
+
+
+
+
+ +

mode property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + get + mode +
override
+ +
+ +
+

The OperatingMode for these controls.

+
+ + +
+

Implementation

+
@override
+OperatingMode get mode => OperatingMode.none;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NoControls/onDispose.html b/docs/models/NoControls/onDispose.html new file mode 100644 index 0000000000..d89dd7f405 --- /dev/null +++ b/docs/models/NoControls/onDispose.html @@ -0,0 +1,128 @@ + + + + + + + + onDispose property - NoControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onDispose
+ +
+ +
+
+
+
+
+ +

onDispose property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + get + onDispose +
override
+ +
+ +
+

A list of commands that disables the subsystem.

+

For example, after driving this should set the speed to 0.

+
+ + +
+

Implementation

+
@override
+List<Message> get onDispose => [];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NoControls/parseInputs.html b/docs/models/NoControls/parseInputs.html new file mode 100644 index 0000000000..de824f1201 --- /dev/null +++ b/docs/models/NoControls/parseInputs.html @@ -0,0 +1,122 @@ + + + + + + + + parseInputs method - NoControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseInputs
+ +
+ +
+
+
+
+
+ +

parseInputs method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+List<Message> +parseInputs(
  1. GamepadState state
  2. +
) + +
override
+ +
+ +
+

Return a list of commands based on the current state of the gamepad.

+
+ + + +
+

Implementation

+
@override
+List<Message> parseInputs(GamepadState state) => [];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NumberBuilder-class-sidebar.html b/docs/models/NumberBuilder-class-sidebar.html new file mode 100644 index 0000000000..9ad2f77a4e --- /dev/null +++ b/docs/models/NumberBuilder-class-sidebar.html @@ -0,0 +1,41 @@ +
    + +
  1. Constructors
  2. +
  3. NumberBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. controller
  8. +
  9. error
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. isInteger
  16. +
  17. isValid
  18. +
  19. max
  20. +
  21. min
  22. +
  23. otherBuilders
  24. +
  25. runtimeType
  26. +
  27. value
  28. + +
  29. Methods
  30. +
  31. addListener
  32. +
  33. clear
  34. +
  35. dispose
  36. +
  37. noSuchMethod
  38. +
  39. notifyListeners
  40. +
  41. removeListener
  42. +
  43. toString
  44. +
  45. update
  46. + +
  47. Operators
  48. +
  49. operator ==
  50. + + + + + + +
diff --git a/docs/models/NumberBuilder-class.html b/docs/models/NumberBuilder-class.html new file mode 100644 index 0000000000..d3d84008eb --- /dev/null +++ b/docs/models/NumberBuilder-class.html @@ -0,0 +1,416 @@ + + + + + + + + NumberBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NumberBuilder
+ +
+ +
+
+
+
+
+ +

NumberBuilder<T extends num> class + +

+ + +
+

A specialized TextBuilder to handle numeric inputs.

+

T can be either int or double, and the UI will validate that.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ NumberBuilder(T value, {num? min, num? max}) +
+
+ Creates a number builder based on an initial value. +
+
+
+ +
+

Properties

+
+
+ controller + TextEditingController + + +
+
+ The controller for the TextField. +
finalinherited
+ +
+ +
+ error + ↔ String? + + +
+
+ The error to display in the UI, if any. +
getter/setter pairinherited
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isInteger + → bool + + +
+
+ Whether this builder is modifying a decimal number. +
no setter
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setterinherited
+ +
+ +
+ max + → num? + + +
+
+ The maximum allowed value. +
final
+ +
+ +
+ min + → num? + + +
+
+ The minimum allowed value. +
final
+ +
+ +
+ otherBuilders + → List<ChangeNotifier> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + ↔ T + + +
+
+ The value being updated in the UI. +
getter/setter pairinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ clear() + → void + + + +
+
+ Clears the value in this builder. + + +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(String input) + → void + + + +
+
+ Updates the value based on the user's input. +
override
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NumberBuilder/NumberBuilder.html b/docs/models/NumberBuilder/NumberBuilder.html new file mode 100644 index 0000000000..69b83c157c --- /dev/null +++ b/docs/models/NumberBuilder/NumberBuilder.html @@ -0,0 +1,114 @@ + + + + + + + + NumberBuilder constructor - NumberBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NumberBuilder
+ +
+ +
+
+
+
+
+ +

NumberBuilder<T extends num> constructor +

+ +
+ + NumberBuilder<T extends num>(
  1. T value, {
  2. +
  3. num? min,
  4. +
  5. num? max,
  6. +
}) +
+ +
+

Creates a number builder based on an initial value.

+
+ + + +
+

Implementation

+
NumberBuilder(super.value, {this.min, this.max});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NumberBuilder/clear.html b/docs/models/NumberBuilder/clear.html new file mode 100644 index 0000000000..a460bfd998 --- /dev/null +++ b/docs/models/NumberBuilder/clear.html @@ -0,0 +1,120 @@ + + + + + + + + clear method - NumberBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clear
+ +
+ +
+
+
+
+
+ +

clear method +

+ +
+ +void +clear() + + + +
+ +
+

Clears the value in this builder.

+
+ + + +
+

Implementation

+
void clear() {
+	error = null;
+	value = (isInteger ? 0 : 0.0) as T;
+	controller.text = value.toString();
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NumberBuilder/isInteger.html b/docs/models/NumberBuilder/isInteger.html new file mode 100644 index 0000000000..513216a9f7 --- /dev/null +++ b/docs/models/NumberBuilder/isInteger.html @@ -0,0 +1,121 @@ + + + + + + + + isInteger property - NumberBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isInteger
+ +
+ +
+
+
+
+
+ +

isInteger property +

+ + + + + +
+
+ + bool + get + isInteger + + +
+ +
+

Whether this builder is modifying a decimal number.

+
+ + +
+

Implementation

+
bool get isInteger => List<int> == List<T>;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NumberBuilder/max.html b/docs/models/NumberBuilder/max.html new file mode 100644 index 0000000000..27c23bb415 --- /dev/null +++ b/docs/models/NumberBuilder/max.html @@ -0,0 +1,115 @@ + + + + + + + + max property - NumberBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
max
+ +
+ +
+
+
+
+
+ +

max property +

+ + +
+ + num? + max +
final
+ +
+ +
+

The maximum allowed value.

+
+ + +
+

Implementation

+
final num? max;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NumberBuilder/min.html b/docs/models/NumberBuilder/min.html new file mode 100644 index 0000000000..d45b8a401e --- /dev/null +++ b/docs/models/NumberBuilder/min.html @@ -0,0 +1,115 @@ + + + + + + + + min property - NumberBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
min
+ +
+ +
+
+
+
+
+ +

min property +

+ + +
+ + num? + min +
final
+ +
+ +
+

The minimum allowed value.

+
+ + +
+

Implementation

+
final num? min;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/NumberBuilder/update.html b/docs/models/NumberBuilder/update.html new file mode 100644 index 0000000000..1077998522 --- /dev/null +++ b/docs/models/NumberBuilder/update.html @@ -0,0 +1,139 @@ + + + + + + + + update method - NumberBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
update
+ +
+ +
+
+
+
+
+ +

update method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +update(
  1. String input
  2. +
) + +
override
+ +
+ +
+

Updates the value based on the user's input.

+

Perform validation here and set error accordingly. You do not have to set value in this +function -- for example, if the user entered an invalid input.

+
+ + + +
+

Implementation

+
@override
+void update(String input) {
+	if (input.isEmpty) {
+		error = "Empty";
+	} else if (double.tryParse(input) == null) {
+		error = "Invalid number";
+	} else if (isInteger && int.tryParse(input) == null) {
+		error = "Not an integer";
+	} else {
+		error = null;
+		final result = isInteger ? (int.parse(input) as T) : (double.parse(input) as T);
+		if (min != null && result < min!) error = "Must be >$min";
+		if (max != null && result > max!) error = "Must be <$max";
+		value = result;
+	}
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/PositionModel-class-sidebar.html b/docs/models/PositionModel-class-sidebar.html new file mode 100644 index 0000000000..532de76e80 --- /dev/null +++ b/docs/models/PositionModel-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  1. Constructors
  2. +
  3. PositionModel
  4. + + + +
  5. + Properties +
  6. +
  7. drive
  8. +
  9. hashCode
  10. +
  11. hasListeners
  12. +
  13. leftWheels
  14. +
  15. position
  16. +
  17. rightWheels
  18. +
  19. runtimeType
  20. +
  21. throttle
  22. +
  23. wheelColors
  24. +
  25. wheelsRPM
  26. + +
  27. Methods
  28. +
  29. addListener
  30. +
  31. dispose
  32. +
  33. noSuchMethod
  34. +
  35. notifyListeners
  36. +
  37. removeListener
  38. +
  39. toString
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/models/PositionModel-class.html b/docs/models/PositionModel-class.html new file mode 100644 index 0000000000..e714f1a496 --- /dev/null +++ b/docs/models/PositionModel-class.html @@ -0,0 +1,376 @@ + + + + + + + + PositionModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PositionModel
+ +
+ +
+
+
+
+
+ +

PositionModel class + +

+ + +
+

The view model for the electrical analysis page.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ PositionModel() +
+
+ Listens to all the ScienceTestBuilders in the UI. +
+
+
+ +
+

Properties

+
+
+ drive + DriveMetrics + + +
+
+ The Metrics model for drive data. +
no setter
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ leftWheels + ↔ double + + +
+
+ Value for the three left wheels -- throttle * left +
getter/setter pair
+ +
+ +
+ position + PositionMetrics + + +
+
+ The Metrics model for position data. +
no setter
+ +
+ +
+ rightWheels + ↔ double + + +
+
+ Value for the three right wheels -- throttle * right +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ throttle + ↔ double + + +
+
+ Value for the three left wheels -- throttle * left +
getter/setter pair
+ +
+ +
+ wheelColors + → List<Color> + + +
+
+ Color the wheels should be displayed +Used to dispay when one wheel is spinning erratically +
final
+ +
+ +
+ wheelsRPM + → List<double> + + +
+
+ RPM of the left wheels +Left Front, Left Middle, Left Back, Right Front, Right Middle, Right Back +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/PositionModel/PositionModel.html b/docs/models/PositionModel/PositionModel.html new file mode 100644 index 0000000000..4babed71e5 --- /dev/null +++ b/docs/models/PositionModel/PositionModel.html @@ -0,0 +1,114 @@ + + + + + + + + PositionModel constructor - PositionModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
PositionModel
+ +
+ +
+
+
+
+
+ +

PositionModel constructor +

+ +
+ + PositionModel() +
+ +
+

Listens to all the ScienceTestBuilders in the UI.

+
+ + + +
+

Implementation

+
PositionModel() {
+  position.addListener(_updatePositionData);
+  drive.addListener(_updateDriveData);
+	}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/PositionModel/dispose.html b/docs/models/PositionModel/dispose.html new file mode 100644 index 0000000000..f39f3b02be --- /dev/null +++ b/docs/models/PositionModel/dispose.html @@ -0,0 +1,131 @@ + + + + + + + + dispose method - PositionModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+	void dispose() {
+		position.removeListener(_updatePositionData);
+  drive.removeListener(_updateDriveData);
+		super.dispose();
+	}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/PositionModel/drive.html b/docs/models/PositionModel/drive.html new file mode 100644 index 0000000000..fa0e93ac45 --- /dev/null +++ b/docs/models/PositionModel/drive.html @@ -0,0 +1,121 @@ + + + + + + + + drive property - PositionModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
drive
+ +
+ +
+
+
+
+
+ +

drive property +

+ + + + + +
+
+ + DriveMetrics + get + drive + + +
+ +
+

The Metrics model for drive data.

+
+ + +
+

Implementation

+
DriveMetrics get drive => models.rover.metrics.drive;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/PositionModel/leftWheels.html b/docs/models/PositionModel/leftWheels.html new file mode 100644 index 0000000000..f87b9dbdab --- /dev/null +++ b/docs/models/PositionModel/leftWheels.html @@ -0,0 +1,115 @@ + + + + + + + + leftWheels property - PositionModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
leftWheels
+ +
+ +
+
+
+
+
+ +

leftWheels property +

+ + +
+ + double + leftWheels +
getter/setter pair
+ +
+ +
+

Value for the three left wheels -- throttle * left

+
+ + +
+

Implementation

+
double leftWheels = 0;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/PositionModel/position.html b/docs/models/PositionModel/position.html new file mode 100644 index 0000000000..7ae0b00ad1 --- /dev/null +++ b/docs/models/PositionModel/position.html @@ -0,0 +1,121 @@ + + + + + + + + position property - PositionModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
position
+ +
+ +
+
+
+
+
+ +

position property +

+ + + + + +
+
+ + PositionMetrics + get + position + + +
+ +
+

The Metrics model for position data.

+
+ + +
+

Implementation

+
PositionMetrics get position => models.rover.metrics.position;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/PositionModel/rightWheels.html b/docs/models/PositionModel/rightWheels.html new file mode 100644 index 0000000000..4010a77071 --- /dev/null +++ b/docs/models/PositionModel/rightWheels.html @@ -0,0 +1,115 @@ + + + + + + + + rightWheels property - PositionModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rightWheels
+ +
+ +
+
+
+
+
+ +

rightWheels property +

+ + +
+ + double + rightWheels +
getter/setter pair
+ +
+ +
+

Value for the three right wheels -- throttle * right

+
+ + +
+

Implementation

+
double rightWheels = 0;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/PositionModel/throttle.html b/docs/models/PositionModel/throttle.html new file mode 100644 index 0000000000..a04cccdff4 --- /dev/null +++ b/docs/models/PositionModel/throttle.html @@ -0,0 +1,115 @@ + + + + + + + + throttle property - PositionModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
throttle
+ +
+ +
+
+
+
+
+ +

throttle property +

+ + +
+ + double + throttle +
getter/setter pair
+ +
+ +
+

Value for the three left wheels -- throttle * left

+
+ + +
+

Implementation

+
double throttle = 0;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/PositionModel/wheelColors.html b/docs/models/PositionModel/wheelColors.html new file mode 100644 index 0000000000..4c5f0c4695 --- /dev/null +++ b/docs/models/PositionModel/wheelColors.html @@ -0,0 +1,116 @@ + + + + + + + + wheelColors property - PositionModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
wheelColors
+ +
+ +
+
+
+
+
+ +

wheelColors property +

+ + +
+ + List<Color> + wheelColors +
final
+ +
+ +
+

Color the wheels should be displayed +Used to dispay when one wheel is spinning erratically

+
+ + +
+

Implementation

+
final wheelColors = <Color>[Colors.black, Colors.black, Colors.black, Colors.black, Colors.black, Colors.black];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/PositionModel/wheelsRPM.html b/docs/models/PositionModel/wheelsRPM.html new file mode 100644 index 0000000000..56e9e20527 --- /dev/null +++ b/docs/models/PositionModel/wheelsRPM.html @@ -0,0 +1,116 @@ + + + + + + + + wheelsRPM property - PositionModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
wheelsRPM
+ +
+ +
+
+
+
+
+ +

wheelsRPM property +

+ + +
+ + List<double> + wheelsRPM +
final
+ +
+ +
+

RPM of the left wheels +Left Front, Left Middle, Left Back, Right Front, Right Middle, Right Back

+
+ + +
+

Implementation

+
final wheelsRPM = <double>[0, 0, 0, 0, 0, 0];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RequestNotAccepted-class-sidebar.html b/docs/models/RequestNotAccepted-class-sidebar.html new file mode 100644 index 0000000000..828b5f587f --- /dev/null +++ b/docs/models/RequestNotAccepted-class-sidebar.html @@ -0,0 +1,26 @@ +
    + +
  1. Constructors
  2. +
  3. RequestNotAccepted
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + + +
diff --git a/docs/models/RequestNotAccepted-class.html b/docs/models/RequestNotAccepted-class.html new file mode 100644 index 0000000000..b5118f4333 --- /dev/null +++ b/docs/models/RequestNotAccepted-class.html @@ -0,0 +1,206 @@ + + + + + + + + RequestNotAccepted class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RequestNotAccepted
+ +
+ +
+
+
+
+
+ +

RequestNotAccepted class + +

+ + +
+

An exception thrown when the rover does not respond to a handshake.

+

Certain changes require a handshake to ensure the rover has received and applied the change. +If the rover fails to acknowledge or apply the change, a response will not be sent. Throw +this error to indicate that.

+
+ + + + +
+

Constructors

+
+
+ RequestNotAccepted() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RequestNotAccepted/RequestNotAccepted.html b/docs/models/RequestNotAccepted/RequestNotAccepted.html new file mode 100644 index 0000000000..5c9a9a4e9d --- /dev/null +++ b/docs/models/RequestNotAccepted/RequestNotAccepted.html @@ -0,0 +1,104 @@ + + + + + + + + RequestNotAccepted constructor - RequestNotAccepted - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RequestNotAccepted
+ +
+ +
+
+
+
+
+ +

RequestNotAccepted constructor +

+ +
+ + RequestNotAccepted() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RequestNotAccepted/hashCode.html b/docs/models/RequestNotAccepted/hashCode.html new file mode 100644 index 0000000000..c5b3b44d42 --- /dev/null +++ b/docs/models/RequestNotAccepted/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - RequestNotAccepted class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RequestNotAccepted/noSuchMethod.html b/docs/models/RequestNotAccepted/noSuchMethod.html new file mode 100644 index 0000000000..1e099f0236 --- /dev/null +++ b/docs/models/RequestNotAccepted/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - RequestNotAccepted class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RequestNotAccepted/operator_equals.html b/docs/models/RequestNotAccepted/operator_equals.html new file mode 100644 index 0000000000..8590cb79f2 --- /dev/null +++ b/docs/models/RequestNotAccepted/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - RequestNotAccepted class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RequestNotAccepted/runtimeType.html b/docs/models/RequestNotAccepted/runtimeType.html new file mode 100644 index 0000000000..9d5cb72ec2 --- /dev/null +++ b/docs/models/RequestNotAccepted/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - RequestNotAccepted class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RequestNotAccepted/toString.html b/docs/models/RequestNotAccepted/toString.html new file mode 100644 index 0000000000..3d83ad8ecc --- /dev/null +++ b/docs/models/RequestNotAccepted/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - RequestNotAccepted class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover-class-sidebar.html b/docs/models/Rover-class-sidebar.html new file mode 100644 index 0000000000..8ffffff6a6 --- /dev/null +++ b/docs/models/Rover-class-sidebar.html @@ -0,0 +1,41 @@ +
    + +
  1. Constructors
  2. +
  3. Rover
  4. + + + +
  5. + Properties +
  6. +
  7. controller1
  8. +
  9. controller2
  10. +
  11. controller3
  12. +
  13. controllers
  14. +
  15. hashCode
  16. +
  17. hasListeners
  18. +
  19. isConnected
  20. +
  21. metrics
  22. +
  23. runtimeType
  24. +
  25. settings
  26. +
  27. status
  28. + +
  29. Methods
  30. +
  31. addListener
  32. +
  33. dispose
  34. +
  35. init
  36. +
  37. noSuchMethod
  38. +
  39. notifyListeners
  40. +
  41. removeListener
  42. +
  43. setDefaultControls
  44. +
  45. toString
  46. + +
  47. Operators
  48. +
  49. operator ==
  50. + + + + + + +
diff --git a/docs/models/Rover-class.html b/docs/models/Rover-class.html new file mode 100644 index 0000000000..36c9b92cbf --- /dev/null +++ b/docs/models/Rover-class.html @@ -0,0 +1,415 @@ + + + + + + + + Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Rover
+ +
+ +
+
+
+
+
+ +

Rover class + +

+ + +
+

The model to control the entire rover.

+

Find more specific functionality in this class's fields.

+
+ + +
+
+ +
Inheritance
+
+
    +
  • Object
  • +
  • Model
  • +
  • Rover
  • +
+
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ Rover() +
+
+ +
+
+
+ +
+

Properties

+
+
+ controller1 + Controller + + +
+
+ Listens for inputs on the first connected gamepad. +
final
+ +
+ +
+ controller2 + Controller + + +
+
+ Listens for inputs on the second connected gamepad. +
final
+ +
+ +
+ controller3 + Controller + + +
+
+ Listens for inputs on the third connected gamepad. +
final
+ +
+ +
+ controllers + → Iterable<Controller> + + +
+
+ All the controllers on the Dashboard. +
no setter
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isConnected + → bool + + +
+
+ Whether the rover is connected. +
no setter
+ +
+ +
+ metrics + RoverMetrics + + +
+
+ Monitors metrics coming from the rover. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ settings + → RoverSettings + + +
+
+ A model to adjust settings on the rover. +
final
+ +
+ +
+ status + ValueNotifier<RoverStatus> + + +
+
+ The current status of the rover. +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ setDefaultControls() + → void + + + +
+
+ Sets all the gamepads to their default controls. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/Rover.html b/docs/models/Rover/Rover.html new file mode 100644 index 0000000000..89b00adebd --- /dev/null +++ b/docs/models/Rover/Rover.html @@ -0,0 +1,104 @@ + + + + + + + + Rover constructor - Rover - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Rover
+ +
+ +
+
+
+
+
+ +

Rover constructor +

+ +
+ + Rover() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/controller1.html b/docs/models/Rover/controller1.html new file mode 100644 index 0000000000..c3a4386215 --- /dev/null +++ b/docs/models/Rover/controller1.html @@ -0,0 +1,115 @@ + + + + + + + + controller1 property - Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
controller1
+ +
+ +
+
+
+
+
+ +

controller1 property +

+ + +
+ + Controller + controller1 +
final
+ +
+ +
+

Listens for inputs on the first connected gamepad.

+
+ + +
+

Implementation

+
final controller1 = Controller(0, DriveControls());
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/controller2.html b/docs/models/Rover/controller2.html new file mode 100644 index 0000000000..a8a398c7bc --- /dev/null +++ b/docs/models/Rover/controller2.html @@ -0,0 +1,115 @@ + + + + + + + + controller2 property - Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
controller2
+ +
+ +
+
+
+
+
+ +

controller2 property +

+ + +
+ + Controller + controller2 +
final
+ +
+ +
+

Listens for inputs on the second connected gamepad.

+
+ + +
+

Implementation

+
final controller2 = Controller(1, ArmControls());
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/controller3.html b/docs/models/Rover/controller3.html new file mode 100644 index 0000000000..de74d08dc0 --- /dev/null +++ b/docs/models/Rover/controller3.html @@ -0,0 +1,115 @@ + + + + + + + + controller3 property - Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
controller3
+ +
+ +
+
+
+
+
+ +

controller3 property +

+ + +
+ + Controller + controller3 +
final
+ +
+ +
+

Listens for inputs on the third connected gamepad.

+
+ + +
+

Implementation

+
final controller3 = Controller(2, NoControls());
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/controllers.html b/docs/models/Rover/controllers.html new file mode 100644 index 0000000000..ca731af02c --- /dev/null +++ b/docs/models/Rover/controllers.html @@ -0,0 +1,121 @@ + + + + + + + + controllers property - Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
controllers
+ +
+ +
+
+
+
+
+ +

controllers property +

+ + + + + +
+
+ + Iterable<Controller> + get + controllers + + +
+ +
+

All the controllers on the Dashboard.

+
+ + +
+

Implementation

+
Iterable<Controller> get controllers => [controller1, controller2, controller3];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/dispose.html b/docs/models/Rover/dispose.html new file mode 100644 index 0000000000..0a0c0c6c4e --- /dev/null +++ b/docs/models/Rover/dispose.html @@ -0,0 +1,137 @@ + + + + + + + + dispose method - Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+	metrics.removeListener(notifyListeners);
+	settings.removeListener(notifyListeners);
+
+	metrics.dispose();
+	controller1.dispose();
+	controller2.dispose();
+    controller3.dispose();
+	settings.dispose();
+	super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/init.html b/docs/models/Rover/init.html new file mode 100644 index 0000000000..ada0af15e5 --- /dev/null +++ b/docs/models/Rover/init.html @@ -0,0 +1,131 @@ + + + + + + + + init method - Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
override
+ +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+    setDefaultControls();
+    await metrics.init();
+	await controller1.init();
+	await controller2.init();
+    await controller3.init();
+	await settings.init();
+
+	metrics.addListener(notifyListeners);
+	settings.addListener(notifyListeners);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/isConnected.html b/docs/models/Rover/isConnected.html new file mode 100644 index 0000000000..a951322547 --- /dev/null +++ b/docs/models/Rover/isConnected.html @@ -0,0 +1,121 @@ + + + + + + + + isConnected property - Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isConnected
+ +
+ +
+
+
+
+
+ +

isConnected property +

+ + + + + +
+
+ + bool + get + isConnected + + +
+ +
+

Whether the rover is connected.

+
+ + +
+

Implementation

+
bool get isConnected => models.sockets.data.isConnected;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/metrics.html b/docs/models/Rover/metrics.html new file mode 100644 index 0000000000..74e1f2cfda --- /dev/null +++ b/docs/models/Rover/metrics.html @@ -0,0 +1,115 @@ + + + + + + + + metrics property - Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
metrics
+ +
+ +
+
+
+
+
+ +

metrics property +

+ + +
+ + RoverMetrics + metrics +
final
+ +
+ +
+

Monitors metrics coming from the rover.

+
+ + +
+

Implementation

+
final metrics = RoverMetrics();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/setDefaultControls.html b/docs/models/Rover/setDefaultControls.html new file mode 100644 index 0000000000..b15f3feafb --- /dev/null +++ b/docs/models/Rover/setDefaultControls.html @@ -0,0 +1,124 @@ + + + + + + + + setDefaultControls method - Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setDefaultControls
+ +
+ +
+
+
+
+
+ +

setDefaultControls method +

+ +
+ +void +setDefaultControls() + + + +
+ +
+

Sets all the gamepads to their default controls.

+
+ + + +
+

Implementation

+
void setDefaultControls() {
+  final settings = models.settings.dashboard;
+  if (settings.preferTankControls) {
+    controller1.setMode(OperatingMode.drive);
+  } else {
+    controller1.setMode(OperatingMode.modernDrive);
+  }
+  controller2.setMode(OperatingMode.none);
+  controller3.setMode(OperatingMode.none);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/settings.html b/docs/models/Rover/settings.html new file mode 100644 index 0000000000..362926d5f6 --- /dev/null +++ b/docs/models/Rover/settings.html @@ -0,0 +1,115 @@ + + + + + + + + settings property - Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
settings
+ +
+ +
+
+
+
+
+ +

settings property +

+ + +
+ + RoverSettings + settings +
final
+ +
+ +
+

A model to adjust settings on the rover.

+
+ + +
+

Implementation

+
final settings = RoverSettings();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Rover/status.html b/docs/models/Rover/status.html new file mode 100644 index 0000000000..99c3e1b8f5 --- /dev/null +++ b/docs/models/Rover/status.html @@ -0,0 +1,115 @@ + + + + + + + + status property - Rover class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
status
+ +
+ +
+
+
+
+
+ +

status property +

+ + +
+ + ValueNotifier<RoverStatus> + status +
getter/setter pair
+ +
+ +
+

The current status of the rover.

+
+ + +
+

Implementation

+
ValueNotifier<RoverStatus> status = ValueNotifier(RoverStatus.DISCONNECTED);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls-class-sidebar.html b/docs/models/RoverControls-class-sidebar.html new file mode 100644 index 0000000000..bc250c5d82 --- /dev/null +++ b/docs/models/RoverControls-class-sidebar.html @@ -0,0 +1,32 @@ +
    + +
  1. Constructors
  2. +
  3. RoverControls
  4. +
  5. forMode
  6. + + + +
  7. + Properties +
  8. +
  9. buttonMapping
  10. +
  11. hashCode
  12. +
  13. mode
  14. +
  15. onDispose
  16. +
  17. runtimeType
  18. + +
  19. Methods
  20. +
  21. noSuchMethod
  22. +
  23. parseInputs
  24. +
  25. toString
  26. +
  27. updateState
  28. + +
  29. Operators
  30. +
  31. operator ==
  32. + + + + + + +
diff --git a/docs/models/RoverControls-class.html b/docs/models/RoverControls-class.html new file mode 100644 index 0000000000..9a5debafbe --- /dev/null +++ b/docs/models/RoverControls-class.html @@ -0,0 +1,299 @@ + + + + + + + + RoverControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverControls
+ +
+ +
+
+
+
+
+ +

RoverControls class + abstract + +

+ + +
+

A class that controls one subsystem based on the gamepad state.

+

To use this class, subclass it and implement parseInputs. Be sure to add your class to the +RoverControls.forMode constructor so it can be used within the UI.

+
+ + +
+
+ + + + + +
Implementers
+
+ + + + + +
+
+ + +
+

Constructors

+
+
+ RoverControls() +
+
+ Classes with a factory constructor must also have a regular constructor to be overriden. +
const
+
+
+ RoverControls.forMode(OperatingMode mode) +
+
+ Creates the appropriate RoverControls for this mode. +
factory
+
+
+
+ +
+

Properties

+
+
+ buttonMapping + → Map<String, String> + + +
+
+ A human-readable explanation of what the controls are. +
no setter
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ mode + OperatingMode + + +
+
+ The OperatingMode for these controls. +
no setter
+ +
+ +
+ onDispose + → Iterable<Message> + + +
+
+ A list of commands that disables the subsystem. +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ parseInputs(GamepadState state) + → Iterable<Message> + + + +
+
+ Return a list of commands based on the current state of the gamepad. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateState(GamepadState state) + → void + + + +
+
+ Any logic to run before checking parseInputs. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/RoverControls.forMode.html b/docs/models/RoverControls/RoverControls.forMode.html new file mode 100644 index 0000000000..554ef712d8 --- /dev/null +++ b/docs/models/RoverControls/RoverControls.forMode.html @@ -0,0 +1,119 @@ + + + + + + + + RoverControls.forMode constructor - RoverControls - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverControls.forMode
+ +
+ +
+
+
+
+
+ +

RoverControls.forMode constructor +

+ +
+ + RoverControls.forMode(
  1. OperatingMode mode
  2. +
) +
+ +
+

Creates the appropriate RoverControls for this mode.

+
+ + + +
+

Implementation

+
factory RoverControls.forMode(OperatingMode mode) => switch (mode) {
+    OperatingMode.arm => ArmControls(),
+    OperatingMode.science => ScienceControls(),
+    OperatingMode.drive => DriveControls(),
+    OperatingMode.none => NoControls(),
+    OperatingMode.cameras => CameraControls(),
+    OperatingMode.modernDrive => ModernDriveControls(),
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/RoverControls.html b/docs/models/RoverControls/RoverControls.html new file mode 100644 index 0000000000..57a987f3db --- /dev/null +++ b/docs/models/RoverControls/RoverControls.html @@ -0,0 +1,111 @@ + + + + + + + + RoverControls constructor - RoverControls - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverControls
+ +
+ +
+
+
+
+
+ +

RoverControls constructor +

+ +
+ const + RoverControls() +
+ +
+

Classes with a factory constructor must also have a regular constructor to be overriden.

+
+ + + +
+

Implementation

+
const RoverControls();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/buttonMapping.html b/docs/models/RoverControls/buttonMapping.html new file mode 100644 index 0000000000..38c27ae136 --- /dev/null +++ b/docs/models/RoverControls/buttonMapping.html @@ -0,0 +1,122 @@ + + + + + + + + buttonMapping property - RoverControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonMapping
+ +
+ +
+
+
+
+
+ +

buttonMapping property +

+ + + + + +
+
+ + Map<String, String> + get + buttonMapping + + +
+ +
+

A human-readable explanation of what the controls are.

+

Keys are the actions, values are the buttons that trigger them.

+
+ + +
+

Implementation

+
Map<String, String> get buttonMapping;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/hashCode.html b/docs/models/RoverControls/hashCode.html new file mode 100644 index 0000000000..4f9aa26224 --- /dev/null +++ b/docs/models/RoverControls/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - RoverControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/mode.html b/docs/models/RoverControls/mode.html new file mode 100644 index 0000000000..a156084bd1 --- /dev/null +++ b/docs/models/RoverControls/mode.html @@ -0,0 +1,121 @@ + + + + + + + + mode property - RoverControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
mode
+ +
+ +
+
+
+
+
+ +

mode property +

+ + + + + +
+
+ + OperatingMode + get + mode + + +
+ +
+

The OperatingMode for these controls.

+
+ + +
+

Implementation

+
OperatingMode get mode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/noSuchMethod.html b/docs/models/RoverControls/noSuchMethod.html new file mode 100644 index 0000000000..63bd52eb3b --- /dev/null +++ b/docs/models/RoverControls/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - RoverControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/onDispose.html b/docs/models/RoverControls/onDispose.html new file mode 100644 index 0000000000..07d5c053d4 --- /dev/null +++ b/docs/models/RoverControls/onDispose.html @@ -0,0 +1,122 @@ + + + + + + + + onDispose property - RoverControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onDispose
+ +
+ +
+
+
+
+
+ +

onDispose property +

+ + + + + +
+
+ + Iterable<Message> + get + onDispose + + +
+ +
+

A list of commands that disables the subsystem.

+

For example, after driving this should set the speed to 0.

+
+ + +
+

Implementation

+
Iterable<Message> get onDispose;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/operator_equals.html b/docs/models/RoverControls/operator_equals.html new file mode 100644 index 0000000000..dd130e7f03 --- /dev/null +++ b/docs/models/RoverControls/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - RoverControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/parseInputs.html b/docs/models/RoverControls/parseInputs.html new file mode 100644 index 0000000000..eadb747fc1 --- /dev/null +++ b/docs/models/RoverControls/parseInputs.html @@ -0,0 +1,116 @@ + + + + + + + + parseInputs method - RoverControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseInputs
+ +
+ +
+
+
+
+
+ +

parseInputs abstract method +

+ +
+ +Iterable<Message> +parseInputs(
  1. GamepadState state
  2. +
) + + + +
+ +
+

Return a list of commands based on the current state of the gamepad.

+
+ + + +
+

Implementation

+
Iterable<Message> parseInputs(GamepadState state);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/runtimeType.html b/docs/models/RoverControls/runtimeType.html new file mode 100644 index 0000000000..a39c52076c --- /dev/null +++ b/docs/models/RoverControls/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - RoverControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/toString.html b/docs/models/RoverControls/toString.html new file mode 100644 index 0000000000..eb5a59b5c4 --- /dev/null +++ b/docs/models/RoverControls/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - RoverControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverControls/updateState.html b/docs/models/RoverControls/updateState.html new file mode 100644 index 0000000000..2254e9e714 --- /dev/null +++ b/docs/models/RoverControls/updateState.html @@ -0,0 +1,116 @@ + + + + + + + + updateState method - RoverControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateState
+ +
+ +
+
+
+
+
+ +

updateState method +

+ +
+ +void +updateState(
  1. GamepadState state
  2. +
) + + + +
+ +
+

Any logic to run before checking parseInputs.

+
+ + + +
+

Implementation

+
void updateState(GamepadState state) { }
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics-class-sidebar.html b/docs/models/RoverMetrics-class-sidebar.html new file mode 100644 index 0000000000..848b3e419e --- /dev/null +++ b/docs/models/RoverMetrics-class-sidebar.html @@ -0,0 +1,41 @@ +
    + +
  1. Constructors
  2. +
  3. RoverMetrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. arm
  10. +
  11. drive
  12. +
  13. gripper
  14. +
  15. hashCode
  16. +
  17. hasListeners
  18. +
  19. metricsByCommandName
  20. +
  21. position
  22. +
  23. runtimeType
  24. +
  25. science
  26. +
  27. vitals
  28. + +
  29. Methods
  30. +
  31. addListener
  32. +
  33. dispose
  34. +
  35. init
  36. +
  37. isSupportedVersion
  38. +
  39. noSuchMethod
  40. +
  41. notifyListeners
  42. +
  43. removeListener
  44. +
  45. toString
  46. + +
  47. Operators
  48. +
  49. operator ==
  50. + + + + + + +
diff --git a/docs/models/RoverMetrics-class.html b/docs/models/RoverMetrics-class.html new file mode 100644 index 0000000000..6689afa9a1 --- /dev/null +++ b/docs/models/RoverMetrics-class.html @@ -0,0 +1,414 @@ + + + + + + + + RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverMetrics
+ +
+ +
+
+
+
+
+ +

RoverMetrics class + +

+ + +
+

A data model that listens for updated data and provides Metrics to the UI.

+
+ + +
+
+ +
Inheritance
+
+
    +
  • Object
  • +
  • Model
  • +
  • RoverMetrics
  • +
+
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ RoverMetrics() +
+
+ +
+
+
+ +
+

Properties

+
+
+ allMetrics + → List<Metrics<Message>> + + +
+
+ A list of all the metrics to iterate over. +
no setter
+ +
+ +
+ arm + ArmMetrics + + +
+
+ Data from the HREI subsystem about the arm base. +
final
+ +
+ +
+ drive + DriveMetrics + + +
+
+ Data from the drive subsystem. +
final
+ +
+ +
+ gripper + GripperMetrics + + +
+
+ Data from the HREI subsystem about the gripper. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ metricsByCommandName + → Map<String, Metrics<Message>> + + +
+
+ Maps command names to the metrics responsible for the device. +
no setter
+ +
+ +
+ position + PositionMetrics + + +
+
+ Data from the GPS. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ science + ScienceMetrics + + +
+
+ Data from the science subsystem. +
final
+ +
+ +
+ vitals + VitalsMetrics + + +
+
+ Vitals data from the rover. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. +
override
+ +
+ +
+ isSupportedVersion(Message command) + → bool + + + +
+
+ Whether the given command is supported by the rover. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics/RoverMetrics.html b/docs/models/RoverMetrics/RoverMetrics.html new file mode 100644 index 0000000000..b9716735df --- /dev/null +++ b/docs/models/RoverMetrics/RoverMetrics.html @@ -0,0 +1,104 @@ + + + + + + + + RoverMetrics constructor - RoverMetrics - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RoverMetrics
+ +
+ +
+
+
+
+
+ +

RoverMetrics constructor +

+ +
+ + RoverMetrics() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics/allMetrics.html b/docs/models/RoverMetrics/allMetrics.html new file mode 100644 index 0000000000..ef6f0755cd --- /dev/null +++ b/docs/models/RoverMetrics/allMetrics.html @@ -0,0 +1,123 @@ + + + + + + + + allMetrics property - RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
allMetrics
+ +
+ +
+
+
+
+
+ +

allMetrics property +

+ + + + + +
+
+ + List<Metrics<Message>> + get + allMetrics + + +
+ +
+

A list of all the metrics to iterate over.

+

NOTE: Keep this as a getter, NOT a field. If this is made a field, then it won't update +when new data is received. As a getter, every time it is called it will use new data.

+
+ + +
+

Implementation

+
List<Metrics> get allMetrics => [vitals, position, drive, science, arm, gripper];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics/arm.html b/docs/models/RoverMetrics/arm.html new file mode 100644 index 0000000000..dc7eba9511 --- /dev/null +++ b/docs/models/RoverMetrics/arm.html @@ -0,0 +1,115 @@ + + + + + + + + arm property - RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
arm
+ +
+ +
+
+
+
+
+ +

arm property +

+ + +
+ + ArmMetrics + arm +
final
+ +
+ +
+

Data from the HREI subsystem about the arm base.

+
+ + +
+

Implementation

+
final arm = ArmMetrics();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics/drive.html b/docs/models/RoverMetrics/drive.html new file mode 100644 index 0000000000..e5ab28b228 --- /dev/null +++ b/docs/models/RoverMetrics/drive.html @@ -0,0 +1,115 @@ + + + + + + + + drive property - RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
drive
+ +
+ +
+
+
+
+
+ +

drive property +

+ + +
+ + DriveMetrics + drive +
final
+ +
+ +
+

Data from the drive subsystem.

+
+ + +
+

Implementation

+
final drive = DriveMetrics();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics/gripper.html b/docs/models/RoverMetrics/gripper.html new file mode 100644 index 0000000000..91c2cf8232 --- /dev/null +++ b/docs/models/RoverMetrics/gripper.html @@ -0,0 +1,115 @@ + + + + + + + + gripper property - RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gripper
+ +
+ +
+
+
+
+
+ +

gripper property +

+ + +
+ + GripperMetrics + gripper +
final
+ +
+ +
+

Data from the HREI subsystem about the gripper.

+
+ + +
+

Implementation

+
final gripper = GripperMetrics();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics/init.html b/docs/models/RoverMetrics/init.html new file mode 100644 index 0000000000..e4421e7a31 --- /dev/null +++ b/docs/models/RoverMetrics/init.html @@ -0,0 +1,148 @@ + + + + + + + + init method - RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
override
+ +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+	models.messages.registerHandler<DriveData>(
+		name: DriveData().messageName,
+		decoder: DriveData.fromBuffer,
+		handler: drive.update,
+	);
+	models.messages.registerHandler<ScienceData>(
+		name: ScienceData().messageName,
+		decoder: ScienceData.fromBuffer,
+		handler: science.update,
+	);
+    models.messages.registerHandler<RoverPosition>(
+		name: RoverPosition().messageName,
+		decoder: RoverPosition.fromBuffer,
+		handler: position.update,
+	);
+	models.messages.registerHandler<ArmData>(
+		name: ArmData().messageName,
+		decoder: ArmData.fromBuffer,
+		handler: arm.update,
+	);
+	models.messages.registerHandler<GripperData>(
+		name: GripperData().messageName,
+		decoder: GripperData.fromBuffer,
+		handler: gripper.update,
+	);
+    // versionTimer = Timer.periodic(versionInterval, _sendVersions);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics/isSupportedVersion.html b/docs/models/RoverMetrics/isSupportedVersion.html new file mode 100644 index 0000000000..ba376d605c --- /dev/null +++ b/docs/models/RoverMetrics/isSupportedVersion.html @@ -0,0 +1,119 @@ + + + + + + + + isSupportedVersion method - RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isSupportedVersion
+ +
+ +
+
+
+
+
+ +

isSupportedVersion method +

+ +
+ +bool +isSupportedVersion(
  1. Message command
  2. +
) + + + +
+ +
+

Whether the given command is supported by the rover.

+
+ + + +
+

Implementation

+
bool isSupportedVersion(Message command) {
+  final model = metricsByCommandName[command.messageName];
+  return model?.matchesVersion ?? true;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics/metricsByCommandName.html b/docs/models/RoverMetrics/metricsByCommandName.html new file mode 100644 index 0000000000..92456ce699 --- /dev/null +++ b/docs/models/RoverMetrics/metricsByCommandName.html @@ -0,0 +1,126 @@ + + + + + + + + metricsByCommandName property - RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
metricsByCommandName
+ +
+ +
+
+
+
+
+ +

metricsByCommandName property +

+ + + + + +
+
+ + Map<String, Metrics<Message>> + get + metricsByCommandName + + +
+ +
+

Maps command names to the metrics responsible for the device.

+
+ + +
+

Implementation

+
Map<String, Metrics> get metricsByCommandName => {
+  ScienceCommand().messageName: science,
+  DriveCommand().messageName: drive,
+  ArmCommand().messageName: arm,
+  GripperCommand().messageName: gripper,
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics/position.html b/docs/models/RoverMetrics/position.html new file mode 100644 index 0000000000..aac2e0e01b --- /dev/null +++ b/docs/models/RoverMetrics/position.html @@ -0,0 +1,115 @@ + + + + + + + + position property - RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
position
+ +
+ +
+
+
+
+
+ +

position property +

+ + +
+ + PositionMetrics + position +
final
+ +
+ +
+

Data from the GPS.

+
+ + +
+

Implementation

+
final position = PositionMetrics();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics/science.html b/docs/models/RoverMetrics/science.html new file mode 100644 index 0000000000..07adb48de2 --- /dev/null +++ b/docs/models/RoverMetrics/science.html @@ -0,0 +1,115 @@ + + + + + + + + science property - RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
science
+ +
+ +
+
+
+
+
+ +

science property +

+ + +
+ + ScienceMetrics + science +
final
+ +
+ +
+

Data from the science subsystem.

+
+ + +
+

Implementation

+
final science = ScienceMetrics();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/RoverMetrics/vitals.html b/docs/models/RoverMetrics/vitals.html new file mode 100644 index 0000000000..0b442fb9b4 --- /dev/null +++ b/docs/models/RoverMetrics/vitals.html @@ -0,0 +1,115 @@ + + + + + + + + vitals property - RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
vitals
+ +
+ +
+
+
+
+
+ +

vitals property +

+ + +
+ + VitalsMetrics + vitals +
final
+ +
+ +
+

Vitals data from the rover.

+
+ + +
+

Implementation

+
final vitals = VitalsMetrics();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis-class-sidebar.html b/docs/models/ScienceAnalysis-class-sidebar.html new file mode 100644 index 0000000000..c1cc361867 --- /dev/null +++ b/docs/models/ScienceAnalysis-class-sidebar.html @@ -0,0 +1,32 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceAnalysis
  4. + + + +
  5. + Properties +
  6. +
  7. data
  8. +
  9. hashCode
  10. +
  11. runtimeType
  12. +
  13. sensor
  14. +
  15. testBuilder
  16. +
  17. testResult
  18. + +
  19. Methods
  20. +
  21. addReading
  22. +
  23. clear
  24. +
  25. noSuchMethod
  26. +
  27. toString
  28. + +
  29. Operators
  30. +
  31. operator ==
  32. + + + + + + +
diff --git a/docs/models/ScienceAnalysis-class.html b/docs/models/ScienceAnalysis-class.html new file mode 100644 index 0000000000..01e642a361 --- /dev/null +++ b/docs/models/ScienceAnalysis-class.html @@ -0,0 +1,277 @@ + + + + + + + + ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceAnalysis
+ +
+ +
+
+
+
+
+ +

ScienceAnalysis class + +

+ + +
+

Analysis for one sample and sensor.

+
+ + + + +
+

Constructors

+
+
+ ScienceAnalysis(ScienceSensor sensor) +
+
+ A constructor. +
+
+
+ +
+

Properties

+
+
+ data + SampleData + + +
+
+ The data being recorded. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ sensor + ScienceSensor + + +
+
+ The sensor being analyzed. +
final
+ +
+ +
+ testBuilder + ScienceTestBuilder + + +
+
+ The view models for the test values. +
final
+ +
+ +
+ testResult + ScienceResult + + +
+
+ Passes the overriden data to the sensor's test to determine signs of life. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ addReading(Timestamp timestamp, double value) + → void + + + +
+
+ Adds a reading to this analysis. + + +
+ +
+ clear() + → void + + + +
+
+ Clears all readings from this analysis. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/ScienceAnalysis.html b/docs/models/ScienceAnalysis/ScienceAnalysis.html new file mode 100644 index 0000000000..c1e5ba1026 --- /dev/null +++ b/docs/models/ScienceAnalysis/ScienceAnalysis.html @@ -0,0 +1,112 @@ + + + + + + + + ScienceAnalysis constructor - ScienceAnalysis - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceAnalysis
+ +
+ +
+
+
+
+
+ +

ScienceAnalysis constructor +

+ +
+ + ScienceAnalysis(
  1. ScienceSensor sensor
  2. +
) +
+ +
+

A constructor.

+
+ + + +
+

Implementation

+
ScienceAnalysis(this.sensor);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/addReading.html b/docs/models/ScienceAnalysis/addReading.html new file mode 100644 index 0000000000..6d57806701 --- /dev/null +++ b/docs/models/ScienceAnalysis/addReading.html @@ -0,0 +1,120 @@ + + + + + + + + addReading method - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
addReading
+ +
+ +
+
+
+
+
+ +

addReading method +

+ +
+ +void +addReading(
  1. Timestamp timestamp,
  2. +
  3. double value
  4. +
) + + + +
+ +
+

Adds a reading to this analysis.

+
+ + + +
+

Implementation

+
void addReading(Timestamp timestamp, double value) {
+	data.addReading(timestamp, value);
+	testBuilder.update(data);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/clear.html b/docs/models/ScienceAnalysis/clear.html new file mode 100644 index 0000000000..e462dfde64 --- /dev/null +++ b/docs/models/ScienceAnalysis/clear.html @@ -0,0 +1,118 @@ + + + + + + + + clear method - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clear
+ +
+ +
+
+
+
+
+ +

clear method +

+ +
+ +void +clear() + + + +
+ +
+

Clears all readings from this analysis.

+
+ + + +
+

Implementation

+
void clear() {
+	data.clear();
+	testBuilder.update(data);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/data.html b/docs/models/ScienceAnalysis/data.html new file mode 100644 index 0000000000..f32a91eb34 --- /dev/null +++ b/docs/models/ScienceAnalysis/data.html @@ -0,0 +1,115 @@ + + + + + + + + data property - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
data
+ +
+ +
+
+
+
+
+ +

data property +

+ + +
+ + SampleData + data +
final
+ +
+ +
+

The data being recorded.

+
+ + +
+

Implementation

+
final SampleData data = SampleData();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/hashCode.html b/docs/models/ScienceAnalysis/hashCode.html new file mode 100644 index 0000000000..276e5b454d --- /dev/null +++ b/docs/models/ScienceAnalysis/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/noSuchMethod.html b/docs/models/ScienceAnalysis/noSuchMethod.html new file mode 100644 index 0000000000..999639e5fd --- /dev/null +++ b/docs/models/ScienceAnalysis/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/operator_equals.html b/docs/models/ScienceAnalysis/operator_equals.html new file mode 100644 index 0000000000..22d8eda2da --- /dev/null +++ b/docs/models/ScienceAnalysis/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/runtimeType.html b/docs/models/ScienceAnalysis/runtimeType.html new file mode 100644 index 0000000000..e34139b123 --- /dev/null +++ b/docs/models/ScienceAnalysis/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/sensor.html b/docs/models/ScienceAnalysis/sensor.html new file mode 100644 index 0000000000..979ae6ecd3 --- /dev/null +++ b/docs/models/ScienceAnalysis/sensor.html @@ -0,0 +1,115 @@ + + + + + + + + sensor property - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sensor
+ +
+ +
+
+
+
+
+ +

sensor property +

+ + +
+ + ScienceSensor + sensor +
final
+ +
+ +
+

The sensor being analyzed.

+
+ + +
+

Implementation

+
final ScienceSensor sensor;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/testBuilder.html b/docs/models/ScienceAnalysis/testBuilder.html new file mode 100644 index 0000000000..60fe870465 --- /dev/null +++ b/docs/models/ScienceAnalysis/testBuilder.html @@ -0,0 +1,115 @@ + + + + + + + + testBuilder property - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
testBuilder
+ +
+ +
+
+
+
+
+ +

testBuilder property +

+ + +
+ + ScienceTestBuilder + testBuilder +
final
+ +
+ +
+

The view models for the test values.

+
+ + +
+

Implementation

+
final testBuilder = ScienceTestBuilder();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/testResult.html b/docs/models/ScienceAnalysis/testResult.html new file mode 100644 index 0000000000..7e1df20b97 --- /dev/null +++ b/docs/models/ScienceAnalysis/testResult.html @@ -0,0 +1,126 @@ + + + + + + + + testResult property - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
testResult
+ +
+ +
+
+
+
+
+ +

testResult property +

+ + + + + +
+
+ + ScienceResult + get + testResult + + +
+ +
+

Passes the overriden data to the sensor's test to determine signs of life.

+
+ + +
+

Implementation

+
ScienceResult get testResult => data.readings.isEmpty
+	? ScienceResult.loading : sensor.test(SampleData()
+		..min = testBuilder.min.value
+		..average = testBuilder.average.value
+		..max = testBuilder.max.value,
+	);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceAnalysis/toString.html b/docs/models/ScienceAnalysis/toString.html new file mode 100644 index 0000000000..51fbfe6aec --- /dev/null +++ b/docs/models/ScienceAnalysis/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceCommandBuilder-class-sidebar.html b/docs/models/ScienceCommandBuilder-class-sidebar.html new file mode 100644 index 0000000000..75b85a4b8b --- /dev/null +++ b/docs/models/ScienceCommandBuilder-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceCommandBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. isValid
  12. +
  13. otherBuilders
  14. +
  15. runtimeType
  16. +
  17. sample
  18. +
  19. state
  20. +
  21. value
  22. + +
  23. Methods
  24. +
  25. addListener
  26. +
  27. dispose
  28. +
  29. noSuchMethod
  30. +
  31. notifyListeners
  32. +
  33. removeListener
  34. +
  35. send
  36. +
  37. toString
  38. +
  39. updateState
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/models/ScienceCommandBuilder-class.html b/docs/models/ScienceCommandBuilder-class.html new file mode 100644 index 0000000000..3fd35161e1 --- /dev/null +++ b/docs/models/ScienceCommandBuilder-class.html @@ -0,0 +1,378 @@ + + + + + + + + ScienceCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceCommandBuilder
+ +
+ +
+
+
+
+
+ +

ScienceCommandBuilder class + +

+ + +
+

A ValueBuilder to modify and send an AutonomyCommand.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ScienceCommandBuilder() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ otherBuilders + → List<ValueBuilder> + + +
+
+ Listens to changes in the sample number. +
no setteroverride
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ sample + NumberBuilder<int> + + +
+
+ The sample number being tested. +
final
+ +
+ +
+ state + ScienceState + + +
+
+ Whether the science program should collect data. +
getter/setter pair
+ +
+ +
+ value + ScienceCommand + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ send() + → Future<void> + + + +
+
+ Sends the command to the science subsystem. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateState(ScienceState input) + → void + + + +
+
+ Updates the state and refreshes the UI. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceCommandBuilder/ScienceCommandBuilder.html b/docs/models/ScienceCommandBuilder/ScienceCommandBuilder.html new file mode 100644 index 0000000000..d2f9133f90 --- /dev/null +++ b/docs/models/ScienceCommandBuilder/ScienceCommandBuilder.html @@ -0,0 +1,104 @@ + + + + + + + + ScienceCommandBuilder constructor - ScienceCommandBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceCommandBuilder
+ +
+ +
+
+
+
+
+ +

ScienceCommandBuilder constructor +

+ +
+ + ScienceCommandBuilder() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceCommandBuilder/isValid.html b/docs/models/ScienceCommandBuilder/isValid.html new file mode 100644 index 0000000000..16b01bdd07 --- /dev/null +++ b/docs/models/ScienceCommandBuilder/isValid.html @@ -0,0 +1,128 @@ + + + + + + + + isValid property - ScienceCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => sample.isValid;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceCommandBuilder/otherBuilders.html b/docs/models/ScienceCommandBuilder/otherBuilders.html new file mode 100644 index 0000000000..c3b0d97f55 --- /dev/null +++ b/docs/models/ScienceCommandBuilder/otherBuilders.html @@ -0,0 +1,127 @@ + + + + + + + + otherBuilders property - ScienceCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
otherBuilders
+ +
+ +
+
+
+
+
+ +

otherBuilders property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<ValueBuilder> + get + otherBuilders +
override
+ +
+ +
+

Listens to changes in the sample number.

+
+ + +
+

Implementation

+
@override
+List<ValueBuilder<dynamic>> get otherBuilders => [sample];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceCommandBuilder/sample.html b/docs/models/ScienceCommandBuilder/sample.html new file mode 100644 index 0000000000..a6d7f7bde9 --- /dev/null +++ b/docs/models/ScienceCommandBuilder/sample.html @@ -0,0 +1,115 @@ + + + + + + + + sample property - ScienceCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sample
+ +
+ +
+
+
+
+
+ +

sample property +

+ + +
+ + NumberBuilder<int> + sample +
final
+ +
+ +
+

The sample number being tested.

+
+ + +
+

Implementation

+
final sample = NumberBuilder<int>(1, min: 1, max: 3);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceCommandBuilder/send.html b/docs/models/ScienceCommandBuilder/send.html new file mode 100644 index 0000000000..791a3272f8 --- /dev/null +++ b/docs/models/ScienceCommandBuilder/send.html @@ -0,0 +1,118 @@ + + + + + + + + send method - ScienceCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
send
+ +
+ +
+
+
+
+
+ +

send method +

+ +
+ +Future<void> +send() + + + +
+ +
+

Sends the command to the science subsystem.

+
+ + + +
+

Implementation

+
Future<void> send() async {
+	models.messages.sendMessage(value);
+	models.home.setMessage(severity: Severity.info, text: "Science command submitted. Check the video feed to confirm");
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceCommandBuilder/state.html b/docs/models/ScienceCommandBuilder/state.html new file mode 100644 index 0000000000..07696b7a84 --- /dev/null +++ b/docs/models/ScienceCommandBuilder/state.html @@ -0,0 +1,115 @@ + + + + + + + + state property - ScienceCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
state
+ +
+ +
+
+
+
+
+ +

state property +

+ + +
+ + ScienceState + state +
getter/setter pair
+ +
+ +
+

Whether the science program should collect data.

+
+ + +
+

Implementation

+
ScienceState state = ScienceState.STOP_COLLECTING;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceCommandBuilder/updateState.html b/docs/models/ScienceCommandBuilder/updateState.html new file mode 100644 index 0000000000..b268c60c96 --- /dev/null +++ b/docs/models/ScienceCommandBuilder/updateState.html @@ -0,0 +1,119 @@ + + + + + + + + updateState method - ScienceCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateState
+ +
+ +
+
+
+
+
+ +

updateState method +

+ +
+ +void +updateState(
  1. ScienceState input
  2. +
) + + + +
+ +
+

Updates the state and refreshes the UI.

+
+ + + +
+

Implementation

+
void updateState(ScienceState input) {
+	state = input;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceCommandBuilder/value.html b/docs/models/ScienceCommandBuilder/value.html new file mode 100644 index 0000000000..0611ce0a57 --- /dev/null +++ b/docs/models/ScienceCommandBuilder/value.html @@ -0,0 +1,130 @@ + + + + + + + + value property - ScienceCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ ScienceCommand + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+ScienceCommand get value => ScienceCommand(
+	sample: sample.value,
+	state: state,
+);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls-class-sidebar.html b/docs/models/ScienceControls-class-sidebar.html new file mode 100644 index 0000000000..c81282830d --- /dev/null +++ b/docs/models/ScienceControls-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceControls
  4. + + + +
  5. + Properties +
  6. +
  7. bumperFlag
  8. +
  9. buttonMapping
  10. +
  11. carouselIncrement
  12. +
  13. hashCode
  14. +
  15. leftBumper
  16. +
  17. mode
  18. +
  19. onDispose
  20. +
  21. rightBumper
  22. +
  23. runtimeType
  24. +
  25. scoopIncrement
  26. +
  27. subsurfaceIncrement
  28. +
  29. tubeMode
  30. + +
  31. Methods
  32. +
  33. noSuchMethod
  34. +
  35. parseInputs
  36. +
  37. toString
  38. +
  39. updateState
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/models/ScienceControls-class.html b/docs/models/ScienceControls-class.html new file mode 100644 index 0000000000..ed7e798d7a --- /dev/null +++ b/docs/models/ScienceControls-class.html @@ -0,0 +1,371 @@ + + + + + + + + ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceControls
+ +
+ +
+
+
+
+
+ +

ScienceControls class + +

+ + +
+

A RoverControls that controls the science chamber.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ScienceControls() +
+
+ +
+
+
+ +
+

Properties

+
+
+ bumperFlag + ↔ int + + +
+
+ -1 if the left bumper was pressed, +1 if the right bumper was pressed, 0 otherwise. +
getter/setter pair
+ +
+ +
+ buttonMapping + → Map<String, String> + + +
+
+ A human-readable explanation of what the controls are. +
no setteroverride
+ +
+ +
+ carouselIncrement + ↔ double + + +
+
+ The amount of steps to move the dirt carousel when the button is held. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ leftBumper + ↔ bool + + +
+
+ Whether the left bumper was pressed last frame. +
getter/setter pair
+ +
+ +
+ mode + OperatingMode + + +
+
+ The OperatingMode for these controls. +
no setteroverride
+ +
+ +
+ onDispose + → List<Message> + + +
+
+ A list of commands that disables the subsystem. +
no setteroverride
+ +
+ +
+ rightBumper + ↔ bool + + +
+
+ Whether the right bumper was pressed last frame. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ scoopIncrement + ↔ double + + +
+
+ The amount of steps to move the scooper when the button is held. +
getter/setter pair
+ +
+ +
+ subsurfaceIncrement + ↔ double + + +
+
+ The amount of steps to move the subsurface sampler when the button is held. +
getter/setter pair
+ +
+ +
+ tubeMode + ↔ bool + + +
+
+ Whether the shoulder buttons should move tubes or steps. +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ parseInputs(GamepadState state) + → List<Message> + + + +
+
+ Return a list of commands based on the current state of the gamepad. +
override
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateState(GamepadState state) + → void + + + +
+
+ Any logic to run before checking parseInputs. +
override
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/ScienceControls.html b/docs/models/ScienceControls/ScienceControls.html new file mode 100644 index 0000000000..c0357533a0 --- /dev/null +++ b/docs/models/ScienceControls/ScienceControls.html @@ -0,0 +1,104 @@ + + + + + + + + ScienceControls constructor - ScienceControls - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceControls
+ +
+ +
+
+
+
+
+ +

ScienceControls constructor +

+ +
+ + ScienceControls() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/bumperFlag.html b/docs/models/ScienceControls/bumperFlag.html new file mode 100644 index 0000000000..ac9f41bfcb --- /dev/null +++ b/docs/models/ScienceControls/bumperFlag.html @@ -0,0 +1,115 @@ + + + + + + + + bumperFlag property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
bumperFlag
+ +
+ +
+
+
+
+
+ +

bumperFlag property +

+ + +
+ + int + bumperFlag +
getter/setter pair
+ +
+ +
+

-1 if the left bumper was pressed, +1 if the right bumper was pressed, 0 otherwise.

+
+ + +
+

Implementation

+
int bumperFlag = 0;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/buttonMapping.html b/docs/models/ScienceControls/buttonMapping.html new file mode 100644 index 0000000000..3c5f183e4f --- /dev/null +++ b/docs/models/ScienceControls/buttonMapping.html @@ -0,0 +1,138 @@ + + + + + + + + buttonMapping property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonMapping
+ +
+ +
+
+
+
+
+ +

buttonMapping property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + get + buttonMapping +
override
+ +
+ +
+

A human-readable explanation of what the controls are.

+

Keys are the actions, values are the buttons that trigger them.

+
+ + +
+

Implementation

+
@override
+Map<String, String> get buttonMapping => {
+  if (tubeMode)
+    "Dirt carousel": "Left and right shoulders"
+  else
+    "Prev/Next tubes": "Left and right shoulders",
+  "Scooper arm": "Right stick (vertical)",
+  "Subsurface sampler": "Left stick (vertical)",
+  "Open/Close scoop": "D-pad Up/Down",
+  "Activate pumps": "A (hold)",
+  "Open funnel": "B (hold)",
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/carouselIncrement.html b/docs/models/ScienceControls/carouselIncrement.html new file mode 100644 index 0000000000..e9ea0f5dba --- /dev/null +++ b/docs/models/ScienceControls/carouselIncrement.html @@ -0,0 +1,115 @@ + + + + + + + + carouselIncrement property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
carouselIncrement
+ +
+ +
+
+
+
+
+ +

carouselIncrement property +

+ + +
+ + double + carouselIncrement +
getter/setter pair
+ +
+ +
+

The amount of steps to move the dirt carousel when the button is held.

+
+ + +
+

Implementation

+
double carouselIncrement = 1000;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/leftBumper.html b/docs/models/ScienceControls/leftBumper.html new file mode 100644 index 0000000000..9701bebab1 --- /dev/null +++ b/docs/models/ScienceControls/leftBumper.html @@ -0,0 +1,115 @@ + + + + + + + + leftBumper property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
leftBumper
+ +
+ +
+
+
+
+
+ +

leftBumper property +

+ + +
+ + bool + leftBumper +
getter/setter pair
+ +
+ +
+

Whether the left bumper was pressed last frame.

+
+ + +
+

Implementation

+
bool leftBumper = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/mode.html b/docs/models/ScienceControls/mode.html new file mode 100644 index 0000000000..f8a874d2c2 --- /dev/null +++ b/docs/models/ScienceControls/mode.html @@ -0,0 +1,127 @@ + + + + + + + + mode property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
mode
+ +
+ +
+
+
+
+
+ +

mode property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + get + mode +
override
+ +
+ +
+

The OperatingMode for these controls.

+
+ + +
+

Implementation

+
@override
+OperatingMode get mode => OperatingMode.science;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/onDispose.html b/docs/models/ScienceControls/onDispose.html new file mode 100644 index 0000000000..5a802951d5 --- /dev/null +++ b/docs/models/ScienceControls/onDispose.html @@ -0,0 +1,128 @@ + + + + + + + + onDispose property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onDispose
+ +
+ +
+
+
+
+
+ +

onDispose property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + get + onDispose +
override
+ +
+ +
+

A list of commands that disables the subsystem.

+

For example, after driving this should set the speed to 0.

+
+ + +
+

Implementation

+
@override
+List<Message> get onDispose => [ScienceCommand(stop: true)];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/parseInputs.html b/docs/models/ScienceControls/parseInputs.html new file mode 100644 index 0000000000..c3fa61a123 --- /dev/null +++ b/docs/models/ScienceControls/parseInputs.html @@ -0,0 +1,144 @@ + + + + + + + + parseInputs method - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
parseInputs
+ +
+ +
+
+
+
+
+ +

parseInputs method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+List<Message> +parseInputs(
  1. GamepadState state
  2. +
) + +
override
+ +
+ +
+

Return a list of commands based on the current state of the gamepad.

+
+ + + +
+

Implementation

+
@override
+List<Message> parseInputs(GamepadState state) => [
+  if (tubeMode) ...[
+    if (bumperFlag == -1) ScienceCommand(carousel: CarouselCommand.PREV_TUBE),
+    if (bumperFlag == 1) ScienceCommand(carousel: CarouselCommand.NEXT_TUBE),
+  ] else ...[
+    if (state.normalShoulder != 0) ScienceCommand(carouselMotor: carouselIncrement * state.normalShoulder),
+  ],
+
+  if (state.normalLeftY != 0) ScienceCommand(subsurfaceMotor: subsurfaceIncrement * state.normalLeftY),
+  if (state.normalRightY != 0) ScienceCommand(scoopMotor: scoopIncrement * state.normalRightY),
+
+  if (state.buttonA) ScienceCommand(pumps: PumpState.PUMP_ON)
+  else ScienceCommand(pumps: PumpState.PUMP_OFF),
+
+  if (state.buttonB) ScienceCommand(funnel: ServoState.SERVO_OPEN)
+  else ScienceCommand(funnel: ServoState.SERVO_CLOSE),
+
+  if (state.dpadUp) ScienceCommand(scoop: ServoState.SERVO_OPEN),
+  if (state.dpadDown) ScienceCommand(scoop: ServoState.SERVO_CLOSE),
+
+  if (state.buttonStart) ScienceCommand(calibrate: true),
+  if (state.buttonBack) ScienceCommand(stop: true),
+];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/rightBumper.html b/docs/models/ScienceControls/rightBumper.html new file mode 100644 index 0000000000..0439b26a0f --- /dev/null +++ b/docs/models/ScienceControls/rightBumper.html @@ -0,0 +1,115 @@ + + + + + + + + rightBumper property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rightBumper
+ +
+ +
+
+
+
+
+ +

rightBumper property +

+ + +
+ + bool + rightBumper +
getter/setter pair
+ +
+ +
+

Whether the right bumper was pressed last frame.

+
+ + +
+

Implementation

+
bool rightBumper = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/scoopIncrement.html b/docs/models/ScienceControls/scoopIncrement.html new file mode 100644 index 0000000000..4b16c57f54 --- /dev/null +++ b/docs/models/ScienceControls/scoopIncrement.html @@ -0,0 +1,115 @@ + + + + + + + + scoopIncrement property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
scoopIncrement
+ +
+ +
+
+
+
+
+ +

scoopIncrement property +

+ + +
+ + double + scoopIncrement +
getter/setter pair
+ +
+ +
+

The amount of steps to move the scooper when the button is held.

+
+ + +
+

Implementation

+
double scoopIncrement = 1000;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/subsurfaceIncrement.html b/docs/models/ScienceControls/subsurfaceIncrement.html new file mode 100644 index 0000000000..f4acbcb64a --- /dev/null +++ b/docs/models/ScienceControls/subsurfaceIncrement.html @@ -0,0 +1,115 @@ + + + + + + + + subsurfaceIncrement property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
subsurfaceIncrement
+ +
+ +
+
+
+
+
+ +

subsurfaceIncrement property +

+ + +
+ + double + subsurfaceIncrement +
getter/setter pair
+ +
+ +
+

The amount of steps to move the subsurface sampler when the button is held.

+
+ + +
+

Implementation

+
double subsurfaceIncrement = 1000;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/tubeMode.html b/docs/models/ScienceControls/tubeMode.html new file mode 100644 index 0000000000..0ee90196a6 --- /dev/null +++ b/docs/models/ScienceControls/tubeMode.html @@ -0,0 +1,115 @@ + + + + + + + + tubeMode property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
tubeMode
+ +
+ +
+
+
+
+
+ +

tubeMode property +

+ + +
+ + bool + tubeMode +
getter/setter pair
+ +
+ +
+

Whether the shoulder buttons should move tubes or steps.

+
+ + +
+

Implementation

+
bool tubeMode = true;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceControls/updateState.html b/docs/models/ScienceControls/updateState.html new file mode 100644 index 0000000000..d005793c44 --- /dev/null +++ b/docs/models/ScienceControls/updateState.html @@ -0,0 +1,128 @@ + + + + + + + + updateState method - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateState
+ +
+ +
+
+
+
+
+ +

updateState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +updateState(
  1. GamepadState state
  2. +
) + +
override
+ +
+ +
+

Any logic to run before checking parseInputs.

+
+ + + +
+

Implementation

+
@override
+void updateState(GamepadState state) {
+  if (bumperFlag != 0) bumperFlag = 0;
+  if (state.leftShoulder && !leftBumper) bumperFlag = -1;
+  if (state.rightShoulder && !rightBumper) bumperFlag = 1;
+  leftBumper = state.leftShoulder;
+  rightBumper = state.rightShoulder;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel-class-sidebar.html b/docs/models/ScienceModel-class-sidebar.html new file mode 100644 index 0000000000..9d83ff48e5 --- /dev/null +++ b/docs/models/ScienceModel-class-sidebar.html @@ -0,0 +1,45 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceModel
  4. + + + +
  5. + Properties +
  6. +
  7. allSamples
  8. +
  9. analysesForSample
  10. +
  11. errorText
  12. +
  13. hashCode
  14. +
  15. hasListeners
  16. +
  17. isListening
  18. +
  19. isLoading
  20. +
  21. metrics
  22. +
  23. numSamples
  24. +
  25. runtimeType
  26. +
  27. sample
  28. + +
  29. Methods
  30. +
  31. addListener
  32. +
  33. addMessage
  34. +
  35. addReading
  36. +
  37. clear
  38. +
  39. dispose
  40. +
  41. loadFile
  42. +
  43. noSuchMethod
  44. +
  45. notifyListeners
  46. +
  47. removeListener
  48. +
  49. toString
  50. +
  51. updateData
  52. +
  53. updateSample
  54. + +
  55. Operators
  56. +
  57. operator ==
  58. + + + + + + +
diff --git a/docs/models/ScienceModel-class.html b/docs/models/ScienceModel-class.html new file mode 100644 index 0000000000..310d93e66f --- /dev/null +++ b/docs/models/ScienceModel-class.html @@ -0,0 +1,464 @@ + + + + + + + + ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceModel
+ +
+ +
+
+
+
+
+ +

ScienceModel class + +

+ + +
+

The view model for the science analysis page.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ ScienceModel() +
+
+ Listens to all the ScienceTestBuilders in the UI. +
+
+
+ +
+

Properties

+
+
+ allSamples + ↔ Map<ScienceSensor, List<ScienceAnalysis>> + + +
+
+ A list of all the samples for all the sensors. +
getter/setter pair
+ +
+ +
+ analysesForSample + → List<ScienceAnalysis> + + +
+
+ All the sensors for the current sample. +
no setter
+ +
+ +
+ errorText + ↔ String? + + +
+
+ The error, if any, that occurred while loading the data. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isListening + ↔ bool + + +
+
+ Whether to listen for new data from the rover. This is false after loading a file. +
getter/setter pair
+ +
+ +
+ isLoading + ↔ bool + + +
+
+ Whether the page is currently loading. +
getter/setter pair
+ +
+ +
+ metrics + ScienceMetrics + + +
+
+ The Metrics model for science data. +
no setter
+ +
+ +
+ numSamples + → int + + +
+
+ How many samples to analyze. Can be changed in the settings. +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ sample + ↔ int + + +
+
+ The sample whose stats are being displayed. +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ addMessage(WrappedMessage wrapper) + → void + + + +
+
+ Adds a WrappedMessage containing a ScienceData to the UI. + + +
+ +
+ addReading(ScienceSensor sensor, int sample, Timestamp timestamp, double value) + → void + + + +
+
+ Adds a value to the correct analysis for the sensor and sample. + + +
+ +
+ clear() + → void + + + +
+
+ Clears all the readings from all the samples. + + +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ loadFile() + → Future<void> + + + +
+
+ Calls addMessage for each message in the picked file. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateData() + → void + + + +
+
+ Updates the graph using addMessage with the latest data from metrics. + + +
+ +
+ updateSample(int? input) + → void + + + +
+
+ Updates the sample variable. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/ScienceModel.html b/docs/models/ScienceModel/ScienceModel.html new file mode 100644 index 0000000000..6bf9d4f64c --- /dev/null +++ b/docs/models/ScienceModel/ScienceModel.html @@ -0,0 +1,116 @@ + + + + + + + + ScienceModel constructor - ScienceModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceModel
+ +
+ +
+
+
+
+
+ +

ScienceModel constructor +

+ +
+ + ScienceModel() +
+ +
+

Listens to all the ScienceTestBuilders in the UI.

+
+ + + +
+

Implementation

+
ScienceModel() {
+	metrics.addListener(updateData);
+	for (final sample in analysesForSample) {
+		sample.testBuilder.addListener(notifyListeners);
+	}
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/addMessage.html b/docs/models/ScienceModel/addMessage.html new file mode 100644 index 0000000000..620a967775 --- /dev/null +++ b/docs/models/ScienceModel/addMessage.html @@ -0,0 +1,125 @@ + + + + + + + + addMessage method - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
addMessage
+ +
+ +
+
+
+
+
+ +

addMessage method +

+ +
+ +void +addMessage(
  1. WrappedMessage wrapper
  2. +
) + + + +
+ +
+

Adds a WrappedMessage containing a ScienceData to the UI.

+
+ + + +
+

Implementation

+
void addMessage(WrappedMessage wrapper) {
+	if (!wrapper.name.contains(ScienceData().messageName)) throw ArgumentError("Incorrect log type: ${wrapper.name}");
+	final data = wrapper.decode(ScienceData.fromBuffer);
+	final sample = data.sample;
+	if (!wrapper.hasTimestamp()) { throw ArgumentError("Data is missing a timestamp"); }
+	if (sample >= numSamples) throw RangeError("Got data for sample #${sample + 1}, but there are only $numSamples samples.\nChange the number of samples in the settings and reload.");
+	if (data.co2 != 0) addReading(co2, sample, wrapper.timestamp, data.co2);
+	if (data.humidity != 0) addReading(humidity, sample, wrapper.timestamp, data.humidity);
+	if (data.temperature != 0) addReading(temperature, sample, wrapper.timestamp, data.temperature);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/addReading.html b/docs/models/ScienceModel/addReading.html new file mode 100644 index 0000000000..3bdac5462f --- /dev/null +++ b/docs/models/ScienceModel/addReading.html @@ -0,0 +1,120 @@ + + + + + + + + addReading method - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
addReading
+ +
+ +
+
+
+
+
+ +

addReading method +

+ +
+ +void +addReading(
  1. ScienceSensor sensor,
  2. +
  3. int sample,
  4. +
  5. Timestamp timestamp,
  6. +
  7. double value,
  8. +
) + + + +
+ +
+

Adds a value to the correct analysis for the sensor and sample.

+
+ + + +
+

Implementation

+
void addReading(ScienceSensor sensor, int sample, Timestamp timestamp, double value) =>
+  allSamples[sensor]![sample].addReading(timestamp, value);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/allSamples.html b/docs/models/ScienceModel/allSamples.html new file mode 100644 index 0000000000..540fa6515f --- /dev/null +++ b/docs/models/ScienceModel/allSamples.html @@ -0,0 +1,120 @@ + + + + + + + + allSamples property - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
allSamples
+ +
+ +
+
+
+
+
+ +

allSamples property +

+ + +
+ + Map<ScienceSensor, List<ScienceAnalysis>> + allSamples +
getter/setter pair
+ +
+ +
+

A list of all the samples for all the sensors.

+
+ + +
+

Implementation

+
Map<ScienceSensor, List<ScienceAnalysis>> allSamples = {
+	for (final sensor in sensors) sensor: [
+		for (int i = 0; i < models.settings.science.numSamples; i++)
+			ScienceAnalysis(sensor),
+	],
+};
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/analysesForSample.html b/docs/models/ScienceModel/analysesForSample.html new file mode 100644 index 0000000000..777c7d9d56 --- /dev/null +++ b/docs/models/ScienceModel/analysesForSample.html @@ -0,0 +1,123 @@ + + + + + + + + analysesForSample property - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
analysesForSample
+ +
+ +
+
+
+
+
+ +

analysesForSample property +

+ + + + + +
+
+ + List<ScienceAnalysis> + get + analysesForSample + + +
+ +
+

All the sensors for the current sample.

+
+ + +
+

Implementation

+
List<ScienceAnalysis> get analysesForSample => [
+	for (final sensor in sensors) allSamples[sensor]![sample],
+];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/clear.html b/docs/models/ScienceModel/clear.html new file mode 100644 index 0000000000..2c576419dd --- /dev/null +++ b/docs/models/ScienceModel/clear.html @@ -0,0 +1,123 @@ + + + + + + + + clear method - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
clear
+ +
+ +
+
+
+
+
+ +

clear method +

+ +
+ +void +clear() + + + +
+ +
+

Clears all the readings from all the samples.

+
+ + + +
+

Implementation

+
void clear() {
+	for (final sensor in sensors) {
+		for (final analysis in allSamples[sensor]!) {
+			analysis.clear();
+		}
+	}
+	isListening = true;
+	models.home.setMessage(severity: Severity.info, text: "Science UI will update on new data");
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/dispose.html b/docs/models/ScienceModel/dispose.html new file mode 100644 index 0000000000..1b306aa6c1 --- /dev/null +++ b/docs/models/ScienceModel/dispose.html @@ -0,0 +1,133 @@ + + + + + + + + dispose method - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+	metrics.removeListener(updateData);
+	for (final sample in analysesForSample) {
+		sample.testBuilder.dispose();
+	}
+	super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/errorText.html b/docs/models/ScienceModel/errorText.html new file mode 100644 index 0000000000..885de58b5d --- /dev/null +++ b/docs/models/ScienceModel/errorText.html @@ -0,0 +1,115 @@ + + + + + + + + errorText property - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
errorText
+ +
+ +
+
+
+
+
+ +

errorText property +

+ + +
+ + String? + errorText +
getter/setter pair
+ +
+ +
+

The error, if any, that occurred while loading the data.

+
+ + +
+

Implementation

+
String? errorText;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/isListening.html b/docs/models/ScienceModel/isListening.html new file mode 100644 index 0000000000..ecd393a405 --- /dev/null +++ b/docs/models/ScienceModel/isListening.html @@ -0,0 +1,115 @@ + + + + + + + + isListening property - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isListening
+ +
+ +
+
+
+
+
+ +

isListening property +

+ + +
+ + bool + isListening +
getter/setter pair
+ +
+ +
+

Whether to listen for new data from the rover. This is false after loading a file.

+
+ + +
+

Implementation

+
bool isListening = true;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/isLoading.html b/docs/models/ScienceModel/isLoading.html new file mode 100644 index 0000000000..c5a8b99943 --- /dev/null +++ b/docs/models/ScienceModel/isLoading.html @@ -0,0 +1,115 @@ + + + + + + + + isLoading property - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isLoading
+ +
+ +
+
+
+
+
+ +

isLoading property +

+ + +
+ + bool + isLoading +
getter/setter pair
+ +
+ +
+

Whether the page is currently loading.

+
+ + +
+

Implementation

+
bool isLoading = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/loadFile.html b/docs/models/ScienceModel/loadFile.html new file mode 100644 index 0000000000..e370f79da2 --- /dev/null +++ b/docs/models/ScienceModel/loadFile.html @@ -0,0 +1,146 @@ + + + + + + + + loadFile method - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
loadFile
+ +
+ +
+
+
+
+
+ +

loadFile method +

+ +
+ +Future<void> +loadFile() + + + +
+ +
+

Calls addMessage for each message in the picked file.

+
+ + + +
+

Implementation

+
Future<void> loadFile() async {
+	// Pick a file
+	clear();
+	isLoading = true;
+	notifyListeners();
+	final result = await FilePicker.platform.pickFiles(
+		dialogTitle: "Choose science logs",
+		initialDirectory: services.files.loggingDir.path,
+	);
+	if (result == null || result.count == 0) {
+		isLoading = false;
+		notifyListeners();
+		return;
+	}
+
+	// Read the file
+	final file = File(result.paths.first!);
+	try {
+		final messages = await services.files.readLogs(file);
+		messages.forEach(addMessage);
+		errorText = null;
+		isLoading = false;
+		isListening = false;
+		models.home.setMessage(severity: Severity.info, text: "Science logs loaded, new data will be ignored");
+		notifyListeners();
+	} catch (error) {
+		errorText = error.toString();
+		isLoading = false;
+		notifyListeners();
+		rethrow;
+	}
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/metrics.html b/docs/models/ScienceModel/metrics.html new file mode 100644 index 0000000000..4f54160762 --- /dev/null +++ b/docs/models/ScienceModel/metrics.html @@ -0,0 +1,121 @@ + + + + + + + + metrics property - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
metrics
+ +
+ +
+
+
+
+
+ +

metrics property +

+ + + + + +
+
+ + ScienceMetrics + get + metrics + + +
+ +
+

The Metrics model for science data.

+
+ + +
+

Implementation

+
ScienceMetrics get metrics => models.rover.metrics.science;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/numSamples.html b/docs/models/ScienceModel/numSamples.html new file mode 100644 index 0000000000..3cad4a3fe5 --- /dev/null +++ b/docs/models/ScienceModel/numSamples.html @@ -0,0 +1,121 @@ + + + + + + + + numSamples property - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
numSamples
+ +
+ +
+
+
+
+
+ +

numSamples property +

+ + + + + +
+
+ + int + get + numSamples + + +
+ +
+

How many samples to analyze. Can be changed in the settings.

+
+ + +
+

Implementation

+
int get numSamples => models.settings.science.numSamples;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/sample.html b/docs/models/ScienceModel/sample.html new file mode 100644 index 0000000000..824f88f680 --- /dev/null +++ b/docs/models/ScienceModel/sample.html @@ -0,0 +1,115 @@ + + + + + + + + sample property - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sample
+ +
+ +
+
+
+
+
+ +

sample property +

+ + +
+ + int + sample +
getter/setter pair
+ +
+ +
+

The sample whose stats are being displayed.

+
+ + +
+

Implementation

+
int sample = 0;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/updateData.html b/docs/models/ScienceModel/updateData.html new file mode 100644 index 0000000000..f3028bce33 --- /dev/null +++ b/docs/models/ScienceModel/updateData.html @@ -0,0 +1,119 @@ + + + + + + + + updateData method - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateData
+ +
+ +
+
+
+
+
+ +

updateData method +

+ +
+ +void +updateData() + + + +
+ +
+

Updates the graph using addMessage with the latest data from metrics.

+
+ + + +
+

Implementation

+
void updateData() {
+	if (!isListening) return;
+	addMessage(metrics.data.wrap());
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceModel/updateSample.html b/docs/models/ScienceModel/updateSample.html new file mode 100644 index 0000000000..269ae27087 --- /dev/null +++ b/docs/models/ScienceModel/updateSample.html @@ -0,0 +1,120 @@ + + + + + + + + updateSample method - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateSample
+ +
+ +
+
+
+
+
+ +

updateSample method +

+ +
+ +void +updateSample(
  1. int? input
  2. +
) + + + +
+ +
+

Updates the sample variable.

+
+ + + +
+

Implementation

+
void updateSample(int? input) {
+	if (input == null) return;
+	sample = input;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceSettingsBuilder-class-sidebar.html b/docs/models/ScienceSettingsBuilder-class-sidebar.html new file mode 100644 index 0000000000..21b13e4b98 --- /dev/null +++ b/docs/models/ScienceSettingsBuilder-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceSettingsBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. isValid
  12. +
  13. numSamples
  14. +
  15. otherBuilders
  16. +
  17. runtimeType
  18. +
  19. scrollableGraphs
  20. +
  21. value
  22. + +
  23. Methods
  24. +
  25. addListener
  26. +
  27. dispose
  28. +
  29. noSuchMethod
  30. +
  31. notifyListeners
  32. +
  33. removeListener
  34. +
  35. toString
  36. +
  37. updateScrollableGraphs
  38. + +
  39. Operators
  40. +
  41. operator ==
  42. + + + + + + +
diff --git a/docs/models/ScienceSettingsBuilder-class.html b/docs/models/ScienceSettingsBuilder-class.html new file mode 100644 index 0000000000..384586523b --- /dev/null +++ b/docs/models/ScienceSettingsBuilder-class.html @@ -0,0 +1,365 @@ + + + + + + + + ScienceSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceSettingsBuilder
+ +
+ +
+
+
+
+
+ +

ScienceSettingsBuilder class + +

+ + +
+

A ValueBuilder that modifies a ScienceSettings.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ScienceSettingsBuilder(ScienceSettings initial) +
+
+ Modifies the given ScienceSettings. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ numSamples + NumberBuilder<int> + + +
+
+ The number of samples collected. See ScienceSettings.numSamples. +
getter/setter pair
+ +
+ +
+ otherBuilders + → List<ChangeNotifier> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ scrollableGraphs + ↔ bool + + +
+
+ Whether the graphs can scrolls. See ScienceSettings.scrollableGraphs. +
getter/setter pair
+ +
+ +
+ value + ScienceSettings + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateScrollableGraphs(bool input) + → void + + + +
+
+ Modifies scrollableGraphs. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceSettingsBuilder/ScienceSettingsBuilder.html b/docs/models/ScienceSettingsBuilder/ScienceSettingsBuilder.html new file mode 100644 index 0000000000..77e84d15c3 --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/ScienceSettingsBuilder.html @@ -0,0 +1,114 @@ + + + + + + + + ScienceSettingsBuilder constructor - ScienceSettingsBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceSettingsBuilder
+ +
+ +
+
+
+
+
+ +

ScienceSettingsBuilder constructor +

+ +
+ + ScienceSettingsBuilder(
  1. ScienceSettings initial
  2. +
) +
+ +
+

Modifies the given ScienceSettings.

+
+ + + +
+

Implementation

+
ScienceSettingsBuilder(ScienceSettings initial) :
+	numSamples = NumberBuilder(initial.numSamples),
+	scrollableGraphs = initial.scrollableGraphs;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceSettingsBuilder/isValid.html b/docs/models/ScienceSettingsBuilder/isValid.html new file mode 100644 index 0000000000..187b0dfb36 --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/isValid.html @@ -0,0 +1,128 @@ + + + + + + + + isValid property - ScienceSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => numSamples.isValid;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceSettingsBuilder/numSamples.html b/docs/models/ScienceSettingsBuilder/numSamples.html new file mode 100644 index 0000000000..2dcd2f9d7d --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/numSamples.html @@ -0,0 +1,115 @@ + + + + + + + + numSamples property - ScienceSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
numSamples
+ +
+ +
+
+
+
+
+ +

numSamples property +

+ + +
+ + NumberBuilder<int> + numSamples +
getter/setter pair
+ +
+ +
+

The number of samples collected. See ScienceSettings.numSamples.

+
+ + +
+

Implementation

+
NumberBuilder<int> numSamples;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceSettingsBuilder/scrollableGraphs.html b/docs/models/ScienceSettingsBuilder/scrollableGraphs.html new file mode 100644 index 0000000000..89676507f8 --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/scrollableGraphs.html @@ -0,0 +1,115 @@ + + + + + + + + scrollableGraphs property - ScienceSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
scrollableGraphs
+ +
+ +
+
+
+
+
+ +

scrollableGraphs property +

+ + +
+ + bool + scrollableGraphs +
getter/setter pair
+ +
+ +
+

Whether the graphs can scrolls. See ScienceSettings.scrollableGraphs.

+
+ + +
+

Implementation

+
bool scrollableGraphs;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceSettingsBuilder/updateScrollableGraphs.html b/docs/models/ScienceSettingsBuilder/updateScrollableGraphs.html new file mode 100644 index 0000000000..7d327ab5f3 --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/updateScrollableGraphs.html @@ -0,0 +1,119 @@ + + + + + + + + updateScrollableGraphs method - ScienceSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateScrollableGraphs
+ +
+ +
+
+
+
+
+ +

updateScrollableGraphs method +

+ +
+ +void +updateScrollableGraphs(
  1. bool input
  2. +
) + + + +
+ +
+

Modifies scrollableGraphs.

+
+ + + +
+

Implementation

+
void updateScrollableGraphs(bool input) {  // ignore: avoid_positional_boolean_parameters
+	scrollableGraphs = input;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceSettingsBuilder/value.html b/docs/models/ScienceSettingsBuilder/value.html new file mode 100644 index 0000000000..0b4d88a387 --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/value.html @@ -0,0 +1,130 @@ + + + + + + + + value property - ScienceSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ ScienceSettings + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+ScienceSettings get value => ScienceSettings(
+	scrollableGraphs: scrollableGraphs,
+	numSamples: numSamples.value,
+);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceTestBuilder-class-sidebar.html b/docs/models/ScienceTestBuilder-class-sidebar.html new file mode 100644 index 0000000000..4222baba23 --- /dev/null +++ b/docs/models/ScienceTestBuilder-class-sidebar.html @@ -0,0 +1,35 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceTestBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. average
  8. +
  9. hashCode
  10. +
  11. hasListeners
  12. +
  13. max
  14. +
  15. min
  16. +
  17. runtimeType
  18. + +
  19. Methods
  20. +
  21. addListener
  22. +
  23. dispose
  24. +
  25. noSuchMethod
  26. +
  27. notifyListeners
  28. +
  29. removeListener
  30. +
  31. toString
  32. +
  33. update
  34. + +
  35. Operators
  36. +
  37. operator ==
  38. + + + + + + +
diff --git a/docs/models/ScienceTestBuilder-class.html b/docs/models/ScienceTestBuilder-class.html new file mode 100644 index 0000000000..78b18e33b5 --- /dev/null +++ b/docs/models/ScienceTestBuilder-class.html @@ -0,0 +1,339 @@ + + + + + + + + ScienceTestBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceTestBuilder
+ +
+ +
+
+
+
+
+ +

ScienceTestBuilder class + +

+ + +
+

A view model to allow the user to override values supplied to ScienceTests.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ ScienceTestBuilder() +
+
+ A constructor. +
+
+
+ +
+

Properties

+
+
+ average + NumberBuilder<double> + + +
+
+ An override for the average value. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ max + NumberBuilder<double> + + +
+
+ An override for the maximum value. +
final
+ +
+ +
+ min + NumberBuilder<double> + + +
+
+ An override for the minimum value. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(SampleData data) + → void + + + +
+
+ Updates the view models with the latest data. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceTestBuilder/ScienceTestBuilder.html b/docs/models/ScienceTestBuilder/ScienceTestBuilder.html new file mode 100644 index 0000000000..d5f1df11fd --- /dev/null +++ b/docs/models/ScienceTestBuilder/ScienceTestBuilder.html @@ -0,0 +1,115 @@ + + + + + + + + ScienceTestBuilder constructor - ScienceTestBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceTestBuilder
+ +
+ +
+
+
+
+
+ +

ScienceTestBuilder constructor +

+ +
+ + ScienceTestBuilder() +
+ +
+

A constructor.

+
+ + + +
+

Implementation

+
ScienceTestBuilder() {
+	min.addListener(notifyListeners);
+	average.addListener(notifyListeners);
+	max.addListener(notifyListeners);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceTestBuilder/average.html b/docs/models/ScienceTestBuilder/average.html new file mode 100644 index 0000000000..fae1f636de --- /dev/null +++ b/docs/models/ScienceTestBuilder/average.html @@ -0,0 +1,115 @@ + + + + + + + + average property - ScienceTestBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
average
+ +
+ +
+
+
+
+
+ +

average property +

+ + +
+ + NumberBuilder<double> + average +
final
+ +
+ +
+

An override for the average value.

+
+ + +
+

Implementation

+
final average = NumberBuilder<double>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceTestBuilder/dispose.html b/docs/models/ScienceTestBuilder/dispose.html new file mode 100644 index 0000000000..f6099a7a68 --- /dev/null +++ b/docs/models/ScienceTestBuilder/dispose.html @@ -0,0 +1,132 @@ + + + + + + + + dispose method - ScienceTestBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+	min..removeListener(notifyListeners)..dispose();
+	average..removeListener(notifyListeners)..dispose();
+	max..removeListener(notifyListeners)..dispose();
+	super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceTestBuilder/max.html b/docs/models/ScienceTestBuilder/max.html new file mode 100644 index 0000000000..b12562480c --- /dev/null +++ b/docs/models/ScienceTestBuilder/max.html @@ -0,0 +1,115 @@ + + + + + + + + max property - ScienceTestBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
max
+ +
+ +
+
+
+
+
+ +

max property +

+ + +
+ + NumberBuilder<double> + max +
final
+ +
+ +
+

An override for the maximum value.

+
+ + +
+

Implementation

+
final max = NumberBuilder<double>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceTestBuilder/min.html b/docs/models/ScienceTestBuilder/min.html new file mode 100644 index 0000000000..629c9f91b1 --- /dev/null +++ b/docs/models/ScienceTestBuilder/min.html @@ -0,0 +1,115 @@ + + + + + + + + min property - ScienceTestBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
min
+ +
+ +
+
+
+
+
+ +

min property +

+ + +
+ + NumberBuilder<double> + min +
final
+ +
+ +
+

An override for the minimum value.

+
+ + +
+

Implementation

+
final min = NumberBuilder<double>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ScienceTestBuilder/update.html b/docs/models/ScienceTestBuilder/update.html new file mode 100644 index 0000000000..ab3cf0c90b --- /dev/null +++ b/docs/models/ScienceTestBuilder/update.html @@ -0,0 +1,124 @@ + + + + + + + + update method - ScienceTestBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
update
+ +
+ +
+
+
+
+
+ +

update method +

+ +
+ +void +update(
  1. SampleData data
  2. +
) + + + +
+ +
+

Updates the view models with the latest data.

+
+ + + +
+

Implementation

+
void update(SampleData data) {
+	min.value = data.min ?? 0;
+	min.controller.text = min.value.toString();
+	average.value = data.average ?? 0;
+	average.controller.text = average.value.toString();
+	max.value = data.max ?? 0;
+	max.controller.text = max.value.toString();
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SerialModel-class-sidebar.html b/docs/models/SerialModel-class-sidebar.html new file mode 100644 index 0000000000..eba64400b2 --- /dev/null +++ b/docs/models/SerialModel-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. SerialModel
  4. + + + +
  5. + Properties +
  6. +
  7. devices
  8. +
  9. hasDevice
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. addListener
  20. +
  21. connect
  22. +
  23. disconnect
  24. +
  25. dispose
  26. +
  27. init
  28. +
  29. isConnected
  30. +
  31. noSuchMethod
  32. +
  33. notifyListeners
  34. +
  35. removeListener
  36. +
  37. sendMessage
  38. +
  39. toggle
  40. +
  41. toString
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/models/SerialModel-class.html b/docs/models/SerialModel-class.html new file mode 100644 index 0000000000..d2e754909f --- /dev/null +++ b/docs/models/SerialModel-class.html @@ -0,0 +1,399 @@ + + + + + + + + SerialModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialModel
+ +
+ +
+
+
+
+
+ +

SerialModel class + +

+ + +
+

A data model to manage all connected serial devices.

+

Each connected device is represented by a SerialDevice object in the devices map. +This model offers an API to connect, disconnect, and query devices using their port +names instead.

+

Send messages to the connected devices using the sendMessage method, and all messages +received all ports are forwarded to MessagesModel.onMessage.

+
+ + +
+
+ +
Inheritance
+
+
    +
  • Object
  • +
  • Model
  • +
  • SerialModel
  • +
+
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SerialModel() +
+
+ +
+
+
+ +
+

Properties

+
+
+ devices + ↔ Map<String, SerialDevice> + + +
+
+ All the connected devices and their respective serial ports. +
getter/setter pair
+ +
+ +
+ hasDevice + → bool + + +
+
+ Returns true if any device is connected. +
no setter
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ connect(String port) + → Future<void> + + + +
+
+ Connects to the given serial port and adds an entry to devices. + + +
+ +
+ disconnect(String port) + → void + + + +
+
+ Disconnects the device on the given port, if any, and removes its entry from devices. + + +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. +
override
+ +
+ +
+ isConnected(String port) + → bool + + + +
+
+ Whether the given port is connected. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ sendMessage(Message message) + → void + + + +
+
+ Sends a message to all connected devices. + + +
+ +
+ toggle(String port) + → void + + + +
+
+ Either connects or disconnects the device on the given port. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SerialModel/SerialModel.html b/docs/models/SerialModel/SerialModel.html new file mode 100644 index 0000000000..aed09db384 --- /dev/null +++ b/docs/models/SerialModel/SerialModel.html @@ -0,0 +1,104 @@ + + + + + + + + SerialModel constructor - SerialModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialModel
+ +
+ +
+
+
+
+
+ +

SerialModel constructor +

+ +
+ + SerialModel() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SerialModel/connect.html b/docs/models/SerialModel/connect.html new file mode 100644 index 0000000000..5c0bd83dec --- /dev/null +++ b/docs/models/SerialModel/connect.html @@ -0,0 +1,131 @@ + + + + + + + + connect method - SerialModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
connect
+ +
+ +
+
+
+
+
+ +

connect method +

+ +
+ +Future<void> +connect(
  1. String port
  2. +
) + + + +
+ +
+

Connects to the given serial port and adds an entry to devices.

+

If the connection or handshake fails, a message is logged to the home screen +and the device is not added to devices.

+
+ + + +
+

Implementation

+
Future<void> connect(String port) async {
+  models.home.setMessage(severity: Severity.info, text: "Connecting to $port...");
+  final device = SerialDevice(port: port, onMessage: models.messages.onMessage);
+  try {
+	    await device.connect();
+  } on SerialException catch(error) {
+    device.dispose();
+  	models.home.setMessage(severity: Severity.error, text: error.toString());
+  	return;
+  }
+  models.home.setMessage(severity: Severity.info, text: "Connected to $port");
+  devices[port] = device;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SerialModel/devices.html b/docs/models/SerialModel/devices.html new file mode 100644 index 0000000000..7625a0421e --- /dev/null +++ b/docs/models/SerialModel/devices.html @@ -0,0 +1,116 @@ + + + + + + + + devices property - SerialModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
devices
+ +
+ +
+
+
+
+
+ +

devices property +

+ + +
+ + Map<String, SerialDevice> + devices +
getter/setter pair
+ +
+ +
+

All the connected devices and their respective serial ports.

+

Devices listed here are assumed to have successfully connected.

+
+ + +
+

Implementation

+
Map<String, SerialDevice> devices = {};
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SerialModel/disconnect.html b/docs/models/SerialModel/disconnect.html new file mode 100644 index 0000000000..2491be6575 --- /dev/null +++ b/docs/models/SerialModel/disconnect.html @@ -0,0 +1,123 @@ + + + + + + + + disconnect method - SerialModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
disconnect
+ +
+ +
+
+
+
+
+ +

disconnect method +

+ +
+ +void +disconnect(
  1. String port
  2. +
) + + + +
+ +
+

Disconnects the device on the given port, if any, and removes its entry from devices.

+
+ + + +
+

Implementation

+
void disconnect(String port) {
+  final device = devices[port];
+  if (device == null) return;
+  device.dispose();
+  devices.remove(port);
+  models.home.setMessage(severity: Severity.info, text: "Disconnected from $port");
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SerialModel/hasDevice.html b/docs/models/SerialModel/hasDevice.html new file mode 100644 index 0000000000..ca1199fc24 --- /dev/null +++ b/docs/models/SerialModel/hasDevice.html @@ -0,0 +1,121 @@ + + + + + + + + hasDevice property - SerialModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasDevice
+ +
+ +
+
+
+
+
+ +

hasDevice property +

+ + + + + +
+
+ + bool + get + hasDevice + + +
+ +
+

Returns true if any device is connected.

+
+ + +
+

Implementation

+
bool get hasDevice => devices.isNotEmpty;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SerialModel/init.html b/docs/models/SerialModel/init.html new file mode 100644 index 0000000000..35a0b6eea0 --- /dev/null +++ b/docs/models/SerialModel/init.html @@ -0,0 +1,121 @@ + + + + + + + + init method - SerialModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
override
+ +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async { }
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SerialModel/isConnected.html b/docs/models/SerialModel/isConnected.html new file mode 100644 index 0000000000..df885fc3c3 --- /dev/null +++ b/docs/models/SerialModel/isConnected.html @@ -0,0 +1,116 @@ + + + + + + + + isConnected method - SerialModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isConnected
+ +
+ +
+
+
+
+
+ +

isConnected method +

+ +
+ +bool +isConnected(
  1. String port
  2. +
) + + + +
+ +
+

Whether the given port is connected.

+
+ + + +
+

Implementation

+
bool isConnected(String port) => devices.containsKey(port);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SerialModel/sendMessage.html b/docs/models/SerialModel/sendMessage.html new file mode 100644 index 0000000000..f1adb28973 --- /dev/null +++ b/docs/models/SerialModel/sendMessage.html @@ -0,0 +1,121 @@ + + + + + + + + sendMessage method - SerialModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sendMessage
+ +
+ +
+
+
+
+
+ +

sendMessage method +

+ +
+ +void +sendMessage(
  1. Message message
  2. +
) + + + +
+ +
+

Sends a message to all connected devices.

+

SerialDevice.sendMessage ensures that only the correct messages get sent to each device.

+
+ + + +
+

Implementation

+
void sendMessage(Message message) {
+  for (final device in devices.values) {
+  	device.sendMessage(message);
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SerialModel/toggle.html b/docs/models/SerialModel/toggle.html new file mode 100644 index 0000000000..2fb921b1ae --- /dev/null +++ b/docs/models/SerialModel/toggle.html @@ -0,0 +1,116 @@ + + + + + + + + toggle method - SerialModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toggle
+ +
+ +
+
+
+
+
+ +

toggle method +

+ +
+ +void +toggle(
  1. String port
  2. +
) + + + +
+ +
+

Either connects or disconnects the device on the given port.

+
+ + + +
+

Implementation

+
void toggle(String port) => isConnected(port) ? disconnect(port) : connect(port);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsBuilder-class-sidebar.html b/docs/models/SettingsBuilder-class-sidebar.html new file mode 100644 index 0000000000..106df8f45d --- /dev/null +++ b/docs/models/SettingsBuilder-class-sidebar.html @@ -0,0 +1,41 @@ +
    + +
  1. Constructors
  2. +
  3. SettingsBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. arm
  8. +
  9. dashboard
  10. +
  11. easterEggs
  12. +
  13. hashCode
  14. +
  15. hasListeners
  16. +
  17. isLoading
  18. +
  19. isValid
  20. +
  21. network
  22. +
  23. otherBuilders
  24. +
  25. runtimeType
  26. +
  27. science
  28. +
  29. value
  30. + +
  31. Methods
  32. +
  33. addListener
  34. +
  35. dispose
  36. +
  37. noSuchMethod
  38. +
  39. notifyListeners
  40. +
  41. removeListener
  42. +
  43. save
  44. +
  45. toString
  46. + +
  47. Operators
  48. +
  49. operator ==
  50. + + + + + + +
diff --git a/docs/models/SettingsBuilder-class.html b/docs/models/SettingsBuilder-class.html new file mode 100644 index 0000000000..bdb2667a84 --- /dev/null +++ b/docs/models/SettingsBuilder-class.html @@ -0,0 +1,413 @@ + + + + + + + + SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SettingsBuilder
+ +
+ +
+
+
+
+
+ +

SettingsBuilder class + +

+ + +
+

A ValueBuilder representing an ArmSettings.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SettingsBuilder() +
+
+ Modifies the user's settings. +
+
+
+ +
+

Properties

+
+
+ arm + ArmSettingsBuilder + + +
+
+ The ArmSettings view model. +
final
+ +
+ +
+ dashboard + DashboardSettingsBuilder + + +
+
+ The DashboardSettings view model. +
final
+ +
+ +
+ easterEggs + EasterEggsSettingsBuilder + + +
+
+ The EasterEggsSettings view model. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isLoading + ↔ bool + + +
+
+ Whether the page is loading. +
getter/setter pair
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ network + NetworkSettingsBuilder + + +
+
+ The NetworkSettings view model. +
final
+ +
+ +
+ otherBuilders + → List<ChangeNotifier> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ science + ScienceSettingsBuilder + + +
+
+ The ScienceSettings view model. +
final
+ +
+ +
+ value + Settings + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ save() + → Future<void> + + + +
+
+ Saves the settings to the device. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsBuilder/SettingsBuilder.html b/docs/models/SettingsBuilder/SettingsBuilder.html new file mode 100644 index 0000000000..e6ae91e28a --- /dev/null +++ b/docs/models/SettingsBuilder/SettingsBuilder.html @@ -0,0 +1,123 @@ + + + + + + + + SettingsBuilder constructor - SettingsBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SettingsBuilder
+ +
+ +
+
+
+
+
+ +

SettingsBuilder constructor +

+ +
+ + SettingsBuilder() +
+ +
+

Modifies the user's settings.

+
+ + + +
+

Implementation

+
SettingsBuilder() :
+	network = NetworkSettingsBuilder(models.settings.network),
+	arm = ArmSettingsBuilder(models.settings.arm),
+	science = ScienceSettingsBuilder(models.settings.science),
+    dashboard = DashboardSettingsBuilder(models.settings.dashboard),
+	easterEggs = EasterEggsSettingsBuilder(models.settings.easterEggs)
+{
+	network.addListener(notifyListeners);
+	arm.addListener(notifyListeners);
+	science.addListener(notifyListeners);
+    dashboard.addListener(notifyListeners);
+	easterEggs.addListener(notifyListeners);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsBuilder/arm.html b/docs/models/SettingsBuilder/arm.html new file mode 100644 index 0000000000..de19d898ed --- /dev/null +++ b/docs/models/SettingsBuilder/arm.html @@ -0,0 +1,115 @@ + + + + + + + + arm property - SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
arm
+ +
+ +
+
+
+
+
+ +

arm property +

+ + +
+ + ArmSettingsBuilder + arm +
final
+ +
+ +
+

The ArmSettings view model.

+
+ + +
+

Implementation

+
final ArmSettingsBuilder arm;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsBuilder/dashboard.html b/docs/models/SettingsBuilder/dashboard.html new file mode 100644 index 0000000000..ad94970464 --- /dev/null +++ b/docs/models/SettingsBuilder/dashboard.html @@ -0,0 +1,115 @@ + + + + + + + + dashboard property - SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dashboard
+ +
+ +
+
+
+
+
+ +

dashboard property +

+ + +
+ + DashboardSettingsBuilder + dashboard +
final
+ +
+ +
+

The DashboardSettings view model.

+
+ + +
+

Implementation

+
final DashboardSettingsBuilder dashboard;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsBuilder/easterEggs.html b/docs/models/SettingsBuilder/easterEggs.html new file mode 100644 index 0000000000..27f1c46e9d --- /dev/null +++ b/docs/models/SettingsBuilder/easterEggs.html @@ -0,0 +1,115 @@ + + + + + + + + easterEggs property - SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
easterEggs
+ +
+ +
+
+
+
+
+ +

easterEggs property +

+ + +
+ + EasterEggsSettingsBuilder + easterEggs +
final
+ +
+ +
+

The EasterEggsSettings view model.

+
+ + +
+

Implementation

+
final EasterEggsSettingsBuilder easterEggs;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsBuilder/isLoading.html b/docs/models/SettingsBuilder/isLoading.html new file mode 100644 index 0000000000..3dfb39b97c --- /dev/null +++ b/docs/models/SettingsBuilder/isLoading.html @@ -0,0 +1,115 @@ + + + + + + + + isLoading property - SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isLoading
+ +
+ +
+
+
+
+
+ +

isLoading property +

+ + +
+ + bool + isLoading +
getter/setter pair
+ +
+ +
+

Whether the page is loading.

+
+ + +
+

Implementation

+
bool isLoading = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsBuilder/isValid.html b/docs/models/SettingsBuilder/isValid.html new file mode 100644 index 0000000000..776f5b8922 --- /dev/null +++ b/docs/models/SettingsBuilder/isValid.html @@ -0,0 +1,132 @@ + + + + + + + + isValid property - SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => network.isValid
+	&& arm.isValid
+	&& science.isValid
+    && dashboard.isValid
+    && easterEggs.isValid;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsBuilder/network.html b/docs/models/SettingsBuilder/network.html new file mode 100644 index 0000000000..555a22ae13 --- /dev/null +++ b/docs/models/SettingsBuilder/network.html @@ -0,0 +1,115 @@ + + + + + + + + network property - SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
network
+ +
+ +
+
+
+
+
+ +

network property +

+ + +
+ + NetworkSettingsBuilder + network +
final
+ +
+ +
+

The NetworkSettings view model.

+
+ + +
+

Implementation

+
final NetworkSettingsBuilder network;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsBuilder/save.html b/docs/models/SettingsBuilder/save.html new file mode 100644 index 0000000000..eeb6d7b5f9 --- /dev/null +++ b/docs/models/SettingsBuilder/save.html @@ -0,0 +1,127 @@ + + + + + + + + save method - SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
save
+ +
+ +
+
+
+
+
+ +

save method +

+ +
+ +Future<void> +save() + + + +
+ +
+

Saves the settings to the device.

+
+ + + +
+

Implementation

+
Future<void> save() async {
+	isLoading = true;
+	notifyListeners();
+    if (value.dashboard.splitCameras != models.settings.dashboard.splitCameras) {
+      // Need an if to avoid resetting throttle when trying to set throttle
+      models.rover.setDefaultControls();
+    }
+	await models.settings.update(value);
+	await models.sockets.reset();
+	models.video.reset();
+	isLoading = false;
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsBuilder/science.html b/docs/models/SettingsBuilder/science.html new file mode 100644 index 0000000000..7700c2c563 --- /dev/null +++ b/docs/models/SettingsBuilder/science.html @@ -0,0 +1,115 @@ + + + + + + + + science property - SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
science
+ +
+ +
+
+
+
+
+ +

science property +

+ + +
+ + ScienceSettingsBuilder + science +
final
+ +
+ +
+

The ScienceSettings view model.

+
+ + +
+

Implementation

+
final ScienceSettingsBuilder science;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsBuilder/value.html b/docs/models/SettingsBuilder/value.html new file mode 100644 index 0000000000..e7ab2e7a4c --- /dev/null +++ b/docs/models/SettingsBuilder/value.html @@ -0,0 +1,133 @@ + + + + + + + + value property - SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Settings + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+Settings get value => Settings(
+	network: network.value,
+	arm: arm.value,
+	science: science.value,
+    dashboard: dashboard.value,
+	easterEggs: easterEggs.value,
+);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsModel-class-sidebar.html b/docs/models/SettingsModel-class-sidebar.html new file mode 100644 index 0000000000..1b3da6c920 --- /dev/null +++ b/docs/models/SettingsModel-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. SettingsModel
  4. + + + +
  5. + Properties +
  6. +
  7. all
  8. +
  9. arm
  10. +
  11. dashboard
  12. +
  13. easterEggs
  14. +
  15. hashCode
  16. +
  17. hasListeners
  18. +
  19. network
  20. +
  21. runtimeType
  22. +
  23. science
  24. + +
  25. Methods
  26. +
  27. addListener
  28. +
  29. dispose
  30. +
  31. init
  32. +
  33. noSuchMethod
  34. +
  35. notifyListeners
  36. +
  37. removeListener
  38. +
  39. toString
  40. +
  41. update
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/models/SettingsModel-class.html b/docs/models/SettingsModel-class.html new file mode 100644 index 0000000000..33f03a8d28 --- /dev/null +++ b/docs/models/SettingsModel-class.html @@ -0,0 +1,390 @@ + + + + + + + + SettingsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SettingsModel
+ +
+ +
+
+
+
+
+ +

SettingsModel class + +

+ + +
+

Manages the user's settings.

+
+ + +
+
+ +
Inheritance
+
+
    +
  • Object
  • +
  • Model
  • +
  • SettingsModel
  • +
+
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SettingsModel() +
+
+ +
+
+
+ +
+

Properties

+
+
+ all + Settings + + +
+
+ The current settings. +
getter/setter pair
+ +
+ +
+ arm + ArmSettings + + +
+
+ The user's arm settings. +
no setter
+ +
+ +
+ dashboard + DashboardSettings + + +
+
+ The user's dashboard settings. +
no setter
+ +
+ +
+ easterEggs + EasterEggsSettings + + +
+
+ The user's easter egg settings. +
no setter
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ network + NetworkSettings + + +
+
+ The user's network settings. +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ science + ScienceSettings + + +
+
+ The user's science settings. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(Settings value) + → Future<void> + + + +
+
+ Replaces the current settings with the provided ones. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsModel/SettingsModel.html b/docs/models/SettingsModel/SettingsModel.html new file mode 100644 index 0000000000..b67fdba7f6 --- /dev/null +++ b/docs/models/SettingsModel/SettingsModel.html @@ -0,0 +1,104 @@ + + + + + + + + SettingsModel constructor - SettingsModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SettingsModel
+ +
+ +
+
+
+
+
+ +

SettingsModel constructor +

+ +
+ + SettingsModel() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsModel/all.html b/docs/models/SettingsModel/all.html new file mode 100644 index 0000000000..9bac86fc40 --- /dev/null +++ b/docs/models/SettingsModel/all.html @@ -0,0 +1,115 @@ + + + + + + + + all property - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
all
+ +
+ +
+
+
+
+
+ +

all property +

+ + +
+ + Settings + all +
getter/setter pair
+ +
+ +
+

The current settings.

+
+ + +
+

Implementation

+
late Settings all;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsModel/arm.html b/docs/models/SettingsModel/arm.html new file mode 100644 index 0000000000..d0aa7ba538 --- /dev/null +++ b/docs/models/SettingsModel/arm.html @@ -0,0 +1,121 @@ + + + + + + + + arm property - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
arm
+ +
+ +
+
+
+
+
+ +

arm property +

+ + + + + +
+
+ + ArmSettings + get + arm + + +
+ +
+

The user's arm settings.

+
+ + +
+

Implementation

+
ArmSettings get arm => all.arm;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsModel/dashboard.html b/docs/models/SettingsModel/dashboard.html new file mode 100644 index 0000000000..0b757b4784 --- /dev/null +++ b/docs/models/SettingsModel/dashboard.html @@ -0,0 +1,121 @@ + + + + + + + + dashboard property - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dashboard
+ +
+ +
+
+
+
+
+ +

dashboard property +

+ + + + + +
+
+ + DashboardSettings + get + dashboard + + +
+ +
+

The user's dashboard settings.

+
+ + +
+

Implementation

+
DashboardSettings get dashboard => all.dashboard;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsModel/easterEggs.html b/docs/models/SettingsModel/easterEggs.html new file mode 100644 index 0000000000..236a59046c --- /dev/null +++ b/docs/models/SettingsModel/easterEggs.html @@ -0,0 +1,121 @@ + + + + + + + + easterEggs property - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
easterEggs
+ +
+ +
+
+
+
+
+ +

easterEggs property +

+ + + + + +
+
+ + EasterEggsSettings + get + easterEggs + + +
+ +
+

The user's easter egg settings.

+
+ + +
+

Implementation

+
EasterEggsSettings get easterEggs => all.easterEggs;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsModel/init.html b/docs/models/SettingsModel/init.html new file mode 100644 index 0000000000..4d62b2e316 --- /dev/null +++ b/docs/models/SettingsModel/init.html @@ -0,0 +1,124 @@ + + + + + + + + init method - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
override
+ +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+	all = await services.files.readSettings();
+    notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsModel/network.html b/docs/models/SettingsModel/network.html new file mode 100644 index 0000000000..f5635d7e2b --- /dev/null +++ b/docs/models/SettingsModel/network.html @@ -0,0 +1,121 @@ + + + + + + + + network property - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
network
+ +
+ +
+
+
+
+
+ +

network property +

+ + + + + +
+
+ + NetworkSettings + get + network + + +
+ +
+

The user's network settings.

+
+ + +
+

Implementation

+
NetworkSettings get network => all.network;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsModel/science.html b/docs/models/SettingsModel/science.html new file mode 100644 index 0000000000..243523c25d --- /dev/null +++ b/docs/models/SettingsModel/science.html @@ -0,0 +1,121 @@ + + + + + + + + science property - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
science
+ +
+ +
+
+
+
+
+ +

science property +

+ + + + + +
+
+ + ScienceSettings + get + science + + +
+ +
+

The user's science settings.

+
+ + +
+

Implementation

+
ScienceSettings get science => all.science;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SettingsModel/update.html b/docs/models/SettingsModel/update.html new file mode 100644 index 0000000000..0a43628816 --- /dev/null +++ b/docs/models/SettingsModel/update.html @@ -0,0 +1,124 @@ + + + + + + + + update method - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
update
+ +
+ +
+
+
+
+
+ +

update method +

+ +
+ +Future<void> +update(
  1. Settings value
  2. +
) + + + +
+ +
+

Replaces the current settings with the provided ones.

+
+ + + +
+

Implementation

+
Future<void> update(Settings value) async {
+	try {
+		await services.files.writeSettings(value);
+		all = value;
+		notifyListeners();
+	} catch (error) {
+		models.home.setMessage(severity: Severity.critical, text: "Could not save settings: $error");
+	}
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SocketBuilder-class-sidebar.html b/docs/models/SocketBuilder-class-sidebar.html new file mode 100644 index 0000000000..f6630414b5 --- /dev/null +++ b/docs/models/SocketBuilder-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. SocketBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. address
  8. +
  9. hashCode
  10. +
  11. hasListeners
  12. +
  13. isValid
  14. +
  15. otherBuilders
  16. +
  17. port
  18. +
  19. runtimeType
  20. +
  21. value
  22. + +
  23. Methods
  24. +
  25. addListener
  26. +
  27. dispose
  28. +
  29. noSuchMethod
  30. +
  31. notifyListeners
  32. +
  33. removeListener
  34. +
  35. toString
  36. + +
  37. Operators
  38. +
  39. operator ==
  40. + + + + + + +
diff --git a/docs/models/SocketBuilder-class.html b/docs/models/SocketBuilder-class.html new file mode 100644 index 0000000000..156e248dc7 --- /dev/null +++ b/docs/models/SocketBuilder-class.html @@ -0,0 +1,352 @@ + + + + + + + + SocketBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SocketBuilder
+ +
+ +
+
+
+
+
+ +

SocketBuilder class + +

+ + +
+

A ValueBuilder that modifies a SocketInfo.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SocketBuilder(SocketInfo initial) +
+
+ Creates a view model to modify the given SocketInfo. +
+
+
+ +
+

Properties

+
+
+ address + AddressBuilder + + +
+
+ The builder for the IP address. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ otherBuilders + → List<ChangeNotifier> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ port + NumberBuilder<int> + + +
+
+ The builder for the port number. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + SocketInfo + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SocketBuilder/SocketBuilder.html b/docs/models/SocketBuilder/SocketBuilder.html new file mode 100644 index 0000000000..46d2ab0725 --- /dev/null +++ b/docs/models/SocketBuilder/SocketBuilder.html @@ -0,0 +1,118 @@ + + + + + + + + SocketBuilder constructor - SocketBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SocketBuilder
+ +
+ +
+
+
+
+
+ +

SocketBuilder constructor +

+ +
+ + SocketBuilder(
  1. SocketInfo initial
  2. +
) +
+ +
+

Creates a view model to modify the given SocketInfo.

+
+ + + +
+

Implementation

+
SocketBuilder(SocketInfo initial) :
+	address = AddressBuilder(initial.address),
+	port = NumberBuilder<int>(initial.port)
+{
+	address.addListener(notifyListeners);
+	port.addListener(notifyListeners);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SocketBuilder/address.html b/docs/models/SocketBuilder/address.html new file mode 100644 index 0000000000..f636cf8b93 --- /dev/null +++ b/docs/models/SocketBuilder/address.html @@ -0,0 +1,115 @@ + + + + + + + + address property - SocketBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
address
+ +
+ +
+
+
+
+
+ +

address property +

+ + +
+ + AddressBuilder + address +
final
+ +
+ +
+

The builder for the IP address.

+
+ + +
+

Implementation

+
final AddressBuilder address;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SocketBuilder/isValid.html b/docs/models/SocketBuilder/isValid.html new file mode 100644 index 0000000000..67258baec3 --- /dev/null +++ b/docs/models/SocketBuilder/isValid.html @@ -0,0 +1,128 @@ + + + + + + + + isValid property - SocketBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => address.isValid && port.isValid;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SocketBuilder/port.html b/docs/models/SocketBuilder/port.html new file mode 100644 index 0000000000..fc561015ea --- /dev/null +++ b/docs/models/SocketBuilder/port.html @@ -0,0 +1,115 @@ + + + + + + + + port property - SocketBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
port
+ +
+ +
+
+
+
+
+ +

port property +

+ + +
+ + NumberBuilder<int> + port +
final
+ +
+ +
+

The builder for the port number.

+
+ + +
+

Implementation

+
final NumberBuilder<int> port;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/SocketBuilder/value.html b/docs/models/SocketBuilder/value.html new file mode 100644 index 0000000000..ba2cdbc774 --- /dev/null +++ b/docs/models/SocketBuilder/value.html @@ -0,0 +1,127 @@ + + + + + + + + value property - SocketBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ SocketInfo + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+SocketInfo get value => SocketInfo(address: address.value, port: port.value);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets-class-sidebar.html b/docs/models/Sockets-class-sidebar.html new file mode 100644 index 0000000000..974c729262 --- /dev/null +++ b/docs/models/Sockets-class-sidebar.html @@ -0,0 +1,45 @@ +
    + +
  1. Constructors
  2. +
  3. Sockets
  4. + + + +
  5. + Properties +
  6. +
  7. addressOverride
  8. +
  9. autonomy
  10. +
  11. connectionSummary
  12. +
  13. data
  14. +
  15. hashCode
  16. +
  17. hasListeners
  18. +
  19. rover
  20. +
  21. runtimeType
  22. +
  23. sockets
  24. +
  25. video
  26. + +
  27. Methods
  28. +
  29. addListener
  30. +
  31. dispose
  32. +
  33. init
  34. +
  35. noSuchMethod
  36. +
  37. notifyListeners
  38. +
  39. onConnect
  40. +
  41. onDisconnect
  42. +
  43. removeListener
  44. +
  45. reset
  46. +
  47. setRover
  48. +
  49. socketForDevice
  50. +
  51. toString
  52. +
  53. updateSockets
  54. + +
  55. Operators
  56. +
  57. operator ==
  58. + + + + + + +
diff --git a/docs/models/Sockets-class.html b/docs/models/Sockets-class.html new file mode 100644 index 0000000000..fb2326f2ce --- /dev/null +++ b/docs/models/Sockets-class.html @@ -0,0 +1,467 @@ + + + + + + + + Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Sockets
+ +
+ +
+
+
+
+
+ +

Sockets class + +

+ + +
+

Coordinates all the sockets to point to the right RoverType.

+
+ + +
+
+ +
Inheritance
+
+
    +
  • Object
  • +
  • Model
  • +
  • Sockets
  • +
+
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ Sockets() +
+
+ +
+
+
+ +
+

Properties

+
+
+ addressOverride + → InternetAddress? + + +
+
+ The InternetAddress to use instead of the address on the rover. +
no setter
+ +
+ +
+ autonomy + DashboardSocket + + +
+
+ A UDP socket for controlling autonomy. +
latefinal
+ +
+ +
+ connectionSummary + → String + + +
+
+ A rundown of the connection strength of each device. +
no setter
+ +
+ +
+ data + DashboardSocket + + +
+
+ A UDP socket for sending and receiving Protobuf data. +
latefinal
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ rover + RoverType + + +
+
+ The rover-like system currently in use. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ sockets + → List<DashboardSocket> + + +
+
+ A list of all the sockets this model manages. +
no setter
+ +
+ +
+ video + DashboardSocket + + +
+
+ A UDP socket for receiving video. +
latefinal
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → Future<void> + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ onConnect(Device device) + → void + + + +
+
+ Notifies the user when a new device has connected. + + +
+ +
+ onDisconnect(Device device) + → void + + + +
+
+ Notifies the user when a device has disconnected. + + +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ reset() + → Future<void> + + + +
+
+ Resets all the sockets. + + +
+ +
+ setRover(RoverType? value) + → Future<void> + + + +
+
+ Change which rover is being used. + + +
+ +
+ socketForDevice(Device device) + DashboardSocket? + + + +
+
+ Returns the corresponding DashboardSocket for the device + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateSockets() + → Future<void> + + + +
+
+ Set the right IP addresses for the rover or tank. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/Sockets.html b/docs/models/Sockets/Sockets.html new file mode 100644 index 0000000000..9b68d321ed --- /dev/null +++ b/docs/models/Sockets/Sockets.html @@ -0,0 +1,104 @@ + + + + + + + + Sockets constructor - Sockets - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Sockets
+ +
+ +
+
+
+
+
+ +

Sockets constructor +

+ +
+ + Sockets() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/addressOverride.html b/docs/models/Sockets/addressOverride.html new file mode 100644 index 0000000000..eafb5af6b9 --- /dev/null +++ b/docs/models/Sockets/addressOverride.html @@ -0,0 +1,125 @@ + + + + + + + + addressOverride property - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
addressOverride
+ +
+ +
+
+
+
+
+ +

addressOverride property +

+ + + + + +
+
+ + InternetAddress? + get + addressOverride + + +
+ +
+

The InternetAddress to use instead of the address on the rover.

+
+ + +
+

Implementation

+
InternetAddress? get addressOverride => switch (rover) {
+	RoverType.rover => null,
+	RoverType.tank => models.settings.network.tankSocket.address,
+	RoverType.localhost => InternetAddress.loopbackIPv4,
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/autonomy.html b/docs/models/Sockets/autonomy.html new file mode 100644 index 0000000000..691136dc0a --- /dev/null +++ b/docs/models/Sockets/autonomy.html @@ -0,0 +1,120 @@ + + + + + + + + autonomy property - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
autonomy
+ +
+ +
+
+
+
+
+ +

autonomy property +

+ + +
+ + DashboardSocket + autonomy +
latefinal
+ +
+ +
+

A UDP socket for controlling autonomy.

+
+ + +
+

Implementation

+
late final autonomy = DashboardSocket(
+	device: Device.AUTONOMY,
+	onConnect: onConnect,
+	onDisconnect: onDisconnect,
+	messageHandler: models.messages.onMessage,
+);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/connectionSummary.html b/docs/models/Sockets/connectionSummary.html new file mode 100644 index 0000000000..654ecfd3d8 --- /dev/null +++ b/docs/models/Sockets/connectionSummary.html @@ -0,0 +1,127 @@ + + + + + + + + connectionSummary property - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
connectionSummary
+ +
+ +
+
+
+
+
+ +

connectionSummary property +

+ + + + + +
+
+ + String + get + connectionSummary + + +
+ +
+

A rundown of the connection strength of each device.

+
+ + +
+

Implementation

+
String get connectionSummary {
+	final result = StringBuffer();
+	for (final socket in sockets) {
+		result.write("${socket.device.humanName}: ${(socket.connectionStrength.value*100).toStringAsFixed(0)}%\n");
+	}
+	return result.toString().trim();
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/data.html b/docs/models/Sockets/data.html new file mode 100644 index 0000000000..b743a0f574 --- /dev/null +++ b/docs/models/Sockets/data.html @@ -0,0 +1,120 @@ + + + + + + + + data property - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
data
+ +
+ +
+
+
+
+
+ +

data property +

+ + +
+ + DashboardSocket + data +
latefinal
+ +
+ +
+

A UDP socket for sending and receiving Protobuf data.

+
+ + +
+

Implementation

+
late final data = DashboardSocket(
+	device: Device.SUBSYSTEMS,
+	onConnect: onConnect,
+	onDisconnect: onDisconnect,
+	messageHandler: models.messages.onMessage,
+);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/dispose.html b/docs/models/Sockets/dispose.html new file mode 100644 index 0000000000..dd32af2948 --- /dev/null +++ b/docs/models/Sockets/dispose.html @@ -0,0 +1,132 @@ + + + + + + + + dispose method - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+Future<void> dispose() async {
+	for (final socket in sockets) {
+		await socket.dispose();
+	}
+	super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/init.html b/docs/models/Sockets/init.html new file mode 100644 index 0000000000..d0a7c7391e --- /dev/null +++ b/docs/models/Sockets/init.html @@ -0,0 +1,129 @@ + + + + + + + + init method - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
override
+ +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+	for (final socket in sockets) {
+		await socket.init();
+	}
+	final level = Logger.level;
+	Logger.level = LogLevel.warning;
+	await updateSockets();
+	Logger.level = level;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/onConnect.html b/docs/models/Sockets/onConnect.html new file mode 100644 index 0000000000..79035fa622 --- /dev/null +++ b/docs/models/Sockets/onConnect.html @@ -0,0 +1,125 @@ + + + + + + + + onConnect method - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onConnect
+ +
+ +
+
+
+
+
+ +

onConnect method +

+ +
+ +void +onConnect(
  1. Device device
  2. +
) + + + +
+ +
+

Notifies the user when a new device has connected.

+
+ + + +
+

Implementation

+
void onConnect(Device device) {
+	models.home.setMessage(severity: Severity.info, text: "The ${device.humanName} has connected");
+	if (device == Device.SUBSYSTEMS) {
+      models.rover.status.value = models.rover.settings.status;
+      models.rover.controller1.gamepad.pulse();
+      models.rover.controller2.gamepad.pulse();
+      models.rover.controller3.gamepad.pulse();
+    }
+    notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/onDisconnect.html b/docs/models/Sockets/onDisconnect.html new file mode 100644 index 0000000000..1c49cb85cd --- /dev/null +++ b/docs/models/Sockets/onDisconnect.html @@ -0,0 +1,121 @@ + + + + + + + + onDisconnect method - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onDisconnect
+ +
+ +
+
+
+
+
+ +

onDisconnect method +

+ +
+ +void +onDisconnect(
  1. Device device
  2. +
) + + + +
+ +
+

Notifies the user when a device has disconnected.

+
+ + + +
+

Implementation

+
void onDisconnect(Device device) {
+	models.home.setMessage(severity: Severity.critical, text: "The ${device.humanName} has disconnected");
+	if (device == Device.SUBSYSTEMS) models.rover.status.value = RoverStatus.DISCONNECTED;
+	if (device == Device.VIDEO) models.video.reset();
+    notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/reset.html b/docs/models/Sockets/reset.html new file mode 100644 index 0000000000..9826a2d971 --- /dev/null +++ b/docs/models/Sockets/reset.html @@ -0,0 +1,124 @@ + + + + + + + + reset method - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
reset
+ +
+ +
+
+
+
+
+ +

reset method +

+ +
+ +Future<void> +reset() + + + +
+ +
+

Resets all the sockets.

+

When working with localhost, even UDP sockets can throw errors when the remote is unreachable. +Resetting the sockets will bypass these errors.

+
+ + + +
+

Implementation

+
Future<void> reset() async {
+	for (final socket in sockets) {
+		await socket.dispose();
+		await socket.init();
+	}
+    // Sockets lose their destination when disposed, so we restore it.
+    await updateSockets();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/rover.html b/docs/models/Sockets/rover.html new file mode 100644 index 0000000000..d249174c9d --- /dev/null +++ b/docs/models/Sockets/rover.html @@ -0,0 +1,115 @@ + + + + + + + + rover property - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rover
+ +
+ +
+
+
+
+
+ +

rover property +

+ + +
+ + RoverType + rover +
getter/setter pair
+ +
+ +
+

The rover-like system currently in use.

+
+ + +
+

Implementation

+
RoverType rover = RoverType.rover;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/setRover.html b/docs/models/Sockets/setRover.html new file mode 100644 index 0000000000..05832c1221 --- /dev/null +++ b/docs/models/Sockets/setRover.html @@ -0,0 +1,122 @@ + + + + + + + + setRover method - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setRover
+ +
+ +
+
+
+
+
+ +

setRover method +

+ +
+ +Future<void> +setRover(
  1. RoverType? value
  2. +
) + + + +
+ +
+

Change which rover is being used.

+
+ + + +
+

Implementation

+
Future<void> setRover(RoverType? value) async {
+	if (value == null) return;
+	rover = value;
+	models.home.setMessage(severity: Severity.info, text: "Using: ${rover.name}");
+    await reset();
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/socketForDevice.html b/docs/models/Sockets/socketForDevice.html new file mode 100644 index 0000000000..c33d3a7ee5 --- /dev/null +++ b/docs/models/Sockets/socketForDevice.html @@ -0,0 +1,122 @@ + + + + + + + + socketForDevice method - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
socketForDevice
+ +
+ +
+
+
+
+
+ +

socketForDevice method +

+ +
+ +DashboardSocket? +socketForDevice(
  1. Device device
  2. +
) + + + +
+ +
+

Returns the corresponding DashboardSocket for the device

+

Returns null if no device is passed or there is no corresponding socket

+
+ + + +
+

Implementation

+
DashboardSocket? socketForDevice(Device device) => switch (device) {
+    Device.SUBSYSTEMS => data,
+    Device.VIDEO => video,
+    Device.AUTONOMY => autonomy,
+    _ => null,
+  };
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/sockets.html b/docs/models/Sockets/sockets.html new file mode 100644 index 0000000000..624b5b3acf --- /dev/null +++ b/docs/models/Sockets/sockets.html @@ -0,0 +1,121 @@ + + + + + + + + sockets property - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sockets
+ +
+ +
+
+
+
+
+ +

sockets property +

+ + + + + +
+
+ + List<DashboardSocket> + get + sockets + + +
+ +
+

A list of all the sockets this model manages.

+
+ + +
+

Implementation

+
List<DashboardSocket> get sockets => [data, video, autonomy];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/updateSockets.html b/docs/models/Sockets/updateSockets.html new file mode 100644 index 0000000000..82080f105a --- /dev/null +++ b/docs/models/Sockets/updateSockets.html @@ -0,0 +1,120 @@ + + + + + + + + updateSockets method - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateSockets
+ +
+ +
+
+
+
+
+ +

updateSockets method +

+ +
+ +Future<void> +updateSockets() + + + +
+ +
+

Set the right IP addresses for the rover or tank.

+
+ + + +
+

Implementation

+
Future<void> updateSockets() async {
+	final settings = models.settings.network;
+	data.destination = settings.subsystemsSocket.copyWith(address: addressOverride);
+	video.destination = settings.videoSocket.copyWith(address: addressOverride);
+	autonomy.destination = settings.autonomySocket.copyWith(address: addressOverride);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/Sockets/video.html b/docs/models/Sockets/video.html new file mode 100644 index 0000000000..097b443a9f --- /dev/null +++ b/docs/models/Sockets/video.html @@ -0,0 +1,120 @@ + + + + + + + + video property - Sockets class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
video
+ +
+ +
+
+
+
+
+ +

video property +

+ + +
+ + DashboardSocket + video +
latefinal
+ +
+ +
+

A UDP socket for receiving video.

+
+ + +
+

Implementation

+
late final video = DashboardSocket(
+	device: Device.VIDEO,
+	onConnect: onConnect,
+	onDisconnect: onDisconnect,
+	messageHandler: models.messages.onMessage,
+);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TextBuilder-class-sidebar.html b/docs/models/TextBuilder-class-sidebar.html new file mode 100644 index 0000000000..5864e24031 --- /dev/null +++ b/docs/models/TextBuilder-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. TextBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. controller
  8. +
  9. error
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. isValid
  16. +
  17. otherBuilders
  18. +
  19. runtimeType
  20. +
  21. value
  22. + +
  23. Methods
  24. +
  25. addListener
  26. +
  27. dispose
  28. +
  29. noSuchMethod
  30. +
  31. notifyListeners
  32. +
  33. removeListener
  34. +
  35. toString
  36. +
  37. update
  38. + +
  39. Operators
  40. +
  41. operator ==
  42. + + + + + + +
diff --git a/docs/models/TextBuilder-class.html b/docs/models/TextBuilder-class.html new file mode 100644 index 0000000000..defa58a2ee --- /dev/null +++ b/docs/models/TextBuilder-class.html @@ -0,0 +1,371 @@ + + + + + + + + TextBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TextBuilder
+ +
+ +
+
+
+
+
+ +

TextBuilder<T> class + abstract + +

+ + +
+

A ValueBuilder backed by a Flutter TextField.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + +
Implementers
+
+ + + + + +
+
+ + +
+

Constructors

+
+
+ TextBuilder(T value, {String? text}) +
+
+ Creates a view model to update settings. +
+
+
+ +
+

Properties

+
+
+ controller + TextEditingController + + +
+
+ The controller for the TextField. +
final
+ +
+ +
+ error + ↔ String? + + +
+
+ The error to display in the UI, if any. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ otherBuilders + → List<ChangeNotifier> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + ↔ T + + +
+
+ The value being updated in the UI. +
getter/setter pairoverride-getter
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(String input) + → void + + + +
+
+ Updates the value based on the user's input. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TextBuilder/TextBuilder.html b/docs/models/TextBuilder/TextBuilder.html new file mode 100644 index 0000000000..807ba9862a --- /dev/null +++ b/docs/models/TextBuilder/TextBuilder.html @@ -0,0 +1,115 @@ + + + + + + + + TextBuilder constructor - TextBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TextBuilder
+ +
+ +
+
+
+
+
+ +

TextBuilder<T> constructor +

+ +
+ + TextBuilder<T>(
  1. T value, {
  2. +
  3. String? text,
  4. +
}) +
+ +
+

Creates a view model to update settings.

+

If text is not null, it will be used instead of value to prefill the controller.

+
+ + + +
+

Implementation

+
TextBuilder(this.value, {String? text}) :
+	controller = TextEditingController(text: text ?? value.toString()), super();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TextBuilder/controller.html b/docs/models/TextBuilder/controller.html new file mode 100644 index 0000000000..e0964569c1 --- /dev/null +++ b/docs/models/TextBuilder/controller.html @@ -0,0 +1,116 @@ + + + + + + + + controller property - TextBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
controller
+ +
+ +
+
+
+
+
+ +

controller property +

+ + +
+ + TextEditingController + controller +
final
+ +
+ +
+

The controller for the TextField.

+

This allows the text field to be prefilled with a value.

+
+ + +
+

Implementation

+
final TextEditingController controller;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TextBuilder/error.html b/docs/models/TextBuilder/error.html new file mode 100644 index 0000000000..c74cf9e8a0 --- /dev/null +++ b/docs/models/TextBuilder/error.html @@ -0,0 +1,115 @@ + + + + + + + + error property - TextBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
error
+ +
+ +
+
+
+
+
+ +

error property +

+ + +
+ + String? + error +
getter/setter pair
+ +
+ +
+

The error to display in the UI, if any.

+
+ + +
+

Implementation

+
String? error;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TextBuilder/isValid.html b/docs/models/TextBuilder/isValid.html new file mode 100644 index 0000000000..8d430a62dd --- /dev/null +++ b/docs/models/TextBuilder/isValid.html @@ -0,0 +1,128 @@ + + + + + + + + isValid property - TextBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => error == null;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TextBuilder/update.html b/docs/models/TextBuilder/update.html new file mode 100644 index 0000000000..15cbe98402 --- /dev/null +++ b/docs/models/TextBuilder/update.html @@ -0,0 +1,118 @@ + + + + + + + + update method - TextBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
update
+ +
+ +
+
+
+
+
+ +

update abstract method +

+ +
+ +void +update(
  1. String input
  2. +
) + + + +
+ +
+

Updates the value based on the user's input.

+

Perform validation here and set error accordingly. You do not have to set value in this +function -- for example, if the user entered an invalid input.

+
+ + + +
+

Implementation

+
void update(String input);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TextBuilder/value.html b/docs/models/TextBuilder/value.html new file mode 100644 index 0000000000..733c5e718a --- /dev/null +++ b/docs/models/TextBuilder/value.html @@ -0,0 +1,121 @@ + + + + + + + + value property - TextBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + +
+ +
+
    +
  1. @override
  2. +
+
+ T + value +
getter/setter pairoverride-getter
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+T value;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ThrottleBuilder-class-sidebar.html b/docs/models/ThrottleBuilder-class-sidebar.html new file mode 100644 index 0000000000..1d613a3cd4 --- /dev/null +++ b/docs/models/ThrottleBuilder-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. ThrottleBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. controller
  8. +
  9. errorText
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. isLoading
  16. +
  17. isValid
  18. +
  19. runtimeType
  20. + +
  21. Methods
  22. +
  23. addListener
  24. +
  25. dispose
  26. +
  27. noSuchMethod
  28. +
  29. notifyListeners
  30. +
  31. removeListener
  32. +
  33. save
  34. +
  35. toString
  36. + +
  37. Operators
  38. +
  39. operator ==
  40. + + + + + + +
diff --git a/docs/models/ThrottleBuilder-class.html b/docs/models/ThrottleBuilder-class.html new file mode 100644 index 0000000000..c8c7c889f0 --- /dev/null +++ b/docs/models/ThrottleBuilder-class.html @@ -0,0 +1,351 @@ + + + + + + + + ThrottleBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ThrottleBuilder
+ +
+ +
+
+
+
+
+ +

ThrottleBuilder class + +

+ + +
+

A view model to allow the user to edit a throttle value and send it to the rover.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ ThrottleBuilder() +
+
+ +
+
+
+ +
+

Properties

+
+
+ controller + NumberBuilder<double> + + +
+
+ A NumberBuilder to modify the throttle value. +
final
+ +
+ +
+ errorText + ↔ String? + + +
+
+ The error with the throttle, if any. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isLoading + ↔ bool + + +
+
+ Whether the throttle command is still sending. +
getter/setter pair
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the throttle is valid. +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ save() + → Future<void> + + + +
+
+ Saves the throttle to the rover. Does not perform a handshake. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ThrottleBuilder/ThrottleBuilder.html b/docs/models/ThrottleBuilder/ThrottleBuilder.html new file mode 100644 index 0000000000..856cdcac06 --- /dev/null +++ b/docs/models/ThrottleBuilder/ThrottleBuilder.html @@ -0,0 +1,104 @@ + + + + + + + + ThrottleBuilder constructor - ThrottleBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ThrottleBuilder
+ +
+ +
+
+
+
+
+ +

ThrottleBuilder constructor +

+ +
+ + ThrottleBuilder() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ThrottleBuilder/controller.html b/docs/models/ThrottleBuilder/controller.html new file mode 100644 index 0000000000..ae9426887b --- /dev/null +++ b/docs/models/ThrottleBuilder/controller.html @@ -0,0 +1,115 @@ + + + + + + + + controller property - ThrottleBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
controller
+ +
+ +
+
+
+
+
+ +

controller property +

+ + +
+ + NumberBuilder<double> + controller +
final
+ +
+ +
+

A NumberBuilder to modify the throttle value.

+
+ + +
+

Implementation

+
final controller = NumberBuilder<double>(0, min: 0, max: 1);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ThrottleBuilder/errorText.html b/docs/models/ThrottleBuilder/errorText.html new file mode 100644 index 0000000000..3fe33c6e24 --- /dev/null +++ b/docs/models/ThrottleBuilder/errorText.html @@ -0,0 +1,115 @@ + + + + + + + + errorText property - ThrottleBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
errorText
+ +
+ +
+
+
+
+
+ +

errorText property +

+ + +
+ + String? + errorText +
getter/setter pair
+ +
+ +
+

The error with the throttle, if any.

+
+ + +
+

Implementation

+
String? errorText;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ThrottleBuilder/isLoading.html b/docs/models/ThrottleBuilder/isLoading.html new file mode 100644 index 0000000000..3aff44602c --- /dev/null +++ b/docs/models/ThrottleBuilder/isLoading.html @@ -0,0 +1,115 @@ + + + + + + + + isLoading property - ThrottleBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isLoading
+ +
+ +
+
+
+
+
+ +

isLoading property +

+ + +
+ + bool + isLoading +
getter/setter pair
+ +
+ +
+

Whether the throttle command is still sending.

+
+ + +
+

Implementation

+
bool isLoading = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ThrottleBuilder/isValid.html b/docs/models/ThrottleBuilder/isValid.html new file mode 100644 index 0000000000..a8478c7d8a --- /dev/null +++ b/docs/models/ThrottleBuilder/isValid.html @@ -0,0 +1,121 @@ + + + + + + + + isValid property - ThrottleBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ + bool + get + isValid + + +
+ +
+

Whether the throttle is valid.

+
+ + +
+

Implementation

+
bool get isValid => controller.isValid;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ThrottleBuilder/save.html b/docs/models/ThrottleBuilder/save.html new file mode 100644 index 0000000000..36b3be4815 --- /dev/null +++ b/docs/models/ThrottleBuilder/save.html @@ -0,0 +1,124 @@ + + + + + + + + save method - ThrottleBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
save
+ +
+ +
+
+
+
+
+ +

save method +

+ +
+ +Future<void> +save() + + + +
+ +
+

Saves the throttle to the rover. Does not perform a handshake.

+
+ + + +
+

Implementation

+
Future<void> save() async {
+  isLoading = true;
+  notifyListeners();
+  final throttle = controller.value;
+  final command = DriveCommand(setThrottle: true, throttle: throttle);
+  models.messages.sendMessage(command);
+  await Future<void>.delayed(const Duration(milliseconds: 200));
+  isLoading = false;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TimerBuilder-class-sidebar.html b/docs/models/TimerBuilder-class-sidebar.html new file mode 100644 index 0000000000..e132bb19fc --- /dev/null +++ b/docs/models/TimerBuilder-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  1. Constructors
  2. +
  3. TimerBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. duration
  8. +
  9. hashCode
  10. +
  11. hasListeners
  12. +
  13. isValid
  14. +
  15. nameController
  16. +
  17. otherBuilders
  18. +
  19. runtimeType
  20. +
  21. value
  22. + +
  23. Methods
  24. +
  25. addListener
  26. +
  27. dispose
  28. +
  29. noSuchMethod
  30. +
  31. notifyListeners
  32. +
  33. removeListener
  34. +
  35. start
  36. +
  37. toString
  38. +
  39. update
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/models/TimerBuilder-class.html b/docs/models/TimerBuilder-class.html new file mode 100644 index 0000000000..f4cd484630 --- /dev/null +++ b/docs/models/TimerBuilder-class.html @@ -0,0 +1,378 @@ + + + + + + + + TimerBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TimerBuilder
+ +
+ +
+
+
+
+
+ +

TimerBuilder class + +

+ + +
+

Starts a MissionTimer based on user input.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ TimerBuilder() +
+
+ +
+
+
+ +
+

Properties

+
+
+ duration + NumberBuilder<int> + + +
+
+ Number of minutes +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ nameController + TextEditingController + + +
+
+ The text controller for the timer name. +
final
+ +
+ +
+ otherBuilders + → List<NumberBuilder<num>> + + +
+
+ Other builders to listen to. +
no setteroverride
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → void + + +
+
+ The value being updated in the UI. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ start() + → void + + + +
+
+ Starts the timer + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ update(dynamic _) + → void + + + +
+
+ Updates the UI. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TimerBuilder/TimerBuilder.html b/docs/models/TimerBuilder/TimerBuilder.html new file mode 100644 index 0000000000..55441488a1 --- /dev/null +++ b/docs/models/TimerBuilder/TimerBuilder.html @@ -0,0 +1,104 @@ + + + + + + + + TimerBuilder constructor - TimerBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TimerBuilder
+ +
+ +
+
+
+
+
+ +

TimerBuilder constructor +

+ +
+ + TimerBuilder() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TimerBuilder/duration.html b/docs/models/TimerBuilder/duration.html new file mode 100644 index 0000000000..76736a38ae --- /dev/null +++ b/docs/models/TimerBuilder/duration.html @@ -0,0 +1,115 @@ + + + + + + + + duration property - TimerBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
duration
+ +
+ +
+
+
+
+
+ +

duration property +

+ + +
+ + NumberBuilder<int> + duration +
getter/setter pair
+ +
+ +
+

Number of minutes

+
+ + +
+

Implementation

+
NumberBuilder<int> duration = NumberBuilder<int>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TimerBuilder/isValid.html b/docs/models/TimerBuilder/isValid.html new file mode 100644 index 0000000000..5668c56b54 --- /dev/null +++ b/docs/models/TimerBuilder/isValid.html @@ -0,0 +1,128 @@ + + + + + + + + isValid property - TimerBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isValid +
override
+ +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
@override
+bool get isValid => nameController.text.isNotEmpty && duration.value > 0;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TimerBuilder/nameController.html b/docs/models/TimerBuilder/nameController.html new file mode 100644 index 0000000000..5a647c8b9e --- /dev/null +++ b/docs/models/TimerBuilder/nameController.html @@ -0,0 +1,115 @@ + + + + + + + + nameController property - TimerBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
nameController
+ +
+ +
+
+
+
+
+ +

nameController property +

+ + +
+ + TextEditingController + nameController +
final
+ +
+ +
+

The text controller for the timer name.

+
+ + +
+

Implementation

+
final nameController = TextEditingController();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TimerBuilder/otherBuilders.html b/docs/models/TimerBuilder/otherBuilders.html new file mode 100644 index 0000000000..ff35715a33 --- /dev/null +++ b/docs/models/TimerBuilder/otherBuilders.html @@ -0,0 +1,127 @@ + + + + + + + + otherBuilders property - TimerBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
otherBuilders
+ +
+ +
+
+
+
+
+ +

otherBuilders property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ List<NumberBuilder<num>> + get + otherBuilders +
override
+ +
+ +
+

Other builders to listen to.

+
+ + +
+

Implementation

+
@override
+List<NumberBuilder> get otherBuilders => [duration];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TimerBuilder/start.html b/docs/models/TimerBuilder/start.html new file mode 100644 index 0000000000..25751b7f96 --- /dev/null +++ b/docs/models/TimerBuilder/start.html @@ -0,0 +1,117 @@ + + + + + + + + start method - TimerBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
start
+ +
+ +
+
+
+
+
+ +

start method +

+ +
+ +void +start() + + + +
+ +
+

Starts the timer

+
+ + + +
+

Implementation

+
void start() {
+  models.home.mission.start(title: nameController.text, duration: Duration(minutes: duration.value));
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TimerBuilder/update.html b/docs/models/TimerBuilder/update.html new file mode 100644 index 0000000000..f2d4ce2a14 --- /dev/null +++ b/docs/models/TimerBuilder/update.html @@ -0,0 +1,116 @@ + + + + + + + + update method - TimerBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
update
+ +
+ +
+
+
+
+
+ +

update method +

+ +
+ +void +update(
  1. dynamic _
  2. +
) + + + +
+ +
+

Updates the UI.

+
+ + + +
+

Implementation

+
void update(_) => notifyListeners();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/TimerBuilder/value.html b/docs/models/TimerBuilder/value.html new file mode 100644 index 0000000000..012c040e97 --- /dev/null +++ b/docs/models/TimerBuilder/value.html @@ -0,0 +1,127 @@ + + + + + + + + value property - TimerBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ void + get + value +
override
+ +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+void get value { /* Use [start] instead */ }
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ValueBuilder-class-sidebar.html b/docs/models/ValueBuilder-class-sidebar.html new file mode 100644 index 0000000000..cec304238c --- /dev/null +++ b/docs/models/ValueBuilder-class-sidebar.html @@ -0,0 +1,34 @@ +
    + +
  1. Constructors
  2. +
  3. ValueBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. isValid
  12. +
  13. otherBuilders
  14. +
  15. runtimeType
  16. +
  17. value
  18. + +
  19. Methods
  20. +
  21. addListener
  22. +
  23. dispose
  24. +
  25. noSuchMethod
  26. +
  27. notifyListeners
  28. +
  29. removeListener
  30. +
  31. toString
  32. + +
  33. Operators
  34. +
  35. operator ==
  36. + + + + + + +
diff --git a/docs/models/ValueBuilder-class.html b/docs/models/ValueBuilder-class.html new file mode 100644 index 0000000000..712add6cf0 --- /dev/null +++ b/docs/models/ValueBuilder-class.html @@ -0,0 +1,345 @@ + + + + + + + + ValueBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ValueBuilder
+ +
+ +
+
+
+
+
+ +

ValueBuilder<T> class + abstract + +

+ + +
+

A view model to modify a value.

+

The value being modified is saved in value, which must be a valid T. The UI, however, may +contain invalid data inputted by the user. Use isValid to see if value matches the UI.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ +
Implementers
+
+ + + + + +
+
+ + +
+

Constructors

+
+
+ ValueBuilder() +
+
+ Listens to all otherBuilders as part of this builder. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setter
+ +
+ +
+ otherBuilders + → List<ChangeNotifier> + + +
+
+ Other builders to listen to. +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → T + + +
+
+ The value being updated in the UI. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ValueBuilder/ValueBuilder.html b/docs/models/ValueBuilder/ValueBuilder.html new file mode 100644 index 0000000000..f8fdcd6231 --- /dev/null +++ b/docs/models/ValueBuilder/ValueBuilder.html @@ -0,0 +1,115 @@ + + + + + + + + ValueBuilder constructor - ValueBuilder - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ValueBuilder
+ +
+ +
+
+
+
+
+ +

ValueBuilder<T> constructor +

+ +
+ + ValueBuilder<T>() +
+ +
+

Listens to all otherBuilders as part of this builder.

+
+ + + +
+

Implementation

+
ValueBuilder() {
+	for (final builder in otherBuilders) {
+		builder.addListener(notifyListeners);
+	}
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ValueBuilder/dispose.html b/docs/models/ValueBuilder/dispose.html new file mode 100644 index 0000000000..b6c48f9eed --- /dev/null +++ b/docs/models/ValueBuilder/dispose.html @@ -0,0 +1,132 @@ + + + + + + + + dispose method - ValueBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+	for (final builder in otherBuilders) {
+		builder.removeListener(notifyListeners);
+	}
+	super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ValueBuilder/isValid.html b/docs/models/ValueBuilder/isValid.html new file mode 100644 index 0000000000..f583715df6 --- /dev/null +++ b/docs/models/ValueBuilder/isValid.html @@ -0,0 +1,122 @@ + + + + + + + + isValid property - ValueBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isValid
+ +
+ +
+
+
+
+
+ +

isValid property +

+ + + + + +
+
+ + bool + get + isValid + + +
+ +
+

Whether the value in the UI is valid.

+

Do not try to access value if this is false.

+
+ + +
+

Implementation

+
bool get isValid;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ValueBuilder/otherBuilders.html b/docs/models/ValueBuilder/otherBuilders.html new file mode 100644 index 0000000000..85921daf8a --- /dev/null +++ b/docs/models/ValueBuilder/otherBuilders.html @@ -0,0 +1,121 @@ + + + + + + + + otherBuilders property - ValueBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
otherBuilders
+ +
+ +
+
+
+
+
+ +

otherBuilders property +

+ + + + + +
+
+ + List<ChangeNotifier> + get + otherBuilders + + +
+ +
+

Other builders to listen to.

+
+ + +
+

Implementation

+
List<ChangeNotifier> get otherBuilders => [];
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ValueBuilder/value.html b/docs/models/ValueBuilder/value.html new file mode 100644 index 0000000000..5da0336064 --- /dev/null +++ b/docs/models/ValueBuilder/value.html @@ -0,0 +1,121 @@ + + + + + + + + value property - ValueBuilder class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + + + + +
+
+ + T + get + value + + +
+ +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
T get value;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel-class-sidebar.html b/docs/models/VideoModel-class-sidebar.html new file mode 100644 index 0000000000..7668c22070 --- /dev/null +++ b/docs/models/VideoModel-class-sidebar.html @@ -0,0 +1,43 @@ +
    + +
  1. Constructors
  2. +
  3. VideoModel
  4. + + + +
  5. + Properties +
  6. +
  7. feeds
  8. +
  9. fpsTimer
  10. +
  11. framesThisSecond
  12. +
  13. frameUpdater
  14. +
  15. hashCode
  16. +
  17. hasListeners
  18. +
  19. networkFps
  20. +
  21. runtimeType
  22. + +
  23. Methods
  24. +
  25. addListener
  26. +
  27. dispose
  28. +
  29. handleData
  30. +
  31. init
  32. +
  33. noSuchMethod
  34. +
  35. notifyListeners
  36. +
  37. removeListener
  38. +
  39. reset
  40. +
  41. resetNetworkFps
  42. +
  43. saveFrame
  44. +
  45. toggleCamera
  46. +
  47. toString
  48. +
  49. updateCamera
  50. + +
  51. Operators
  52. +
  53. operator ==
  54. + + + + + + +
diff --git a/docs/models/VideoModel-class.html b/docs/models/VideoModel-class.html new file mode 100644 index 0000000000..ad12eac211 --- /dev/null +++ b/docs/models/VideoModel-class.html @@ -0,0 +1,443 @@ + + + + + + + + VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoModel
+ +
+ +
+
+
+
+
+ +

VideoModel class + +

+ + +
+

A data model to stream video from the rover.

+
+ + +
+
+ +
Inheritance
+
+
    +
  • Object
  • +
  • Model
  • +
  • VideoModel
  • +
+
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ VideoModel() +
+
+ +
+
+
+ +
+

Properties

+
+
+ feeds + → Map<CameraName, VideoData> + + +
+
+ All the video feeds supported by the rover. +
final
+ +
+ +
+ fpsTimer + ↔ Timer + + +
+
+ A timer to update the FPS counter. +
latefinal
+ +
+ +
+ framesThisSecond + ↔ Map<CameraName, int> + + +
+
+ How many frames came in the network in the past second. +
getter/setter pair
+ +
+ +
+ frameUpdater + ↔ Timer? + + +
+
+ Triggers when it's time to update a new frame. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ networkFps + ↔ Map<CameraName, int> + + +
+
+ How many frames came in the network in the past second. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ handleData(VideoData newData) + → void + + + +
+
+ Updates the data for a given camera. + + +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ reset() + → void + + + +
+
+ Clears all video data and resets the timer. + + +
+ +
+ resetNetworkFps([dynamic _]) + → void + + + +
+
+ Saves the frames in the past second (framesThisSecond) to networkFps. + + +
+ +
+ saveFrame(CameraName name) + → Future<void> + + + +
+
+ Takes a screenshot of the current frame. + + +
+ +
+ toggleCamera(CameraName name, {required bool enable}) + → Future<void> + + + +
+
+ Enables or disables the given camera. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateCamera(String id, CameraDetails details, {bool verify = true}) + → Future<void> + + + +
+
+ Updates settings for the given camera. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/VideoModel.html b/docs/models/VideoModel/VideoModel.html new file mode 100644 index 0000000000..e70690d659 --- /dev/null +++ b/docs/models/VideoModel/VideoModel.html @@ -0,0 +1,104 @@ + + + + + + + + VideoModel constructor - VideoModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoModel
+ +
+ +
+
+
+
+
+ +

VideoModel constructor +

+ +
+ + VideoModel() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/dispose.html b/docs/models/VideoModel/dispose.html new file mode 100644 index 0000000000..c40dff3859 --- /dev/null +++ b/docs/models/VideoModel/dispose.html @@ -0,0 +1,131 @@ + + + + + + + + dispose method - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+	frameUpdater?.cancel();
+	fpsTimer.cancel();
+	super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/feeds.html b/docs/models/VideoModel/feeds.html new file mode 100644 index 0000000000..58d99cc353 --- /dev/null +++ b/docs/models/VideoModel/feeds.html @@ -0,0 +1,122 @@ + + + + + + + + feeds property - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
feeds
+ +
+ +
+
+
+
+
+ +

feeds property +

+ + +
+ + Map<CameraName, VideoData> + feeds +
final
+ +
+ +
+

All the video feeds supported by the rover.

+
+ + +
+

Implementation

+
final Map<CameraName, VideoData> feeds = {
+	for (final name in CameraName.values) name: VideoData(
+		details: CameraDetails(
+			name: name,
+			status: CameraStatus.CAMERA_DISCONNECTED,
+		),
+	),
+};
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/fpsTimer.html b/docs/models/VideoModel/fpsTimer.html new file mode 100644 index 0000000000..6fae0124bd --- /dev/null +++ b/docs/models/VideoModel/fpsTimer.html @@ -0,0 +1,115 @@ + + + + + + + + fpsTimer property - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
fpsTimer
+ +
+ +
+
+
+
+
+ +

fpsTimer property +

+ + +
+ + Timer + fpsTimer +
latefinal
+ +
+ +
+

A timer to update the FPS counter.

+
+ + +
+

Implementation

+
late final Timer fpsTimer;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/frameUpdater.html b/docs/models/VideoModel/frameUpdater.html new file mode 100644 index 0000000000..800c06109c --- /dev/null +++ b/docs/models/VideoModel/frameUpdater.html @@ -0,0 +1,116 @@ + + + + + + + + frameUpdater property - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frameUpdater
+ +
+ +
+
+
+
+
+ +

frameUpdater property +

+ + +
+ + Timer? + frameUpdater +
getter/setter pair
+ +
+ +
+

Triggers when it's time to update a new frame.

+

This is kept here to ensure all widgets are in sync.

+
+ + +
+

Implementation

+
Timer? frameUpdater;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/framesThisSecond.html b/docs/models/VideoModel/framesThisSecond.html new file mode 100644 index 0000000000..7869fbeacf --- /dev/null +++ b/docs/models/VideoModel/framesThisSecond.html @@ -0,0 +1,119 @@ + + + + + + + + framesThisSecond property - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
framesThisSecond
+ +
+ +
+
+
+
+
+ +

framesThisSecond property +

+ + +
+ + Map<CameraName, int> + framesThisSecond +
getter/setter pair
+ +
+ +
+

How many frames came in the network in the past second.

+

This number is updated every frame. Use networkFps in the UI.

+
+ + +
+

Implementation

+
Map<CameraName, int> framesThisSecond = {
+	for (final name in CameraName.values)
+		name: 0,
+};
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/handleData.html b/docs/models/VideoModel/handleData.html new file mode 100644 index 0000000000..2992c9e34f --- /dev/null +++ b/docs/models/VideoModel/handleData.html @@ -0,0 +1,135 @@ + + + + + + + + handleData method - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
handleData
+ +
+ +
+
+
+
+
+ +

handleData method +

+ +
+ +void +handleData(
  1. VideoData newData
  2. +
) + + + +
+ +
+

Updates the data for a given camera.

+
+ + + +
+

Implementation

+
void handleData(VideoData newData) {
+	if (
+		(newData.hasFrame() && newData.details.name == CameraName.CAMERA_NAME_UNDEFINED) ||
+		newData.details.status == CameraStatus.CAMERA_HAS_NO_NAME
+	) {
+		models.home.setMessage(severity: Severity.critical, text: "Received feed from camera #${newData.id} with no name");
+		return;
+	}
+	final name = newData.details.name;
+	final data = feeds[name]!
+		..details = newData.details
+		..id = newData.id;
+
+	// Some [VideoData] packets are just representing metadata, not an empty video frame.
+	// If this is one such packet (doesn't have a frame but status == enabled), don't save.
+	if (newData.hasFrame() && newData.details.status == CameraStatus.CAMERA_ENABLED) {
+		data.frame = newData.frame;
+		framesThisSecond[name] = (framesThisSecond[name] ?? 0) + 1;
+	}
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/init.html b/docs/models/VideoModel/init.html new file mode 100644 index 0000000000..57d84f7e41 --- /dev/null +++ b/docs/models/VideoModel/init.html @@ -0,0 +1,134 @@ + + + + + + + + init method - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
override
+ +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+	models.messages.registerHandler<VideoData>(
+		name: VideoData().messageName,
+		decoder: VideoData.fromBuffer,
+		handler: handleData,
+	);
+	models.messages.registerHandler<VideoCommand>(
+		name: VideoCommand().messageName,
+		decoder: VideoCommand.fromBuffer,
+		handler: (command) => _handshake = command,
+	);
+	fpsTimer = Timer.periodic(const Duration(seconds: 1), resetNetworkFps);
+	reset();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/networkFps.html b/docs/models/VideoModel/networkFps.html new file mode 100644 index 0000000000..f246b1e83b --- /dev/null +++ b/docs/models/VideoModel/networkFps.html @@ -0,0 +1,115 @@ + + + + + + + + networkFps property - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
networkFps
+ +
+ +
+
+
+
+
+ +

networkFps property +

+ + +
+ + Map<CameraName, int> + networkFps +
getter/setter pair
+ +
+ +
+

How many frames came in the network in the past second.

+
+ + +
+

Implementation

+
Map<CameraName, int> networkFps = {};
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/reset.html b/docs/models/VideoModel/reset.html new file mode 100644 index 0000000000..bd838a3a5e --- /dev/null +++ b/docs/models/VideoModel/reset.html @@ -0,0 +1,126 @@ + + + + + + + + reset method - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
reset
+ +
+ +
+
+
+
+
+ +

reset method +

+ +
+ +void +reset() + + + +
+ +
+

Clears all video data and resets the timer.

+
+ + + +
+

Implementation

+
void reset() {
+	resetNetworkFps();
+	for (final name in CameraName.values) {
+		feeds[name]!.details.status = CameraStatus.CAMERA_DISCONNECTED;
+	}
+
+	frameUpdater?.cancel();
+	frameUpdater = Timer.periodic(
+		Duration(milliseconds: (1000/models.settings.dashboard.maxFps).round()),
+		(_) => notifyListeners(),
+	);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/resetNetworkFps.html b/docs/models/VideoModel/resetNetworkFps.html new file mode 100644 index 0000000000..f75f992722 --- /dev/null +++ b/docs/models/VideoModel/resetNetworkFps.html @@ -0,0 +1,123 @@ + + + + + + + + resetNetworkFps method - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
resetNetworkFps
+ +
+ +
+
+
+
+
+ +

resetNetworkFps method +

+ +
+ +void +resetNetworkFps([
  1. dynamic _
  2. +
]) + + + +
+ +
+

Saves the frames in the past second (framesThisSecond) to networkFps.

+
+ + + +
+

Implementation

+
void resetNetworkFps([_]) {
+	networkFps = Map.from(framesThisSecond);
+	framesThisSecond = {
+		for (final name in CameraName.values)
+			name: 0,
+	};
+	notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/saveFrame.html b/docs/models/VideoModel/saveFrame.html new file mode 100644 index 0000000000..a5b8949018 --- /dev/null +++ b/docs/models/VideoModel/saveFrame.html @@ -0,0 +1,121 @@ + + + + + + + + saveFrame method - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
saveFrame
+ +
+ +
+
+
+
+
+ +

saveFrame method +

+ +
+ +Future<void> +saveFrame(
  1. CameraName name
  2. +
) + + + +
+ +
+

Takes a screenshot of the current frame.

+
+ + + +
+

Implementation

+
Future<void> saveFrame(CameraName name) async {
+	final cachedFrame = feeds[name]?.frame;
+	if (cachedFrame == null) throw ArgumentError.notNull("Feed for $name");
+	await services.files.writeImage(cachedFrame, name.humanName);
+	models.home.setMessage(severity: Severity.info, text: "Screenshot saved");
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/toggleCamera.html b/docs/models/VideoModel/toggleCamera.html new file mode 100644 index 0000000000..ec0a5ba2ea --- /dev/null +++ b/docs/models/VideoModel/toggleCamera.html @@ -0,0 +1,135 @@ + + + + + + + + toggleCamera method - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toggleCamera
+ +
+ +
+
+
+
+
+ +

toggleCamera method +

+ +
+ +Future<void> +toggleCamera(
  1. CameraName name, {
  2. +
  3. required bool enable,
  4. +
}) + + + +
+ +
+

Enables or disables the given camera.

+

This function is called automatically, so if the camera is not connected or otherwise available, +it'll fail silently. However, if the server simply doesn't respond, it'll show a warning.

+
+ + + +
+

Implementation

+
Future<void> toggleCamera(CameraName name, {required bool enable}) async {
+	final details = feeds[name]!.details;
+	if (enable && details.status != CameraStatus.CAMERA_DISABLED) return;
+	if (!enable && details.status == CameraStatus.CAMERA_DISCONNECTED) return;
+
+	_handshake = null;
+	details.status = enable ? CameraStatus.CAMERA_ENABLED : CameraStatus.CAMERA_DISABLED;
+	final command = VideoCommand(id: feeds[name]!.id, details: details);
+	models.sockets.video.sendMessage(command);
+	await Future<void>.delayed(const Duration(seconds: 2));
+	if (_handshake == null) {
+		models.home.setMessage(
+			severity: Severity.warning,
+			text: "Could not ${enable ? 'enable' : 'disable'} the ${name.humanName} camera",
+		);
+	}
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/VideoModel/updateCamera.html b/docs/models/VideoModel/updateCamera.html new file mode 100644 index 0000000000..8b14ea6e28 --- /dev/null +++ b/docs/models/VideoModel/updateCamera.html @@ -0,0 +1,125 @@ + + + + + + + + updateCamera method - VideoModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateCamera
+ +
+ +
+
+
+
+
+ +

updateCamera method +

+ +
+ +Future<void> +updateCamera(
  1. String id,
  2. +
  3. CameraDetails details, {
  4. +
  5. bool verify = true,
  6. +
}) + + + +
+ +
+

Updates settings for the given camera.

+
+ + + +
+

Implementation

+
Future<void> updateCamera(String id, CameraDetails details, {bool verify = true}) async {
+	_handshake = null;
+	final command = VideoCommand(id: id, details: details);
+	models.sockets.video.sendMessage(command);
+    if (!verify) return;
+	await Future<void>.delayed(const Duration(seconds: 2));
+	if (_handshake == null) throw RequestNotAccepted();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel-class-sidebar.html b/docs/models/ViewsModel-class-sidebar.html new file mode 100644 index 0000000000..4e6cd7a58d --- /dev/null +++ b/docs/models/ViewsModel-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. ViewsModel
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. horizontalController1
  12. +
  13. horizontalController2
  14. +
  15. horizontalController3
  16. +
  17. horizontalController4
  18. +
  19. runtimeType
  20. +
  21. verticalController
  22. +
  23. verticalController2
  24. +
  25. views
  26. + +
  27. Methods
  28. +
  29. addListener
  30. +
  31. dispose
  32. +
  33. init
  34. +
  35. noSuchMethod
  36. +
  37. notifyListeners
  38. +
  39. removeListener
  40. +
  41. replaceView
  42. +
  43. resetSizes
  44. +
  45. setNumViews
  46. +
  47. toString
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/models/ViewsModel-class.html b/docs/models/ViewsModel-class.html new file mode 100644 index 0000000000..5ddb3faea4 --- /dev/null +++ b/docs/models/ViewsModel-class.html @@ -0,0 +1,428 @@ + + + + + + + + ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ViewsModel
+ +
+ +
+
+
+
+
+ +

ViewsModel class + +

+ + +
+

A data model for keeping track of the on-screen views.

+
+ + +
+
+ +
Inheritance
+
+
    +
  • Object
  • +
  • Model
  • +
  • ViewsModel
  • +
+
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ViewsModel() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ horizontalController1 + ResizableController + + +
+
+ The controller for the resizable row on top. +
final
+ +
+ +
+ horizontalController2 + ResizableController + + +
+
+ The controller for the resizable row on bottom. +
final
+ +
+ +
+ horizontalController3 + ResizableController + + +
+
+ The controller for screen 2's first row. +
final
+ +
+ +
+ horizontalController4 + ResizableController + + +
+
+ The controller for screen 2's second row. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ verticalController + ResizableController + + +
+
+ The controller for the resizable column. +
final
+ +
+ +
+ verticalController2 + ResizableController + + +
+
+ The vertical controller for screen 2. +
final
+ +
+ +
+ views + ↔ List<DashboardView> + + +
+
+ The current views on the screen. +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes any data needed by this model. +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ replaceView(int index, DashboardView newView) + → void + + + +
+
+ Replaces the view at the given index with the new view. + + +
+ +
+ resetSizes() + → void + + + +
+
+ Resets the size of all the views. + + +
+ +
+ setNumViews(int? value) + → void + + + +
+
+ Adds or subtracts a number of views to/from the UI + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/ViewsModel.html b/docs/models/ViewsModel/ViewsModel.html new file mode 100644 index 0000000000..6afd19c9c5 --- /dev/null +++ b/docs/models/ViewsModel/ViewsModel.html @@ -0,0 +1,104 @@ + + + + + + + + ViewsModel constructor - ViewsModel - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ViewsModel
+ +
+ +
+
+
+
+
+ +

ViewsModel constructor +

+ +
+ + ViewsModel() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/dispose.html b/docs/models/ViewsModel/dispose.html new file mode 100644 index 0000000000..c64c104331 --- /dev/null +++ b/docs/models/ViewsModel/dispose.html @@ -0,0 +1,136 @@ + + + + + + + + dispose method - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+  models.settings.removeListener(notifyListeners);
+  horizontalController1.dispose();
+  horizontalController2.dispose();
+  horizontalController3.dispose();
+  horizontalController4.dispose();
+  verticalController.dispose();
+  verticalController2.dispose();
+  super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/horizontalController1.html b/docs/models/ViewsModel/horizontalController1.html new file mode 100644 index 0000000000..e15bf7bfe7 --- /dev/null +++ b/docs/models/ViewsModel/horizontalController1.html @@ -0,0 +1,115 @@ + + + + + + + + horizontalController1 property - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
horizontalController1
+ +
+ +
+
+
+
+
+ +

horizontalController1 property +

+ + +
+ + ResizableController + horizontalController1 +
final
+ +
+ +
+

The controller for the resizable row on top.

+
+ + +
+

Implementation

+
final horizontalController1 = ResizableController();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/horizontalController2.html b/docs/models/ViewsModel/horizontalController2.html new file mode 100644 index 0000000000..eb5de1edb1 --- /dev/null +++ b/docs/models/ViewsModel/horizontalController2.html @@ -0,0 +1,115 @@ + + + + + + + + horizontalController2 property - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
horizontalController2
+ +
+ +
+
+
+
+
+ +

horizontalController2 property +

+ + +
+ + ResizableController + horizontalController2 +
final
+ +
+ +
+

The controller for the resizable row on bottom.

+
+ + +
+

Implementation

+
final horizontalController2 = ResizableController();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/horizontalController3.html b/docs/models/ViewsModel/horizontalController3.html new file mode 100644 index 0000000000..52fdda9126 --- /dev/null +++ b/docs/models/ViewsModel/horizontalController3.html @@ -0,0 +1,115 @@ + + + + + + + + horizontalController3 property - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
horizontalController3
+ +
+ +
+
+
+
+
+ +

horizontalController3 property +

+ + +
+ + ResizableController + horizontalController3 +
final
+ +
+ +
+

The controller for screen 2's first row.

+
+ + +
+

Implementation

+
final horizontalController3 = ResizableController();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/horizontalController4.html b/docs/models/ViewsModel/horizontalController4.html new file mode 100644 index 0000000000..a3d6982acd --- /dev/null +++ b/docs/models/ViewsModel/horizontalController4.html @@ -0,0 +1,115 @@ + + + + + + + + horizontalController4 property - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
horizontalController4
+ +
+ +
+
+
+
+
+ +

horizontalController4 property +

+ + +
+ + ResizableController + horizontalController4 +
final
+ +
+ +
+

The controller for screen 2's second row.

+
+ + +
+

Implementation

+
final horizontalController4 = ResizableController();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/init.html b/docs/models/ViewsModel/init.html new file mode 100644 index 0000000000..7639776553 --- /dev/null +++ b/docs/models/ViewsModel/init.html @@ -0,0 +1,123 @@ + + + + + + + + init method - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
override
+ +
+ +
+

Initializes any data needed by this model.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+  models.settings.addListener(notifyListeners);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/replaceView.html b/docs/models/ViewsModel/replaceView.html new file mode 100644 index 0000000000..c1f5138fed --- /dev/null +++ b/docs/models/ViewsModel/replaceView.html @@ -0,0 +1,127 @@ + + + + + + + + replaceView method - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
replaceView
+ +
+ +
+
+
+
+
+ +

replaceView method +

+ +
+ +void +replaceView(
  1. int index,
  2. +
  3. DashboardView newView
  4. +
) + + + +
+ +
+

Replaces the view at the given index with the new view.

+
+ + + +
+

Implementation

+
void replaceView(int index, DashboardView newView) {
+  if (views.contains(newView) && newView.name != Routes.blank) {
+    models.home.setMessage(
+      severity: Severity.error,
+      text: "That view is already on-screen",
+    );
+    return;
+  }
+  views[index] = newView;
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/resetSizes.html b/docs/models/ViewsModel/resetSizes.html new file mode 100644 index 0000000000..19b0677d3f --- /dev/null +++ b/docs/models/ViewsModel/resetSizes.html @@ -0,0 +1,136 @@ + + + + + + + + resetSizes method - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
resetSizes
+ +
+ +
+
+
+
+
+ +

resetSizes method +

+ +
+ +void +resetSizes() + + + +
+ +
+

Resets the size of all the views.

+
+ + + +
+

Implementation

+
void resetSizes() {
+  if (views.length == 2 &&
+      models.settings.dashboard.splitMode == SplitMode.horizontal) {
+    verticalController.setRatios([0.5, 0.5]);
+  } else if (views.length > 2) {
+    verticalController.setRatios([0.5, 0.5]);
+  }
+  if (views.length == 2 &&
+      models.settings.dashboard.splitMode == SplitMode.vertical) {
+    horizontalController1.setRatios([0.5, 0.5]);
+  } else if (views.length > 2) {
+    horizontalController1.setRatios([0.5, 0.5]);
+  }
+  if (views.length == 4) horizontalController2.setRatios([0.5, 0.5]);
+  if (views.length == 8) {
+    horizontalController2.setRatios([0.5, 0.5]);
+    horizontalController3.setRatios([0.5, 0.5]);
+    horizontalController4.setRatios([0.5, 0.5]);
+    verticalController.setRatios([0.5, 0.5]);
+    verticalController2.setRatios([0.5, 0.5]);
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/setNumViews.html b/docs/models/ViewsModel/setNumViews.html new file mode 100644 index 0000000000..910d9ae681 --- /dev/null +++ b/docs/models/ViewsModel/setNumViews.html @@ -0,0 +1,128 @@ + + + + + + + + setNumViews method - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
setNumViews
+ +
+ +
+
+
+
+
+ +

setNumViews method +

+ +
+ +void +setNumViews(
  1. int? value
  2. +
) + + + +
+ +
+

Adds or subtracts a number of views to/from the UI

+
+ + + +
+

Implementation

+
void setNumViews(int? value) {
+  if (value == null || value > 8 || value < 1) return;
+  final currentNum = views.length;
+  if (value < currentNum) {
+    views = views.sublist(0, value);
+  } else {
+    for (var i = currentNum; i < value; i++) {
+      views.add(DashboardView.blank);
+    }
+  }
+  // resetSizes();
+  notifyListeners();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/verticalController.html b/docs/models/ViewsModel/verticalController.html new file mode 100644 index 0000000000..10467e97e2 --- /dev/null +++ b/docs/models/ViewsModel/verticalController.html @@ -0,0 +1,115 @@ + + + + + + + + verticalController property - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
verticalController
+ +
+ +
+
+
+
+
+ +

verticalController property +

+ + +
+ + ResizableController + verticalController +
final
+ +
+ +
+

The controller for the resizable column.

+
+ + +
+

Implementation

+
final verticalController = ResizableController();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/verticalController2.html b/docs/models/ViewsModel/verticalController2.html new file mode 100644 index 0000000000..afb5e94d26 --- /dev/null +++ b/docs/models/ViewsModel/verticalController2.html @@ -0,0 +1,115 @@ + + + + + + + + verticalController2 property - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
verticalController2
+ +
+ +
+
+
+
+
+ +

verticalController2 property +

+ + +
+ + ResizableController + verticalController2 +
final
+ +
+ +
+

The vertical controller for screen 2.

+
+ + +
+

Implementation

+
final verticalController2 = ResizableController();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/ViewsModel/views.html b/docs/models/ViewsModel/views.html new file mode 100644 index 0000000000..64ff3c4a97 --- /dev/null +++ b/docs/models/ViewsModel/views.html @@ -0,0 +1,117 @@ + + + + + + + + views property - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
views
+ +
+ +
+
+
+
+
+ +

views property +

+ + +
+ + List<DashboardView> + views +
getter/setter pair
+ +
+ +
+

The current views on the screen.

+
+ + +
+

Implementation

+
List<DashboardView> views = [
+  DashboardView.cameraViews[0],
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/gamepadDelay-constant.html b/docs/models/gamepadDelay-constant.html new file mode 100644 index 0000000000..5d9e9a144f --- /dev/null +++ b/docs/models/gamepadDelay-constant.html @@ -0,0 +1,113 @@ + + + + + + + + gamepadDelay constant - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gamepadDelay
+ +
+ +
+
+
+
+
+ +

gamepadDelay top-level constant + +

+ +
+ + Duration + const gamepadDelay + + +
+ +
+

How often to check the gamepad for new button presses.

+
+ + +
+

Implementation

+
const gamepadDelay = Duration(milliseconds: 5);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/maxLogCount-constant.html b/docs/models/maxLogCount-constant.html new file mode 100644 index 0000000000..0cd4704ce9 --- /dev/null +++ b/docs/models/maxLogCount-constant.html @@ -0,0 +1,113 @@ + + + + + + + + maxLogCount constant - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
maxLogCount
+ +
+ +
+
+
+
+
+ +

maxLogCount top-level constant + +

+ +
+ + int + const maxLogCount + + +
+ +
+

The maximum amount of logs (to prevent consuming too much memory).

+
+ + +
+

Implementation

+
const maxLogCount = 1000;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/models/models-library-sidebar.html b/docs/models/models-library-sidebar.html new file mode 100644 index 0000000000..44f457ea0c --- /dev/null +++ b/docs/models/models-library-sidebar.html @@ -0,0 +1,70 @@ +
    +
  1. Classes
  2. +
  3. AddressBuilder
  4. +
  5. ArmControls
  6. +
  7. ArmSettingsBuilder
  8. +
  9. AutonomyCommandBuilder
  10. +
  11. AutonomyModel
  12. +
  13. CameraControls
  14. +
  15. CameraDetailsBuilder
  16. +
  17. ColorBuilder
  18. +
  19. Controller
  20. +
  21. DashboardSettingsBuilder
  22. +
  23. DriveControls
  24. +
  25. EasterEggsSettingsBuilder
  26. +
  27. ElectricalModel
  28. +
  29. GpsBuilder
  30. +
  31. GridOffset
  32. +
  33. HomeModel
  34. +
  35. LogsModel
  36. +
  37. LogsOptionsViewModel
  38. +
  39. LogsViewModel
  40. +
  41. MessagesModel
  42. +
  43. MissionTimer
  44. +
  45. Model
  46. +
  47. Models
  48. +
  49. ModernDriveControls
  50. +
  51. NetworkSettingsBuilder
  52. +
  53. NoControls
  54. +
  55. NumberBuilder
  56. +
  57. PositionModel
  58. +
  59. Rover
  60. +
  61. RoverControls
  62. +
  63. RoverMetrics
  64. +
  65. ScienceAnalysis
  66. +
  67. ScienceCommandBuilder
  68. +
  69. ScienceControls
  70. +
  71. ScienceModel
  72. +
  73. ScienceSettingsBuilder
  74. +
  75. ScienceTestBuilder
  76. +
  77. SerialModel
  78. +
  79. SettingsBuilder
  80. +
  81. SettingsModel
  82. +
  83. SocketBuilder
  84. +
  85. Sockets
  86. +
  87. TextBuilder
  88. +
  89. ThrottleBuilder
  90. +
  91. TimerBuilder
  92. +
  93. ValueBuilder
  94. +
  95. VideoModel
  96. +
  97. ViewsModel
  98. + +
  99. Enums
  100. +
  101. AutonomyCell
  102. +
  103. GpsType
  104. + + + +
  105. Constants
  106. +
  107. gamepadDelay
  108. +
  109. maxLogCount
  110. + +
  111. Properties
  112. +
  113. models
  114. + + + +
  115. Exceptions
  116. +
  117. RequestNotAccepted
  118. + +
diff --git a/docs/models/models-library.html b/docs/models/models-library.html new file mode 100644 index 0000000000..5c5a3b49fb --- /dev/null +++ b/docs/models/models-library.html @@ -0,0 +1,598 @@ + + + + + + + + models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
models
+ +
+ +
+
+
+
+ +
+ + + +

+ models + library + + +

+
+ + +
+

A library that manages and controls the state of the app.

+

This library is comprised of classes that have methods to allow simple control over the app's +state, which can have side effects as well. For example, adjusting the speed of the rover will +change the value of the on-screen speedometer while also commanding the rover to move faster.

+

This library may depend on the data and services library.

+
+ + +
+

Classes

+
+
+ AddressBuilder + +
+
+ A specialized TextBuilder to handle IP addresses. +
+ +
+ ArmControls + +
+
+ A RoverControls that controls the arm. +
+ +
+ ArmSettingsBuilder + +
+
+ A ValueBuilder representing an ArmSettings. +
+ +
+ AutonomyCommandBuilder + +
+
+ A ValueBuilder to modify and send an AutonomyCommand. +
+ +
+ AutonomyModel + +
+
+ A view model for the autonomy page to render a grid map. +
+ +
+ CameraControls + +
+
+ A RoverControls for the rover's front and rear cameras. +
+ +
+ CameraDetailsBuilder + +
+
+ A ValueBuilder view model to modify a CameraDetails. +
+ +
+ ColorBuilder + +
+
+ A view model to modify a color and send it to the rover. +
+ +
+ Controller + +
+
+ Uses the gamepad to control the rover. +
+ +
+ DashboardSettingsBuilder + +
+
+ A ValueBuilder that modifies a DashboardSettings. +
+ +
+ DriveControls + +
+
+ The skid-steer drive controls. +
+ +
+ EasterEggsSettingsBuilder + +
+
+ A ValueBuilder that modifies an EasterEggsSettings. +
+ +
+ ElectricalModel + +
+
+ The view model for the electrical analysis page. +
+ +
+ GpsBuilder + +
+
+ A ValueBuilder to modify a GpsCoordinates object in either GpsType. +
+ +
+ GridOffset + +
+
+ Like an Offset from Flutter, but using integers instead of doubles. +
+ +
+ HomeModel + +
+
+ The view model for the main page. +
+ +
+ LogsModel + +
+
+ A data model that collects and stores logs from the rover. +
+ +
+ LogsOptionsViewModel + +
+
+ A view model to track options for the logs page. +
+ +
+ LogsViewModel + +
+
+ A view model for the logs page to control which logs are shown. +
+ +
+ MessagesModel + +
+
+ A mixin that delegates WrappedMessages to a handler via registerHandler. +
+ +
+ MissionTimer + +
+
+ A timer to keep track of progress in a mission. +
+ +
+ Model + +
+
+ A data model that handles data from services. +
+ +
+ Models + +
+
+ A wrapper model around all other data models used by the app. +
+ +
+ ModernDriveControls + +
+
+ Modern drive controls, similar to most racing video games. +
+ +
+ NetworkSettingsBuilder + +
+
+ A ValueBuilder representing a NetworkSettings. +
+ +
+ NoControls + +
+
+ A RoverControls that does nothing. +
+ +
+ NumberBuilder<T extends num> + +
+
+ A specialized TextBuilder to handle numeric inputs. +
+ +
+ PositionModel + +
+
+ The view model for the electrical analysis page. +
+ +
+ Rover + +
+
+ The model to control the entire rover. +
+ +
+ RoverControls + +
+
+ A class that controls one subsystem based on the gamepad state. +
+ +
+ RoverMetrics + +
+
+ A data model that listens for updated data and provides Metrics to the UI. +
+ +
+ ScienceAnalysis + +
+
+ Analysis for one sample and sensor. +
+ +
+ ScienceCommandBuilder + +
+
+ A ValueBuilder to modify and send an AutonomyCommand. +
+ +
+ ScienceControls + +
+
+ A RoverControls that controls the science chamber. +
+ +
+ ScienceModel + +
+
+ The view model for the science analysis page. +
+ +
+ ScienceSettingsBuilder + +
+
+ A ValueBuilder that modifies a ScienceSettings. +
+ +
+ ScienceTestBuilder + +
+
+ A view model to allow the user to override values supplied to ScienceTests. +
+ +
+ SerialModel + +
+
+ A data model to manage all connected serial devices. +
+ +
+ SettingsBuilder + +
+
+ A ValueBuilder representing an ArmSettings. +
+ +
+ SettingsModel + +
+
+ Manages the user's settings. +
+ +
+ SocketBuilder + +
+
+ A ValueBuilder that modifies a SocketInfo. +
+ +
+ Sockets + +
+
+ Coordinates all the sockets to point to the right RoverType. +
+ +
+ TextBuilder<T> + +
+
+ A ValueBuilder backed by a Flutter TextField. +
+ +
+ ThrottleBuilder + +
+
+ A view model to allow the user to edit a throttle value and send it to the rover. +
+ +
+ TimerBuilder + +
+
+ Starts a MissionTimer based on user input. +
+ +
+ ValueBuilder<T> + +
+
+ A view model to modify a value. +
+ +
+ VideoModel + +
+
+ A data model to stream video from the rover. +
+ +
+ ViewsModel + +
+
+ A data model for keeping track of the on-screen views. +
+ +
+
+ +
+

Enums

+
+
+ AutonomyCell + +
+
+ Represents the state of a cell on the autonomy map. +
+ +
+ GpsType + +
+
+ The format to enter a GPS coordinate. +
+ +
+
+ + + + +
+

Constants

+
+
+ gamepadDelay + → const Duration + + +
+
+ How often to check the gamepad for new button presses. + + +
+ +
+ maxLogCount + → const int + + +
+
+ The maximum amount of logs (to prevent consuming too much memory). + + +
+ +
+
+ +
+

Properties

+
+
+ models + Models + + +
+
+ The data model representing the entire backend of the dashboard. +
final
+ +
+ +
+
+ + + +
+

Exceptions / Errors

+
+
+ RequestNotAccepted + +
+
+ An exception thrown when the rover does not respond to a handshake. +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/models/models.html b/docs/models/models.html new file mode 100644 index 0000000000..15b22251f7 --- /dev/null +++ b/docs/models/models.html @@ -0,0 +1,116 @@ + + + + + + + + models property - models library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
models
+ +
+ +
+
+
+
+
+ +

models top-level property + +

+ +
+ + Models + models +
final
+ +
+ +
+

The data model representing the entire backend of the dashboard.

+

This constant is here to provide easy access to the backend. But simply using this variable +will not cause the UI to update. For that, you must place it in a ChangeNotifierProvider +and use Consumer when needed.

+
+ + +
+

Implementation

+
final models = Models();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPage-class-sidebar.html b/docs/pages/ArmPage-class-sidebar.html new file mode 100644 index 0000000000..9fd48b1c21 --- /dev/null +++ b/docs/pages/ArmPage-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. ArmPage
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. index
  10. +
  11. key
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/pages/ArmPage-class.html b/docs/pages/ArmPage-class.html new file mode 100644 index 0000000000..139675f519 --- /dev/null +++ b/docs/pages/ArmPage-class.html @@ -0,0 +1,411 @@ + + + + + + + + ArmPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmPage
+ +
+ +
+
+
+
+
+ +

ArmPage class + +

+ + +
+

The view model for the arm inverse kinematics analysis page.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ArmPage({required int index}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ The index of this view. +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, ArmModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + → ArmModel + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<ArmModel> oldWidget, ArmModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPage/ArmPage.html b/docs/pages/ArmPage/ArmPage.html new file mode 100644 index 0000000000..55c7045a41 --- /dev/null +++ b/docs/pages/ArmPage/ArmPage.html @@ -0,0 +1,112 @@ + + + + + + + + ArmPage constructor - ArmPage - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmPage
+ +
+ +
+
+
+
+
+ +

ArmPage constructor +

+ +
+ const + ArmPage({
  1. required int index,
  2. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const ArmPage({required this.index});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPage/build.html b/docs/pages/ArmPage/build.html new file mode 100644 index 0000000000..1c0e39e7f5 --- /dev/null +++ b/docs/pages/ArmPage/build.html @@ -0,0 +1,206 @@ + + + + + + + + build method - ArmPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. ArmModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, ArmModel model) => Column(
+  crossAxisAlignment: CrossAxisAlignment.stretch,
+  children: [
+    Row(  // The header at the top
+      children: [
+        const SizedBox(width: 8),
+        Text("Arm Graphs", style: context.textTheme.headlineMedium),
+        const SizedBox(width: 12),
+        const Spacer(),
+        const Text("Laser Light"),
+        const SizedBox(width: 5),
+        Switch(
+          activeColor: Colors.red,
+          value: model.desiredLaserState,
+          onChanged: (value) => model.setLaser(laser: value),
+        ),
+        const SizedBox(width: 5),
+        if (model.desiredLaserState == model.gripper.laserState.toBool())
+          const Tooltip(
+            message: "The laser has been updated",
+            child: Icon(Icons.check, color: Colors.green),
+          )
+        else
+          const Tooltip(
+            message: "Waiting for the laser to respond",
+            child: Icon(Icons.sync),
+          ),
+        const SizedBox(width: 8),
+        ViewsSelector(index: index),
+      ],
+    ),
+    const Text(
+      "Side View (click for IK)",
+      textAlign: TextAlign.center,
+      style: TextStyle(
+        color: Colors.blue,
+        fontSize: 20,
+        fontWeight: FontWeight.bold,
+        letterSpacing: 1,
+      ),
+    ),
+    const SizedBox(height: 10),
+    Expanded(
+      child: Card(
+        margin: const EdgeInsets.all(16),
+        elevation: 16,
+        color: context.colorScheme.surfaceContainerHighest,
+        child: MouseRegion(
+          onHover: model.onHover,
+          onExit: model.cancelIK,
+          cursor: SystemMouseCursors.precise,
+          child: GestureDetector(
+            onTap: model.sendIK,
+            child: CustomPaint(
+              painter: ArmPainterSide(model, context.colorScheme.onSurface),
+            ),
+          ),
+        ),
+      ),
+    ),
+    const SizedBox(height: 8),
+    const SizedBox(height: 8),
+    const Text(
+      "Top View",
+      textAlign: TextAlign.center,
+      style: TextStyle(
+        color: Colors.blue,
+        fontSize: 20,
+        fontWeight: FontWeight.bold,
+        letterSpacing: 1,
+      ),
+    ),
+    Expanded(
+      child: Card(
+        margin: const EdgeInsets.all(16),
+        elevation: 16,
+        color: context.colorScheme.surfaceContainerHighest,
+        child: CustomPaint(
+          painter: ArmPainterTop(swivelAngle: model.arm.base.angle),
+        ),
+      ),
+    ),
+  ],
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPage/createModel.html b/docs/pages/ArmPage/createModel.html new file mode 100644 index 0000000000..30e8198154 --- /dev/null +++ b/docs/pages/ArmPage/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - ArmPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ArmModel +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+ArmModel createModel() => ArmModel();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPage/index.html b/docs/pages/ArmPage/index.html new file mode 100644 index 0000000000..07a25d2fe5 --- /dev/null +++ b/docs/pages/ArmPage/index.html @@ -0,0 +1,115 @@ + + + + + + + + index property - ArmPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+ +

index property +

+ + +
+ + int + index +
final
+ +
+ +
+

The index of this view.

+
+ + +
+

Implementation

+
final int index;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide-class-sidebar.html b/docs/pages/ArmPainterSide-class-sidebar.html new file mode 100644 index 0000000000..c58343c3c4 --- /dev/null +++ b/docs/pages/ArmPainterSide-class-sidebar.html @@ -0,0 +1,46 @@ +
    + +
  1. Constructors
  2. +
  3. ArmPainterSide
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. model
  10. +
  11. radiusColor
  12. +
  13. runtimeType
  14. +
  15. screen
  16. +
  17. semanticsBuilder
  18. + +
  19. Methods
  20. +
  21. addListener
  22. +
  23. getArmCoordinates
  24. +
  25. getRelativeOffset
  26. +
  27. hitTest
  28. +
  29. ik
  30. +
  31. noSuchMethod
  32. +
  33. paint
  34. +
  35. paintArm
  36. +
  37. removeListener
  38. +
  39. shouldRebuildSemantics
  40. +
  41. shouldRepaint
  42. +
  43. toAbsolute
  44. +
  45. toString
  46. + +
  47. Operators
  48. +
  49. operator ==
  50. + + + + + + +
  51. Constants
  52. +
  53. elbowLength
  54. +
  55. gripperLength
  56. +
  57. shoulderLength
  58. +
  59. totalArmLength
  60. +
diff --git a/docs/pages/ArmPainterSide-class.html b/docs/pages/ArmPainterSide-class.html new file mode 100644 index 0000000000..50667f61df --- /dev/null +++ b/docs/pages/ArmPainterSide-class.html @@ -0,0 +1,485 @@ + + + + + + + + ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmPainterSide
+ +
+ +
+
+
+
+
+ +

ArmPainterSide class + +

+ + +
+

A widget to show the profile view of the arm.

+

This viewpoint shits as the arm swivels, so that it is always looking at the shoulder, +elbow, and wrist head-on. To visualize the swivel, see ArmPainterTop.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ArmPainterSide(ArmModel model, Color radiusColor) +
+
+ Constructor for the ArmPainterSide, takes in 3 angles +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ model + ↔ ArmModel + + +
+
+ The view model to pull data from. +
getter/setter pair
+ +
+ +
+ radiusColor + Color + + +
+
+ Color to paint the radius in +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ screen + ↔ double + + +
+
+ The smaller screen dimension. +
getter/setter pair
+ +
+ +
+ semanticsBuilder + SemanticsBuilderCallback? + + +
+
+ Returns a function that builds semantic information for the picture drawn +by this painter. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be notified when it is time to repaint. +
inherited
+ +
+ +
+ getArmCoordinates(ArmAngles angles, Size size) + → ArmCoordinates + + + +
+
+ Performs forward kinematics to get the coordinates of each joint from the angles. + + +
+ +
+ getRelativeOffset(Size size, Offset absolute) + Offset + + + +
+
+ Converts an absolute offset within this widget to a relative offset about the shoulder joint. + + +
+ +
+ hitTest(Offset position) + → bool? + + + +
+
+ Called whenever a hit test is being performed on an object that is using +this custom paint delegate. +
inherited
+ +
+ +
+ ik(Size size, Offset relative) + → ArmAngles? + + + +
+
+ Performs inverse kinematics to get the angles of the arm from the desired position. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ paint(Canvas canvas, Size size) + → void + + + +
+
+ Called whenever the object needs to paint. The given Canvas has its +coordinate space configured such that the origin is at the top left of the +box. The area of the box is the size of the size argument. +
override
+ +
+ +
+ paintArm(Canvas canvas, Size size, ArmCoordinates coordinates, {double opacity = 1}) + → void + + + +
+
+ Paints the arm given its joint positions. + + +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that the +object notifies when it is time to repaint. +
inherited
+ +
+ +
+ shouldRebuildSemantics(covariant CustomPainter oldDelegate) + → bool + + + +
+
+ Called whenever a new instance of the custom painter delegate class is +provided to the RenderCustomPaint object, or any time that a new +CustomPaint object is created with a new instance of the custom painter +delegate class (which amounts to the same thing, because the latter is +implemented in terms of the former). +
inherited
+ +
+ +
+ shouldRepaint(covariant CustomPainter oldDelegate) + → bool + + + +
+
+ Called whenever a new instance of the custom painter delegate class is +provided to the RenderCustomPaint object, or any time that a new +CustomPaint object is created with a new instance of the custom painter +delegate class (which amounts to the same thing, because the latter is +implemented in terms of the former). +
override
+ +
+ +
+ toAbsolute(double relative) + → double + + + +
+
+ Converts from -1, 1 relative coordinates to screen coordinates. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ elbowLength + → const double + + +
+
+ The relative length of the elbow-wrist segment. + + +
+ +
+ gripperLength + → const double + + +
+
+ The relative length of the gripper. + + +
+ +
+ shoulderLength + → const double + + +
+
+ The relative length of the shoulder-elbow segment. + + +
+ +
+ totalArmLength + → const double + + +
+
+ The total relative length of the arm. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/ArmPainterSide.html b/docs/pages/ArmPainterSide/ArmPainterSide.html new file mode 100644 index 0000000000..d2d7d80ebd --- /dev/null +++ b/docs/pages/ArmPainterSide/ArmPainterSide.html @@ -0,0 +1,113 @@ + + + + + + + + ArmPainterSide constructor - ArmPainterSide - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmPainterSide
+ +
+ +
+
+
+
+
+ +

ArmPainterSide constructor +

+ +
+ + ArmPainterSide(
  1. ArmModel model,
  2. +
  3. Color radiusColor
  4. +
) +
+ +
+

Constructor for the ArmPainterSide, takes in 3 angles

+
+ + + +
+

Implementation

+
ArmPainterSide(this.model, this.radiusColor);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/elbowLength-constant.html b/docs/pages/ArmPainterSide/elbowLength-constant.html new file mode 100644 index 0000000000..a751715e15 --- /dev/null +++ b/docs/pages/ArmPainterSide/elbowLength-constant.html @@ -0,0 +1,115 @@ + + + + + + + + elbowLength constant - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
elbowLength
+ +
+ +
+
+
+
+
+ +

elbowLength constant +

+ + +
+ + double + const elbowLength + + +
+ +
+

The relative length of the elbow-wrist segment.

+
+ + +
+

Implementation

+
static const elbowLength = 440/530;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/getArmCoordinates.html b/docs/pages/ArmPainterSide/getArmCoordinates.html new file mode 100644 index 0000000000..07721fa49e --- /dev/null +++ b/docs/pages/ArmPainterSide/getArmCoordinates.html @@ -0,0 +1,141 @@ + + + + + + + + getArmCoordinates method - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getArmCoordinates
+ +
+ +
+
+
+
+
+ +

getArmCoordinates method +

+ +
+ +ArmCoordinates +getArmCoordinates(
  1. ArmAngles angles,
  2. +
  3. Size size
  4. +
) + + + +
+ +
+

Performs forward kinematics to get the coordinates of each joint from the angles.

+
+ + + +
+

Implementation

+
ArmCoordinates getArmCoordinates(ArmAngles angles, Size size) {
+  // See: https://www.desmos.com/calculator/i8grld5pdu
+  const shoulderX = 0.0;
+  const shoulderY = 0.0;
+  final a2 = angles.shoulder - pi + angles.elbow;
+  final a3 = a2 + angles.lift;
+  final length = min(size.width / 4, size.height / 2);
+  final elbowX = length * shoulderLength * cos(angles.shoulder);
+  final elbowY = length * shoulderLength * sin(angles.shoulder);
+  final wristX = length * elbowLength * cos(a2) + elbowX;
+  final wristY = length * elbowLength * sin(a2) + elbowY;
+  final gripperX = length * gripperLength * cos(a3) + wristX;
+  final gripperY = length * gripperLength * sin(a3) + wristY;
+
+  final shoulderJoint = Offset(toAbsolute(shoulderX) + size.width / 2, -toAbsolute(shoulderY) + size.height);
+  final elbowJoint = Offset(toAbsolute(elbowX) + size.width / 2, -toAbsolute(elbowY) + size.height);
+  final wristJoint = Offset(toAbsolute(wristX) + size.width / 2, -toAbsolute(wristY) + size.height);
+  final gripLocation = Offset(toAbsolute(gripperX) + size.width / 2, -toAbsolute(gripperY) + size.height);
+  return (
+    shoulder: shoulderJoint,
+    elbow: elbowJoint,
+    wrist: wristJoint,
+    fingers: gripLocation,
+  );
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/getRelativeOffset.html b/docs/pages/ArmPainterSide/getRelativeOffset.html new file mode 100644 index 0000000000..d0271dff4c --- /dev/null +++ b/docs/pages/ArmPainterSide/getRelativeOffset.html @@ -0,0 +1,123 @@ + + + + + + + + getRelativeOffset method - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getRelativeOffset
+ +
+ +
+
+
+
+
+ +

getRelativeOffset method +

+ +
+ +Offset +getRelativeOffset(
  1. Size size,
  2. +
  3. Offset absolute
  4. +
) + + + +
+ +
+

Converts an absolute offset within this widget to a relative offset about the shoulder joint.

+
+ + + +
+

Implementation

+
Offset getRelativeOffset(Size size, Offset absolute) {
+  final length = min(size.width / 4, size.height / 2);
+  final radius = length * totalArmLength;
+  final x = (absolute.dx - size.width / 2 - gripperLength) / radius;
+  final y = (size.height - absolute.dy) / radius;
+  return Offset(x, y);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/gripperLength-constant.html b/docs/pages/ArmPainterSide/gripperLength-constant.html new file mode 100644 index 0000000000..ce87766708 --- /dev/null +++ b/docs/pages/ArmPainterSide/gripperLength-constant.html @@ -0,0 +1,115 @@ + + + + + + + + gripperLength constant - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gripperLength
+ +
+ +
+
+
+
+
+ +

gripperLength constant +

+ + +
+ + double + const gripperLength + + +
+ +
+

The relative length of the gripper.

+
+ + +
+

Implementation

+
static const gripperLength = 310/530;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/ik.html b/docs/pages/ArmPainterSide/ik.html new file mode 100644 index 0000000000..2b01f004b1 --- /dev/null +++ b/docs/pages/ArmPainterSide/ik.html @@ -0,0 +1,135 @@ + + + + + + + + ik method - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ik
+ +
+ +
+
+
+
+
+ +

ik method +

+ +
+ +ArmAngles? +ik(
  1. Size size,
  2. +
  3. Offset relative
  4. +
) + + + +
+ +
+

Performs inverse kinematics to get the angles of the arm from the desired position.

+
+ + + +
+

Implementation

+
ArmAngles? ik(Size size, Offset relative) {
+  const a = shoulderLength / totalArmLength;
+  const b = elbowLength / totalArmLength;
+  final c = sqrt(pow(relative.dy, 2) + pow(relative.dx, 2));
+  final b1Numerator = pow(a, 2) - pow(b, 2) + pow(c, 2);
+  final b1Denominator = 2 * a * c;
+  final b1 = acos(b1Numerator / b1Denominator);
+  final b2 = atan2(relative.dy, relative.dx);
+  final shoulder = b1 + b2;
+  final cNumerator = pow(a, 2) + pow(b, 2) - pow(c, 2);
+  const cDenominator = 2 * a * b;
+  final elbow = acos(cNumerator / cDenominator);
+  if (shoulder.isNaN || elbow.isNaN) return null;
+  return (
+    shoulder: shoulder,
+    elbow: elbow,
+    lift: -1 * (shoulder + elbow) + pi,
+  );
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/model.html b/docs/pages/ArmPainterSide/model.html new file mode 100644 index 0000000000..67877da237 --- /dev/null +++ b/docs/pages/ArmPainterSide/model.html @@ -0,0 +1,115 @@ + + + + + + + + model property - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
model
+ +
+ +
+
+
+
+
+ +

model property +

+ + +
+ + ArmModel + model +
getter/setter pair
+ +
+ +
+

The view model to pull data from.

+
+ + +
+

Implementation

+
ArmModel model;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/paint.html b/docs/pages/ArmPainterSide/paint.html new file mode 100644 index 0000000000..3a5a73cbba --- /dev/null +++ b/docs/pages/ArmPainterSide/paint.html @@ -0,0 +1,180 @@ + + + + + + + + paint method - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
paint
+ +
+ +
+
+
+
+
+ +

paint method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +paint(
  1. Canvas canvas,
  2. +
  3. Size size
  4. +
) + +
override
+ +
+ +
+

Called whenever the object needs to paint. The given Canvas has its +coordinate space configured such that the origin is at the top left of the +box. The area of the box is the size of the size argument.

+

Paint operations should remain inside the given area. Graphical +operations outside the bounds may be silently ignored, clipped, or not +clipped. It may sometimes be difficult to guarantee that a certain +operation is inside the bounds (e.g., drawing a rectangle whose size is +determined by user inputs). In that case, consider calling +Canvas.clipRect at the beginning of paint so everything that follows +will be guaranteed to only draw within the clipped area.

+

Implementations should be wary of correctly pairing any calls to +Canvas.save/Canvas.saveLayer and Canvas.restore, otherwise all +subsequent painting on this canvas may be affected, with potentially +hilarious but confusing results.

+

To paint text on a Canvas, use a TextPainter.

+

To paint an image on a Canvas:

+
    +
  1. +

    Obtain an ImageStream, for example by calling ImageProvider.resolve +on an AssetImage or NetworkImage object.

    +
  2. +
  3. +

    Whenever the ImageStream's underlying ImageInfo object changes +(see ImageStream.addListener), create a new instance of your custom +paint delegate, giving it the new ImageInfo object.

    +
  4. +
  5. +

    In your delegate's paint method, call the Canvas.drawImage, +Canvas.drawImageRect, or Canvas.drawImageNine methods to paint the +ImageInfo.image object, applying the ImageInfo.scale value to +obtain the correct rendering size.

    +
  6. +
+
+ + + +
+

Implementation

+
@override
+void paint(Canvas canvas, Size size) {
+  screen = min(size.width, size.height);
+  final coordinates = getArmCoordinates(model.angles, size);
+  final length = min(size.width / 4, size.height / 2);
+  paintArm(canvas, size, coordinates);
+  final mousePosition = model.mousePosition;
+  if (mousePosition != null) {
+    final relativePosition = getRelativeOffset(size, mousePosition);
+    final ikAngles = ik(size, relativePosition);
+    model.ikAngles = ikAngles;
+    if (ikAngles != null) {
+      final ikCoordinates = getArmCoordinates(ikAngles, size);
+      paintArm(canvas, size, ikCoordinates, opacity: 0.5);
+    }
+    final radiusPaint = Paint()
+      ..color = radiusColor
+      ..style = PaintingStyle.stroke
+      ..strokeWidth = 2;
+    final radius1 = length * (shoulderLength + elbowLength);
+    final radius2 = length * (shoulderLength - elbowLength);
+    final rect1 = Rect.fromCircle(center: coordinates.shoulder, radius: radius1);
+    final rect2 = Rect.fromCircle(center: coordinates.shoulder, radius: radius2);
+    canvas.drawArc(rect1, 0, -pi, false, radiusPaint);
+    canvas.drawArc(rect2, 0, -pi, false, radiusPaint);
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/paintArm.html b/docs/pages/ArmPainterSide/paintArm.html new file mode 100644 index 0000000000..41b731f59d --- /dev/null +++ b/docs/pages/ArmPainterSide/paintArm.html @@ -0,0 +1,154 @@ + + + + + + + + paintArm method - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
paintArm
+ +
+ +
+
+
+
+
+ +

paintArm method +

+ +
+ +void +paintArm(
  1. Canvas canvas,
  2. +
  3. Size size,
  4. +
  5. ArmCoordinates coordinates, {
  6. +
  7. double opacity = 1,
  8. +
}) + + + +
+ +
+

Paints the arm given its joint positions.

+
+ + + +
+

Implementation

+
void paintArm(Canvas canvas, Size size, ArmCoordinates coordinates, {double opacity = 1}) {
+  final points = [
+    coordinates.shoulder,
+    coordinates.elbow,
+    coordinates.wrist,
+    coordinates.fingers,
+  ];
+
+  final lineColors = [
+    Colors.red,
+    Colors.green,
+    Colors.blue,
+  ];
+
+  final firstCirclePaint = Paint()
+    ..color = lineColors[0].withOpacity(opacity)
+    ..style = PaintingStyle.fill;
+
+  canvas.drawCircle(points[0], screen / 40, firstCirclePaint);
+
+  // Draw lines based off joint position
+  for (var i = 0; i < points.length - 1; i++) {
+    final paint = Paint()
+      ..color = lineColors[i].withOpacity(opacity)
+      ..strokeWidth = screen / 50;
+    canvas.drawLine(points[i], points[i + 1], paint);
+  }
+
+  // Draw circles on each joint
+  for (var i = 0; i < points.length - 1; i++) {
+    final circlePaint = Paint()
+      ..color = lineColors[i].withOpacity(opacity)
+      ..style = PaintingStyle.fill;
+    canvas.drawCircle(points[i + 1], screen / 50, circlePaint);
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/radiusColor.html b/docs/pages/ArmPainterSide/radiusColor.html new file mode 100644 index 0000000000..a2123ba987 --- /dev/null +++ b/docs/pages/ArmPainterSide/radiusColor.html @@ -0,0 +1,115 @@ + + + + + + + + radiusColor property - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
radiusColor
+ +
+ +
+
+
+
+
+ +

radiusColor property +

+ + +
+ + Color + radiusColor +
getter/setter pair
+ +
+ +
+

Color to paint the radius in

+
+ + +
+

Implementation

+
Color radiusColor;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/screen.html b/docs/pages/ArmPainterSide/screen.html new file mode 100644 index 0000000000..7d448fd069 --- /dev/null +++ b/docs/pages/ArmPainterSide/screen.html @@ -0,0 +1,115 @@ + + + + + + + + screen property - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
screen
+ +
+ +
+
+
+
+
+ +

screen property +

+ + +
+ + double + screen +
getter/setter pair
+ +
+ +
+

The smaller screen dimension.

+
+ + +
+

Implementation

+
late double screen;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/shouldRepaint.html b/docs/pages/ArmPainterSide/shouldRepaint.html new file mode 100644 index 0000000000..617fb21e70 --- /dev/null +++ b/docs/pages/ArmPainterSide/shouldRepaint.html @@ -0,0 +1,141 @@ + + + + + + + + shouldRepaint method - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
shouldRepaint
+ +
+ +
+
+
+
+
+ +

shouldRepaint method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+bool +shouldRepaint(
  1. covariant CustomPainter oldDelegate
  2. +
) + +
override
+ +
+ +
+

Called whenever a new instance of the custom painter delegate class is +provided to the RenderCustomPaint object, or any time that a new +CustomPaint object is created with a new instance of the custom painter +delegate class (which amounts to the same thing, because the latter is +implemented in terms of the former).

+

If the new instance represents different information than the old +instance, then the method should return true, otherwise it should return +false.

+

If the method returns false, then the paint call might be optimized +away.

+

It's possible that the paint method will get called even if +shouldRepaint returns false (e.g. if an ancestor or descendant needed to +be repainted). It's also possible that the paint method will get called +without shouldRepaint being called at all (e.g. if the box changes +size).

+

If a custom delegate has a particularly expensive paint function such that +repaints should be avoided as much as possible, a RepaintBoundary or +RenderRepaintBoundary (or other render object with +RenderObject.isRepaintBoundary set to true) might be helpful.

+

The oldDelegate argument will never be null.

+
+ + + +
+

Implementation

+
@override
+bool shouldRepaint(covariant CustomPainter oldDelegate) => true;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/shoulderLength-constant.html b/docs/pages/ArmPainterSide/shoulderLength-constant.html new file mode 100644 index 0000000000..504d4380f6 --- /dev/null +++ b/docs/pages/ArmPainterSide/shoulderLength-constant.html @@ -0,0 +1,115 @@ + + + + + + + + shoulderLength constant - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
shoulderLength
+ +
+ +
+
+
+
+
+ +

shoulderLength constant +

+ + +
+ + double + const shoulderLength + + +
+ +
+

The relative length of the shoulder-elbow segment.

+
+ + +
+

Implementation

+
static const shoulderLength = 530/530;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/toAbsolute.html b/docs/pages/ArmPainterSide/toAbsolute.html new file mode 100644 index 0000000000..ba94ded355 --- /dev/null +++ b/docs/pages/ArmPainterSide/toAbsolute.html @@ -0,0 +1,116 @@ + + + + + + + + toAbsolute method - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toAbsolute
+ +
+ +
+
+
+
+
+ +

toAbsolute method +

+ +
+ +double +toAbsolute(
  1. double relative
  2. +
) + + + +
+ +
+

Converts from -1, 1 relative coordinates to screen coordinates.

+
+ + + +
+

Implementation

+
double toAbsolute(double relative) => relative;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterSide/totalArmLength-constant.html b/docs/pages/ArmPainterSide/totalArmLength-constant.html new file mode 100644 index 0000000000..37632a6c51 --- /dev/null +++ b/docs/pages/ArmPainterSide/totalArmLength-constant.html @@ -0,0 +1,115 @@ + + + + + + + + totalArmLength constant - ArmPainterSide class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
totalArmLength
+ +
+ +
+
+
+
+
+ +

totalArmLength constant +

+ + +
+ + double + const totalArmLength + + +
+ +
+

The total relative length of the arm.

+
+ + +
+

Implementation

+
static const totalArmLength = shoulderLength + elbowLength;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterTop-class-sidebar.html b/docs/pages/ArmPainterTop-class-sidebar.html new file mode 100644 index 0000000000..efb6e6bec1 --- /dev/null +++ b/docs/pages/ArmPainterTop-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  1. Constructors
  2. +
  3. ArmPainterTop
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. +
  11. screen
  12. +
  13. semanticsBuilder
  14. +
  15. swivelAngle
  16. + +
  17. Methods
  18. +
  19. addListener
  20. +
  21. getElbow
  22. +
  23. getShoulder
  24. +
  25. hitTest
  26. +
  27. noSuchMethod
  28. +
  29. paint
  30. +
  31. removeListener
  32. +
  33. shouldRebuildSemantics
  34. +
  35. shouldRepaint
  36. +
  37. toAbsolute
  38. +
  39. toString
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/pages/ArmPainterTop-class.html b/docs/pages/ArmPainterTop-class.html new file mode 100644 index 0000000000..b7f02eda1a --- /dev/null +++ b/docs/pages/ArmPainterTop-class.html @@ -0,0 +1,394 @@ + + + + + + + + ArmPainterTop class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmPainterTop
+ +
+ +
+
+
+
+
+ +

ArmPainterTop class + +

+ + +
+

A widget to paint the top-down view of the arm.

+

This is simple, just shows a line pointing in the same direction as the arm's base. For a +more complex side view, see ArmPainterSide.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ArmPainterTop({required double swivelAngle}) +
+
+ Paints a top-down view of the arm. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ screen + ↔ double + + +
+
+ The size of the smaller dimension of the screen. +
getter/setter pair
+ +
+ +
+ semanticsBuilder + SemanticsBuilderCallback? + + +
+
+ Returns a function that builds semantic information for the picture drawn +by this painter. +
no setterinherited
+ +
+ +
+ swivelAngle + → double + + +
+
+ The swivel angle of the arm. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be notified when it is time to repaint. +
inherited
+ +
+ +
+ getElbow(Size size) + Offset + + + +
+
+ Gets the location of the elbow joint. + + +
+ +
+ getShoulder(Size size) + Offset + + + +
+
+ Gets the location of the shoulder joint. + + +
+ +
+ hitTest(Offset position) + → bool? + + + +
+
+ Called whenever a hit test is being performed on an object that is using +this custom paint delegate. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ paint(Canvas canvas, Size size) + → void + + + +
+
+ Called whenever the object needs to paint. The given Canvas has its +coordinate space configured such that the origin is at the top left of the +box. The area of the box is the size of the size argument. +
override
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that the +object notifies when it is time to repaint. +
inherited
+ +
+ +
+ shouldRebuildSemantics(covariant CustomPainter oldDelegate) + → bool + + + +
+
+ Called whenever a new instance of the custom painter delegate class is +provided to the RenderCustomPaint object, or any time that a new +CustomPaint object is created with a new instance of the custom painter +delegate class (which amounts to the same thing, because the latter is +implemented in terms of the former). +
inherited
+ +
+ +
+ shouldRepaint(covariant CustomPainter oldDelegate) + → bool + + + +
+
+ Called whenever a new instance of the custom painter delegate class is +provided to the RenderCustomPaint object, or any time that a new +CustomPaint object is created with a new instance of the custom painter +delegate class (which amounts to the same thing, because the latter is +implemented in terms of the former). +
override
+ +
+ +
+ toAbsolute(double relative) + → double + + + +
+
+ Converts relative coordinates from -1, 1 to screen coordinates. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterTop/ArmPainterTop.html b/docs/pages/ArmPainterTop/ArmPainterTop.html new file mode 100644 index 0000000000..a7baf6adbe --- /dev/null +++ b/docs/pages/ArmPainterTop/ArmPainterTop.html @@ -0,0 +1,112 @@ + + + + + + + + ArmPainterTop constructor - ArmPainterTop - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ArmPainterTop
+ +
+ +
+
+
+
+
+ +

ArmPainterTop constructor +

+ +
+ + ArmPainterTop({
  1. required double swivelAngle,
  2. +
}) +
+ +
+

Paints a top-down view of the arm.

+
+ + + +
+

Implementation

+
ArmPainterTop({required this.swivelAngle});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterTop/getElbow.html b/docs/pages/ArmPainterTop/getElbow.html new file mode 100644 index 0000000000..e0ae71febd --- /dev/null +++ b/docs/pages/ArmPainterTop/getElbow.html @@ -0,0 +1,120 @@ + + + + + + + + getElbow method - ArmPainterTop class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getElbow
+ +
+ +
+
+
+
+
+ +

getElbow method +

+ +
+ +Offset +getElbow(
  1. Size size
  2. +
) + + + +
+ +
+

Gets the location of the elbow joint.

+
+ + + +
+

Implementation

+
Offset getElbow(Size size) {
+  final elbowX = cos(swivelAngle + pi / 2);
+  final elbowY = sin(swivelAngle + pi / 2);
+  return Offset(toAbsolute(elbowX) + size.width / 2, -toAbsolute(elbowY) + size.height / 2);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterTop/getShoulder.html b/docs/pages/ArmPainterTop/getShoulder.html new file mode 100644 index 0000000000..2b70bf8d60 --- /dev/null +++ b/docs/pages/ArmPainterTop/getShoulder.html @@ -0,0 +1,120 @@ + + + + + + + + getShoulder method - ArmPainterTop class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getShoulder
+ +
+ +
+
+
+
+
+ +

getShoulder method +

+ +
+ +Offset +getShoulder(
  1. Size size
  2. +
) + + + +
+ +
+

Gets the location of the shoulder joint.

+
+ + + +
+

Implementation

+
Offset getShoulder(Size size) {
+  const shoulderX = 0.0;
+  const shoulderY = 0.0;
+  return Offset(toAbsolute(shoulderX) + size.width / 2, -toAbsolute(shoulderY) + size.height / 2);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterTop/paint.html b/docs/pages/ArmPainterTop/paint.html new file mode 100644 index 0000000000..9894e0498a --- /dev/null +++ b/docs/pages/ArmPainterTop/paint.html @@ -0,0 +1,166 @@ + + + + + + + + paint method - ArmPainterTop class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
paint
+ +
+ +
+
+
+
+
+ +

paint method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +paint(
  1. Canvas canvas,
  2. +
  3. Size size
  4. +
) + +
override
+ +
+ +
+

Called whenever the object needs to paint. The given Canvas has its +coordinate space configured such that the origin is at the top left of the +box. The area of the box is the size of the size argument.

+

Paint operations should remain inside the given area. Graphical +operations outside the bounds may be silently ignored, clipped, or not +clipped. It may sometimes be difficult to guarantee that a certain +operation is inside the bounds (e.g., drawing a rectangle whose size is +determined by user inputs). In that case, consider calling +Canvas.clipRect at the beginning of paint so everything that follows +will be guaranteed to only draw within the clipped area.

+

Implementations should be wary of correctly pairing any calls to +Canvas.save/Canvas.saveLayer and Canvas.restore, otherwise all +subsequent painting on this canvas may be affected, with potentially +hilarious but confusing results.

+

To paint text on a Canvas, use a TextPainter.

+

To paint an image on a Canvas:

+
    +
  1. +

    Obtain an ImageStream, for example by calling ImageProvider.resolve +on an AssetImage or NetworkImage object.

    +
  2. +
  3. +

    Whenever the ImageStream's underlying ImageInfo object changes +(see ImageStream.addListener), create a new instance of your custom +paint delegate, giving it the new ImageInfo object.

    +
  4. +
  5. +

    In your delegate's paint method, call the Canvas.drawImage, +Canvas.drawImageRect, or Canvas.drawImageNine methods to paint the +ImageInfo.image object, applying the ImageInfo.scale value to +obtain the correct rendering size.

    +
  6. +
+
+ + + +
+

Implementation

+
@override
+void paint(Canvas canvas, Size size) {
+  screen = min(size.width, size.height);
+  final paint = Paint()
+    ..color = Colors.orange
+    ..strokeWidth = screen / 50
+    ..strokeCap = StrokeCap.round;
+
+  final shoulderJoint = getShoulder(size);
+  final elbowJoint = getElbow(size);
+  canvas.drawLine(shoulderJoint, elbowJoint, paint);
+  canvas.drawCircle(shoulderJoint, screen / 40, paint);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterTop/screen.html b/docs/pages/ArmPainterTop/screen.html new file mode 100644 index 0000000000..a7973e3b7c --- /dev/null +++ b/docs/pages/ArmPainterTop/screen.html @@ -0,0 +1,115 @@ + + + + + + + + screen property - ArmPainterTop class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
screen
+ +
+ +
+
+
+
+
+ +

screen property +

+ + +
+ + double + screen +
getter/setter pair
+ +
+ +
+

The size of the smaller dimension of the screen.

+
+ + +
+

Implementation

+
late double screen;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterTop/shouldRepaint.html b/docs/pages/ArmPainterTop/shouldRepaint.html new file mode 100644 index 0000000000..85551ad563 --- /dev/null +++ b/docs/pages/ArmPainterTop/shouldRepaint.html @@ -0,0 +1,141 @@ + + + + + + + + shouldRepaint method - ArmPainterTop class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
shouldRepaint
+ +
+ +
+
+
+
+
+ +

shouldRepaint method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+bool +shouldRepaint(
  1. covariant CustomPainter oldDelegate
  2. +
) + +
override
+ +
+ +
+

Called whenever a new instance of the custom painter delegate class is +provided to the RenderCustomPaint object, or any time that a new +CustomPaint object is created with a new instance of the custom painter +delegate class (which amounts to the same thing, because the latter is +implemented in terms of the former).

+

If the new instance represents different information than the old +instance, then the method should return true, otherwise it should return +false.

+

If the method returns false, then the paint call might be optimized +away.

+

It's possible that the paint method will get called even if +shouldRepaint returns false (e.g. if an ancestor or descendant needed to +be repainted). It's also possible that the paint method will get called +without shouldRepaint being called at all (e.g. if the box changes +size).

+

If a custom delegate has a particularly expensive paint function such that +repaints should be avoided as much as possible, a RepaintBoundary or +RenderRepaintBoundary (or other render object with +RenderObject.isRepaintBoundary set to true) might be helpful.

+

The oldDelegate argument will never be null.

+
+ + + +
+

Implementation

+
@override
+bool shouldRepaint(covariant CustomPainter oldDelegate) => true;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterTop/swivelAngle.html b/docs/pages/ArmPainterTop/swivelAngle.html new file mode 100644 index 0000000000..a7b4d12b44 --- /dev/null +++ b/docs/pages/ArmPainterTop/swivelAngle.html @@ -0,0 +1,115 @@ + + + + + + + + swivelAngle property - ArmPainterTop class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
swivelAngle
+ +
+ +
+
+
+
+
+ +

swivelAngle property +

+ + +
+ + double + swivelAngle +
final
+ +
+ +
+

The swivel angle of the arm.

+
+ + +
+

Implementation

+
final double swivelAngle;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ArmPainterTop/toAbsolute.html b/docs/pages/ArmPainterTop/toAbsolute.html new file mode 100644 index 0000000000..9d85eca3df --- /dev/null +++ b/docs/pages/ArmPainterTop/toAbsolute.html @@ -0,0 +1,116 @@ + + + + + + + + toAbsolute method - ArmPainterTop class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toAbsolute
+ +
+ +
+
+
+
+
+ +

toAbsolute method +

+ +
+ +double +toAbsolute(
  1. double relative
  2. +
) + + + +
+ +
+

Converts relative coordinates from -1, 1 to screen coordinates.

+
+ + + +
+

Implementation

+
double toAbsolute(double relative) => relative / 2 * screen;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ChartsRow-class-sidebar.html b/docs/pages/ChartsRow-class-sidebar.html new file mode 100644 index 0000000000..264987acb9 --- /dev/null +++ b/docs/pages/ChartsRow-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. ChartsRow
  4. + + + +
  5. + Properties +
  6. +
  7. analyses
  8. +
  9. builder
  10. +
  11. hashCode
  12. +
  13. height
  14. +
  15. key
  16. +
  17. runtimeType
  18. +
  19. title
  20. + +
  21. Methods
  22. +
  23. build
  24. +
  25. createElement
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. noSuchMethod
  32. +
  33. toDiagnosticsNode
  34. +
  35. toString
  36. +
  37. toStringDeep
  38. +
  39. toStringShallow
  40. +
  41. toStringShort
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/pages/ChartsRow-class.html b/docs/pages/ChartsRow-class.html new file mode 100644 index 0000000000..e98da3cdcd --- /dev/null +++ b/docs/pages/ChartsRow-class.html @@ -0,0 +1,394 @@ + + + + + + + + ChartsRow class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ChartsRow
+ +
+ +
+
+
+
+
+ +

ChartsRow class + +

+ + +
+

A ScrollingRow of charts, using builder on each ScienceAnalysis in analyses.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ChartsRow({required String title, required List<ScienceAnalysis> analyses, required Widget builder(ScienceAnalysis), double height = 300}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ analyses + → List<ScienceAnalysis> + + +
+
+ The data for these charts. +
final
+ +
+ +
+ builder + Widget Function(ScienceAnalysis) + + +
+
+ The chart to show for each piece of data. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ height + → double + + +
+
+ The height of this row. +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ title + → String + + +
+
+ The title of these charts. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ChartsRow/ChartsRow.html b/docs/pages/ChartsRow/ChartsRow.html new file mode 100644 index 0000000000..a27db2f4fe --- /dev/null +++ b/docs/pages/ChartsRow/ChartsRow.html @@ -0,0 +1,121 @@ + + + + + + + + ChartsRow constructor - ChartsRow - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ChartsRow
+ +
+ +
+
+
+
+
+ +

ChartsRow constructor +

+ +
+ const + ChartsRow({
  1. required String title,
  2. +
  3. required List<ScienceAnalysis> analyses,
  4. +
  5. required Widget builder(
    1. ScienceAnalysis
    2. +
    ),
  6. +
  7. double height = 300,
  8. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const ChartsRow({
+	required this.title,
+	required this.analyses,
+	required this.builder,
+	this.height = 300,
+});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ChartsRow/analyses.html b/docs/pages/ChartsRow/analyses.html new file mode 100644 index 0000000000..452bfd3919 --- /dev/null +++ b/docs/pages/ChartsRow/analyses.html @@ -0,0 +1,115 @@ + + + + + + + + analyses property - ChartsRow class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
analyses
+ +
+ +
+
+
+
+
+ +

analyses property +

+ + +
+ + List<ScienceAnalysis> + analyses +
final
+ +
+ +
+

The data for these charts.

+
+ + +
+

Implementation

+
final List<ScienceAnalysis> analyses;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ChartsRow/build.html b/docs/pages/ChartsRow/build.html new file mode 100644 index 0000000000..5448b27666 --- /dev/null +++ b/docs/pages/ChartsRow/build.html @@ -0,0 +1,165 @@ + + + + + + + + build method - ChartsRow class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Column(children: [
+	const SizedBox(height: 24),
+	Text(title, style: context.textTheme.titleLarge),
+	const SizedBox(height: 12),
+	ScrollingRow(height: height, children: [
+		for (final analysis in analyses) Column(children: [
+			Text(analysis.sensor.name, textAlign: TextAlign.center, style: context.textTheme.labelLarge),
+			const SizedBox(height: 8),
+			Expanded(child: builder(analysis)),
+		],),
+	],),
+],);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ChartsRow/builder.html b/docs/pages/ChartsRow/builder.html new file mode 100644 index 0000000000..c422361edf --- /dev/null +++ b/docs/pages/ChartsRow/builder.html @@ -0,0 +1,115 @@ + + + + + + + + builder property - ChartsRow class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
builder
+ +
+ +
+
+
+
+
+ +

builder property +

+ + +
+ + Widget Function(ScienceAnalysis) + builder +
final
+ +
+ +
+

The chart to show for each piece of data.

+
+ + +
+

Implementation

+
final Widget Function(ScienceAnalysis) builder;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ChartsRow/height.html b/docs/pages/ChartsRow/height.html new file mode 100644 index 0000000000..8636e329dc --- /dev/null +++ b/docs/pages/ChartsRow/height.html @@ -0,0 +1,115 @@ + + + + + + + + height property - ChartsRow class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
height
+ +
+ +
+
+
+
+
+ +

height property +

+ + +
+ + double + height +
final
+ +
+ +
+

The height of this row.

+
+ + +
+

Implementation

+
final double height;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ChartsRow/title.html b/docs/pages/ChartsRow/title.html new file mode 100644 index 0000000000..e0dcf49a9a --- /dev/null +++ b/docs/pages/ChartsRow/title.html @@ -0,0 +1,115 @@ + + + + + + + + title property - ChartsRow class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
title
+ +
+ +
+
+
+
+
+ +

title property +

+ + +
+ + String + title +
final
+ +
+ +
+

The title of these charts.

+
+ + +
+

Implementation

+
final String title;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView-class-sidebar.html b/docs/pages/DashboardView-class-sidebar.html new file mode 100644 index 0000000000..b32a5145c5 --- /dev/null +++ b/docs/pages/DashboardView-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  1. Constructors
  2. +
  3. DashboardView
  4. + + + +
  5. + Properties +
  6. +
  7. builder
  8. +
  9. flutterKey
  10. +
  11. hashCode
  12. +
  13. icon
  14. +
  15. iconFunc
  16. +
  17. key
  18. +
  19. name
  20. +
  21. runtimeType
  22. + +
  23. Methods
  24. +
  25. noSuchMethod
  26. +
  27. toString
  28. + +
  29. Operators
  30. +
  31. operator ==
  32. + + + + +
  33. Static properties
  34. +
  35. blank
  36. +
  37. cameraViews
  38. +
  39. uiViews
  40. + +
  41. Static methods
  42. +
  43. getCameraStatus
  44. + +
diff --git a/docs/pages/DashboardView-class.html b/docs/pages/DashboardView-class.html new file mode 100644 index 0000000000..f17c4bc3c9 --- /dev/null +++ b/docs/pages/DashboardView-class.html @@ -0,0 +1,335 @@ + + + + + + + + DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DashboardView
+ +
+ +
+
+
+
+
+ +

DashboardView class + +

+ + +
+

A view in the UI.

+

A view can be a camera feed or any other UI element. Views are arranged in a grid.

+
+ + + + +
+

Constructors

+
+
+ DashboardView({required String name, required ViewBuilder builder, required Widget iconFunc(), Object? key}) +
+
+ A const constructor. +
+
+
+ +
+

Properties

+
+
+ builder + ViewBuilder + + +
+
+ A function to build this view. +
final
+ +
+ +
+ flutterKey + Key + + +
+
+ The Flutter widget key for this view. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ icon + Widget + + +
+
+ The icon used to represent the view. +
no setter
+ +
+ +
+ iconFunc + Widget Function() + + +
+
+ A function to dynamically compute the icon for the view. +
getter/setter pair
+ +
+ +
+ key + → Object? + + +
+
+ A unique key to use while selecting this view. +
final
+ +
+ +
+ name + → String + + +
+
+ The name of the view. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ +
+

Static Properties

+
+
+ blank + DashboardView + + +
+
+ A blank view. +
final
+ +
+ +
+ cameraViews + → List<DashboardView> + + +
+
+ A list of views that represent all the camera feeds. +
final
+ +
+ +
+ uiViews + → List<DashboardView> + + +
+
+ A list of views that represent all non-camera feeds. +
final
+ +
+ +
+
+ +
+

Static Methods

+
+
+ getCameraStatus(CameraName name) + Widget + + + +
+
+ An icon to indicate the status of the given camera. + + +
+ +
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/DashboardView.html b/docs/pages/DashboardView/DashboardView.html new file mode 100644 index 0000000000..1b578d045e --- /dev/null +++ b/docs/pages/DashboardView/DashboardView.html @@ -0,0 +1,116 @@ + + + + + + + + DashboardView constructor - DashboardView - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DashboardView
+ +
+ +
+
+
+
+
+ +

DashboardView constructor +

+ +
+ + DashboardView({
  1. required String name,
  2. +
  3. required ViewBuilder builder,
  4. +
  5. required Widget iconFunc(),
  6. +
  7. Object? key,
  8. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
DashboardView({required this.name, required this.builder, required this.iconFunc, this.key})
+    : flutterKey = UniqueKey();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/blank.html b/docs/pages/DashboardView/blank.html new file mode 100644 index 0000000000..c86c40e8f3 --- /dev/null +++ b/docs/pages/DashboardView/blank.html @@ -0,0 +1,133 @@ + + + + + + + + blank property - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
blank
+ +
+ +
+
+
+
+
+ +

blank property +

+ + +
+ + DashboardView + blank +
final
+ +
+ +
+

A blank view.

+
+ + +
+

Implementation

+
static final blank = DashboardView(
+  name: Routes.blank,
+  iconFunc: () => const Icon(Icons.delete),
+  builder: (context, index) => ColoredBox(
+    color: context.colorScheme.brightness == Brightness.light
+      ? Colors.blueGrey
+      : Colors.blueGrey[700]!,
+    child: Column(
+      mainAxisAlignment: MainAxisAlignment.center,
+      children: [
+        // Convoluted way to get all horizontal space filled
+        Row(children: [const Spacer(), ViewsSelector(index: index)]),
+        const Spacer(),
+        const Text("Drag in or choose a view"),
+        const Spacer(),
+      ],
+    ),
+  ),
+);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/builder.html b/docs/pages/DashboardView/builder.html new file mode 100644 index 0000000000..258d02af11 --- /dev/null +++ b/docs/pages/DashboardView/builder.html @@ -0,0 +1,115 @@ + + + + + + + + builder property - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
builder
+ +
+ +
+
+
+
+
+ +

builder property +

+ + +
+ + ViewBuilder + builder +
final
+ +
+ +
+

A function to build this view.

+
+ + +
+

Implementation

+
final ViewBuilder builder;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/cameraViews.html b/docs/pages/DashboardView/cameraViews.html new file mode 100644 index 0000000000..d104eaa0d5 --- /dev/null +++ b/docs/pages/DashboardView/cameraViews.html @@ -0,0 +1,124 @@ + + + + + + + + cameraViews property - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
cameraViews
+ +
+ +
+
+
+
+
+ +

cameraViews property +

+ + +
+ + List<DashboardView> + cameraViews +
final
+ +
+ +
+

A list of views that represent all the camera feeds.

+
+ + +
+

Implementation

+
static final List<DashboardView> cameraViews = [
+  for (final name in CameraName.values)
+    if (name != CameraName.CAMERA_NAME_UNDEFINED)
+      DashboardView(
+        name: name.humanName,
+        key: name,
+        iconFunc: () => getCameraStatus(name),
+        builder: (context, index) => VideoFeed(name: name, index: index),
+      ),
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/flutterKey.html b/docs/pages/DashboardView/flutterKey.html new file mode 100644 index 0000000000..5f7194eff5 --- /dev/null +++ b/docs/pages/DashboardView/flutterKey.html @@ -0,0 +1,115 @@ + + + + + + + + flutterKey property - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
flutterKey
+ +
+ +
+
+
+
+
+ +

flutterKey property +

+ + +
+ + Key + flutterKey +
final
+ +
+ +
+

The Flutter widget key for this view.

+
+ + +
+

Implementation

+
final Key flutterKey;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/getCameraStatus.html b/docs/pages/DashboardView/getCameraStatus.html new file mode 100644 index 0000000000..8f66b25128 --- /dev/null +++ b/docs/pages/DashboardView/getCameraStatus.html @@ -0,0 +1,141 @@ + + + + + + + + getCameraStatus method - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getCameraStatus
+ +
+ +
+
+
+
+
+ +

getCameraStatus static method +

+ +
+ +Widget +getCameraStatus(
  1. CameraName name
  2. +
) + + + +
+ +
+

An icon to indicate the status of the given camera.

+
+ + + +
+

Implementation

+
static Widget getCameraStatus(CameraName name) {
+if (!models.sockets.video.isConnected) {
+  return Icon(Icons.signal_wifi_off, color: Colors.black.withOpacity(0.5));
+}
+final status = models.video.feeds[name]!.details.status;
+const size = 12.0;
+return switch (status) {
+  CameraStatus.CAMERA_STATUS_UNDEFINED =>
+    const Icon(Icons.question_mark, size: size),
+  CameraStatus.CAMERA_DISCONNECTED =>
+    const Icon(Icons.circle, size: size, color: Colors.black),
+  CameraStatus.CAMERA_ENABLED =>
+    const Icon(Icons.circle, size: size, color: Colors.green),
+  CameraStatus.CAMERA_LOADING =>
+    const Icon(Icons.circle, size: size, color: Colors.blueGrey),
+  CameraStatus.CAMERA_DISABLED =>
+    const Icon(Icons.circle, size: size, color: Colors.orange),
+  CameraStatus.CAMERA_NOT_RESPONDING =>
+    const Icon(Icons.circle, size: size, color: Colors.red),
+  CameraStatus.FRAME_TOO_LARGE =>
+    const Icon(Icons.circle, size: size, color: Colors.orange),
+  CameraStatus.CAMERA_HAS_NO_NAME =>
+    const Icon(Icons.circle, size: size, color: Colors.black),
+  _ => throw ArgumentError("Unrecognized status: $status"),
+};
+  }
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/hashCode.html b/docs/pages/DashboardView/hashCode.html new file mode 100644 index 0000000000..7525e61ed0 --- /dev/null +++ b/docs/pages/DashboardView/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/icon.html b/docs/pages/DashboardView/icon.html new file mode 100644 index 0000000000..64323c5f45 --- /dev/null +++ b/docs/pages/DashboardView/icon.html @@ -0,0 +1,121 @@ + + + + + + + + icon property - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
icon
+ +
+ +
+
+
+
+
+ +

icon property +

+ + + + + +
+
+ + Widget + get + icon + + +
+ +
+

The icon used to represent the view.

+
+ + +
+

Implementation

+
Widget get icon => iconFunc();
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/iconFunc.html b/docs/pages/DashboardView/iconFunc.html new file mode 100644 index 0000000000..39e0e23aed --- /dev/null +++ b/docs/pages/DashboardView/iconFunc.html @@ -0,0 +1,115 @@ + + + + + + + + iconFunc property - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
iconFunc
+ +
+ +
+
+
+
+
+ +

iconFunc property +

+ + +
+ + Widget Function() + iconFunc +
getter/setter pair
+ +
+ +
+

A function to dynamically compute the icon for the view.

+
+ + +
+

Implementation

+
Widget Function() iconFunc;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/key.html b/docs/pages/DashboardView/key.html new file mode 100644 index 0000000000..4f59149b25 --- /dev/null +++ b/docs/pages/DashboardView/key.html @@ -0,0 +1,115 @@ + + + + + + + + key property - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
key
+ +
+ +
+
+
+
+
+ +

key property +

+ + +
+ + Object? + key +
final
+ +
+ +
+

A unique key to use while selecting this view.

+
+ + +
+

Implementation

+
final Object? key;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/name.html b/docs/pages/DashboardView/name.html new file mode 100644 index 0000000000..017f5291e3 --- /dev/null +++ b/docs/pages/DashboardView/name.html @@ -0,0 +1,115 @@ + + + + + + + + name property - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + +
+ + String + name +
final
+ +
+ +
+

The name of the view.

+
+ + +
+

Implementation

+
final String name;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/noSuchMethod.html b/docs/pages/DashboardView/noSuchMethod.html new file mode 100644 index 0000000000..625ce93aa8 --- /dev/null +++ b/docs/pages/DashboardView/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/operator_equals.html b/docs/pages/DashboardView/operator_equals.html new file mode 100644 index 0000000000..698ce33b76 --- /dev/null +++ b/docs/pages/DashboardView/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/runtimeType.html b/docs/pages/DashboardView/runtimeType.html new file mode 100644 index 0000000000..b47a8adc42 --- /dev/null +++ b/docs/pages/DashboardView/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/toString.html b/docs/pages/DashboardView/toString.html new file mode 100644 index 0000000000..957c3bdd10 --- /dev/null +++ b/docs/pages/DashboardView/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DashboardView/uiViews.html b/docs/pages/DashboardView/uiViews.html new file mode 100644 index 0000000000..e39947563d --- /dev/null +++ b/docs/pages/DashboardView/uiViews.html @@ -0,0 +1,146 @@ + + + + + + + + uiViews property - DashboardView class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
uiViews
+ +
+ +
+
+
+
+
+ +

uiViews property +

+ + +
+ + List<DashboardView> + uiViews +
final
+ +
+ +
+

A list of views that represent all non-camera feeds.

+
+ + +
+

Implementation

+
static final List<DashboardView> uiViews = [
+  DashboardView(
+    name: Routes.science,
+    iconFunc: () => Icon(Icons.science, color: Colors.black.withOpacity(0.5)),
+    builder: (context, index) => SciencePage(index: index),
+  ),
+  DashboardView(
+    name: Routes.autonomy,
+    iconFunc: () => Icon(Icons.map, color: Colors.black.withOpacity(0.5)),
+    builder: (context, index) => MapPage(index: index),
+  ),
+  DashboardView(
+    name: Routes.electrical,
+    iconFunc: () => Icon(Icons.bolt, color: Colors.black.withOpacity(0.5)),
+    builder: (context, index) => ElectricalPage(index: index),
+  ),
+  DashboardView(
+    name: Routes.arm,
+    iconFunc: () => Icon(Icons.precision_manufacturing_outlined, color: Colors.black.withOpacity(0.5)),
+    builder: (context, index) => ArmPage(index: index),
+  ),
+  DashboardView(
+    name: Routes.drive,
+    iconFunc: () => Icon(Icons.drive_eta, color: Colors.black.withOpacity(0.5)),
+    builder: (context, index) => DrivePage(index: index),
+  ),
+  DashboardView(
+    name: Routes.rocks,
+    iconFunc: () => Icon(Icons.landslide, color: Colors.black.withOpacity(0.5)),
+    builder: (context, index) => RocksPage(index: index),
+  ),
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DesktopScrollBehavior-class-sidebar.html b/docs/pages/DesktopScrollBehavior-class-sidebar.html new file mode 100644 index 0000000000..173e484dd1 --- /dev/null +++ b/docs/pages/DesktopScrollBehavior-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. DesktopScrollBehavior
  4. + + + +
  5. + Properties +
  6. +
  7. dragDevices
  8. +
  9. hashCode
  10. +
  11. pointerAxisModifiers
  12. +
  13. runtimeType
  14. + +
  15. Methods
  16. +
  17. buildOverscrollIndicator
  18. +
  19. buildScrollbar
  20. +
  21. copyWith
  22. +
  23. getMultitouchDragStrategy
  24. +
  25. getPlatform
  26. +
  27. getScrollPhysics
  28. +
  29. noSuchMethod
  30. +
  31. shouldNotify
  32. +
  33. toString
  34. +
  35. velocityTrackerBuilder
  36. + +
  37. Operators
  38. +
  39. operator ==
  40. + + + + + + +
diff --git a/docs/pages/DesktopScrollBehavior-class.html b/docs/pages/DesktopScrollBehavior-class.html new file mode 100644 index 0000000000..299b6aeb13 --- /dev/null +++ b/docs/pages/DesktopScrollBehavior-class.html @@ -0,0 +1,361 @@ + + + + + + + + DesktopScrollBehavior class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DesktopScrollBehavior
+ +
+ +
+
+
+
+
+ +

DesktopScrollBehavior class + +

+ + +
+

Allows desktop users to scroll with their mouse or other device.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ DesktopScrollBehavior() +
+
+ +
+
+
+ +
+

Properties

+
+
+ dragDevices + → Set<PointerDeviceKind> + + +
+
+ The device kinds that the scrollable will accept drag gestures from. +
no setteroverride
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ pointerAxisModifiers + → Set<LogicalKeyboardKey> + + +
+
+ A set of LogicalKeyboardKeys that, when any or all are pressed in +combination with a PointerDeviceKind.mouse pointer scroll event, will +flip the axes of the scroll input. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ buildOverscrollIndicator(BuildContext context, Widget child, ScrollableDetails details) + Widget + + + +
+
+ Applies a GlowingOverscrollIndicator to the child widget on +TargetPlatform.android and TargetPlatform.fuchsia. +
inherited
+ +
+ +
+ buildScrollbar(BuildContext context, Widget child, ScrollableDetails details) + Widget + + + +
+
+ Applies a RawScrollbar to the child widget on desktop platforms. +
inherited
+ +
+ +
+ copyWith({bool? scrollbars, bool? overscroll, Set<PointerDeviceKind>? dragDevices, MultitouchDragStrategy? multitouchDragStrategy, Set<LogicalKeyboardKey>? pointerAxisModifiers, ScrollPhysics? physics, TargetPlatform? platform}) + ScrollBehavior + + + +
+
+ Creates a copy of this ScrollBehavior, making it possible to +easily toggle scrollbar and overscrollIndicator effects. +
inherited
+ +
+ +
+ getMultitouchDragStrategy(BuildContext context) + MultitouchDragStrategy + + + +
+
+ Configure the multi-finger drag strategy on multi-touch devices. +
inherited
+ +
+ +
+ getPlatform(BuildContext context) + TargetPlatform + + + +
+
+ The platform whose scroll physics should be implemented. +
inherited
+ +
+ +
+ getScrollPhysics(BuildContext context) + ScrollPhysics + + + +
+
+ The scroll physics to use for the platform given by getPlatform. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ shouldNotify(covariant ScrollBehavior oldDelegate) + → bool + + + +
+
+ Called whenever a ScrollConfiguration is rebuilt with a new +ScrollBehavior of the same runtimeType. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ velocityTrackerBuilder(BuildContext context) + GestureVelocityTrackerBuilder + + + +
+
+ Specifies the type of velocity tracker to use in the descendant +Scrollables' drag gesture recognizers, for estimating the velocity of a +drag gesture. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DesktopScrollBehavior/DesktopScrollBehavior.html b/docs/pages/DesktopScrollBehavior/DesktopScrollBehavior.html new file mode 100644 index 0000000000..8392121972 --- /dev/null +++ b/docs/pages/DesktopScrollBehavior/DesktopScrollBehavior.html @@ -0,0 +1,104 @@ + + + + + + + + DesktopScrollBehavior constructor - DesktopScrollBehavior - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DesktopScrollBehavior
+ +
+ +
+
+
+
+
+ +

DesktopScrollBehavior constructor +

+ +
+ + DesktopScrollBehavior() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DesktopScrollBehavior/dragDevices.html b/docs/pages/DesktopScrollBehavior/dragDevices.html new file mode 100644 index 0000000000..ade81eb260 --- /dev/null +++ b/docs/pages/DesktopScrollBehavior/dragDevices.html @@ -0,0 +1,136 @@ + + + + + + + + dragDevices property - DesktopScrollBehavior class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dragDevices
+ +
+ +
+
+
+
+
+ +

dragDevices property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Set<PointerDeviceKind> + get + dragDevices +
override
+ +
+ +
+

The device kinds that the scrollable will accept drag gestures from.

+

By default only PointerDeviceKind.touch, PointerDeviceKind.stylus, and +PointerDeviceKind.invertedStylus are configured to create drag gestures. +Enabling this for PointerDeviceKind.mouse will make it difficult or +impossible to select text in scrollable containers and is not recommended.

+
+ + +
+

Implementation

+
@override
+Set<PointerDeviceKind> get dragDevices => {
+  PointerDeviceKind.touch,
+  PointerDeviceKind.mouse,
+  PointerDeviceKind.stylus,
+  PointerDeviceKind.trackpad,
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DrivePage-class-sidebar.html b/docs/pages/DrivePage-class-sidebar.html new file mode 100644 index 0000000000..68cd2849c5 --- /dev/null +++ b/docs/pages/DrivePage-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. DrivePage
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. index
  10. +
  11. key
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/pages/DrivePage-class.html b/docs/pages/DrivePage-class.html new file mode 100644 index 0000000000..690a30ccc9 --- /dev/null +++ b/docs/pages/DrivePage-class.html @@ -0,0 +1,411 @@ + + + + + + + + DrivePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DrivePage
+ +
+ +
+
+
+
+
+ +

DrivePage class + +

+ + +
+

The UI for the drive analysis.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ DrivePage({required int index}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ The index of this view. +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, PositionModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + PositionModel + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<PositionModel> oldWidget, PositionModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DrivePage/DrivePage.html b/docs/pages/DrivePage/DrivePage.html new file mode 100644 index 0000000000..1f2ce31c6d --- /dev/null +++ b/docs/pages/DrivePage/DrivePage.html @@ -0,0 +1,112 @@ + + + + + + + + DrivePage constructor - DrivePage - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DrivePage
+ +
+ +
+
+
+
+
+ +

DrivePage constructor +

+ +
+ const + DrivePage({
  1. required int index,
  2. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const DrivePage({required this.index});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DrivePage/build.html b/docs/pages/DrivePage/build.html new file mode 100644 index 0000000000..3c454b2cbe --- /dev/null +++ b/docs/pages/DrivePage/build.html @@ -0,0 +1,179 @@ + + + + + + + + build method - DrivePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. PositionModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+	Widget build(BuildContext context, PositionModel model) => Column(
+  crossAxisAlignment: CrossAxisAlignment.stretch,
+  children: [
+    Row(children: [  // The header at the top
+      const SizedBox(width: 8),
+      Text("Drive", style: context.textTheme.headlineMedium),
+      const Spacer(),
+      ViewsSelector(index: index),
+    ],),
+    Expanded(
+      child: Row(
+        mainAxisAlignment: MainAxisAlignment.spaceEvenly,
+        children: [
+          Expanded(
+            child: Column(children: [
+              const Text(
+                "Front View",
+                style: TextStyle(
+                  fontSize: 18,
+                  fontWeight: FontWeight.bold,
+                ),
+              ),
+              Expanded(child: Transform.rotate(
+                angle: model.position.roll * (pi/180),
+                child: Image.asset("assets/rover_front.png"),
+              ),),
+            ],),
+          ),
+          Expanded(
+            child: Column(children: [
+              const Text(
+                "Side View",
+                style: TextStyle(
+                  fontSize: 18,
+                  fontWeight: FontWeight.bold,
+                ),
+              ),
+              Expanded(child: Transform.rotate(
+                angle: model.position.pitch * (pi/180),
+                child: Image.asset("assets/rover_side.png", scale: 0.5),
+              ),),
+            ],),
+          ),
+        ],
+      ),
+    ),
+    Expanded(
+      child: Row(
+        mainAxisAlignment: MainAxisAlignment.spaceEvenly,
+        children: [
+          Expanded(child: _Wheels(wheels: model.wheelsRPM, colors: model.wheelColors)),
+          Expanded(child: _BarChart(values: [model.leftWheels, model.rightWheels])),
+        ],
+      ),
+    ),
+  ],
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DrivePage/createModel.html b/docs/pages/DrivePage/createModel.html new file mode 100644 index 0000000000..b3990a2b81 --- /dev/null +++ b/docs/pages/DrivePage/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - DrivePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+PositionModel +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+PositionModel createModel() => PositionModel();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/DrivePage/index.html b/docs/pages/DrivePage/index.html new file mode 100644 index 0000000000..ef69f820ea --- /dev/null +++ b/docs/pages/DrivePage/index.html @@ -0,0 +1,115 @@ + + + + + + + + index property - DrivePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+ +

index property +

+ + +
+ + int + index +
final
+ +
+ +
+

The index of this view.

+
+ + +
+

Implementation

+
final int index;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ElectricalPage-class-sidebar.html b/docs/pages/ElectricalPage-class-sidebar.html new file mode 100644 index 0000000000..557eaa4425 --- /dev/null +++ b/docs/pages/ElectricalPage-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. ElectricalPage
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. index
  10. +
  11. key
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/pages/ElectricalPage-class.html b/docs/pages/ElectricalPage-class.html new file mode 100644 index 0000000000..ed136e522e --- /dev/null +++ b/docs/pages/ElectricalPage-class.html @@ -0,0 +1,411 @@ + + + + + + + + ElectricalPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ElectricalPage
+ +
+ +
+
+
+
+
+ +

ElectricalPage class + +

+ + +
+

The UI for the electrical subsystem.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ElectricalPage({required int index}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ The index of this view. +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, ElectricalModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + ElectricalModel + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<ElectricalModel> oldWidget, ElectricalModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ElectricalPage/ElectricalPage.html b/docs/pages/ElectricalPage/ElectricalPage.html new file mode 100644 index 0000000000..a0ad930997 --- /dev/null +++ b/docs/pages/ElectricalPage/ElectricalPage.html @@ -0,0 +1,112 @@ + + + + + + + + ElectricalPage constructor - ElectricalPage - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ElectricalPage
+ +
+ +
+
+
+
+
+ +

ElectricalPage constructor +

+ +
+ const + ElectricalPage({
  1. required int index,
  2. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const ElectricalPage({required this.index});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ElectricalPage/build.html b/docs/pages/ElectricalPage/build.html new file mode 100644 index 0000000000..8038fd20c1 --- /dev/null +++ b/docs/pages/ElectricalPage/build.html @@ -0,0 +1,153 @@ + + + + + + + + build method - ElectricalPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. ElectricalModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, ElectricalModel model) => Column(
+    crossAxisAlignment: CrossAxisAlignment.stretch,
+    children: [
+      Row(children: [  // The header at the top
+        const SizedBox(width: 8),
+        Text("Electrical", style: context.textTheme.headlineMedium),
+        const SizedBox(width: 12),
+        const Spacer(),
+        Text(model.axis ? "Horizontal" : "Vertical", style: context.textTheme.labelLarge),
+        const SizedBox(width: 12),
+        Switch(
+          value: model.axis,
+          onChanged: (bool value) => model.changeDirection(),
+        ),
+        const SizedBox(width: 8),
+        ElevatedButton.icon(icon: const Icon(Icons.clear), label: const Text("Clear all"), onPressed: model.clear),
+        const SizedBox(width: 8),
+        ViewsSelector(index: index),
+      ],),
+      if (model.axis) Expanded(child:
+        Row(children: [
+          for (final graph in _getGraphs(model))
+            Expanded(child: graph),
+        ],),
+      )
+      else
+        for (final graph in _getGraphs(model))
+          Expanded(child: graph),
+      const SizedBox(height: 8),
+    ],
+  );
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ElectricalPage/createModel.html b/docs/pages/ElectricalPage/createModel.html new file mode 100644 index 0000000000..1d89660cb5 --- /dev/null +++ b/docs/pages/ElectricalPage/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - ElectricalPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ElectricalModel +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+ElectricalModel createModel() => ElectricalModel();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ElectricalPage/index.html b/docs/pages/ElectricalPage/index.html new file mode 100644 index 0000000000..4f4b2e2a96 --- /dev/null +++ b/docs/pages/ElectricalPage/index.html @@ -0,0 +1,115 @@ + + + + + + + + index property - ElectricalPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+ +

index property +

+ + +
+ + int + index +
final
+ +
+ +
+

The index of this view.

+
+ + +
+

Implementation

+
final int index;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/HomePage-class-sidebar.html b/docs/pages/HomePage-class-sidebar.html new file mode 100644 index 0000000000..cc4d9e5bc4 --- /dev/null +++ b/docs/pages/HomePage-class-sidebar.html @@ -0,0 +1,35 @@ +
    + +
  1. Constructors
  2. +
  3. HomePage
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. + +
  13. Methods
  14. +
  15. createElement
  16. +
  17. createState
  18. +
  19. debugDescribeChildren
  20. +
  21. debugFillProperties
  22. +
  23. noSuchMethod
  24. +
  25. toDiagnosticsNode
  26. +
  27. toString
  28. +
  29. toStringDeep
  30. +
  31. toStringShallow
  32. +
  33. toStringShort
  34. + +
  35. Operators
  36. +
  37. operator ==
  38. + + + + + + +
diff --git a/docs/pages/HomePage-class.html b/docs/pages/HomePage-class.html new file mode 100644 index 0000000000..d7c11a9cb6 --- /dev/null +++ b/docs/pages/HomePage-class.html @@ -0,0 +1,346 @@ + + + + + + + + HomePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
HomePage
+ +
+ +
+
+
+
+
+ +

HomePage class + +

+ + +
+

The main dashboard page.

+

Each page the user could navigate to is embedded here, as a View.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ HomePage() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createState() + HomePageState + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
override
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/HomePage/HomePage.html b/docs/pages/HomePage/HomePage.html new file mode 100644 index 0000000000..cdca738b15 --- /dev/null +++ b/docs/pages/HomePage/HomePage.html @@ -0,0 +1,104 @@ + + + + + + + + HomePage constructor - HomePage - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
HomePage
+ +
+ +
+
+
+
+
+ +

HomePage constructor +

+ +
+ + HomePage() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/HomePage/createState.html b/docs/pages/HomePage/createState.html new file mode 100644 index 0000000000..63aa1b5b08 --- /dev/null +++ b/docs/pages/HomePage/createState.html @@ -0,0 +1,133 @@ + + + + + + + + createState method - HomePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createState
+ +
+ +
+
+
+
+
+ +

createState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+HomePageState +createState() + +
override
+ +
+ +
+

Creates the mutable state for this widget at a given location in the tree.

+

Subclasses should override this method to return a newly created +instance of their associated State subclass:

+
@override
+State<SomeWidget> createState() => _SomeWidgetState();
+
+

The framework can call this method multiple times over the lifetime of +a StatefulWidget. For example, if the widget is inserted into the tree +in multiple locations, the framework will create a separate State object +for each location. Similarly, if the widget is removed from the tree and +later inserted into the tree again, the framework will call createState +again to create a fresh State object, simplifying the lifecycle of +State objects.

+
+ + + +
+

Implementation

+
@override
+HomePageState createState() => HomePageState();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/HomePageState-class-sidebar.html b/docs/pages/HomePageState-class-sidebar.html new file mode 100644 index 0000000000..55cf49e92d --- /dev/null +++ b/docs/pages/HomePageState-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. HomePageState
  4. + + + +
  5. + Properties +
  6. +
  7. context
  8. +
  9. hashCode
  10. +
  11. mounted
  12. +
  13. runtimeType
  14. +
  15. showSidebar
  16. +
  17. widget
  18. + +
  19. Methods
  20. +
  21. activate
  22. +
  23. build
  24. +
  25. deactivate
  26. +
  27. debugFillProperties
  28. +
  29. didChangeDependencies
  30. +
  31. didUpdateWidget
  32. +
  33. dispose
  34. +
  35. initState
  36. +
  37. noSuchMethod
  38. +
  39. reassemble
  40. +
  41. setState
  42. +
  43. toDiagnosticsNode
  44. +
  45. toString
  46. +
  47. toStringShort
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/pages/HomePageState-class.html b/docs/pages/HomePageState-class.html new file mode 100644 index 0000000000..914da2b77e --- /dev/null +++ b/docs/pages/HomePageState-class.html @@ -0,0 +1,433 @@ + + + + + + + + HomePageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
HomePageState
+ +
+ +
+
+
+
+
+ +

HomePageState class + +

+ + +
+

The state for the homepage. Handles showing and hiding the sidebar.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ HomePageState() +
+
+ +
+
+
+ +
+

Properties

+
+
+ context + BuildContext + + +
+
+ The location in the tree where this widget builds. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ mounted + → bool + + +
+
+ Whether this State object is currently in a tree. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ showSidebar + ↔ bool + + +
+
+ Whether to show the sidebar. +
getter/setter pair
+ +
+ +
+ widget + HomePage + + +
+
+ The current configuration. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ activate() + → void + + + +
+
+ Called when this object is reinserted into the tree after having been +removed via deactivate. +
inherited
+ +
+ +
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ deactivate() + → void + + + +
+
+ Called when this object is removed from the tree. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didChangeDependencies() + → void + + + +
+
+ Called when a dependency of this State object changes. +
inherited
+ +
+ +
+ didUpdateWidget(covariant HomePage oldWidget) + → void + + + +
+
+ Called whenever the widget configuration changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Called when this object is removed from the tree permanently. +
inherited
+ +
+ +
+ initState() + → void + + + +
+
+ Called when this object is inserted into the tree. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ reassemble() + → void + + + +
+
+ Called whenever the application is reassembled during debugging, for +example during hot reload. +
inherited
+ +
+ +
+ setState(VoidCallback fn) + → void + + + +
+
+ Notify the framework that the internal state of this object has changed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A brief description of this object, usually just the runtimeType and the +hashCode. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/HomePageState/HomePageState.html b/docs/pages/HomePageState/HomePageState.html new file mode 100644 index 0000000000..91d0dfa04e --- /dev/null +++ b/docs/pages/HomePageState/HomePageState.html @@ -0,0 +1,104 @@ + + + + + + + + HomePageState constructor - HomePageState - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
HomePageState
+ +
+ +
+
+
+
+
+ +

HomePageState constructor +

+ +
+ + HomePageState() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/HomePageState/build.html b/docs/pages/HomePageState/build.html new file mode 100644 index 0000000000..18c7c0b24b --- /dev/null +++ b/docs/pages/HomePageState/build.html @@ -0,0 +1,253 @@ + + + + + + + + build method - HomePageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method in a number of different situations. For +example:

+ +

This method can potentially be called in every frame and should not have +any side effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor, the +given BuildContext, and the internal state of this State object.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. The +BuildContext argument is always the same as the context property of +this State object and will remain the same for the lifetime of this +object. The BuildContext argument is provided redundantly here so that +this method matches the signature for a WidgetBuilder.

+

Design discussion

+

Why is the build method on State, and not StatefulWidget?

+

Putting a Widget build(BuildContext context) method on State rather +than putting a Widget build(BuildContext context, State state) method +on StatefulWidget gives developers more flexibility when subclassing +StatefulWidget.

+

For example, AnimatedWidget is a subclass of StatefulWidget that +introduces an abstract Widget build(BuildContext context) method for its +subclasses to implement. If StatefulWidget already had a build method +that took a State argument, AnimatedWidget would be forced to provide +its State object to subclasses even though its State object is an +internal implementation detail of AnimatedWidget.

+

Conceptually, StatelessWidget could also be implemented as a subclass of +StatefulWidget in a similar manner. If the build method were on +StatefulWidget rather than State, that would not be possible anymore.

+

Putting the build function on State rather than StatefulWidget also +helps avoid a category of bugs related to closures implicitly capturing +this. If you defined a closure in a build function on a +StatefulWidget, that closure would implicitly capture this, which is +the current widget instance, and would have the (immutable) fields of that +instance in scope:

+
// (this is not valid Flutter code)
+class MyButton extends StatefulWidgetX {
+  MyButton({super.key, required this.color});
+
+  final Color color;
+
+  @override
+  Widget build(BuildContext context, State state) {
+    return SpecialWidget(
+      handler: () { print('color: $color'); },
+    );
+  }
+}
+
+

For example, suppose the parent builds MyButton with color being blue, +the $color in the print function refers to blue, as expected. Now, +suppose the parent rebuilds MyButton with green. The closure created by +the first build still implicitly refers to the original widget and the +$color still prints blue even through the widget has been updated to +green; should that closure outlive its widget, it would print outdated +information.

+

In contrast, with the build function on the State object, closures +created during build implicitly capture the State instance instead of +the widget instance:

+
class MyButton extends StatefulWidget {
+  const MyButton({super.key, this.color = Colors.teal});
+
+  final Color color;
+  // ...
+}
+
+class MyButtonState extends State<MyButton> {
+  // ...
+  @override
+  Widget build(BuildContext context) {
+    return SpecialWidget(
+      handler: () { print('color: ${widget.color}'); },
+    );
+  }
+}
+
+

Now when the parent rebuilds MyButton with green, the closure created by +the first build still refers to State object, which is preserved across +rebuilds, but the framework has updated that State object's widget +property to refer to the new MyButton instance and ${widget.color} +prints green, as expected.

+

See also:

+
    +
  • StatefulWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Scaffold(
+	appBar: AppBar(
+      automaticallyImplyLeading: false,
+		title: Text("Dashboard v${models.home.version ?? ''}"),
+      flexibleSpace: Center(child: TimerWidget()),
+		actions: [
+			SocketSwitcher(),
+			IconButton(
+				icon: const Icon(Icons.settings),
+				onPressed: () => Navigator.of(context).pushNamed(Routes.settings),
+			),
+			Builder(builder: (context) => IconButton(
+				icon: const Icon(Icons.menu),
+				onPressed: () => setState(() => showSidebar = !showSidebar),
+			),),
+		],
+	),
+	bottomNavigationBar: const Footer(),
+	body: Stack(children: [
+      Row(
+        children: [
+          Expanded(child: ViewsWidget()),
+          // An AnimatedSize widget automatically shrinks the widget away
+          AnimatedSize(
+            duration: const Duration(milliseconds: 250),
+            child: showSidebar ? const Sidebar() : Container(),
+          ),
+        ],
+      ),
+      if (defaultTargetPlatform == TargetPlatform.android)
+        MobileControls(),
+    ],),
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/HomePageState/showSidebar.html b/docs/pages/HomePageState/showSidebar.html new file mode 100644 index 0000000000..7fdf3dfe2f --- /dev/null +++ b/docs/pages/HomePageState/showSidebar.html @@ -0,0 +1,115 @@ + + + + + + + + showSidebar property - HomePageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
showSidebar
+ +
+ +
+
+
+
+
+ +

showSidebar property +

+ + +
+ + bool + showSidebar +
getter/setter pair
+ +
+ +
+

Whether to show the sidebar.

+
+ + +
+

Implementation

+
bool showSidebar = false;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogWidget-class-sidebar.html b/docs/pages/LogWidget-class-sidebar.html new file mode 100644 index 0000000000..c43cab60da --- /dev/null +++ b/docs/pages/LogWidget-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. LogWidget
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. icon
  10. +
  11. key
  12. +
  13. log
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. debugDescribeChildren
  24. +
  25. debugFillProperties
  26. +
  27. noSuchMethod
  28. +
  29. toDiagnosticsNode
  30. +
  31. toString
  32. +
  33. toStringDeep
  34. +
  35. toStringShallow
  36. +
  37. toStringShort
  38. + +
  39. Operators
  40. +
  41. operator ==
  42. + + + + + + +
diff --git a/docs/pages/LogWidget-class.html b/docs/pages/LogWidget-class.html new file mode 100644 index 0000000000..b727a59055 --- /dev/null +++ b/docs/pages/LogWidget-class.html @@ -0,0 +1,370 @@ + + + + + + + + LogWidget class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogWidget
+ +
+ +
+
+
+
+
+ +

LogWidget class + +

+ + +
+

A widget that shows a BurtLog.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ LogWidget(BurtLog log) +
+
+ Creates a widget to display the given log message. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ icon + Widget + + +
+
+ Gets an icon for the given BurtLogLevel. +
no setter
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ log + BurtLog + + +
+
+ The log message being shown in this widget. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogWidget/LogWidget.html b/docs/pages/LogWidget/LogWidget.html new file mode 100644 index 0000000000..53f59bdc34 --- /dev/null +++ b/docs/pages/LogWidget/LogWidget.html @@ -0,0 +1,112 @@ + + + + + + + + LogWidget constructor - LogWidget - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogWidget
+ +
+ +
+
+
+
+
+ +

LogWidget constructor +

+ +
+ const + LogWidget(
  1. BurtLog log
  2. +
) +
+ +
+

Creates a widget to display the given log message.

+
+ + + +
+

Implementation

+
const LogWidget(this.log);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogWidget/build.html b/docs/pages/LogWidget/build.html new file mode 100644 index 0000000000..45d68ba198 --- /dev/null +++ b/docs/pages/LogWidget/build.html @@ -0,0 +1,158 @@ + + + + + + + + build method - LogWidget class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => ListTile(
+  leading: icon,
+  title: Text(log.title),
+  subtitle: log.body.isEmpty ? Text(log.device.humanName) : Text("${log.device.humanName}\n${log.body}".trim()),
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogWidget/icon.html b/docs/pages/LogWidget/icon.html new file mode 100644 index 0000000000..82433de3e2 --- /dev/null +++ b/docs/pages/LogWidget/icon.html @@ -0,0 +1,129 @@ + + + + + + + + icon property - LogWidget class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
icon
+ +
+ +
+
+
+
+
+ +

icon property +

+ + + + + +
+
+ + Widget + get + icon + + +
+ +
+

Gets an icon for the given BurtLogLevel.

+
+ + +
+

Implementation

+
Widget get icon => switch(log.level) {
+  BurtLogLevel.critical => criticalWidget,
+  BurtLogLevel.error => errorWidget,
+  BurtLogLevel.warning => warningWidget,
+  BurtLogLevel.info => infoWidget,
+  BurtLogLevel.debug => debugWidget,
+  BurtLogLevel.trace => traceWidget,
+  _ => const Icon(Icons.question_mark),
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogWidget/log.html b/docs/pages/LogWidget/log.html new file mode 100644 index 0000000000..dc04f518c5 --- /dev/null +++ b/docs/pages/LogWidget/log.html @@ -0,0 +1,115 @@ + + + + + + + + log property - LogWidget class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
log
+ +
+ +
+
+
+
+
+ +

log property +

+ + +
+ + BurtLog + log +
final
+ +
+ +
+

The log message being shown in this widget.

+
+ + +
+

Implementation

+
final BurtLog log;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsBody-class-sidebar.html b/docs/pages/LogsBody-class-sidebar.html new file mode 100644 index 0000000000..584807b9b0 --- /dev/null +++ b/docs/pages/LogsBody-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. LogsBody
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/pages/LogsBody-class.html b/docs/pages/LogsBody-class.html new file mode 100644 index 0000000000..da831c49cb --- /dev/null +++ b/docs/pages/LogsBody-class.html @@ -0,0 +1,412 @@ + + + + + + + + LogsBody class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsBody
+ +
+ +
+
+
+
+
+ +

LogsBody class + +

+ + +
+

The widget that actually contains the logs for the page.

+

This is a separate widget to prevent updating the rest of the page when new logs come in.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ LogsBody(LogsViewModel model) +
+
+ Listens to the given view model. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + LogsViewModel + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, LogsViewModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + LogsViewModel + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<LogsViewModel> oldWidget, LogsViewModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsBody/LogsBody.html b/docs/pages/LogsBody/LogsBody.html new file mode 100644 index 0000000000..758f70fac0 --- /dev/null +++ b/docs/pages/LogsBody/LogsBody.html @@ -0,0 +1,112 @@ + + + + + + + + LogsBody constructor - LogsBody - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsBody
+ +
+ +
+
+
+
+
+ +

LogsBody constructor +

+ +
+ const + LogsBody(
  1. LogsViewModel model
  2. +
) +
+ +
+

Listens to the given view model.

+
+ + + +
+

Implementation

+
const LogsBody(super.model);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsBody/build.html b/docs/pages/LogsBody/build.html new file mode 100644 index 0000000000..31c720ca24 --- /dev/null +++ b/docs/pages/LogsBody/build.html @@ -0,0 +1,130 @@ + + + + + + + + build method - LogsBody class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. LogsViewModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, LogsViewModel model) => model.logs.isEmpty
+  ? const Center(child: Text("No logs yet"))
+  : ListView.builder(
+    itemCount: model.logs.length,
+    controller: model.scrollController,
+    reverse: true,
+    itemBuilder: (context, index) => LogWidget(model.logs[index]),
+  );
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsOptions-class-sidebar.html b/docs/pages/LogsOptions-class-sidebar.html new file mode 100644 index 0000000000..d34a9b2cbf --- /dev/null +++ b/docs/pages/LogsOptions-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. LogsOptions
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. getStatusColor
  34. +
  35. noSuchMethod
  36. +
  37. sshButton
  38. +
  39. toDiagnosticsNode
  40. +
  41. toString
  42. +
  43. toStringDeep
  44. +
  45. toStringShallow
  46. +
  47. toStringShort
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/pages/LogsOptions-class.html b/docs/pages/LogsOptions-class.html new file mode 100644 index 0000000000..c04410ce8d --- /dev/null +++ b/docs/pages/LogsOptions-class.html @@ -0,0 +1,438 @@ + + + + + + + + LogsOptions class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsOptions
+ +
+ +
+
+
+
+
+ +

LogsOptions class + +

+ + +
+

A widget to show the options for the logs page.

+

This is separate from the logs display so that the menu doesn't flicker when new logs arrive.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ LogsOptions(LogsOptionsViewModel model) +
+
+ Listens to the view model without disposing it. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + LogsOptionsViewModel + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, LogsOptionsViewModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + LogsOptionsViewModel + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<LogsOptionsViewModel> oldWidget, LogsOptionsViewModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ getStatusColor(Device device) + Color? + + + +
+
+ Returns the appropriate status icon for the log messages received from device + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ sshButton(Device device) + Widget? + + + +
+
+ Returns a button to open an SSH connection to device + + +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsOptions/LogsOptions.html b/docs/pages/LogsOptions/LogsOptions.html new file mode 100644 index 0000000000..1deb1248d4 --- /dev/null +++ b/docs/pages/LogsOptions/LogsOptions.html @@ -0,0 +1,112 @@ + + + + + + + + LogsOptions constructor - LogsOptions - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsOptions
+ +
+ +
+
+
+
+
+ +

LogsOptions constructor +

+ +
+ const + LogsOptions(
  1. LogsOptionsViewModel model
  2. +
) +
+ +
+

Listens to the view model without disposing it.

+
+ + + +
+

Implementation

+
const LogsOptions(super.model) : super();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsOptions/build.html b/docs/pages/LogsOptions/build.html new file mode 100644 index 0000000000..59e45f607c --- /dev/null +++ b/docs/pages/LogsOptions/build.html @@ -0,0 +1,200 @@ + + + + + + + + build method - LogsOptions class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. LogsOptionsViewModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, LogsOptionsViewModel model) => Column(
+  children: [
+    Row(
+      mainAxisAlignment: MainAxisAlignment.center,
+      children: [
+        for (final device in _devices) SizedBox(
+          width: 250,
+          child: Card(
+            child: Column(
+              children: [
+                ListTile(
+                  onTap: () => model.resetDevice(device),
+                  leading: const Icon(Icons.restart_alt),
+                  title: Text("Reset ${device.humanName}"),
+                  subtitle: const Text("The device will reboot"),
+                ),
+                Padding(
+                  padding: const EdgeInsets.all(4),
+                  child: Row(
+                    mainAxisAlignment: MainAxisAlignment.spaceEvenly,
+                    children: [
+                      Icon(Icons.circle, color: getStatusColor(device)),
+                      NetworkStatusIcon(
+                        device: device,
+                        tooltip: "Ping Device",
+                        onPressed: Platform.isWindows ? () => model.ping(device) : null,
+                      ),
+                      sshButton(device) ?? Container(),
+                    ],
+                  ),
+                ),
+              ],
+            ),
+          ),
+        ),
+      ],
+    ),
+    Row(
+      mainAxisAlignment: MainAxisAlignment.center,
+      children: [
+        DropdownMenu<Device?>(
+          label: const Text("Select Device"),
+          initialSelection: model.deviceFilter,
+          onSelected: model.setDeviceFilter,
+          dropdownMenuEntries: [
+            for (final device in [Device.SUBSYSTEMS, Device.VIDEO, Device.AUTONOMY, null])
+              DropdownMenuEntry(label: device?.humanName ?? "All", value: device),
+          ],
+        ),
+        const SizedBox(width: 8),
+        DropdownMenu<BurtLogLevel>(
+          label: const Text("Select Severity"),
+          initialSelection: model.levelFilter,
+          onSelected: model.setLevelFilter,
+          dropdownMenuEntries: [
+            for (final level in BurtLogLevel.values.filtered)
+              DropdownMenuEntry(label: level.humanName, value: level),
+          ],
+        ),
+        const SizedBox(width: 8),
+        SizedBox(
+          width: 250,
+          child: CheckboxListTile(
+            title: const Text("Autoscroll"),
+            subtitle: const Text("Scroll to override"),
+            value: model.autoscroll,
+            onChanged: model.setAutoscroll,
+          ),
+        ),
+        const SizedBox(width: 8),
+        IconButton(
+          onPressed: model.togglePause,
+          icon: Icon((model.paused) ? Icons.play_arrow : Icons.pause),
+        ),
+      ],
+    ),
+  ],
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsOptions/getStatusColor.html b/docs/pages/LogsOptions/getStatusColor.html new file mode 100644 index 0000000000..3a22fe89d2 --- /dev/null +++ b/docs/pages/LogsOptions/getStatusColor.html @@ -0,0 +1,127 @@ + + + + + + + + getStatusColor method - LogsOptions class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getStatusColor
+ +
+ +
+
+
+
+
+ +

getStatusColor method +

+ +
+ +Color? +getStatusColor(
  1. Device device
  2. +
) + + + +
+ +
+

Returns the appropriate status icon for the log messages received from device

+
+ + + +
+

Implementation

+
Color? getStatusColor(Device device) {
+  final socket = models.sockets.socketForDevice(device);
+  final lowestLevel = model.getSeverity(device);
+  if (socket == null || !socket.isConnected) return Colors.black;
+  return switch (lowestLevel) {
+    BurtLogLevel.critical => Colors.red,
+    BurtLogLevel.info || BurtLogLevel.debug || BurtLogLevel.trace => Colors.green,
+    BurtLogLevel.warning => Colors.yellow,
+    BurtLogLevel.error => Colors.red,
+    _ => null,
+  };
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsOptions/sshButton.html b/docs/pages/LogsOptions/sshButton.html new file mode 100644 index 0000000000..904503d572 --- /dev/null +++ b/docs/pages/LogsOptions/sshButton.html @@ -0,0 +1,124 @@ + + + + + + + + sshButton method - LogsOptions class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sshButton
+ +
+ +
+
+
+
+
+ +

sshButton method +

+ +
+ +Widget? +sshButton(
  1. Device device
  2. +
) + + + +
+ +
+

Returns a button to open an SSH connection to device

+
+ + + +
+

Implementation

+
Widget? sshButton(Device device) {
+  final socket = models.sockets.socketForDevice(device);
+  if (socket == null || !Platform.isWindows) return null;
+  return TextButton.icon(
+    onPressed: () => model.openSsh(device, socket),
+    label: const Text("Open SSH"),
+    icon: const Icon(Icons.lan),
+  );
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsPage-class-sidebar.html b/docs/pages/LogsPage-class-sidebar.html new file mode 100644 index 0000000000..9c7f3f841b --- /dev/null +++ b/docs/pages/LogsPage-class-sidebar.html @@ -0,0 +1,35 @@ +
    + +
  1. Constructors
  2. +
  3. LogsPage
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. + +
  13. Methods
  14. +
  15. createElement
  16. +
  17. createState
  18. +
  19. debugDescribeChildren
  20. +
  21. debugFillProperties
  22. +
  23. noSuchMethod
  24. +
  25. toDiagnosticsNode
  26. +
  27. toString
  28. +
  29. toStringDeep
  30. +
  31. toStringShallow
  32. +
  33. toStringShort
  34. + +
  35. Operators
  36. +
  37. operator ==
  38. + + + + + + +
diff --git a/docs/pages/LogsPage-class.html b/docs/pages/LogsPage-class.html new file mode 100644 index 0000000000..7e28bec487 --- /dev/null +++ b/docs/pages/LogsPage-class.html @@ -0,0 +1,347 @@ + + + + + + + + LogsPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsPage
+ +
+ +
+
+
+
+
+ +

LogsPage class + +

+ + +
+

The logs page, containing the LogsOptions and LogsBody widgets.

+

This page lets the user view logs, set filters, and reboot the rover.

+

This must be a StatefulWidget, not a ReactiveWidget, to prevent flickering when the UI updates.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ LogsPage() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createState() + LogsState + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
override
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsPage/LogsPage.html b/docs/pages/LogsPage/LogsPage.html new file mode 100644 index 0000000000..95fee67a1b --- /dev/null +++ b/docs/pages/LogsPage/LogsPage.html @@ -0,0 +1,104 @@ + + + + + + + + LogsPage constructor - LogsPage - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsPage
+ +
+ +
+
+
+
+
+ +

LogsPage constructor +

+ +
+ + LogsPage() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsPage/createState.html b/docs/pages/LogsPage/createState.html new file mode 100644 index 0000000000..46f3ba5166 --- /dev/null +++ b/docs/pages/LogsPage/createState.html @@ -0,0 +1,133 @@ + + + + + + + + createState method - LogsPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createState
+ +
+ +
+
+
+
+
+ +

createState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+LogsState +createState() + +
override
+ +
+ +
+

Creates the mutable state for this widget at a given location in the tree.

+

Subclasses should override this method to return a newly created +instance of their associated State subclass:

+
@override
+State<SomeWidget> createState() => _SomeWidgetState();
+
+

The framework can call this method multiple times over the lifetime of +a StatefulWidget. For example, if the widget is inserted into the tree +in multiple locations, the framework will create a separate State object +for each location. Similarly, if the widget is removed from the tree and +later inserted into the tree again, the framework will call createState +again to create a fresh State object, simplifying the lifecycle of +State objects.

+
+ + + +
+

Implementation

+
@override
+LogsState createState() => LogsState();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsState-class-sidebar.html b/docs/pages/LogsState-class-sidebar.html new file mode 100644 index 0000000000..442004d3ac --- /dev/null +++ b/docs/pages/LogsState-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. LogsState
  4. + + + +
  5. + Properties +
  6. +
  7. context
  8. +
  9. hashCode
  10. +
  11. model
  12. +
  13. mounted
  14. +
  15. runtimeType
  16. +
  17. widget
  18. + +
  19. Methods
  20. +
  21. activate
  22. +
  23. build
  24. +
  25. deactivate
  26. +
  27. debugFillProperties
  28. +
  29. didChangeDependencies
  30. +
  31. didUpdateWidget
  32. +
  33. dispose
  34. +
  35. initState
  36. +
  37. noSuchMethod
  38. +
  39. reassemble
  40. +
  41. setState
  42. +
  43. toDiagnosticsNode
  44. +
  45. toString
  46. +
  47. toStringShort
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/pages/LogsState-class.html b/docs/pages/LogsState-class.html new file mode 100644 index 0000000000..3262d0f8b7 --- /dev/null +++ b/docs/pages/LogsState-class.html @@ -0,0 +1,433 @@ + + + + + + + + LogsState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsState
+ +
+ +
+
+
+
+
+ +

LogsState class + +

+ + +
+

The state of the logs page. Used to ensure that the LogsViewModel is only created once.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ LogsState() +
+
+ +
+
+
+ +
+

Properties

+
+
+ context + BuildContext + + +
+
+ The location in the tree where this widget builds. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ model + LogsViewModel + + +
+
+ The view model for this page. +
final
+ +
+ +
+ mounted + → bool + + +
+
+ Whether this State object is currently in a tree. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ widget + LogsPage + + +
+
+ The current configuration. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ activate() + → void + + + +
+
+ Called when this object is reinserted into the tree after having been +removed via deactivate. +
inherited
+ +
+ +
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ deactivate() + → void + + + +
+
+ Called when this object is removed from the tree. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didChangeDependencies() + → void + + + +
+
+ Called when a dependency of this State object changes. +
inherited
+ +
+ +
+ didUpdateWidget(covariant LogsPage oldWidget) + → void + + + +
+
+ Called whenever the widget configuration changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Called when this object is removed from the tree permanently. +
inherited
+ +
+ +
+ initState() + → void + + + +
+
+ Called when this object is inserted into the tree. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ reassemble() + → void + + + +
+
+ Called whenever the application is reassembled during debugging, for +example during hot reload. +
inherited
+ +
+ +
+ setState(VoidCallback fn) + → void + + + +
+
+ Notify the framework that the internal state of this object has changed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A brief description of this object, usually just the runtimeType and the +hashCode. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsState/LogsState.html b/docs/pages/LogsState/LogsState.html new file mode 100644 index 0000000000..836c60fa86 --- /dev/null +++ b/docs/pages/LogsState/LogsState.html @@ -0,0 +1,104 @@ + + + + + + + + LogsState constructor - LogsState - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
LogsState
+ +
+ +
+
+
+
+
+ +

LogsState constructor +

+ +
+ + LogsState() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsState/build.html b/docs/pages/LogsState/build.html new file mode 100644 index 0000000000..6f772914fa --- /dev/null +++ b/docs/pages/LogsState/build.html @@ -0,0 +1,271 @@ + + + + + + + + build method - LogsState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method in a number of different situations. For +example:

+ +

This method can potentially be called in every frame and should not have +any side effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor, the +given BuildContext, and the internal state of this State object.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. The +BuildContext argument is always the same as the context property of +this State object and will remain the same for the lifetime of this +object. The BuildContext argument is provided redundantly here so that +this method matches the signature for a WidgetBuilder.

+

Design discussion

+

Why is the build method on State, and not StatefulWidget?

+

Putting a Widget build(BuildContext context) method on State rather +than putting a Widget build(BuildContext context, State state) method +on StatefulWidget gives developers more flexibility when subclassing +StatefulWidget.

+

For example, AnimatedWidget is a subclass of StatefulWidget that +introduces an abstract Widget build(BuildContext context) method for its +subclasses to implement. If StatefulWidget already had a build method +that took a State argument, AnimatedWidget would be forced to provide +its State object to subclasses even though its State object is an +internal implementation detail of AnimatedWidget.

+

Conceptually, StatelessWidget could also be implemented as a subclass of +StatefulWidget in a similar manner. If the build method were on +StatefulWidget rather than State, that would not be possible anymore.

+

Putting the build function on State rather than StatefulWidget also +helps avoid a category of bugs related to closures implicitly capturing +this. If you defined a closure in a build function on a +StatefulWidget, that closure would implicitly capture this, which is +the current widget instance, and would have the (immutable) fields of that +instance in scope:

+
// (this is not valid Flutter code)
+class MyButton extends StatefulWidgetX {
+  MyButton({super.key, required this.color});
+
+  final Color color;
+
+  @override
+  Widget build(BuildContext context, State state) {
+    return SpecialWidget(
+      handler: () { print('color: $color'); },
+    );
+  }
+}
+
+

For example, suppose the parent builds MyButton with color being blue, +the $color in the print function refers to blue, as expected. Now, +suppose the parent rebuilds MyButton with green. The closure created by +the first build still implicitly refers to the original widget and the +$color still prints blue even through the widget has been updated to +green; should that closure outlive its widget, it would print outdated +information.

+

In contrast, with the build function on the State object, closures +created during build implicitly capture the State instance instead of +the widget instance:

+
class MyButton extends StatefulWidget {
+  const MyButton({super.key, this.color = Colors.teal});
+
+  final Color color;
+  // ...
+}
+
+class MyButtonState extends State<MyButton> {
+  // ...
+  @override
+  Widget build(BuildContext context) {
+    return SpecialWidget(
+      handler: () { print('color: ${widget.color}'); },
+    );
+  }
+}
+
+

Now when the parent rebuilds MyButton with green, the closure created by +the first build still refers to State object, which is preserved across +rebuilds, but the framework has updated that State object's widget +property to refer to the new MyButton instance and ${widget.color} +prints green, as expected.

+

See also:

+
    +
  • StatefulWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Scaffold(
+  body: Column(children: [
+    const SizedBox(height: 12),
+    LogsOptions(model.options),
+    const Divider(),
+    Expanded(child: LogsBody(model)),
+  ],),
+  appBar: AppBar(
+    title: const Text("Logs"),
+    actions: [
+      IconButton(
+        icon: const Icon(Icons.help),
+        tooltip: "Help",
+        onPressed: () => showDialog<void>(
+          context: context,
+          builder: (context) => AlertDialog(
+            title: const Text("Logs Help"),
+            content: Column(mainAxisSize: MainAxisSize.min, children: [
+              const Text("This page contains all logs received by the dashboard.\nSelecting a level means that only messages of that level or higher will be shown.", textAlign: TextAlign.center,),
+              const SizedBox(height: 4),
+              ListTile(leading: criticalWidget, title: const Text("Critical"), subtitle: const Text("The rover is in a broken state and may shutdown")),
+              const ListTile(leading: errorWidget, title: Text("Error"), subtitle: Text("Something you tried didn't work, but the rover can still function")),
+              const ListTile(leading: warningWidget, title: Text("Warning"), subtitle: Text("Something may have gone wrong, you should check it out")),
+              ListTile(leading: infoWidget, title: const Text("Info"), subtitle: const Text("The rover is functioning normally")),
+              const ListTile(leading: debugWidget, title: Text("Debug"), subtitle: Text("Extra information that shows what the rover's thinking")),
+              const ListTile(leading: traceWidget, title: Text("Trace"), subtitle: Text("Values from the code to debug specific issues")),
+              const SizedBox(height: 12),
+            ],),
+            actions: [
+              ElevatedButton(
+                onPressed: () => Navigator.of(context).pop(),
+                child: const Text("Close"),
+              ),
+            ],
+          ),
+        ),
+      ),
+      IconButton(
+        icon: const Icon(Icons.vertical_align_bottom),
+        onPressed: model.jumpToBottom,
+        tooltip: "Jump to Bottom",
+      ),
+      IconButton(
+        icon: const Icon(Icons.delete_forever),
+        onPressed: models.logs.clear,
+        tooltip: "Clear Logs",
+      ),
+    ],
+  ),
+  bottomNavigationBar: const Footer(showLogs: false),
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/LogsState/model.html b/docs/pages/LogsState/model.html new file mode 100644 index 0000000000..d77f18ab15 --- /dev/null +++ b/docs/pages/LogsState/model.html @@ -0,0 +1,115 @@ + + + + + + + + model property - LogsState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
model
+ +
+ +
+
+
+
+
+ +

model property +

+ + +
+ + LogsViewModel + model +
final
+ +
+ +
+

The view model for this page.

+
+ + +
+

Implementation

+
final model = LogsViewModel();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/MapPage-class-sidebar.html b/docs/pages/MapPage-class-sidebar.html new file mode 100644 index 0000000000..b84a7f4167 --- /dev/null +++ b/docs/pages/MapPage-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. MapPage
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. index
  10. +
  11. key
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. getColor
  34. +
  35. noSuchMethod
  36. +
  37. placeMarker
  38. +
  39. toDiagnosticsNode
  40. +
  41. toString
  42. +
  43. toStringDeep
  44. +
  45. toStringShallow
  46. +
  47. toStringShort
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/pages/MapPage-class.html b/docs/pages/MapPage-class.html new file mode 100644 index 0000000000..1406a73c74 --- /dev/null +++ b/docs/pages/MapPage-class.html @@ -0,0 +1,438 @@ + + + + + + + + MapPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MapPage
+ +
+ +
+
+
+
+
+ +

MapPage class + +

+ + +
+

The UI for the autonomy subsystem.

+

Displays a bird's-eye view of the rover and its path to the goal.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ MapPage({required int index}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ The index of this view. +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, AutonomyModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + AutonomyModel + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<AutonomyModel> oldWidget, AutonomyModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ getColor(AutonomyCell cell) + Color? + + + +
+
+ Gets the color for a given AutonomyCell. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ placeMarker(BuildContext context, AutonomyModel model) + → void + + + +
+
+ Opens a dialog to prompt the user for GPS coordinates and places a marker there. + + +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/MapPage/MapPage.html b/docs/pages/MapPage/MapPage.html new file mode 100644 index 0000000000..5b993f6a4c --- /dev/null +++ b/docs/pages/MapPage/MapPage.html @@ -0,0 +1,112 @@ + + + + + + + + MapPage constructor - MapPage - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MapPage
+ +
+ +
+
+
+
+
+ +

MapPage constructor +

+ +
+ const + MapPage({
  1. required int index,
  2. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const MapPage({required this.index});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/MapPage/build.html b/docs/pages/MapPage/build.html new file mode 100644 index 0000000000..0478a98502 --- /dev/null +++ b/docs/pages/MapPage/build.html @@ -0,0 +1,228 @@ + + + + + + + + build method - MapPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. AutonomyModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, AutonomyModel model) => Stack(children: [
+    Column(
+      crossAxisAlignment: CrossAxisAlignment.start,
+      children: [
+      const SizedBox(height: 48),
+      for (final row in model.grid.reversed) Expanded(
+        child: Row(children: [
+          for (final cell in row) Expanded(
+            child: GestureDetector(
+              onTap: () => cell.$2 != AutonomyCell.marker ? () : model.updateMarker(cell.$1),
+              child: Container(
+                width: 24,
+                decoration: BoxDecoration(color: getColor(cell.$2), border: Border.all()),
+                child: cell.$2 != AutonomyCell.rover ? null : Container(
+                  color: Colors.blue,
+                  width: double.infinity,
+                  height: double.infinity,
+                  margin: const EdgeInsets.all(4),
+                  child: Transform.rotate(
+                    angle: -model.roverHeading * pi / 180,
+                    child: const Icon(Icons.arrow_upward, size: 24),
+                  ),
+                ),
+              ),
+            ),
+          ),
+        ],),
+      ),
+      const SizedBox(height: 4),
+      if (!model.isPlayingBadApple) Row(children: [  // Legend
+        const SizedBox(width: 4),
+        Text("Legend:", style: context.textTheme.titleLarge),
+        const SizedBox(width: 8),
+        Container(width: 24, height: 24, color: Colors.blue),
+        const SizedBox(width: 4),
+        Text("Rover", style: context.textTheme.titleMedium),
+        const SizedBox(width: 24),
+        Container(width: 24, height: 24, color: Colors.green),
+        const SizedBox(width: 4),
+        Text("Destination", style: context.textTheme.titleMedium),
+        const SizedBox(width: 24),
+        Container(width: 24, height: 24, color: Colors.black),
+        const SizedBox(width: 4),
+        Text("Obstacle", style: context.textTheme.titleMedium),
+        const SizedBox(width: 24),
+        Container(width: 24, height: 24, color: Colors.blueGrey),
+        const SizedBox(width: 4),
+        Text("Path", style: context.textTheme.titleMedium),
+        const SizedBox(width: 24),
+        Container(width: 24, height: 24, color: Colors.red),
+        const SizedBox(width: 4),
+        Text("Marker", style: context.textTheme.titleMedium),
+        const Spacer(),
+        Text("Zoom: ", style: context.textTheme.titleLarge),
+        Expanded(flex: 2, child: Slider(
+          value: model.gridSize.toDouble(),
+          min: 1,
+          max: 41,
+          divisions: 20,
+          label: "${model.gridSize}x${model.gridSize}",
+          onChanged: (value) => model.zoom(value.toInt()),
+        ),),
+      ],),
+      if (!model.isPlayingBadApple) Row(children: [  // Controls
+        const SizedBox(width: 4),
+        Text("Place marker: ", style: context.textTheme.titleLarge),
+        const SizedBox(width: 8),
+        ElevatedButton.icon(
+          icon: const Icon(Icons.add),
+          label: const Text("Add Marker"),
+          onPressed: () => placeMarker(context, model),
+        ),
+        const SizedBox(width: 8),
+        ElevatedButton.icon(
+          icon: const Icon(Icons.location_on),
+          label: const Text("Drop marker here"),
+          onPressed: model.placeMarkerOnRover,
+        ),
+        const SizedBox(width: 8),
+        ElevatedButton.icon(icon: const Icon(Icons.clear), label: const Text("Clear all"), onPressed: model.clearMarkers),
+        const Spacer(),
+      ],),
+      const SizedBox(height: 8),
+      AutonomyCommandEditor(model),
+      const VerticalDivider(),
+      const SizedBox(height: 4),
+    ],),
+    Container(
+      color: context.colorScheme.surface,
+      height: 50,
+      child: Row(children: [  // The header at the top
+        const SizedBox(width: 8),
+        Text("Map", style: context.textTheme.headlineMedium),
+        if (models.settings.easterEggs.badApple) IconButton(
+          iconSize: 48,
+            icon: CircleAvatar(
+            backgroundImage: const AssetImage("assets/bad_apple_thumbnail.webp"),
+            child: model.isPlayingBadApple ? const Icon(Icons.block, color: Colors.red, size: 36) : null,
+          ),
+          onPressed: model.isPlayingBadApple ? model.stopBadApple : model.startBadApple,
+        ),
+        const Spacer(),
+        ViewsSelector(index: index),
+      ],),
+    ),
+  ],);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/MapPage/createModel.html b/docs/pages/MapPage/createModel.html new file mode 100644 index 0000000000..0562b0544c --- /dev/null +++ b/docs/pages/MapPage/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - MapPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+AutonomyModel +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+AutonomyModel createModel() => AutonomyModel();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/MapPage/getColor.html b/docs/pages/MapPage/getColor.html new file mode 100644 index 0000000000..ccf1724c6b --- /dev/null +++ b/docs/pages/MapPage/getColor.html @@ -0,0 +1,123 @@ + + + + + + + + getColor method - MapPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getColor
+ +
+ +
+
+
+
+
+ +

getColor method +

+ +
+ +Color? +getColor(
  1. AutonomyCell cell
  2. +
) + + + +
+ +
+

Gets the color for a given AutonomyCell.

+
+ + + +
+

Implementation

+
Color? getColor(AutonomyCell cell) => switch(cell) {
+	AutonomyCell.destination => Colors.green,
+	AutonomyCell.obstacle => Colors.black,
+	AutonomyCell.path => Colors.blueGrey,
+	AutonomyCell.empty => Colors.white,
+	AutonomyCell.marker => Colors.red,
+	AutonomyCell.rover => Colors.transparent,
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/MapPage/index.html b/docs/pages/MapPage/index.html new file mode 100644 index 0000000000..14cd70ddc2 --- /dev/null +++ b/docs/pages/MapPage/index.html @@ -0,0 +1,115 @@ + + + + + + + + index property - MapPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+ +

index property +

+ + +
+ + int + index +
final
+ +
+ +
+

The index of this view.

+
+ + +
+

Implementation

+
final int index;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/MapPage/placeMarker.html b/docs/pages/MapPage/placeMarker.html new file mode 100644 index 0000000000..054508aba2 --- /dev/null +++ b/docs/pages/MapPage/placeMarker.html @@ -0,0 +1,133 @@ + + + + + + + + placeMarker method - MapPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
placeMarker
+ +
+ +
+
+
+
+
+ +

placeMarker method +

+ +
+ +void +placeMarker(
  1. BuildContext context,
  2. +
  3. AutonomyModel model
  4. +
) + + + +
+ +
+

Opens a dialog to prompt the user for GPS coordinates and places a marker there.

+
+ + + +
+

Implementation

+
void placeMarker(BuildContext context, AutonomyModel model) => showDialog<void>(
+  context: context,
+  builder: (_) => AlertDialog(
+    title: const Text("Add a Marker"),
+    content: Column(
+      mainAxisSize: MainAxisSize.min,
+      children: [ GpsEditor(model.markerBuilder) ],
+    ),
+    actions: [
+      TextButton(child: const Text("Cancel"), onPressed: () => Navigator.of(context).pop()),
+      ElevatedButton(
+        onPressed: model.markerBuilder.isValid ? () { model.placeMarker(); Navigator.of(context).pop(); } : null,
+        child: const Text("Add"),
+      ),
+    ],
+  ),
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ResultsBox-class-sidebar.html b/docs/pages/ResultsBox-class-sidebar.html new file mode 100644 index 0000000000..003261ccae --- /dev/null +++ b/docs/pages/ResultsBox-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  1. Constructors
  2. +
  3. ResultsBox
  4. + + + +
  5. + Properties +
  6. +
  7. analysis
  8. +
  9. color
  10. +
  11. hashCode
  12. +
  13. key
  14. +
  15. runtimeType
  16. +
  17. text
  18. + +
  19. Methods
  20. +
  21. build
  22. +
  23. createElement
  24. +
  25. debugDescribeChildren
  26. +
  27. debugFillProperties
  28. +
  29. noSuchMethod
  30. +
  31. toDiagnosticsNode
  32. +
  33. toString
  34. +
  35. toStringDeep
  36. +
  37. toStringShallow
  38. +
  39. toStringShort
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/pages/ResultsBox-class.html b/docs/pages/ResultsBox-class.html new file mode 100644 index 0000000000..6efad322d9 --- /dev/null +++ b/docs/pages/ResultsBox-class.html @@ -0,0 +1,382 @@ + + + + + + + + ResultsBox class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ResultsBox
+ +
+ +
+
+
+
+
+ +

ResultsBox class + +

+ + +
+

A box to display the final results for each sensor.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ResultsBox(ScienceAnalysis analysis) +
+
+ Creates a widget to display the results of a science test. +
const
+
+
+
+ +
+

Properties

+
+
+ analysis + ScienceAnalysis + + +
+
+ The sensor being tested. +
final
+ +
+ +
+ color + Color? + + +
+
+ The color to render this box. +
no setter
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ text + → String + + +
+
+ The text to display in this box. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ResultsBox/ResultsBox.html b/docs/pages/ResultsBox/ResultsBox.html new file mode 100644 index 0000000000..29b5dba9ea --- /dev/null +++ b/docs/pages/ResultsBox/ResultsBox.html @@ -0,0 +1,112 @@ + + + + + + + + ResultsBox constructor - ResultsBox - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ResultsBox
+ +
+ +
+
+
+
+
+ +

ResultsBox constructor +

+ +
+ const + ResultsBox(
  1. ScienceAnalysis analysis
  2. +
) +
+ +
+

Creates a widget to display the results of a science test.

+
+ + + +
+

Implementation

+
const ResultsBox(this.analysis);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ResultsBox/analysis.html b/docs/pages/ResultsBox/analysis.html new file mode 100644 index 0000000000..3acdf935db --- /dev/null +++ b/docs/pages/ResultsBox/analysis.html @@ -0,0 +1,115 @@ + + + + + + + + analysis property - ResultsBox class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
analysis
+ +
+ +
+
+
+
+
+ +

analysis property +

+ + +
+ + ScienceAnalysis + analysis +
final
+ +
+ +
+

The sensor being tested.

+
+ + +
+

Implementation

+
final ScienceAnalysis analysis;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ResultsBox/build.html b/docs/pages/ResultsBox/build.html new file mode 100644 index 0000000000..0b1ff8ec43 --- /dev/null +++ b/docs/pages/ResultsBox/build.html @@ -0,0 +1,182 @@ + + + + + + + + build method - ResultsBox class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Column(children: [
+	Expanded(child: Container(
+		margin: const EdgeInsets.all(8),
+		padding: const EdgeInsets.all(8),
+		width: double.infinity,
+		color: color ?? context.colorScheme.surface,
+		child: Column(
+			crossAxisAlignment: CrossAxisAlignment.start,
+			children: [
+				Text(analysis.sensor.testDescription),
+				const Spacer(),
+				Center(child: Text(text, textAlign: TextAlign.center, style: context.textTheme.headlineLarge)),
+				const Spacer(),
+			],
+		),
+	),),
+	NumberEditor(
+		name: "Min",
+		model: analysis.testBuilder.min,
+	),
+	NumberEditor(
+		name: "Average",
+		model: analysis.testBuilder.average,
+	),
+	NumberEditor(
+		name: "Max",
+		model: analysis.testBuilder.max,
+	),
+],);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ResultsBox/color.html b/docs/pages/ResultsBox/color.html new file mode 100644 index 0000000000..7240d59f27 --- /dev/null +++ b/docs/pages/ResultsBox/color.html @@ -0,0 +1,129 @@ + + + + + + + + color property - ResultsBox class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
color
+ +
+ +
+
+
+
+
+ +

color property +

+ + + + + +
+
+ + Color? + get + color + + +
+ +
+

The color to render this box.

+
+ + +
+

Implementation

+
Color? get color {
+	switch(analysis.testResult) {
+		case ScienceResult.extinct: return Colors.red;
+		case ScienceResult.extant: return Colors.green;
+		case ScienceResult.notPresent: return Colors.red;
+		case ScienceResult.inconclusive: return Colors.blueGrey;
+		case ScienceResult.loading: return null;
+	}
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ResultsBox/text.html b/docs/pages/ResultsBox/text.html new file mode 100644 index 0000000000..a28897327a --- /dev/null +++ b/docs/pages/ResultsBox/text.html @@ -0,0 +1,129 @@ + + + + + + + + text property - ResultsBox class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
text
+ +
+ +
+
+
+
+
+ +

text property +

+ + + + + +
+
+ + String + get + text + + +
+ +
+

The text to display in this box.

+
+ + +
+

Implementation

+
String get text {
+	switch(analysis.testResult) {
+		case ScienceResult.extinct: return "Extinct";
+		case ScienceResult.extant: return "Extant";
+		case ScienceResult.notPresent: return "Not Present";
+		case ScienceResult.inconclusive: return "Inconclusive";
+		case ScienceResult.loading: return "Collecting data...";
+	}
+}
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Rock-class-sidebar.html b/docs/pages/Rock-class-sidebar.html new file mode 100644 index 0000000000..eeb6b52497 --- /dev/null +++ b/docs/pages/Rock-class-sidebar.html @@ -0,0 +1,29 @@ +
    + +
  1. Constructors
  2. +
  3. Rock
  4. + + + +
  5. + Properties +
  6. +
  7. description
  8. +
  9. hashCode
  10. +
  11. image
  12. +
  13. name
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. noSuchMethod
  20. +
  21. toString
  22. + +
  23. Operators
  24. +
  25. operator ==
  26. + + + + + + +
diff --git a/docs/pages/Rock-class.html b/docs/pages/Rock-class.html new file mode 100644 index 0000000000..f8fc79046a --- /dev/null +++ b/docs/pages/Rock-class.html @@ -0,0 +1,240 @@ + + + + + + + + Rock class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Rock
+ +
+ +
+
+
+
+
+ +

Rock class + +

+ + +
+

Contains data and knowledge about a specific rock type.

+
+ + + + +
+

Constructors

+
+
+ Rock(String name, String image, String description) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ description + → String + + +
+
+ A description of the rock. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ image + → String + + +
+
+ The path to the image of the rock. +
final
+ +
+ +
+ name + → String + + +
+
+ The name of the rock. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Rock/Rock.html b/docs/pages/Rock/Rock.html new file mode 100644 index 0000000000..e8cdce0d60 --- /dev/null +++ b/docs/pages/Rock/Rock.html @@ -0,0 +1,114 @@ + + + + + + + + Rock constructor - Rock - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Rock
+ +
+ +
+
+
+
+
+ +

Rock constructor +

+ +
+ const + Rock(
  1. String name,
  2. +
  3. String image,
  4. +
  5. String description
  6. +
) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const Rock(this.name, this.image, this.description);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Rock/description.html b/docs/pages/Rock/description.html new file mode 100644 index 0000000000..db8324d37a --- /dev/null +++ b/docs/pages/Rock/description.html @@ -0,0 +1,115 @@ + + + + + + + + description property - Rock class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
description
+ +
+ +
+
+
+
+
+ +

description property +

+ + +
+ + String + description +
final
+ +
+ +
+

A description of the rock.

+
+ + +
+

Implementation

+
final String description;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Rock/hashCode.html b/docs/pages/Rock/hashCode.html new file mode 100644 index 0000000000..122b1e7d18 --- /dev/null +++ b/docs/pages/Rock/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - Rock class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Rock/image.html b/docs/pages/Rock/image.html new file mode 100644 index 0000000000..e9e85950f5 --- /dev/null +++ b/docs/pages/Rock/image.html @@ -0,0 +1,115 @@ + + + + + + + + image property - Rock class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
image
+ +
+ +
+
+
+
+
+ +

image property +

+ + +
+ + String + image +
final
+ +
+ +
+

The path to the image of the rock.

+
+ + +
+

Implementation

+
final String image;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Rock/name.html b/docs/pages/Rock/name.html new file mode 100644 index 0000000000..24b1d33094 --- /dev/null +++ b/docs/pages/Rock/name.html @@ -0,0 +1,115 @@ + + + + + + + + name property - Rock class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + +
+ + String + name +
final
+ +
+ +
+

The name of the rock.

+
+ + +
+

Implementation

+
final String name;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Rock/noSuchMethod.html b/docs/pages/Rock/noSuchMethod.html new file mode 100644 index 0000000000..42ac197dc6 --- /dev/null +++ b/docs/pages/Rock/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - Rock class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Rock/operator_equals.html b/docs/pages/Rock/operator_equals.html new file mode 100644 index 0000000000..d4e79dc61a --- /dev/null +++ b/docs/pages/Rock/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - Rock class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Rock/runtimeType.html b/docs/pages/Rock/runtimeType.html new file mode 100644 index 0000000000..85acb3b14d --- /dev/null +++ b/docs/pages/Rock/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - Rock class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Rock/toString.html b/docs/pages/Rock/toString.html new file mode 100644 index 0000000000..8fe100a528 --- /dev/null +++ b/docs/pages/Rock/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - Rock class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockModel-class-sidebar.html b/docs/pages/RockModel-class-sidebar.html new file mode 100644 index 0000000000..fa2f93d0a9 --- /dev/null +++ b/docs/pages/RockModel-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. RockModel
  4. + + + +
  5. + Properties +
  6. +
  7. controller
  8. +
  9. filteredRocks
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. query
  16. +
  17. rocks
  18. +
  19. runtimeType
  20. + +
  21. Methods
  22. +
  23. addListener
  24. +
  25. dispose
  26. +
  27. filter
  28. +
  29. noSuchMethod
  30. +
  31. notifyListeners
  32. +
  33. removeListener
  34. +
  35. search
  36. +
  37. toString
  38. + +
  39. Operators
  40. +
  41. operator ==
  42. + + + + + + +
diff --git a/docs/pages/RockModel-class.html b/docs/pages/RockModel-class.html new file mode 100644 index 0000000000..20515d628e --- /dev/null +++ b/docs/pages/RockModel-class.html @@ -0,0 +1,364 @@ + + + + + + + + RockModel class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RockModel
+ +
+ +
+
+
+
+
+ +

RockModel class + +

+ + +
+

A view model to control which rocks are shown on screen.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ RockModel() +
+
+ +
+
+
+ +
+

Properties

+
+
+ controller + SearchController + + +
+
+ The Flutter controller for the search bar. +
getter/setter pair
+ +
+ +
+ filteredRocks + → List<Rock> + + +
+
+ A filtered view of rocks that matches the query. +
no setter
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ query + → String + + +
+
+ The current search query from the search bar. +
no setter
+ +
+ +
+ rocks + → List<Rock> + + +
+
+ All rocks that can be shown. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
inherited
+ +
+ +
+ filter(Rock rock) + → bool + + + +
+
+ Whether the given rock matches the current query. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ + +
+ Filters the rocks by the query and saves it to filteredRocks. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockModel/RockModel.html b/docs/pages/RockModel/RockModel.html new file mode 100644 index 0000000000..3322c81a26 --- /dev/null +++ b/docs/pages/RockModel/RockModel.html @@ -0,0 +1,104 @@ + + + + + + + + RockModel constructor - RockModel - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RockModel
+ +
+ +
+
+
+
+
+ +

RockModel constructor +

+ +
+ + RockModel() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockModel/controller.html b/docs/pages/RockModel/controller.html new file mode 100644 index 0000000000..43d9ee7d90 --- /dev/null +++ b/docs/pages/RockModel/controller.html @@ -0,0 +1,115 @@ + + + + + + + + controller property - RockModel class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
controller
+ +
+ +
+
+
+
+
+ +

controller property +

+ + +
+ + SearchController + controller +
getter/setter pair
+ +
+ +
+

The Flutter controller for the search bar.

+
+ + +
+

Implementation

+
SearchController controller = SearchController();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockModel/filter.html b/docs/pages/RockModel/filter.html new file mode 100644 index 0000000000..b9e086cf3e --- /dev/null +++ b/docs/pages/RockModel/filter.html @@ -0,0 +1,117 @@ + + + + + + + + filter method - RockModel class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
filter
+ +
+ +
+
+
+
+
+ +

filter method +

+ +
+ +bool +filter(
  1. Rock rock
  2. +
) + + + +
+ +
+

Whether the given rock matches the current query.

+
+ + + +
+

Implementation

+
bool filter(Rock rock) => rock.name.toLowerCase().contains(query)
+  || rock.description.toLowerCase().contains(query);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockModel/filteredRocks.html b/docs/pages/RockModel/filteredRocks.html new file mode 100644 index 0000000000..84013d1159 --- /dev/null +++ b/docs/pages/RockModel/filteredRocks.html @@ -0,0 +1,121 @@ + + + + + + + + filteredRocks property - RockModel class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
filteredRocks
+ +
+ +
+
+
+
+
+ +

filteredRocks property +

+ + + + + +
+
+ + List<Rock> + get + filteredRocks + + +
+ +
+

A filtered view of rocks that matches the query.

+
+ + +
+

Implementation

+
List<Rock> get filteredRocks => rocks.where(filter).toList();
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockModel/query.html b/docs/pages/RockModel/query.html new file mode 100644 index 0000000000..c72505fb80 --- /dev/null +++ b/docs/pages/RockModel/query.html @@ -0,0 +1,121 @@ + + + + + + + + query property - RockModel class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
query
+ +
+ +
+
+
+
+
+ +

query property +

+ + + + + +
+
+ + String + get + query + + +
+ +
+

The current search query from the search bar.

+
+ + +
+

Implementation

+
String get query => controller.text;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockModel/rocks.html b/docs/pages/RockModel/rocks.html new file mode 100644 index 0000000000..d964b28fd9 --- /dev/null +++ b/docs/pages/RockModel/rocks.html @@ -0,0 +1,186 @@ + + + + + + + + rocks property - RockModel class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rocks
+ +
+ +
+
+
+
+
+ +

rocks property +

+ + +
+ + List<Rock> + rocks +
final
+ +
+ +
+

All rocks that can be shown.

+
+ + +
+

Implementation

+
final rocks = <Rock>[
+  const Rock(
+    "Shale",
+    "assets/Rocks_Minerals_Images/Shale.jpg",
+    "Has to be a carbonate-rich enviroment to cause dark coloring",
+  ),
+  const Rock(
+    "Mudstone",
+    "assets/Rocks_Minerals_Images/mudstone1.jpg",
+    "Clastic fine-grained, generally soft, variable color, clay silt",
+  ),
+   const Rock(
+    "Limestone",
+    "assets/Rocks_Minerals_Images/Limestone.jpg",
+    "Off white-gray, shallow marine enviroments, could contain fossils, chalky \n   \u2022 oolite, Chalk, Dense Limestone, Crystalline Limestone, Coquina, Micrite, Tavertine",
+  ),
+  const Rock(
+    "Dolomites/Dolostones",
+    "assets/Rocks_Minerals_Images/Dolomite1.jpg",
+    "Carbonate sedimentary rock",
+  ),
+  const Rock(
+    "Conglomerates",
+    "assets/Rocks_Minerals_Images/Conglomerate.jpg",
+    "Visible, rounded clasts within the matrix",
+  ),
+ const Rock(
+    "Basalt",
+    "assets/Rocks_Minerals_Images/Basalt.jpg",
+    "Fine-grained, dark coloring, no visible crystals",
+  ),
+   const Rock(
+    "Sandstone",
+    "assets/Rocks_Minerals_Images/Sandstone.jpg",
+    "Grainy appearance",
+  ),
+  const Rock(
+    "Phyllosilicates",
+    "assets/Rocks_Minerals_Images/Phyllosilicates.jpg",
+    "Clay \n   \u2022 Layers of tetrahedral and octahedral sheets",
+  ),
+  const Rock(
+    "Carbonates",
+    "assets/Rocks_Minerals_Images/Carbonate.jpg",
+    "Precipitate from water \n   \u2022 Fizzies when hydrochloric acid is placed on it",
+  ),
+  const Rock(
+    "Hematite",
+    "assets/Rocks_Minerals_Images/Hematite.jpg",
+    "Precipitate from water \n   \u2022 Deep red or brownish red streak",
+  ),
+  const Rock(
+    "Olivine",
+    "assets/Rocks_Minerals_Images/Olivine.jpg",
+    "Weathers in the presence of water \n   \u2022 Green or pale green, lack of cleavage, in rocks it's usually rounded",
+  ),
+   const Rock(
+    "Pyroxene",
+    "assets/Rocks_Minerals_Images/Pyroxene.jpg",
+    "Weathers in the presence of water \n   \u2022 Has cleavage, dark green to black",
+  ),
+     const Rock(
+    "Pigeonite",
+    "assets/Rocks_Minerals_Images/Pigeonite.jpg",
+    "Found on meteors",
+  ),
+  const Rock(
+    "Augite",
+    "assets/Rocks_Minerals_Images/Augite.jpg",
+    "Found on meteors \n   \u2022 Greenish white streak",
+  ),
+];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockModel/search.html b/docs/pages/RockModel/search.html new file mode 100644 index 0000000000..51bdd29a28 --- /dev/null +++ b/docs/pages/RockModel/search.html @@ -0,0 +1,116 @@ + + + + + + + + search method - RockModel class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
search
+ +
+ +
+
+
+
+
+ +

search method +

+ +
+ +void +search(
  1. String input
  2. +
) + + + +
+ +
+

Filters the rocks by the query and saves it to filteredRocks.

+
+ + + +
+

Implementation

+
void search(String input) => notifyListeners();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockWidget-class-sidebar.html b/docs/pages/RockWidget-class-sidebar.html new file mode 100644 index 0000000000..725e211169 --- /dev/null +++ b/docs/pages/RockWidget-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. RockWidget
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. rock
  12. +
  13. runtimeType
  14. + +
  15. Methods
  16. +
  17. build
  18. +
  19. createElement
  20. +
  21. debugDescribeChildren
  22. +
  23. debugFillProperties
  24. +
  25. noSuchMethod
  26. +
  27. toDiagnosticsNode
  28. +
  29. toString
  30. +
  31. toStringDeep
  32. +
  33. toStringShallow
  34. +
  35. toStringShort
  36. + +
  37. Operators
  38. +
  39. operator ==
  40. + + + + + + +
diff --git a/docs/pages/RockWidget-class.html b/docs/pages/RockWidget-class.html new file mode 100644 index 0000000000..b27ba431cb --- /dev/null +++ b/docs/pages/RockWidget-class.html @@ -0,0 +1,358 @@ + + + + + + + + RockWidget class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RockWidget
+ +
+ +
+
+
+
+
+ +

RockWidget class + +

+ + +
+

A widget to show a row with details about a specific kind of rock.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ RockWidget(Rock rock) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ rock + Rock + + +
+
+ The rock to show. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockWidget/RockWidget.html b/docs/pages/RockWidget/RockWidget.html new file mode 100644 index 0000000000..cacf46d713 --- /dev/null +++ b/docs/pages/RockWidget/RockWidget.html @@ -0,0 +1,112 @@ + + + + + + + + RockWidget constructor - RockWidget - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RockWidget
+ +
+ +
+
+
+
+
+ +

RockWidget constructor +

+ +
+ const + RockWidget(
  1. Rock rock
  2. +
) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const RockWidget(this.rock);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockWidget/build.html b/docs/pages/RockWidget/build.html new file mode 100644 index 0000000000..7e5ea45ebd --- /dev/null +++ b/docs/pages/RockWidget/build.html @@ -0,0 +1,191 @@ + + + + + + + + build method - RockWidget class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Row(
+  children: <Widget>[
+    Expanded(
+      child: Container(
+        decoration: BoxDecoration(
+          border: Border.all(
+              color: const Color.fromARGB(255, 212, 218, 228),),
+        ),
+        padding: const EdgeInsets.all(40),
+        child: Text(rock.name),
+      ),
+    ),
+    Expanded(
+      child: Container(
+        decoration: BoxDecoration(
+          border: Border.all(
+              color: const Color.fromARGB(255, 212, 218, 228),),
+          image:  DecorationImage(
+            image: AssetImage(rock.image),
+            fit: BoxFit.contain,
+          ),
+        ),
+        padding: const EdgeInsets.all(50),
+      ),
+    ),
+    Expanded(
+      flex: 3,
+      child: Container(
+        decoration: BoxDecoration(
+          border: Border.all(
+              color: const Color.fromARGB(255, 212, 218, 228),),
+        ),
+        padding: const EdgeInsets.all(40),
+        child: Text(rock.description),
+      ),
+    ),
+  ],
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RockWidget/rock.html b/docs/pages/RockWidget/rock.html new file mode 100644 index 0000000000..74550b49ee --- /dev/null +++ b/docs/pages/RockWidget/rock.html @@ -0,0 +1,115 @@ + + + + + + + + rock property - RockWidget class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rock
+ +
+ +
+
+
+
+
+ +

rock property +

+ + +
+ + Rock + rock +
final
+ +
+ +
+

The rock to show.

+
+ + +
+

Implementation

+
final Rock rock;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RocksPage-class-sidebar.html b/docs/pages/RocksPage-class-sidebar.html new file mode 100644 index 0000000000..ea04515521 --- /dev/null +++ b/docs/pages/RocksPage-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. RocksPage
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. index
  10. +
  11. key
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/pages/RocksPage-class.html b/docs/pages/RocksPage-class.html new file mode 100644 index 0000000000..65db2b7d01 --- /dev/null +++ b/docs/pages/RocksPage-class.html @@ -0,0 +1,411 @@ + + + + + + + + RocksPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RocksPage
+ +
+ +
+
+
+
+
+ +

RocksPage class + +

+ + +
+

A page to show a searchable list of rocks and information about them.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ RocksPage({required int index}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ Index of the rock page for view widget +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, RockModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + RockModel + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<RockModel> oldWidget, RockModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RocksPage/RocksPage.html b/docs/pages/RocksPage/RocksPage.html new file mode 100644 index 0000000000..a3e0d83b65 --- /dev/null +++ b/docs/pages/RocksPage/RocksPage.html @@ -0,0 +1,112 @@ + + + + + + + + RocksPage constructor - RocksPage - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
RocksPage
+ +
+ +
+
+
+
+
+ +

RocksPage constructor +

+ +
+ const + RocksPage({
  1. required int index,
  2. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const RocksPage({required this.index});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RocksPage/build.html b/docs/pages/RocksPage/build.html new file mode 100644 index 0000000000..775ea51d39 --- /dev/null +++ b/docs/pages/RocksPage/build.html @@ -0,0 +1,148 @@ + + + + + + + + build method - RocksPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. RockModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, RockModel model) => ListView(
+  shrinkWrap: true,
+  children: [
+    Row(
+      children: [
+        Text(
+          "Rocks & Minerals",
+          style: context.textTheme.headlineMedium,
+        ),
+        const Spacer(),
+        ViewsSelector(index: index),
+      ],
+    ),
+    Padding(
+      padding: const EdgeInsets.symmetric(vertical: 8, horizontal: 16),
+      child: SearchBar(
+        hintText: "Search for a rock or characteristic",
+        hintStyle: WidgetStatePropertyAll(context.textTheme.bodyMedium),
+        controller: model.controller,
+        onChanged: model.search,
+      ),
+    ),
+    for (final rock in model.filteredRocks)
+      RockWidget(rock),
+  ],
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RocksPage/createModel.html b/docs/pages/RocksPage/createModel.html new file mode 100644 index 0000000000..3f9fb207de --- /dev/null +++ b/docs/pages/RocksPage/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - RocksPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+RockModel +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+RockModel createModel() => RockModel();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/RocksPage/index.html b/docs/pages/RocksPage/index.html new file mode 100644 index 0000000000..94f3da01fc --- /dev/null +++ b/docs/pages/RocksPage/index.html @@ -0,0 +1,115 @@ + + + + + + + + index property - RocksPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+ +

index property +

+ + +
+ + int + index +
final
+ +
+ +
+

Index of the rock page for view widget

+
+ + +
+

Implementation

+
final int index;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes-class-sidebar.html b/docs/pages/Routes-class-sidebar.html new file mode 100644 index 0000000000..f18160812f --- /dev/null +++ b/docs/pages/Routes-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. Routes
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + + +
  21. Constants
  22. +
  23. arm
  24. +
  25. autonomy
  26. +
  27. blank
  28. +
  29. drive
  30. +
  31. electrical
  32. +
  33. home
  34. +
  35. logs
  36. +
  37. rocks
  38. +
  39. science
  40. +
  41. settings
  42. +
diff --git a/docs/pages/Routes-class.html b/docs/pages/Routes-class.html new file mode 100644 index 0000000000..c7a75e7411 --- /dev/null +++ b/docs/pages/Routes-class.html @@ -0,0 +1,329 @@ + + + + + + + + Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Routes
+ +
+ +
+
+
+
+
+ +

Routes class + +

+ + +
+

The names of all the pages available in the app.

+

These names are used to jump from page to page. They are equivalent to a URL.

+
+ + + + +
+

Constructors

+
+
+ Routes() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ arm + → const String + + +
+
+ The name of the arm IK page. + + +
+ +
+ autonomy + → const String + + +
+
+ The name of the autonomy page. + + +
+ +
+ blank + → const String + + +
+
+ The name of the blank page. + + +
+ +
+ drive + → const String + + +
+
+ The name of the drive/position data page + + +
+ +
+ electrical + → const String + + +
+
+ The name of the electrical data page + + +
+ +
+ home + → const String + + +
+
+ The name of the home page. + + +
+ +
+ logs + → const String + + +
+
+ The name of the logs page. + + +
+ +
+ rocks + → const String + + +
+
+ The name of the rocks page. + + +
+ +
+ science + → const String + + +
+
+ The name of the science analysis page. + + +
+ +
+ settings + → const String + + +
+
+ The name of the settings page. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/Routes.html b/docs/pages/Routes/Routes.html new file mode 100644 index 0000000000..e60e3d783e --- /dev/null +++ b/docs/pages/Routes/Routes.html @@ -0,0 +1,104 @@ + + + + + + + + Routes constructor - Routes - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Routes
+ +
+ +
+
+
+
+
+ +

Routes constructor +

+ +
+ + Routes() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/arm-constant.html b/docs/pages/Routes/arm-constant.html new file mode 100644 index 0000000000..30d57f1b77 --- /dev/null +++ b/docs/pages/Routes/arm-constant.html @@ -0,0 +1,115 @@ + + + + + + + + arm constant - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
arm
+ +
+ +
+
+
+
+
+ +

arm constant +

+ + +
+ + String + const arm + + +
+ +
+

The name of the arm IK page.

+
+ + +
+

Implementation

+
static const String arm = "Arm";
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/autonomy-constant.html b/docs/pages/Routes/autonomy-constant.html new file mode 100644 index 0000000000..bb45cbfd05 --- /dev/null +++ b/docs/pages/Routes/autonomy-constant.html @@ -0,0 +1,115 @@ + + + + + + + + autonomy constant - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
autonomy
+ +
+ +
+
+
+
+
+ +

autonomy constant +

+ + +
+ + String + const autonomy + + +
+ +
+

The name of the autonomy page.

+
+ + +
+

Implementation

+
static const String autonomy = "Map";
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/blank-constant.html b/docs/pages/Routes/blank-constant.html new file mode 100644 index 0000000000..7c7d6eb53c --- /dev/null +++ b/docs/pages/Routes/blank-constant.html @@ -0,0 +1,115 @@ + + + + + + + + blank constant - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
blank
+ +
+ +
+
+
+
+
+ +

blank constant +

+ + +
+ + String + const blank + + +
+ +
+

The name of the blank page.

+
+ + +
+

Implementation

+
static const String blank = "Remove View";
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/drive-constant.html b/docs/pages/Routes/drive-constant.html new file mode 100644 index 0000000000..753fb36b96 --- /dev/null +++ b/docs/pages/Routes/drive-constant.html @@ -0,0 +1,115 @@ + + + + + + + + drive constant - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
drive
+ +
+ +
+
+
+
+
+ +

drive constant +

+ + +
+ + String + const drive + + +
+ +
+

The name of the drive/position data page

+
+ + +
+

Implementation

+
static const String drive = "Drive";
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/electrical-constant.html b/docs/pages/Routes/electrical-constant.html new file mode 100644 index 0000000000..3f6dba59a8 --- /dev/null +++ b/docs/pages/Routes/electrical-constant.html @@ -0,0 +1,115 @@ + + + + + + + + electrical constant - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
electrical
+ +
+ +
+
+
+
+
+ +

electrical constant +

+ + +
+ + String + const electrical + + +
+ +
+

The name of the electrical data page

+
+ + +
+

Implementation

+
static const String electrical = "Electrical";
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/hashCode.html b/docs/pages/Routes/hashCode.html new file mode 100644 index 0000000000..9b2b07c1ce --- /dev/null +++ b/docs/pages/Routes/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/home-constant.html b/docs/pages/Routes/home-constant.html new file mode 100644 index 0000000000..53072d6920 --- /dev/null +++ b/docs/pages/Routes/home-constant.html @@ -0,0 +1,115 @@ + + + + + + + + home constant - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
home
+ +
+ +
+
+
+
+
+ +

home constant +

+ + +
+ + String + const home + + +
+ +
+

The name of the home page.

+
+ + +
+

Implementation

+
static const String home = "home";
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/logs-constant.html b/docs/pages/Routes/logs-constant.html new file mode 100644 index 0000000000..9e1065e7a1 --- /dev/null +++ b/docs/pages/Routes/logs-constant.html @@ -0,0 +1,115 @@ + + + + + + + + logs constant - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
logs
+ +
+ +
+
+
+
+
+ +

logs constant +

+ + +
+ + String + const logs + + +
+ +
+

The name of the logs page.

+
+ + +
+

Implementation

+
static const String logs = "Logs";
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/noSuchMethod.html b/docs/pages/Routes/noSuchMethod.html new file mode 100644 index 0000000000..f853721219 --- /dev/null +++ b/docs/pages/Routes/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/operator_equals.html b/docs/pages/Routes/operator_equals.html new file mode 100644 index 0000000000..062fc0c066 --- /dev/null +++ b/docs/pages/Routes/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/rocks-constant.html b/docs/pages/Routes/rocks-constant.html new file mode 100644 index 0000000000..cd89a26d9d --- /dev/null +++ b/docs/pages/Routes/rocks-constant.html @@ -0,0 +1,115 @@ + + + + + + + + rocks constant - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rocks
+ +
+ +
+
+
+
+
+ +

rocks constant +

+ + +
+ + String + const rocks + + +
+ +
+

The name of the rocks page.

+
+ + +
+

Implementation

+
static const String rocks = "Rocks";
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/runtimeType.html b/docs/pages/Routes/runtimeType.html new file mode 100644 index 0000000000..10a20363f8 --- /dev/null +++ b/docs/pages/Routes/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/science-constant.html b/docs/pages/Routes/science-constant.html new file mode 100644 index 0000000000..a9e71943f1 --- /dev/null +++ b/docs/pages/Routes/science-constant.html @@ -0,0 +1,115 @@ + + + + + + + + science constant - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
science
+ +
+ +
+
+
+
+
+ +

science constant +

+ + +
+ + String + const science + + +
+ +
+

The name of the science analysis page.

+
+ + +
+

Implementation

+
static const String science = "Science Analysis";
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/settings-constant.html b/docs/pages/Routes/settings-constant.html new file mode 100644 index 0000000000..003c9336f8 --- /dev/null +++ b/docs/pages/Routes/settings-constant.html @@ -0,0 +1,115 @@ + + + + + + + + settings constant - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
settings
+ +
+ +
+
+
+
+
+ +

settings constant +

+ + +
+ + String + const settings + + +
+ +
+

The name of the settings page.

+
+ + +
+

Implementation

+
static const String settings = "settings";
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/Routes/toString.html b/docs/pages/Routes/toString.html new file mode 100644 index 0000000000..751cde8a07 --- /dev/null +++ b/docs/pages/Routes/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - Routes class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SciencePage-class-sidebar.html b/docs/pages/SciencePage-class-sidebar.html new file mode 100644 index 0000000000..55bbc36e49 --- /dev/null +++ b/docs/pages/SciencePage-class-sidebar.html @@ -0,0 +1,46 @@ +
    + +
  1. Constructors
  2. +
  3. SciencePage
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. index
  10. +
  11. key
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. getBarChartData
  34. +
  35. getColor
  36. +
  37. getDetailsData
  38. +
  39. noSuchMethod
  40. +
  41. toDiagnosticsNode
  42. +
  43. toString
  44. +
  45. toStringDeep
  46. +
  47. toStringShallow
  48. +
  49. toStringShort
  50. + +
  51. Operators
  52. +
  53. operator ==
  54. + + + + +
  55. Static properties
  56. +
  57. purple
  58. +
  59. red
  60. + + +
diff --git a/docs/pages/SciencePage-class.html b/docs/pages/SciencePage-class.html new file mode 100644 index 0000000000..35354905bf --- /dev/null +++ b/docs/pages/SciencePage-class.html @@ -0,0 +1,479 @@ + + + + + + + + SciencePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SciencePage
+ +
+ +
+
+
+
+
+ +

SciencePage class + +

+ + +
+

The science analysis page.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SciencePage({required int index}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ The index of this view. +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, ScienceModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + ScienceModel + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<ScienceModel> oldWidget, ScienceModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ getBarChartData(ScienceAnalysis analysis, Color color) + BarChartData + + + +
+
+ The package:fl_chart helper class for the summary charts. + + +
+ +
+ getColor(double value) + Color + + + +
+
+ Gets a color between red and purple + + +
+ +
+ getDetailsData(ScienceAnalysis analysis, Color color) + LineChartData + + + +
+
+ The package:fl_chart helper class for the details charts. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ +
+

Static Properties

+
+
+ purple + HSVColor + + +
+
+ Purple, used as the color for the last sample. +
final
+ +
+ +
+ red + HSVColor + + +
+
+ Red, used as the color for the first sample. +
final
+ +
+ +
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SciencePage/SciencePage.html b/docs/pages/SciencePage/SciencePage.html new file mode 100644 index 0000000000..250d03ab0f --- /dev/null +++ b/docs/pages/SciencePage/SciencePage.html @@ -0,0 +1,112 @@ + + + + + + + + SciencePage constructor - SciencePage - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SciencePage
+ +
+ +
+
+
+
+
+ +

SciencePage constructor +

+ +
+ const + SciencePage({
  1. required int index,
  2. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const SciencePage({required this.index});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SciencePage/build.html b/docs/pages/SciencePage/build.html new file mode 100644 index 0000000000..ef6c121de9 --- /dev/null +++ b/docs/pages/SciencePage/build.html @@ -0,0 +1,181 @@ + + + + + + + + build method - SciencePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. ScienceModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, ScienceModel model) => Column(children: [
+    Row(children: [  // The header at the top
+      const SizedBox(width: 8),
+      Text("Science Analysis", style: context.textTheme.headlineMedium),
+      const SizedBox(width: 12),
+      if (model.isLoading) const SizedBox(height: 20, width: 20, child: CircularProgressIndicator()),
+      const Spacer(),
+      DropdownButton(
+        value: model.sample,
+        onChanged: model.updateSample,
+        items: [
+          for (int i = 0; i < model.numSamples; i++) DropdownMenuItem(
+            value: i,
+            child: Text("Sample ${i + 1}"),
+          ),
+        ],
+      ),
+      if (model.isListening) IconButton(
+        icon: const Icon(Icons.upload_file),
+        onPressed: model.loadFile,
+        tooltip: "Load file",
+      ) else IconButton(
+        icon: const Icon(Icons.clear),
+        onPressed: model.clear,
+        tooltip: "Clear",
+      ),
+      ViewsSelector(index: index),
+    ],),
+    Expanded(child: ListView(  // The main content of the page
+      padding: const EdgeInsets.symmetric(horizontal: 4),
+      children: [
+        if (model.errorText != null) ...[
+          Text("Error analyzing the logs", textAlign: TextAlign.center, style: context.textTheme.headlineLarge),
+          const SizedBox(height: 24),
+          Text("Here is the error:", textAlign: TextAlign.center, style: context.textTheme.titleLarge),
+          const SizedBox(height: 12),
+          Text(model.errorText!, textAlign: TextAlign.center, style: context.textTheme.titleMedium),
+        ] else if (!model.isLoading) ...[
+          ChartsRow(
+            title: "Details",
+            analyses: model.analysesForSample,
+            builder: (analysis) => LineChart(getDetailsData(analysis, getColor(model.sample / model.numSamples))),
+          ),
+          ChartsRow(
+            title: "Summary",
+            analyses: model.analysesForSample,
+            builder: (analysis) => BarChart(getBarChartData(analysis, getColor(model.sample / model.numSamples))),
+          ),
+          ChartsRow(
+            title: "Results",
+            height: 425,
+            analyses: model.analysesForSample,
+            builder: ResultsBox.new,
+          ),
+        ],
+      ],
+    ),),
+    ScienceCommandEditor(),
+  ],);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SciencePage/createModel.html b/docs/pages/SciencePage/createModel.html new file mode 100644 index 0000000000..64b2359966 --- /dev/null +++ b/docs/pages/SciencePage/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - SciencePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ScienceModel +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+ScienceModel createModel() => ScienceModel();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SciencePage/getBarChartData.html b/docs/pages/SciencePage/getBarChartData.html new file mode 100644 index 0000000000..57d4c5c422 --- /dev/null +++ b/docs/pages/SciencePage/getBarChartData.html @@ -0,0 +1,137 @@ + + + + + + + + getBarChartData method - SciencePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getBarChartData
+ +
+ +
+
+
+
+
+ +

getBarChartData method +

+ +
+ +BarChartData +getBarChartData(
  1. ScienceAnalysis analysis,
  2. +
  3. Color color
  4. +
) + + + +
+ +
+

The package:fl_chart helper class for the summary charts.

+
+ + + +
+

Implementation

+
BarChartData getBarChartData(ScienceAnalysis analysis, Color color) => BarChartData(
+	barGroups: [
+		BarChartGroupData(x: 0, barRods: [BarChartRodData(color: color, fromY: 0, toY: analysis.data.min ?? 0)]),
+		BarChartGroupData(x: 1, barRods: [BarChartRodData(color: color, fromY: 0, toY: analysis.data.average ?? 0)]),
+		BarChartGroupData(x: 2, barRods: [BarChartRodData(color: color, fromY: 0, toY: analysis.data.max ?? 0)]),
+	],
+	titlesData: FlTitlesData(
+		topTitles: const AxisTitles(),
+		bottomTitles: AxisTitles(
+			sideTitles: SideTitles(
+				showTitles: true,
+				getTitlesWidget: (double value, TitleMeta meta) => SideTitleWidget(
+					axisSide: AxisSide.bottom,
+					space: 3,
+					child: Text(["Min", "Avg", "Max"][value.toInt()]),
+				),
+			),
+		),
+	),
+	barTouchData: BarTouchData(touchTooltipData: BarTouchTooltipData(fitInsideVertically: true, fitInsideHorizontally: true)),
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SciencePage/getColor.html b/docs/pages/SciencePage/getColor.html new file mode 100644 index 0000000000..555becf244 --- /dev/null +++ b/docs/pages/SciencePage/getColor.html @@ -0,0 +1,117 @@ + + + + + + + + getColor method - SciencePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getColor
+ +
+ +
+
+
+
+
+ +

getColor method +

+ +
+ +Color +getColor(
  1. double value
  2. +
) + + + +
+ +
+

Gets a color between red and purple

+

value must be between 0.0 and 1.0.

+
+ + + +
+

Implementation

+
Color getColor(double value) => HSVColor.lerp(red, purple, value)!.toColor();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SciencePage/getDetailsData.html b/docs/pages/SciencePage/getDetailsData.html new file mode 100644 index 0000000000..8fb9d5d8f8 --- /dev/null +++ b/docs/pages/SciencePage/getDetailsData.html @@ -0,0 +1,146 @@ + + + + + + + + getDetailsData method - SciencePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getDetailsData
+ +
+ +
+
+
+
+
+ +

getDetailsData method +

+ +
+ +LineChartData +getDetailsData(
  1. ScienceAnalysis analysis,
  2. +
  3. Color color
  4. +
) + + + +
+ +
+

The package:fl_chart helper class for the details charts.

+
+ + + +
+

Implementation

+
LineChartData getDetailsData(ScienceAnalysis analysis, Color color) => LineChartData(
+	lineBarsData: [
+		LineChartBarData(
+			spots: [
+				for (final reading in analysis.data.readings)
+					FlSpot(reading.time, reading.value),
+			],
+			color: color,
+			preventCurveOverShooting: true,
+			isCurved: true,
+		),
+	],
+	titlesData: FlTitlesData(
+		topTitles: const AxisTitles(),
+		bottomTitles: AxisTitles(
+			sideTitles: SideTitles(
+				showTitles: true,
+				getTitlesWidget: (double value, TitleMeta meta) => SideTitleWidget(
+					axisSide: AxisSide.bottom,
+					space: 3,
+					child: Text(value.toStringAsFixed(0)),
+				),
+			),
+		),
+	),
+	extraLinesData: ExtraLinesData(horizontalLines: [HorizontalLine(y: 0)], verticalLines: [VerticalLine(x: 0)]),
+	minX: 0, minY: 0,
+	clipData: const FlClipData.all(),
+	lineTouchData: const LineTouchData(touchTooltipData: LineTouchTooltipData(fitInsideVertically: true, fitInsideHorizontally: true)),
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SciencePage/index.html b/docs/pages/SciencePage/index.html new file mode 100644 index 0000000000..8f0b488bd0 --- /dev/null +++ b/docs/pages/SciencePage/index.html @@ -0,0 +1,115 @@ + + + + + + + + index property - SciencePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+ +

index property +

+ + +
+ + int + index +
final
+ +
+ +
+

The index of this view.

+
+ + +
+

Implementation

+
final int index;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SciencePage/purple.html b/docs/pages/SciencePage/purple.html new file mode 100644 index 0000000000..b79ca12553 --- /dev/null +++ b/docs/pages/SciencePage/purple.html @@ -0,0 +1,115 @@ + + + + + + + + purple property - SciencePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
purple
+ +
+ +
+
+
+
+
+ +

purple property +

+ + +
+ + HSVColor + purple +
final
+ +
+ +
+

Purple, used as the color for the last sample.

+
+ + +
+

Implementation

+
static final purple = HSVColor.fromColor(Colors.purple);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SciencePage/red.html b/docs/pages/SciencePage/red.html new file mode 100644 index 0000000000..6b2353ec6e --- /dev/null +++ b/docs/pages/SciencePage/red.html @@ -0,0 +1,115 @@ + + + + + + + + red property - SciencePage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
red
+ +
+ +
+
+
+
+
+ +

red property +

+ + +
+ + HSVColor + red +
final
+ +
+ +
+

Red, used as the color for the first sample.

+
+ + +
+

Implementation

+
static final red = HSVColor.fromColor(Colors.red);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ScrollingRow-class-sidebar.html b/docs/pages/ScrollingRow-class-sidebar.html new file mode 100644 index 0000000000..236b9db169 --- /dev/null +++ b/docs/pages/ScrollingRow-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. ScrollingRow
  4. + + + +
  5. + Properties +
  6. +
  7. children
  8. +
  9. hashCode
  10. +
  11. height
  12. +
  13. key
  14. +
  15. model
  16. +
  17. runtimeType
  18. +
  19. shouldDispose
  20. + +
  21. Methods
  22. +
  23. build
  24. +
  25. createElement
  26. +
  27. createModel
  28. +
  29. createState
  30. +
  31. debugDescribeChildren
  32. +
  33. debugFillProperties
  34. +
  35. didUpdateWidget
  36. +
  37. noSuchMethod
  38. +
  39. toDiagnosticsNode
  40. +
  41. toString
  42. +
  43. toStringDeep
  44. +
  45. toStringShallow
  46. +
  47. toStringShort
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/pages/ScrollingRow-class.html b/docs/pages/ScrollingRow-class.html new file mode 100644 index 0000000000..c14b9dba32 --- /dev/null +++ b/docs/pages/ScrollingRow-class.html @@ -0,0 +1,434 @@ + + + + + + + + ScrollingRow class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScrollingRow
+ +
+ +
+
+
+
+
+ +

ScrollingRow class + +

+ + +
+

A row of scrollable or non-scrollable widgets.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ScrollingRow({required List<Widget> children, double height = 300}) +
+
+ Renders a row of widgets. +
+
+
+ +
+

Properties

+
+
+ children + → List<Widget> + + +
+
+ The widgets to display. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ height + → double + + +
+
+ The height of this row. +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + SettingsModel + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, SettingsModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + SettingsModel + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<SettingsModel> oldWidget, SettingsModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ScrollingRow/ScrollingRow.html b/docs/pages/ScrollingRow/ScrollingRow.html new file mode 100644 index 0000000000..50497ae3ee --- /dev/null +++ b/docs/pages/ScrollingRow/ScrollingRow.html @@ -0,0 +1,113 @@ + + + + + + + + ScrollingRow constructor - ScrollingRow - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScrollingRow
+ +
+ +
+
+
+
+
+ +

ScrollingRow constructor +

+ +
+ + ScrollingRow({
  1. required List<Widget> children,
  2. +
  3. double height = 300,
  4. +
}) +
+ +
+

Renders a row of widgets.

+
+ + + +
+

Implementation

+
ScrollingRow({required this.children, this.height = 300}) : super(models.settings);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ScrollingRow/build.html b/docs/pages/ScrollingRow/build.html new file mode 100644 index 0000000000..26659ec4b3 --- /dev/null +++ b/docs/pages/ScrollingRow/build.html @@ -0,0 +1,136 @@ + + + + + + + + build method - ScrollingRow class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. SettingsModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, SettingsModel model) => SizedBox(
+    height: height,
+    child: model.science.scrollableGraphs
+		? ScrollConfiguration(
+		  behavior: DesktopScrollBehavior(),
+			child: ListView(
+				scrollDirection: Axis.horizontal,
+				children: [for (final child in children) SizedBox(width: 400, child: child)],
+			),
+		)
+		: Row(
+			children: [for (final child in children) Expanded(child: child)],
+		),
+  );
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ScrollingRow/children.html b/docs/pages/ScrollingRow/children.html new file mode 100644 index 0000000000..4559681596 --- /dev/null +++ b/docs/pages/ScrollingRow/children.html @@ -0,0 +1,115 @@ + + + + + + + + children property - ScrollingRow class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
children
+ +
+ +
+
+
+
+
+ +

children property +

+ + +
+ + List<Widget> + children +
final
+ +
+ +
+

The widgets to display.

+
+ + +
+

Implementation

+
final List<Widget> children;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ScrollingRow/height.html b/docs/pages/ScrollingRow/height.html new file mode 100644 index 0000000000..d3243de09f --- /dev/null +++ b/docs/pages/ScrollingRow/height.html @@ -0,0 +1,115 @@ + + + + + + + + height property - ScrollingRow class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
height
+ +
+ +
+
+
+
+
+ +

height property +

+ + +
+ + double + height +
final
+ +
+ +
+

The height of this row.

+
+ + +
+

Implementation

+
final double height;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SegaState-enum-sidebar.html b/docs/pages/SegaState-enum-sidebar.html new file mode 100644 index 0000000000..377bc1dbbf --- /dev/null +++ b/docs/pages/SegaState-enum-sidebar.html @@ -0,0 +1,31 @@ +
    + + +
  1. Values
  2. +
  3. partOne
  4. +
  5. partTwo
  6. +
  7. partThree
  8. + + +
  9. + Properties +
  10. +
  11. hashCode
  12. +
  13. index
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. noSuchMethod
  20. +
  21. toString
  22. + +
  23. Operators
  24. +
  25. operator ==
  26. + + + + + + +
  27. Constants
  28. +
  29. values
  30. +
diff --git a/docs/pages/SegaState.html b/docs/pages/SegaState.html new file mode 100644 index 0000000000..15c31a8b2a --- /dev/null +++ b/docs/pages/SegaState.html @@ -0,0 +1,267 @@ + + + + + + + + SegaState enum - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SegaState
+ +
+ +
+
+
+
+
+ + +

+ SegaState + enum + + +

+
+ + +
+

The state of the SEGA animation.

+
+ + + +
+

Values

+
+
+ partOne + → const SegaState + + +
+
+

The rover is off-screen to the left, facing the right, and the text is transparent.

+ + +
+ +
+ partTwo + → const SegaState + + +
+
+

The rover is off-screen to the right, facing the right, and the text is 30% opaque.

+ + +
+ +
+ partThree + → const SegaState + + +
+
+

The rover is off-screen to the left, facing the left, and the text is 100% opaque.

+ + +
+ +
+
+ + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ A numeric identifier for the enumerated value. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ values + → const List<SegaState> + + +
+
+ A constant List of the values in this enum, in order of their declaration. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/pages/SegaState/hashCode.html b/docs/pages/SegaState/hashCode.html new file mode 100644 index 0000000000..6e0dba9d37 --- /dev/null +++ b/docs/pages/SegaState/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - SegaState enum - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SegaState/index.html b/docs/pages/SegaState/index.html new file mode 100644 index 0000000000..1023c0a75f --- /dev/null +++ b/docs/pages/SegaState/index.html @@ -0,0 +1,125 @@ + + + + + + + + index property - SegaState enum - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+

index property +

+ + + + + +
+
+ + int + get + index +
inherited
+ +
+ +
+

A numeric identifier for the enumerated value.

+

The values of a single enumeration are numbered +consecutively from zero to one less than the +number of values. +This is also the index of the value in the +enumerated type's static values list.

+
+ + +
+

Implementation

+
int get index;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SegaState/noSuchMethod.html b/docs/pages/SegaState/noSuchMethod.html new file mode 100644 index 0000000000..5a328b9dcc --- /dev/null +++ b/docs/pages/SegaState/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - SegaState enum - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SegaState/operator_equals.html b/docs/pages/SegaState/operator_equals.html new file mode 100644 index 0000000000..95666a1f76 --- /dev/null +++ b/docs/pages/SegaState/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - SegaState enum - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SegaState/runtimeType.html b/docs/pages/SegaState/runtimeType.html new file mode 100644 index 0000000000..e8c0a05b12 --- /dev/null +++ b/docs/pages/SegaState/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - SegaState enum - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SegaState/toString.html b/docs/pages/SegaState/toString.html new file mode 100644 index 0000000000..2b5dad7b21 --- /dev/null +++ b/docs/pages/SegaState/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - SegaState enum - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SegaState/values-constant.html b/docs/pages/SegaState/values-constant.html new file mode 100644 index 0000000000..18fc1e1496 --- /dev/null +++ b/docs/pages/SegaState/values-constant.html @@ -0,0 +1,111 @@ + + + + + + + + values constant - SegaState enum - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<SegaState> + const values + + +
+ +
+

A constant List of the values in this enum, in order of their declaration.

+
+ + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SettingsPage-class-sidebar.html b/docs/pages/SettingsPage-class-sidebar.html new file mode 100644 index 0000000000..c31549fb54 --- /dev/null +++ b/docs/pages/SettingsPage-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. SettingsPage
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. +
  13. shouldDispose
  14. + +
  15. Methods
  16. +
  17. build
  18. +
  19. createElement
  20. +
  21. createModel
  22. +
  23. createState
  24. +
  25. debugDescribeChildren
  26. +
  27. debugFillProperties
  28. +
  29. didUpdateWidget
  30. +
  31. noSuchMethod
  32. +
  33. toDiagnosticsNode
  34. +
  35. toString
  36. +
  37. toStringDeep
  38. +
  39. toStringShallow
  40. +
  41. toStringShort
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/pages/SettingsPage-class.html b/docs/pages/SettingsPage-class.html new file mode 100644 index 0000000000..52a40d653d --- /dev/null +++ b/docs/pages/SettingsPage-class.html @@ -0,0 +1,398 @@ + + + + + + + + SettingsPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SettingsPage
+ +
+ +
+
+
+
+
+ +

SettingsPage class + +

+ + +
+

The settings page.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SettingsPage() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, SettingsBuilder model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + SettingsBuilder + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<SettingsBuilder> oldWidget, SettingsBuilder model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SettingsPage/SettingsPage.html b/docs/pages/SettingsPage/SettingsPage.html new file mode 100644 index 0000000000..36ca24940f --- /dev/null +++ b/docs/pages/SettingsPage/SettingsPage.html @@ -0,0 +1,104 @@ + + + + + + + + SettingsPage constructor - SettingsPage - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SettingsPage
+ +
+ +
+
+
+
+
+ +

SettingsPage constructor +

+ +
+ + SettingsPage() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SettingsPage/build.html b/docs/pages/SettingsPage/build.html new file mode 100644 index 0000000000..deb6e7e342 --- /dev/null +++ b/docs/pages/SettingsPage/build.html @@ -0,0 +1,362 @@ + + + + + + + + build method - SettingsPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. SettingsBuilder model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, SettingsBuilder model) => Scaffold(
+	appBar: AppBar(title: const Text("Settings")),
+	body: Column(children: [
+      Expanded(child: ListView(
+        padding: const EdgeInsets.all(12),
+        children: [
+          ValueEditor<NetworkSettings>(
+            name: "Network settings",
+            children: [
+              SocketEditor(name: "Subsystems socket", model: model.network.dataSocket),
+              SocketEditor(name: "Video socket", model: model.network.videoSocket),
+              SocketEditor(name: "Autonomy socket", model: model.network.autonomySocket),
+              SocketEditor(name: "Tank IP address", model: model.network.tankSocket, editPort: false),
+              NumberEditor(name: "Heartbeats per second", model: model.network.connectionTimeout),
+              if (Platform.isWindows) ListTile(
+                title: const Text("Open Windows network settings"),
+                subtitle: const Text("You may need to change these if the rover will not connect"),
+                trailing: const Icon(Icons.lan_outlined),
+                onTap: () {
+                  launchUrl(Uri.parse("ms-settings:network-ethernet"));
+                  showDialog<void>(
+                    context: context,
+                    builder: (context) => AlertDialog(
+                      content: const SelectableText(
+                        "Click on IP Assignment, select Manual, then IPv4, then set:\n"
+                        "\n- IP address: 192.168.1.10"
+                        "\n- Subnet 255.255.255.0 (or Subnet length: 24)"
+                        "\n- Gateway: 192.168.1.1"
+                        "\n- Preferred DNS: 192.168.1.1"
+                      ),
+                      title: const Text("Set your IP settings"),
+                      actions: [
+                        TextButton(
+                          child: const Text("Ok"),
+                          onPressed: () => Navigator.of(context).pop(),
+                        ),
+                      ],
+                    ),
+                  );
+                },
+              ),
+            ],
+          ),
+          const Divider(),
+          ValueEditor<ArmSettings>(
+            name: "Arm settings",
+            children: [
+              NumberEditor(name: "Swivel increment", model: model.arm.swivel),
+              NumberEditor(name: "Shoulder increment", model: model.arm.shoulder),
+              NumberEditor(name: "Elbow increment", model: model.arm.elbow),
+              NumberEditor(name: "Wrist rotate increment", model: model.arm.rotate),
+              NumberEditor(name: "Wrist lift increment", model: model.arm.lift),
+              NumberEditor(name: "Pinch increment", model: model.arm.pinch),
+            ],
+          ),
+          const Divider(),
+          ValueEditor<ScienceSettings>(
+            name: "Science settings",
+            children: [
+              NumberEditor(
+                name: "Number of samples",
+                model: model.science.numSamples,
+              ),
+              SwitchListTile(
+                title: const Text("Scrollable graphs"),
+                subtitle: const Text("Graphs can either be forced to fit the page or allowed to scroll\nMight be inconvenient for desktop users"),
+                value: model.science.scrollableGraphs,
+                onChanged: model.science.updateScrollableGraphs,
+              ),
+            ],
+          ),
+          const Divider(),
+          ValueEditor<DashboardSettings>(
+            name: "Dashboard Settings",
+            children: [
+              NumberEditor(
+                name: "Frames per second",
+                subtitle: "This does not affect the rover's cameras. Useful for limiting the CPU of the dashboard",
+                model: model.dashboard.fps,
+              ),
+              NumberEditor(
+                name: "Block size",
+                subtitle: "The precision of the GPS grid",
+                model: model.dashboard.blockSize,
+              ),
+              SwitchListTile(
+                title: const Text("Split camera controls"),
+                subtitle: const Text("If enabled, cameras can only be controlled by a separate operator"),
+                value: model.dashboard.splitCameras,
+                onChanged: model.dashboard.updateCameras,
+              ),
+              SwitchListTile(
+                title: const Text("Prefer tank controls"),
+                subtitle: const Text("Default to tank controls instead of modern drive controls"),
+                value: model.dashboard.preferTankControls,
+                onChanged: model.dashboard.updateTank,
+              ),
+              SwitchListTile(
+                title: const Text("Require version checking"),
+                subtitle: const Text("Default to version checking on"),
+                value: model.dashboard.versionChecking,
+                onChanged: model.dashboard.updateVersionChecking,
+              ),
+              Row(children: [
+                const SizedBox(
+                  width: 200,
+                  child: ListTile(
+                    title: Text("Split mode"),
+                  ),
+                ),
+                const Spacer(),
+                DropdownMenu<SplitMode>(
+                  initialSelection: model.dashboard.splitMode,
+                  onSelected: model.dashboard.updateSplitMode,
+                  dropdownMenuEntries: [
+                    for (final value in SplitMode.values) DropdownMenuEntry(
+                      value: value,
+                      label: value.humanName,
+                    ),
+                  ],
+                ),
+              ],),
+              Row(children: [
+                const SizedBox(
+                  width: 200,
+                  child: ListTile(
+                    title: Text("Theme mode"),
+                  ),
+                ),
+                const Spacer(),
+                DropdownMenu<ThemeMode>(
+                  initialSelection: model.dashboard.themeMode,
+                  onSelected: model.dashboard.updateThemeMode,
+                  dropdownMenuEntries: [
+                    for (final value in ThemeMode.values) DropdownMenuEntry<ThemeMode>(
+                      value: value,
+                      label: value.humanName,
+                    ),
+                  ],
+                ),
+              ],),
+            ],
+          ),
+          const Divider(),
+          ValueEditor<EasterEggsSettings>(
+            name: "Easter eggs",
+            children: [
+              SwitchListTile(
+                title: const Text("Enable SEGA Intro"),
+                value: model.easterEggs.segaIntro,
+                onChanged: model.easterEggs.updateSegaIntro,
+              ),
+              // Disabled because the sound is horrible. Please find a better sound :)
+              // SwitchListTile(
+              //   title: const Text("Enable SEGA sound"),
+              //   subtitle: const Text('Says "Binghamton" in the SEGA style'),
+              //   value: model.easterEggs.segaSound,
+              //   onChanged: model.easterEggs.segaIntro ? model.easterEggs.updateSegaSound : null,
+              // ),
+              SwitchListTile(
+                title: const Text("Enable Clippy"),
+                value: model.easterEggs.enableClippy,
+                onChanged: model.easterEggs.updateClippy,
+              ),
+              SwitchListTile(
+                title: const Text("Bad Apple in the Map"),
+                value: model.easterEggs.badApple,
+                onChanged: model.easterEggs.updateBadApple,
+              ),
+            ],
+          ),
+          const Divider(),
+          Text("Misc", style: Theme.of(context).textTheme.titleLarge),
+          ListTile(
+            title: const Text("Open session output"),
+            subtitle: const Text("Opens all files created by this session"),
+            trailing: const Icon(Icons.folder_open),
+            onTap: () => launchUrl(services.files.loggingDir.uri),
+          ),
+          ListTile(
+            title: const Text("Open the output folder"),
+            subtitle: const Text("Contains logs, screenshots, and settings"),
+            trailing: const Icon(Icons.folder_open),
+            onTap: () => launchUrl(services.files.outputDir.uri),
+          ),
+          ListTile(
+            title: const Text("Set a timer"),
+            subtitle: const Text("Shows a timer for the current mission"),
+            trailing: const Icon(Icons.alarm),
+            onTap: () => showDialog<void>(context: context, builder: (_) => TimerEditor()),
+          ),
+          ListTile(
+            title: const Text("About"),
+            subtitle: const Text("Show contributor and version information"),
+            trailing: const Icon(Icons.info_outline),
+            onTap: () => showAboutDialog(
+              context: context,
+              applicationName: "Binghamton University Rover Team Dashboard",
+              applicationVersion: models.home.version,
+              applicationIcon: Image.asset("assets/logo.png", scale: 4),
+              applicationLegalese: [
+                "Firmware versions:",
+                for (final metrics in models.rover.metrics.allMetrics)
+                  "  ${metrics.name}: Supports ${metrics.supportedVersion.format()}. Rover: ${metrics.version.format()}",
+              ].join("\n"),
+              children: [
+                const SizedBox(height: 24),
+                Center(child: TextButton(
+                  onPressed: () => launchUrl(Uri.parse("https://github.com/BinghamtonRover/Dashboard/graphs/contributors")),
+                  child: const Text("Click to see contributions"),
+                ),),
+              ],
+            ),
+          ),
+        ],
+      ),),
+      Row(
+        mainAxisAlignment: MainAxisAlignment.end,
+        children: [
+          TextButton(
+            onPressed: () => Navigator.of(context).pop(),
+            child: const Text("Cancel"),
+          ),
+          const SizedBox(width: 4),
+          ElevatedButton.icon(
+            onPressed: !model.isValid ? null : () async {
+              await model.save();
+              if (context.mounted) Navigator.of(context).pop();
+            },
+            label: const Text("Save"),
+            icon: model.isLoading
+              ? const SizedBox(height: 24, width: 24, child: CircularProgressIndicator())
+              : const Icon(Icons.save),
+          ),
+          const SizedBox(width: 4),
+        ],
+      ),
+      const SizedBox(height: 12),
+    ],),
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SettingsPage/createModel.html b/docs/pages/SettingsPage/createModel.html new file mode 100644 index 0000000000..b76db32c04 --- /dev/null +++ b/docs/pages/SettingsPage/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - SettingsPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+SettingsBuilder +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+SettingsBuilder createModel() => SettingsBuilder();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SocketSwitcher-class-sidebar.html b/docs/pages/SocketSwitcher-class-sidebar.html new file mode 100644 index 0000000000..4c4eba37ae --- /dev/null +++ b/docs/pages/SocketSwitcher-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. SocketSwitcher
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/pages/SocketSwitcher-class.html b/docs/pages/SocketSwitcher-class.html new file mode 100644 index 0000000000..ec1255acd6 --- /dev/null +++ b/docs/pages/SocketSwitcher-class.html @@ -0,0 +1,410 @@ + + + + + + + + SocketSwitcher class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SocketSwitcher
+ +
+ +
+
+
+
+
+ +

SocketSwitcher class + +

+ + +
+

A widget to switch between tank and rover modes.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SocketSwitcher() +
+
+ A constructor for this widget. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + Sockets + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, Sockets model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + Sockets + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<Sockets> oldWidget, Sockets model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SocketSwitcher/SocketSwitcher.html b/docs/pages/SocketSwitcher/SocketSwitcher.html new file mode 100644 index 0000000000..c8dbd4c1e9 --- /dev/null +++ b/docs/pages/SocketSwitcher/SocketSwitcher.html @@ -0,0 +1,111 @@ + + + + + + + + SocketSwitcher constructor - SocketSwitcher - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SocketSwitcher
+ +
+ +
+
+
+
+
+ +

SocketSwitcher constructor +

+ +
+ + SocketSwitcher() +
+ +
+

A constructor for this widget.

+
+ + + +
+

Implementation

+
SocketSwitcher() : super(models.sockets);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SocketSwitcher/build.html b/docs/pages/SocketSwitcher/build.html new file mode 100644 index 0000000000..73907d5905 --- /dev/null +++ b/docs/pages/SocketSwitcher/build.html @@ -0,0 +1,133 @@ + + + + + + + + build method - SocketSwitcher class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. Sockets model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, Sockets model) => DropdownButton<RoverType>(
+    value: model.rover,
+    onChanged: model.setRover,
+    focusNode: FocusNode(),
+    items: [
+      for (final type in RoverType.values) DropdownMenuItem(
+        value: type,
+        child: Text(type.humanName),
+      ),
+    ],
+  );
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPage-class-sidebar.html b/docs/pages/SplashPage-class-sidebar.html new file mode 100644 index 0000000000..a309c1af8e --- /dev/null +++ b/docs/pages/SplashPage-class-sidebar.html @@ -0,0 +1,35 @@ +
    + +
  1. Constructors
  2. +
  3. SplashPage
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. + +
  13. Methods
  14. +
  15. createElement
  16. +
  17. createState
  18. +
  19. debugDescribeChildren
  20. +
  21. debugFillProperties
  22. +
  23. noSuchMethod
  24. +
  25. toDiagnosticsNode
  26. +
  27. toString
  28. +
  29. toStringDeep
  30. +
  31. toStringShallow
  32. +
  33. toStringShort
  34. + +
  35. Operators
  36. +
  37. operator ==
  38. + + + + + + +
diff --git a/docs/pages/SplashPage-class.html b/docs/pages/SplashPage-class.html new file mode 100644 index 0000000000..fa4db70dbb --- /dev/null +++ b/docs/pages/SplashPage-class.html @@ -0,0 +1,345 @@ + + + + + + + + SplashPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SplashPage
+ +
+ +
+
+
+
+
+ +

SplashPage class + +

+ + +
+

Initializes the dashboard and handles errors.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SplashPage() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createState() + SplashPageState + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
override
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPage/SplashPage.html b/docs/pages/SplashPage/SplashPage.html new file mode 100644 index 0000000000..1dc8de8947 --- /dev/null +++ b/docs/pages/SplashPage/SplashPage.html @@ -0,0 +1,104 @@ + + + + + + + + SplashPage constructor - SplashPage - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SplashPage
+ +
+ +
+
+
+
+
+ +

SplashPage constructor +

+ +
+ + SplashPage() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPage/createState.html b/docs/pages/SplashPage/createState.html new file mode 100644 index 0000000000..97596c992b --- /dev/null +++ b/docs/pages/SplashPage/createState.html @@ -0,0 +1,133 @@ + + + + + + + + createState method - SplashPage class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createState
+ +
+ +
+
+
+
+
+ +

createState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+SplashPageState +createState() + +
override
+ +
+ +
+

Creates the mutable state for this widget at a given location in the tree.

+

Subclasses should override this method to return a newly created +instance of their associated State subclass:

+
@override
+State<SomeWidget> createState() => _SomeWidgetState();
+
+

The framework can call this method multiple times over the lifetime of +a StatefulWidget. For example, if the widget is inserted into the tree +in multiple locations, the framework will create a separate State object +for each location. Similarly, if the widget is removed from the tree and +later inserted into the tree again, the framework will call createState +again to create a fresh State object, simplifying the lifecycle of +State objects.

+
+ + + +
+

Implementation

+
@override
+SplashPageState createState() => SplashPageState();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPageState-class-sidebar.html b/docs/pages/SplashPageState-class-sidebar.html new file mode 100644 index 0000000000..adcfe3b918 --- /dev/null +++ b/docs/pages/SplashPageState-class-sidebar.html @@ -0,0 +1,47 @@ +
    + +
  1. Constructors
  2. +
  3. SplashPageState
  4. + + + +
  5. + Properties +
  6. +
  7. audioPlayer
  8. +
  9. context
  10. +
  11. current
  12. +
  13. errorText
  14. +
  15. hashCode
  16. +
  17. mounted
  18. +
  19. runtimeType
  20. +
  21. state
  22. +
  23. widget
  24. + +
  25. Methods
  26. +
  27. activate
  28. +
  29. build
  30. +
  31. deactivate
  32. +
  33. debugFillProperties
  34. +
  35. didChangeDependencies
  36. +
  37. didUpdateWidget
  38. +
  39. dispose
  40. +
  41. init
  42. +
  43. initAnimation
  44. +
  45. initState
  46. +
  47. noSuchMethod
  48. +
  49. reassemble
  50. +
  51. setState
  52. +
  53. toDiagnosticsNode
  54. +
  55. toString
  56. +
  57. toStringShort
  58. + +
  59. Operators
  60. +
  61. operator ==
  62. + + + + + + +
diff --git a/docs/pages/SplashPageState-class.html b/docs/pages/SplashPageState-class.html new file mode 100644 index 0000000000..c64cdd52c5 --- /dev/null +++ b/docs/pages/SplashPageState-class.html @@ -0,0 +1,495 @@ + + + + + + + + SplashPageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SplashPageState
+ +
+ +
+
+
+
+
+ +

SplashPageState class + +

+ + +
+

Initializes the dashboard and handles errors.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SplashPageState() +
+
+ +
+
+
+ +
+

Properties

+
+
+ audioPlayer + AudioPlayer + + +
+
+ The Audio player. +
final
+ +
+ +
+ context + BuildContext + + +
+
+ The location in the tree where this widget builds. +
no setterinherited
+ +
+ +
+ current + ↔ String? + + +
+
+ The current task, if any. +
getter/setter pair
+ +
+ +
+ errorText + ↔ String? + + +
+
+ The error message produced during initialization, if any. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ mounted + → bool + + +
+
+ Whether this State object is currently in a tree. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ state + SegaState + + +
+
+ The state of the SEGA animation. +
getter/setter pair
+ +
+ +
+ widget + SplashPage + + +
+
+ The current configuration. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ activate() + → void + + + +
+
+ Called when this object is reinserted into the tree after having been +removed via deactivate. +
inherited
+ +
+ +
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ deactivate() + → void + + + +
+
+ Called when this object is removed from the tree. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didChangeDependencies() + → void + + + +
+
+ Called when a dependency of this State object changes. +
inherited
+ +
+ +
+ didUpdateWidget(covariant SplashPage oldWidget) + → void + + + +
+
+ Called whenever the widget configuration changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Called when this object is removed from the tree permanently. +
override
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Calls Services.init and Models.init while monitoring for errors. + + +
+ +
+ initAnimation() + → Future<void> + + + +
+
+ Starts the SEGA animation. + + +
+ +
+ initState() + → void + + + +
+
+ Called when this object is inserted into the tree. +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ reassemble() + → void + + + +
+
+ Called whenever the application is reassembled during debugging, for +example during hot reload. +
inherited
+ +
+ +
+ setState(VoidCallback fn) + → void + + + +
+
+ Notify the framework that the internal state of this object has changed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A brief description of this object, usually just the runtimeType and the +hashCode. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPageState/SplashPageState.html b/docs/pages/SplashPageState/SplashPageState.html new file mode 100644 index 0000000000..5b2b68a769 --- /dev/null +++ b/docs/pages/SplashPageState/SplashPageState.html @@ -0,0 +1,104 @@ + + + + + + + + SplashPageState constructor - SplashPageState - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SplashPageState
+ +
+ +
+
+
+
+
+ +

SplashPageState constructor +

+ +
+ + SplashPageState() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPageState/audioPlayer.html b/docs/pages/SplashPageState/audioPlayer.html new file mode 100644 index 0000000000..16af381e04 --- /dev/null +++ b/docs/pages/SplashPageState/audioPlayer.html @@ -0,0 +1,115 @@ + + + + + + + + audioPlayer property - SplashPageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
audioPlayer
+ +
+ +
+
+
+
+
+ +

audioPlayer property +

+ + +
+ + AudioPlayer + audioPlayer +
final
+ +
+ +
+

The Audio player.

+
+ + +
+

Implementation

+
final audioPlayer = AudioPlayer();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPageState/build.html b/docs/pages/SplashPageState/build.html new file mode 100644 index 0000000000..e26b20390f --- /dev/null +++ b/docs/pages/SplashPageState/build.html @@ -0,0 +1,271 @@ + + + + + + + + build method - SplashPageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method in a number of different situations. For +example:

+ +

This method can potentially be called in every frame and should not have +any side effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor, the +given BuildContext, and the internal state of this State object.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. The +BuildContext argument is always the same as the context property of +this State object and will remain the same for the lifetime of this +object. The BuildContext argument is provided redundantly here so that +this method matches the signature for a WidgetBuilder.

+

Design discussion

+

Why is the build method on State, and not StatefulWidget?

+

Putting a Widget build(BuildContext context) method on State rather +than putting a Widget build(BuildContext context, State state) method +on StatefulWidget gives developers more flexibility when subclassing +StatefulWidget.

+

For example, AnimatedWidget is a subclass of StatefulWidget that +introduces an abstract Widget build(BuildContext context) method for its +subclasses to implement. If StatefulWidget already had a build method +that took a State argument, AnimatedWidget would be forced to provide +its State object to subclasses even though its State object is an +internal implementation detail of AnimatedWidget.

+

Conceptually, StatelessWidget could also be implemented as a subclass of +StatefulWidget in a similar manner. If the build method were on +StatefulWidget rather than State, that would not be possible anymore.

+

Putting the build function on State rather than StatefulWidget also +helps avoid a category of bugs related to closures implicitly capturing +this. If you defined a closure in a build function on a +StatefulWidget, that closure would implicitly capture this, which is +the current widget instance, and would have the (immutable) fields of that +instance in scope:

+
// (this is not valid Flutter code)
+class MyButton extends StatefulWidgetX {
+  MyButton({super.key, required this.color});
+
+  final Color color;
+
+  @override
+  Widget build(BuildContext context, State state) {
+    return SpecialWidget(
+      handler: () { print('color: $color'); },
+    );
+  }
+}
+
+

For example, suppose the parent builds MyButton with color being blue, +the $color in the print function refers to blue, as expected. Now, +suppose the parent rebuilds MyButton with green. The closure created by +the first build still implicitly refers to the original widget and the +$color still prints blue even through the widget has been updated to +green; should that closure outlive its widget, it would print outdated +information.

+

In contrast, with the build function on the State object, closures +created during build implicitly capture the State instance instead of +the widget instance:

+
class MyButton extends StatefulWidget {
+  const MyButton({super.key, this.color = Colors.teal});
+
+  final Color color;
+  // ...
+}
+
+class MyButtonState extends State<MyButton> {
+  // ...
+  @override
+  Widget build(BuildContext context) {
+    return SpecialWidget(
+      handler: () { print('color: ${widget.color}'); },
+    );
+  }
+}
+
+

Now when the parent rebuilds MyButton with green, the closure created by +the first build still refers to State object, which is preserved across +rebuilds, but the framework has updated that State object's widget +property to refer to the new MyButton instance and ${widget.color} +prints green, as expected.

+

See also:

+
    +
  • StatefulWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Scaffold(
+	body: errorText == null
+		? Stack(  // SEGA intro
+			alignment: Alignment.center,
+			children: [
+				AnimatedOpacity(
+					duration: const Duration(milliseconds: 1000),
+					opacity: switch (state) {
+						SegaState.partOne => 0,
+						SegaState.partTwo => 0.2,
+						SegaState.partThree => 1,
+					},
+					child: Text("Binghamton University\nRover Team", textAlign: TextAlign.center, style: context.textTheme.displayMedium),
+				),
+				AnimatedAlign(
+					duration: const Duration(milliseconds: 500),
+					alignment: switch (state) {
+						SegaState.partOne => const Alignment(-1.5, 0),
+						SegaState.partTwo => const Alignment(1.5, 0),
+						SegaState.partThree => const Alignment(-1.5, 0),
+					},
+					child: Transform.flip(
+						flipX: switch (state) {
+							SegaState.partOne => true,
+							SegaState.partTwo => true,
+							SegaState.partThree => false,
+						},
+						child: SizedBox(
+							width: 150,
+							height: 150,
+							child: Image.asset("assets/rover.png"),
+						),
+					),
+				),
+			],
+		)
+		: Center(child: Column(  // Error
+			mainAxisAlignment: MainAxisAlignment.center,
+			children: [
+				const Spacer(flex: 2),
+				Text("Something went wrong", style: Theme.of(context).textTheme.displayLarge),
+				const Spacer(),
+				Text("The error occurred when trying to initialize $current", style: Theme.of(context).textTheme.headlineLarge),
+				const SizedBox(height: 24),
+				Text("Here is the exact error:", style: Theme.of(context).textTheme.titleLarge),
+				const SizedBox(height: 16),
+				Text(errorText!),
+				const Spacer(flex: 2),
+			],
+		),),
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPageState/current.html b/docs/pages/SplashPageState/current.html new file mode 100644 index 0000000000..58d506ed6f --- /dev/null +++ b/docs/pages/SplashPageState/current.html @@ -0,0 +1,115 @@ + + + + + + + + current property - SplashPageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
current
+ +
+ +
+
+
+
+
+ +

current property +

+ + +
+ + String? + current +
getter/setter pair
+ +
+ +
+

The current task, if any.

+
+ + +
+

Implementation

+
String? current;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPageState/dispose.html b/docs/pages/SplashPageState/dispose.html new file mode 100644 index 0000000000..53267be07a --- /dev/null +++ b/docs/pages/SplashPageState/dispose.html @@ -0,0 +1,173 @@ + + + + + + + + dispose method - SplashPageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Called when this object is removed from the tree permanently.

+

The framework calls this method when this State object will never +build again. After the framework calls dispose, the State object is +considered unmounted and the mounted property is false. It is an error +to call setState at this point. This stage of the lifecycle is terminal: +there is no way to remount a State object that has been disposed.

+

Subclasses should override this method to release any resources retained +by this object (e.g., stop any active animations).

+

If a State's build method depends on an object that can itself +change state, for example a ChangeNotifier or Stream, or some +other object to which one can subscribe to receive notifications, then +be sure to subscribe and unsubscribe properly in initState, +didUpdateWidget, and dispose:

+
    +
  • In initState, subscribe to the object.
  • +
  • In didUpdateWidget unsubscribe from the old object and subscribe +to the new one if the updated widget configuration requires +replacing the object.
  • +
  • In dispose, unsubscribe from the object.
  • +
+

Implementations of this method should end with a call to the inherited +method, as in super.dispose().

+

Caveats

+

This method is not invoked at times where a developer might otherwise +expect it, such as application shutdown or dismissal via platform +native methods.

+

Application shutdown

+

There is no way to predict when application shutdown will happen. For +example, a user's battery could catch fire, or the user could drop the +device into a swimming pool, or the operating system could unilaterally +terminate the application process due to memory pressure.

+

Applications are responsible for ensuring that they are well-behaved +even in the face of a rapid unscheduled termination.

+

To artificially cause the entire widget tree to be disposed, consider +calling runApp with a widget such as SizedBox.shrink.

+

To listen for platform shutdown messages (and other lifecycle changes), +consider the AppLifecycleListener API.

+

Dismissing Flutter UI via platform native methods

+

An application may have both Flutter and non-Flutter UI in it. If the +application calls non-Flutter methods to remove Flutter based UI such as +platform native API to manipulate the platform native navigation stack, +the framework does not know if the developer intends to eagerly free +resources or not. The widget tree remains mounted and ready to render +as soon as it is displayed again.

+

See the method used to bootstrap the app (e.g. runApp or runWidget) +for suggestions on how to release resources more eagerly.

+

See also:

+ +
+ + + +
+

Implementation

+
@override
+void dispose() {
+  audioPlayer.dispose();
+  super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPageState/errorText.html b/docs/pages/SplashPageState/errorText.html new file mode 100644 index 0000000000..627cb4ddcf --- /dev/null +++ b/docs/pages/SplashPageState/errorText.html @@ -0,0 +1,115 @@ + + + + + + + + errorText property - SplashPageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
errorText
+ +
+ +
+
+
+
+
+ +

errorText property +

+ + +
+ + String? + errorText +
getter/setter pair
+ +
+ +
+

The error message produced during initialization, if any.

+
+ + +
+

Implementation

+
String? errorText;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPageState/init.html b/docs/pages/SplashPageState/init.html new file mode 100644 index 0000000000..c8de117c3a --- /dev/null +++ b/docs/pages/SplashPageState/init.html @@ -0,0 +1,134 @@ + + + + + + + + init method - SplashPageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +Future<void> +init() + + + +
+ +
+

Calls Services.init and Models.init while monitoring for errors.

+
+ + + +
+

Implementation

+
Future<void> init() async {
+	try {
+		await SystemChrome.setPreferredOrientations([DeviceOrientation.landscapeLeft, DeviceOrientation.landscapeRight]);
+		current = "Flutter";
+		WidgetsFlutterBinding.ensureInitialized();
+
+		current = "services";
+		await services.init();
+
+		current = "models";
+		await models.init();
+		if (models.settings.easterEggs.segaIntro) await initAnimation();
+		if (mounted) {
+			await Navigator.of(context).pushReplacementNamed(Routes.home);
+		}
+	} catch (error, stackTrace) {
+		setState(() => errorText = "$error\n$stackTrace");
+		rethrow;
+	}
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPageState/initAnimation.html b/docs/pages/SplashPageState/initAnimation.html new file mode 100644 index 0000000000..30c9359a81 --- /dev/null +++ b/docs/pages/SplashPageState/initAnimation.html @@ -0,0 +1,126 @@ + + + + + + + + initAnimation method - SplashPageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
initAnimation
+ +
+ +
+
+
+
+
+ +

initAnimation method +

+ +
+ +Future<void> +initAnimation() + + + +
+ +
+

Starts the SEGA animation.

+
+ + + +
+

Implementation

+
Future<void> initAnimation() async {
+    // Disabled because the sound is horrible. Please find a better sound :)
+    // if (models.settings.easterEggs.segaSound) {
+    //   await audioPlayer.setAsset("assets/binghamton2.wav");
+    //   await audioPlayer.setVolume(0.5);
+    //   audioPlayer.play().ignore();
+    // }
+	setState(() => state = SegaState.partTwo);
+	await Future<void>.delayed(const Duration(milliseconds: 750));
+	setState(() => state = SegaState.partThree);
+	await Future<void>.delayed(const Duration(milliseconds: 750));
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPageState/initState.html b/docs/pages/SplashPageState/initState.html new file mode 100644 index 0000000000..85b00f04b6 --- /dev/null +++ b/docs/pages/SplashPageState/initState.html @@ -0,0 +1,147 @@ + + + + + + + + initState method - SplashPageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
initState
+ +
+ +
+
+
+
+
+ +

initState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +initState() + +
override
+ +
+ +
+

Called when this object is inserted into the tree.

+

The framework will call this method exactly once for each State object +it creates.

+

Override this method to perform initialization that depends on the +location at which this object was inserted into the tree (i.e., context) +or on the widget used to configure this object (i.e., widget).

+

If a State's build method depends on an object that can itself +change state, for example a ChangeNotifier or Stream, or some +other object to which one can subscribe to receive notifications, then +be sure to subscribe and unsubscribe properly in initState, +didUpdateWidget, and dispose:

+
    +
  • In initState, subscribe to the object.
  • +
  • In didUpdateWidget unsubscribe from the old object and subscribe +to the new one if the updated widget configuration requires +replacing the object.
  • +
  • In dispose, unsubscribe from the object.
  • +
+

You should not use BuildContext.dependOnInheritedWidgetOfExactType from this +method. However, didChangeDependencies will be called immediately +following this method, and BuildContext.dependOnInheritedWidgetOfExactType can +be used there.

+

Implementations of this method should start with a call to the inherited +method, as in super.initState().

+
+ + + +
+

Implementation

+
@override
+void initState() {
+	super.initState();
+	init();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/SplashPageState/state.html b/docs/pages/SplashPageState/state.html new file mode 100644 index 0000000000..3e295a8ff6 --- /dev/null +++ b/docs/pages/SplashPageState/state.html @@ -0,0 +1,115 @@ + + + + + + + + state property - SplashPageState class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
state
+ +
+ +
+
+
+
+
+ +

state property +

+ + +
+ + SegaState + state +
getter/setter pair
+ +
+ +
+

The state of the SEGA animation.

+
+ + +
+

Implementation

+
SegaState state = SegaState.partOne;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ValueEditor-class-sidebar.html b/docs/pages/ValueEditor-class-sidebar.html new file mode 100644 index 0000000000..19e75c259f --- /dev/null +++ b/docs/pages/ValueEditor-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. ValueEditor
  4. + + + +
  5. + Properties +
  6. +
  7. children
  8. +
  9. hashCode
  10. +
  11. key
  12. +
  13. name
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. debugDescribeChildren
  24. +
  25. debugFillProperties
  26. +
  27. noSuchMethod
  28. +
  29. toDiagnosticsNode
  30. +
  31. toString
  32. +
  33. toStringDeep
  34. +
  35. toStringShallow
  36. +
  37. toStringShort
  38. + +
  39. Operators
  40. +
  41. operator ==
  42. + + + + + + +
diff --git a/docs/pages/ValueEditor-class.html b/docs/pages/ValueEditor-class.html new file mode 100644 index 0000000000..e68607239e --- /dev/null +++ b/docs/pages/ValueEditor-class.html @@ -0,0 +1,372 @@ + + + + + + + + ValueEditor class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ValueEditor
+ +
+ +
+
+
+
+
+ +

ValueEditor<T> class + +

+ + +
+

A widget to display all the settings in a ValueBuilder.

+

Technically this class does not need to be used with ValueBuilder, but it provides a heading +and a list of children widgets to modify individual settings.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ValueEditor({required String name, required List<Widget> children}) +
+
+ Creates a widget to modify a value. +
const
+
+
+
+ +
+

Properties

+
+
+ children + → List<Widget> + + +
+
+ Widgets to modify each individual setting. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ name + → String + + +
+
+ The name of the value being edited. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ValueEditor/ValueEditor.html b/docs/pages/ValueEditor/ValueEditor.html new file mode 100644 index 0000000000..ec2a0f469f --- /dev/null +++ b/docs/pages/ValueEditor/ValueEditor.html @@ -0,0 +1,113 @@ + + + + + + + + ValueEditor constructor - ValueEditor - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ValueEditor
+ +
+ +
+
+
+
+
+ +

ValueEditor<T> constructor +

+ +
+ const + ValueEditor<T>({
  1. required String name,
  2. +
  3. required List<Widget> children,
  4. +
}) +
+ +
+

Creates a widget to modify a value.

+
+ + + +
+

Implementation

+
const ValueEditor({required this.name, required this.children});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ValueEditor/build.html b/docs/pages/ValueEditor/build.html new file mode 100644 index 0000000000..c509587ebc --- /dev/null +++ b/docs/pages/ValueEditor/build.html @@ -0,0 +1,169 @@ + + + + + + + + build method - ValueEditor class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Column(
+	crossAxisAlignment: CrossAxisAlignment.start,
+	children: [
+		const SizedBox(height: 4),
+		Padding(
+			padding: const EdgeInsets.symmetric(horizontal: 8),
+			child: Text(
+				name,
+				style: Theme.of(context).textTheme.titleLarge,
+				textAlign: TextAlign.start,
+			),
+		),
+		const SizedBox(height: 4),
+		...children,
+	],
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ValueEditor/children.html b/docs/pages/ValueEditor/children.html new file mode 100644 index 0000000000..084f023ddc --- /dev/null +++ b/docs/pages/ValueEditor/children.html @@ -0,0 +1,115 @@ + + + + + + + + children property - ValueEditor class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
children
+ +
+ +
+
+
+
+
+ +

children property +

+ + +
+ + List<Widget> + children +
final
+ +
+ +
+

Widgets to modify each individual setting.

+
+ + +
+

Implementation

+
final List<Widget> children;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ValueEditor/name.html b/docs/pages/ValueEditor/name.html new file mode 100644 index 0000000000..37a97768ad --- /dev/null +++ b/docs/pages/ValueEditor/name.html @@ -0,0 +1,115 @@ + + + + + + + + name property - ValueEditor class - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + +
+ + String + name +
final
+ +
+ +
+

The name of the value being edited.

+
+ + +
+

Implementation

+
final String name;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/ViewBuilder.html b/docs/pages/ViewBuilder.html new file mode 100644 index 0000000000..f0976f2011 --- /dev/null +++ b/docs/pages/ViewBuilder.html @@ -0,0 +1,109 @@ + + + + + + + + ViewBuilder typedef - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ViewBuilder
+ +
+ +
+
+
+
+
+ +

ViewBuilder typedef + +

+
+ ViewBuilder = + Widget Function(BuildContext context, int index) + +
+ + +
+

A function that builds a view of the given index.

+
+ + +
+

Implementation

+
typedef ViewBuilder = Widget Function(BuildContext context, int index);
+
+ +
+ + +
+ + + + + + + + + diff --git a/docs/pages/criticalWidget.html b/docs/pages/criticalWidget.html new file mode 100644 index 0000000000..5a606c04d5 --- /dev/null +++ b/docs/pages/criticalWidget.html @@ -0,0 +1,113 @@ + + + + + + + + criticalWidget property - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
criticalWidget
+ +
+ +
+
+
+
+
+ +

criticalWidget top-level property + +

+ +
+ + Icon + criticalWidget +
final
+ +
+ +
+

The icon to show for logs with BurtLogLevel.critical.

+
+ + +
+

Implementation

+
final criticalWidget = Icon(Icons.cancel, color: Colors.red.shade900);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/debugWidget-constant.html b/docs/pages/debugWidget-constant.html new file mode 100644 index 0000000000..13284a8ac6 --- /dev/null +++ b/docs/pages/debugWidget-constant.html @@ -0,0 +1,113 @@ + + + + + + + + debugWidget constant - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
debugWidget
+ +
+ +
+
+
+
+
+ +

debugWidget top-level constant + +

+ +
+ + Icon + const debugWidget + + +
+ +
+

The icon to show for logs with BurtLogLevel.debug.

+
+ + +
+

Implementation

+
const debugWidget = Icon(Icons.chat, color: Colors.blueGrey);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/errorWidget-constant.html b/docs/pages/errorWidget-constant.html new file mode 100644 index 0000000000..86a47f1d2c --- /dev/null +++ b/docs/pages/errorWidget-constant.html @@ -0,0 +1,113 @@ + + + + + + + + errorWidget constant - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
errorWidget
+ +
+ +
+
+
+
+
+ +

errorWidget top-level constant + +

+ +
+ + Icon + const errorWidget + + +
+ +
+

The icon to show for logs with BurtLogLevel.error.

+
+ + +
+

Implementation

+
const errorWidget = Icon(Icons.error, color: Colors.red);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/getTitles.html b/docs/pages/getTitles.html new file mode 100644 index 0000000000..43f6db0377 --- /dev/null +++ b/docs/pages/getTitles.html @@ -0,0 +1,119 @@ + + + + + + + + getTitles function - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getTitles
+ +
+ +
+
+
+
+
+ +

getTitles function + +

+ +
+ +GetTitleWidgetFunction +getTitles(
  1. List<String> titles
  2. +
) + + + +
+ +
+

Gets titles for a graph.

+
+ + + +
+

Implementation

+
GetTitleWidgetFunction getTitles(List<String> titles) => (value, meta) => SideTitleWidget(
+	axisSide: AxisSide.bottom,
+	space: 2,
+	child: Text(titles[value.toInt()]),
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/infoWidget.html b/docs/pages/infoWidget.html new file mode 100644 index 0000000000..40263272e3 --- /dev/null +++ b/docs/pages/infoWidget.html @@ -0,0 +1,113 @@ + + + + + + + + infoWidget property - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
infoWidget
+ +
+ +
+
+
+
+
+ +

infoWidget top-level property + +

+ +
+ + Icon + infoWidget +
final
+ +
+ +
+

The icon to show for logs with BurtLogLevel.info.

+
+ + +
+

Implementation

+
final infoWidget = Icon(Icons.info, color: Colors.lightBlue.shade900);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/pages-library-sidebar.html b/docs/pages/pages-library-sidebar.html new file mode 100644 index 0000000000..3e81f9a6cf --- /dev/null +++ b/docs/pages/pages-library-sidebar.html @@ -0,0 +1,55 @@ +
    +
  1. Classes
  2. +
  3. ArmPage
  4. +
  5. ArmPainterSide
  6. +
  7. ArmPainterTop
  8. +
  9. ChartsRow
  10. +
  11. DashboardView
  12. +
  13. DesktopScrollBehavior
  14. +
  15. DrivePage
  16. +
  17. ElectricalPage
  18. +
  19. HomePage
  20. +
  21. HomePageState
  22. +
  23. LogsBody
  24. +
  25. LogsOptions
  26. +
  27. LogsPage
  28. +
  29. LogsState
  30. +
  31. LogWidget
  32. +
  33. MapPage
  34. +
  35. ResultsBox
  36. +
  37. Rock
  38. +
  39. RockModel
  40. +
  41. RocksPage
  42. +
  43. RockWidget
  44. +
  45. Routes
  46. +
  47. SciencePage
  48. +
  49. ScrollingRow
  50. +
  51. SettingsPage
  52. +
  53. SocketSwitcher
  54. +
  55. SplashPage
  56. +
  57. SplashPageState
  58. +
  59. ValueEditor
  60. + +
  61. Enums
  62. +
  63. SegaState
  64. + + + +
  65. Constants
  66. +
  67. debugWidget
  68. +
  69. errorWidget
  70. +
  71. traceWidget
  72. +
  73. warningWidget
  74. + +
  75. Properties
  76. +
  77. criticalWidget
  78. +
  79. infoWidget
  80. + +
  81. Functions
  82. +
  83. getTitles
  84. + +
  85. Typedefs
  86. +
  87. ViewBuilder
  88. + + +
diff --git a/docs/pages/pages-library.html b/docs/pages/pages-library.html new file mode 100644 index 0000000000..be5a2f9a53 --- /dev/null +++ b/docs/pages/pages-library.html @@ -0,0 +1,497 @@ + + + + + + + + pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pages
+ +
+ +
+
+
+
+ +
+ + + +

+ pages + library + + +

+
+ + +
+

Contains the high-level UI code that defines each page.

+

This library is organized by having a separate file for each page (or complex popup) in +the entire app.

+

This library may depend on the data, services, models, and widgets libraries.

+
+ + +
+

Classes

+
+
+ ArmPage + +
+
+ The view model for the arm inverse kinematics analysis page. +
+ +
+ ArmPainterSide + +
+
+ A widget to show the profile view of the arm. +
+ +
+ ArmPainterTop + +
+
+ A widget to paint the top-down view of the arm. +
+ +
+ ChartsRow + +
+
+ A ScrollingRow of charts, using builder on each ScienceAnalysis in analyses. +
+ +
+ DashboardView + +
+
+ A view in the UI. +
+ +
+ DesktopScrollBehavior + +
+
+ Allows desktop users to scroll with their mouse or other device. +
+ +
+ DrivePage + +
+
+ The UI for the drive analysis. +
+ +
+ ElectricalPage + +
+
+ The UI for the electrical subsystem. +
+ +
+ HomePage + +
+
+ The main dashboard page. +
+ +
+ HomePageState + +
+
+ The state for the homepage. Handles showing and hiding the sidebar. +
+ +
+ LogsBody + +
+
+ The widget that actually contains the logs for the page. +
+ +
+ LogsOptions + +
+
+ A widget to show the options for the logs page. +
+ +
+ LogsPage + +
+
+ The logs page, containing the LogsOptions and LogsBody widgets. +
+ +
+ LogsState + +
+
+ The state of the logs page. Used to ensure that the LogsViewModel is only created once. +
+ +
+ LogWidget + +
+
+ A widget that shows a BurtLog. +
+ +
+ MapPage + +
+
+ The UI for the autonomy subsystem. +
+ +
+ ResultsBox + +
+
+ A box to display the final results for each sensor. +
+ +
+ Rock + +
+
+ Contains data and knowledge about a specific rock type. +
+ +
+ RockModel + +
+
+ A view model to control which rocks are shown on screen. +
+ +
+ RocksPage + +
+
+ A page to show a searchable list of rocks and information about them. +
+ +
+ RockWidget + +
+
+ A widget to show a row with details about a specific kind of rock. +
+ +
+ Routes + +
+
+ The names of all the pages available in the app. +
+ +
+ SciencePage + +
+
+ The science analysis page. +
+ +
+ ScrollingRow + +
+
+ A row of scrollable or non-scrollable widgets. +
+ +
+ SettingsPage + +
+
+ The settings page. +
+ +
+ SocketSwitcher + +
+
+ A widget to switch between tank and rover modes. +
+ +
+ SplashPage + +
+
+ Initializes the dashboard and handles errors. +
+ +
+ SplashPageState + +
+
+ Initializes the dashboard and handles errors. +
+ +
+ ValueEditor<T> + +
+
+ A widget to display all the settings in a ValueBuilder. +
+ +
+
+ +
+

Enums

+
+
+ SegaState + +
+
+ The state of the SEGA animation. +
+ +
+
+ + + + +
+

Constants

+
+
+ debugWidget + → const Icon + + +
+
+ The icon to show for logs with BurtLogLevel.debug. + + +
+ +
+ errorWidget + → const Icon + + +
+
+ The icon to show for logs with BurtLogLevel.error. + + +
+ +
+ traceWidget + → const Icon + + +
+
+ The icon to show for logs with BurtLogLevel.trace. + + +
+ +
+ warningWidget + → const Icon + + +
+
+ The icon to show for logs with BurtLogLevel.warning. + + +
+ +
+
+ +
+

Properties

+
+
+ criticalWidget + Icon + + +
+
+ The icon to show for logs with BurtLogLevel.critical. +
final
+ +
+ +
+ infoWidget + Icon + + +
+
+ The icon to show for logs with BurtLogLevel.info. +
final
+ +
+ +
+
+ +
+

Functions

+
+
+ getTitles(List<String> titles) + GetTitleWidgetFunction + + + +
+
+ Gets titles for a graph. + + +
+ +
+
+ +
+

Typedefs

+
+ +
+ ViewBuilder + = Widget Function(BuildContext context, int index) + + + +
+
+ A function that builds a view of the given index. + + +
+ +
+
+ +
+ + +
+ + + + + + + + + diff --git a/docs/pages/traceWidget-constant.html b/docs/pages/traceWidget-constant.html new file mode 100644 index 0000000000..b2c3c5e4f5 --- /dev/null +++ b/docs/pages/traceWidget-constant.html @@ -0,0 +1,113 @@ + + + + + + + + traceWidget constant - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
traceWidget
+ +
+ +
+
+
+
+
+ +

traceWidget top-level constant + +

+ +
+ + Icon + const traceWidget + + +
+ +
+

The icon to show for logs with BurtLogLevel.trace.

+
+ + +
+

Implementation

+
const traceWidget = Icon(Icons.code, color: Colors.grey);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/pages/warningWidget-constant.html b/docs/pages/warningWidget-constant.html new file mode 100644 index 0000000000..a6c2e6e99d --- /dev/null +++ b/docs/pages/warningWidget-constant.html @@ -0,0 +1,113 @@ + + + + + + + + warningWidget constant - pages library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
warningWidget
+ +
+ +
+
+
+
+
+ +

warningWidget top-level constant + +

+ +
+ + Icon + const warningWidget + + +
+ +
+

The icon to show for logs with BurtLogLevel.warning.

+
+ + +
+

Implementation

+
const warningWidget = Icon(Icons.warning, color: Colors.orange);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/search.html b/docs/search.html new file mode 100644 index 0000000000..e1774b9d4b --- /dev/null +++ b/docs/search.html @@ -0,0 +1,92 @@ + + + + + + + + rover_dashboard - Dart API docs + + + + + + + + + + + + + + +
+
+ menu + +
rover_dashboard
+ +
+ +
+
+
+
+
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket-class-sidebar.html b/docs/services/DashboardSocket-class-sidebar.html new file mode 100644 index 0000000000..519dbedf50 --- /dev/null +++ b/docs/services/DashboardSocket-class-sidebar.html @@ -0,0 +1,51 @@ +
    + +
  1. Constructors
  2. +
  3. DashboardSocket
  4. + + + +
  5. + Properties +
  6. +
  7. connectionIncrement
  8. +
  9. connectionStrength
  10. +
  11. destination
  12. +
  13. device
  14. +
  15. frequency
  16. +
  17. hashCode
  18. +
  19. heartbeatInterval
  20. +
  21. heartbeatTimer
  22. +
  23. heartbeatWaitDelay
  24. +
  25. isConnected
  26. +
  27. logger
  28. +
  29. messageHandler
  30. +
  31. onConnect
  32. +
  33. onDisconnect
  34. +
  35. port
  36. +
  37. quiet
  38. +
  39. runtimeType
  40. + +
  41. Methods
  42. +
  43. checkHeartbeats
  44. +
  45. dispose
  46. +
  47. init
  48. +
  49. noSuchMethod
  50. +
  51. onData
  52. +
  53. onHeartbeat
  54. +
  55. onMessage
  56. +
  57. onWrapper
  58. +
  59. sendData
  60. +
  61. sendMessage
  62. +
  63. sendWrapper
  64. +
  65. toString
  66. + +
  67. Operators
  68. +
  69. operator ==
  70. + + + + + + +
diff --git a/docs/services/DashboardSocket-class.html b/docs/services/DashboardSocket-class.html new file mode 100644 index 0000000000..fd0ff7fd29 --- /dev/null +++ b/docs/services/DashboardSocket-class.html @@ -0,0 +1,524 @@ + + + + + + + + DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DashboardSocket
+ +
+ +
+
+
+
+
+ +

DashboardSocket class + +

+ + +
+

A service to send and receive Protobuf messages over a UDP socket, using ProtoSocket.

+

This class monitors its connection to the given device by sending heartbeats periodically and +logging the response (or lack thereof). To be notified of connection events, pass in +onConnect and onDisconnect callbacks. To be notified of incoming messages, pass in an +onMessage callback that accepts a WrappedMessage.

+

To use this class:

+
    +
  • Call init to open the socket.
  • +
  • Check connectionStrength or isConnected for the connection to the given device.
  • +
  • To send a message, call sendMessage.
  • +
  • Call dispose to close the socket.
  • +
+
+ + + + +
+

Constructors

+
+
+ DashboardSocket({required void onConnect(Device device), required void onDisconnect(Device device), required WrappedMessageHandler messageHandler, required Device device}) +
+
+ Listens for incoming messages on a UDP socket and sends heartbeats to the device. +
+
+
+ +
+

Properties

+
+
+ connectionIncrement + → double + + +
+
+ How much each successful/missed handshake is worth, as a percent. +
no setter
+ +
+ +
+ connectionStrength + ValueNotifier<double> + + +
+
+ The connection strength, as a percentage to this device. +
final
+ +
+ +
+ destination + SocketInfo? + + +
+
+ The destination port to send to. +
getter/setter pairinherited
+ +
+ +
+ device + Device + + +
+
+ The rover device this socket represents. +
finalinherited
+ +
+ +
+ frequency + → double + + +
+
+ Number of times to check heart beat per seconds based on settings.network.connectionTimeout. +
no setter
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ heartbeatInterval + → Duration + + +
+
+ How often to check for heartbeats. +
no setter
+ +
+ +
+ heartbeatTimer + ↔ Timer? + + +
+
+ A timer to call checkHeartbeats every heartbeatInterval. +
getter/setter pairinherited
+ +
+ +
+ heartbeatWaitDelay + → Duration + + +
+
+ How long to wait for incoming heartbeats after sending them out. +
no setter
+ +
+ +
+ isConnected + → bool + + +
+
+ Whether this socket has a stable connection to the device. +
no setter
+ +
+ +
+ logger + → BurtLogger + + +
+
+ A logger to capture important events during operation. +
finalinherited
+ +
+ +
+ messageHandler + WrappedMessageHandler + + +
+
+ The handler to call when a WrappedMessage comes in. Used by onMessage. +
final
+ +
+ +
+ onConnect + ↔ void Function(Device device) + + +
+
+ A callback to run when the device has connected. +
getter/setter pair
+ +
+ +
+ onDisconnect + ↔ void Function(Device device) + + +
+
+ A callback to run when the device has disconnected. +
getter/setter pair
+ +
+ +
+ port + ↔ int? + + +
+
+ The port this socket is listening on. See RawDatagramSocket.bind. +
getter/setter pairinherited
+ +
+ +
+ quiet + → bool + + +
+
+ Whether to silence "normal" output, like opening/closing and resetting sockets. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ checkHeartbeats() + → Future<void> + + + +
+
+ Checks for incoming heartbeats from the intended device(s). + + +
+ +
+ dispose() + → Future<void> + + + +
+
+ Closes the socket. +
inherited
+ +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes the socket, and restarts it if a known "safe" error occurs (see allowedErrors). +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ onData(Datagram packet) + → void + + + +
+
+ Override this function to process incoming data, along with the source address and port. +
inherited
+ +
+ +
+ onHeartbeat(Connect heartbeat, SocketInfo source) + → void + + + +
+
+ Handles an incoming heartbeat from another device. + + +
+ +
+ onMessage(WrappedMessage wrapper) + → void + + + +
+
+ Handles a non-heartbeat message, usually containing data or commands. + + +
+ +
+ onWrapper(WrappedMessage wrapper, SocketInfo source) + → void + + + +
+
+ A callback for when messages are received. +
inherited
+ +
+ +
+ sendData(List<int> data, {SocketInfo? destinationOverride}) + → void + + + +
+
+ Sends data to the given destination. +
inherited
+ +
+ +
+ sendMessage(Message message, {SocketInfo? destinationOverride}) + → void + + + +
+
+ Wraps a message and sends it with sendWrapper. +
inherited
+ +
+ +
+ sendWrapper(WrappedMessage wrapper, {SocketInfo? destinationOverride}) + → void + + + +
+
+ Sends an already-wrapped WrappedMessage to the destination, or the given destinationOverride. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/DashboardSocket.html b/docs/services/DashboardSocket/DashboardSocket.html new file mode 100644 index 0000000000..988251a4aa --- /dev/null +++ b/docs/services/DashboardSocket/DashboardSocket.html @@ -0,0 +1,125 @@ + + + + + + + + DashboardSocket constructor - DashboardSocket - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DashboardSocket
+ +
+ +
+
+
+
+
+ +

DashboardSocket constructor +

+ +
+ + DashboardSocket({
  1. required void onConnect(
    1. Device device
    2. +
    ),
  2. +
  3. required void onDisconnect(
    1. Device device
    2. +
    ),
  4. +
  5. required WrappedMessageHandler messageHandler,
  6. +
  7. required Device device,
  8. +
}) +
+ +
+

Listens for incoming messages on a UDP socket and sends heartbeats to the device.

+
+ + + +
+

Implementation

+
DashboardSocket({
+	required this.onConnect,
+	required this.onDisconnect,
+	required this.messageHandler,
+	required super.device,
+}) : super(
+	port: null,
+    quiet: true,
+);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/checkHeartbeats.html b/docs/services/DashboardSocket/checkHeartbeats.html new file mode 100644 index 0000000000..cccc94c41e --- /dev/null +++ b/docs/services/DashboardSocket/checkHeartbeats.html @@ -0,0 +1,142 @@ + + + + + + + + checkHeartbeats method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
checkHeartbeats
+ +
+ +
+
+
+
+
+ +

checkHeartbeats method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +checkHeartbeats() + + + +
+ +
+

Checks for incoming heartbeats from the intended device(s).

+

For example, on the rover, this waits for new heartbeats, but on the Dashboard, +it sends heartbeats to every connected device.

+
+ + + +
+

Implementation

+
@override
+Future<void> checkHeartbeats() async {
+	if (_isChecking) return;
+	// 1. Clear state and send a heartbeat
+	_isChecking = true;
+	_heartbeats = 0;
+	final wasConnected = isConnected;
+	sendMessage(Connect(sender: Device.DASHBOARD, receiver: device));
+	// 2. Wait a bit and count the number of responses
+	await Future<void>.delayed(heartbeatWaitDelay);
+	if (_heartbeats > 0) {
+		connectionStrength.value += connectionIncrement * _heartbeats;
+	} else {
+		connectionStrength.value -= connectionIncrement;
+	}
+	// 3. Assess the current state
+	connectionStrength.value = connectionStrength.value.clamp(0, 1);
+	if (isConnected && !wasConnected) onConnect(device);
+	if (wasConnected && !isConnected) onDisconnect(device);
+	_isChecking = false;
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/connectionIncrement.html b/docs/services/DashboardSocket/connectionIncrement.html new file mode 100644 index 0000000000..8abe1e946e --- /dev/null +++ b/docs/services/DashboardSocket/connectionIncrement.html @@ -0,0 +1,121 @@ + + + + + + + + connectionIncrement property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
connectionIncrement
+ +
+ +
+
+
+
+
+ +

connectionIncrement property +

+ + + + + +
+
+ + double + get + connectionIncrement + + +
+ +
+

How much each successful/missed handshake is worth, as a percent.

+
+ + +
+

Implementation

+
double get connectionIncrement => 1 / frequency;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/connectionStrength.html b/docs/services/DashboardSocket/connectionStrength.html new file mode 100644 index 0000000000..62b02d80d2 --- /dev/null +++ b/docs/services/DashboardSocket/connectionStrength.html @@ -0,0 +1,115 @@ + + + + + + + + connectionStrength property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
connectionStrength
+ +
+ +
+
+
+
+
+ +

connectionStrength property +

+ + +
+ + ValueNotifier<double> + connectionStrength +
final
+ +
+ +
+

The connection strength, as a percentage to this device.

+
+ + +
+

Implementation

+
final connectionStrength = ValueNotifier<double>(0);
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/destination.html b/docs/services/DashboardSocket/destination.html new file mode 100644 index 0000000000..c36cba326c --- /dev/null +++ b/docs/services/DashboardSocket/destination.html @@ -0,0 +1,116 @@ + + + + + + + + destination property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
destination
+ +
+ +
+
+
+
+
+

destination property +

+ + +
+ + SocketInfo? + destination +
getter/setter pairinherited
+ +
+ +
+

The destination port to send to.

+

All the send* functions allow you to send to a specific SocketInfo. This field +is the default destination if those parameters are omitted.

+
+ + +
+

Implementation

+
SocketInfo? destination;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/device.html b/docs/services/DashboardSocket/device.html new file mode 100644 index 0000000000..3ffc88f21a --- /dev/null +++ b/docs/services/DashboardSocket/device.html @@ -0,0 +1,114 @@ + + + + + + + + device property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
device
+ +
+ +
+
+
+
+
+

device property +

+ + +
+ + Device + device +
finalinherited
+ +
+ +
+

The rover device this socket represents.

+
+ + +
+

Implementation

+
final Device device;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/dispose.html b/docs/services/DashboardSocket/dispose.html new file mode 100644 index 0000000000..a8d69c765d --- /dev/null +++ b/docs/services/DashboardSocket/dispose.html @@ -0,0 +1,123 @@ + + + + + + + + dispose method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +dispose() + +
inherited
+ +
+ +
+

Closes the socket.

+
+ + + +
+

Implementation

+
@override
+Future<void> dispose() async {
+  heartbeatTimer?.cancel();
+  await super.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/frequency.html b/docs/services/DashboardSocket/frequency.html new file mode 100644 index 0000000000..e6bcddc86a --- /dev/null +++ b/docs/services/DashboardSocket/frequency.html @@ -0,0 +1,121 @@ + + + + + + + + frequency property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
frequency
+ +
+ +
+
+
+
+
+ +

frequency property +

+ + + + + +
+
+ + double + get + frequency + + +
+ +
+

Number of times to check heart beat per seconds based on settings.network.connectionTimeout.

+
+ + +
+

Implementation

+
double get frequency => models.settings.network.connectionTimeout;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/hashCode.html b/docs/services/DashboardSocket/hashCode.html new file mode 100644 index 0000000000..633bc28598 --- /dev/null +++ b/docs/services/DashboardSocket/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/heartbeatInterval.html b/docs/services/DashboardSocket/heartbeatInterval.html new file mode 100644 index 0000000000..9180184909 --- /dev/null +++ b/docs/services/DashboardSocket/heartbeatInterval.html @@ -0,0 +1,127 @@ + + + + + + + + heartbeatInterval property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
heartbeatInterval
+ +
+ +
+
+
+
+
+ +

heartbeatInterval property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ Duration + get + heartbeatInterval + + +
+ +
+

How often to check for heartbeats.

+
+ + +
+

Implementation

+
@override
+Duration get heartbeatInterval => Duration(milliseconds: 1000 ~/ frequency);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/heartbeatTimer.html b/docs/services/DashboardSocket/heartbeatTimer.html new file mode 100644 index 0000000000..aee64a2d60 --- /dev/null +++ b/docs/services/DashboardSocket/heartbeatTimer.html @@ -0,0 +1,114 @@ + + + + + + + + heartbeatTimer property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
heartbeatTimer
+ +
+ +
+
+
+
+
+

heartbeatTimer property +

+ + +
+ + Timer? + heartbeatTimer +
getter/setter pairinherited
+ +
+ +
+

A timer to call checkHeartbeats every heartbeatInterval.

+
+ + +
+

Implementation

+
Timer? heartbeatTimer;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/heartbeatWaitDelay.html b/docs/services/DashboardSocket/heartbeatWaitDelay.html new file mode 100644 index 0000000000..85dd04d2d9 --- /dev/null +++ b/docs/services/DashboardSocket/heartbeatWaitDelay.html @@ -0,0 +1,121 @@ + + + + + + + + heartbeatWaitDelay property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
heartbeatWaitDelay
+ +
+ +
+
+
+
+
+ +

heartbeatWaitDelay property +

+ + + + + +
+
+ + Duration + get + heartbeatWaitDelay + + +
+ +
+

How long to wait for incoming heartbeats after sending them out.

+
+ + +
+

Implementation

+
Duration get heartbeatWaitDelay => Duration(milliseconds: 1000 ~/ frequency);
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/init.html b/docs/services/DashboardSocket/init.html new file mode 100644 index 0000000000..a524a03092 --- /dev/null +++ b/docs/services/DashboardSocket/init.html @@ -0,0 +1,123 @@ + + + + + + + + init method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + +
inherited
+ +
+ +
+

Initializes the socket, and restarts it if a known "safe" error occurs (see allowedErrors).

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+  await super.init();
+  heartbeatTimer = Timer.periodic(heartbeatInterval, (_) => checkHeartbeats());
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/isConnected.html b/docs/services/DashboardSocket/isConnected.html new file mode 100644 index 0000000000..42e5b883fc --- /dev/null +++ b/docs/services/DashboardSocket/isConnected.html @@ -0,0 +1,127 @@ + + + + + + + + isConnected property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isConnected
+ +
+ +
+
+
+
+
+ +

isConnected property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + isConnected + + +
+ +
+

Whether this socket has a stable connection to the device.

+
+ + +
+

Implementation

+
@override
+bool get isConnected => connectionStrength.value > 0;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/logger.html b/docs/services/DashboardSocket/logger.html new file mode 100644 index 0000000000..228635f320 --- /dev/null +++ b/docs/services/DashboardSocket/logger.html @@ -0,0 +1,114 @@ + + + + + + + + logger property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
logger
+ +
+ +
+
+
+
+
+

logger property +

+ + +
+ + BurtLogger + logger +
finalinherited
+ +
+ +
+

A logger to capture important events during operation.

+
+ + +
+

Implementation

+
final logger = BurtLogger();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/messageHandler.html b/docs/services/DashboardSocket/messageHandler.html new file mode 100644 index 0000000000..07d05bbab4 --- /dev/null +++ b/docs/services/DashboardSocket/messageHandler.html @@ -0,0 +1,115 @@ + + + + + + + + messageHandler property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
messageHandler
+ +
+ +
+
+
+
+
+ +

messageHandler property +

+ + +
+ + WrappedMessageHandler + messageHandler +
final
+ +
+ +
+

The handler to call when a WrappedMessage comes in. Used by onMessage.

+
+ + +
+

Implementation

+
final WrappedMessageHandler messageHandler;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/noSuchMethod.html b/docs/services/DashboardSocket/noSuchMethod.html new file mode 100644 index 0000000000..4ad9f1da8d --- /dev/null +++ b/docs/services/DashboardSocket/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/onConnect.html b/docs/services/DashboardSocket/onConnect.html new file mode 100644 index 0000000000..839d991563 --- /dev/null +++ b/docs/services/DashboardSocket/onConnect.html @@ -0,0 +1,115 @@ + + + + + + + + onConnect property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onConnect
+ +
+ +
+
+
+
+
+ +

onConnect property +

+ + +
+ + void Function(Device device) + onConnect +
getter/setter pair
+ +
+ +
+

A callback to run when the device has connected.

+
+ + +
+

Implementation

+
void Function(Device device) onConnect;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/onData.html b/docs/services/DashboardSocket/onData.html new file mode 100644 index 0000000000..59c80efb69 --- /dev/null +++ b/docs/services/DashboardSocket/onData.html @@ -0,0 +1,125 @@ + + + + + + + + onData method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onData
+ +
+ +
+
+
+
+
+

onData method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +onData(
  1. Datagram packet
  2. +
) + +
inherited
+ +
+ +
+

Override this function to process incoming data, along with the source address and port.

+
+ + + +
+

Implementation

+
@override
+void onData(Datagram packet) {
+  final wrapper = WrappedMessage.fromBuffer(packet.data);
+  final source = SocketInfo(address: packet.address, port: packet.port);
+  onWrapper(wrapper, source);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/onDisconnect.html b/docs/services/DashboardSocket/onDisconnect.html new file mode 100644 index 0000000000..3e7bf11260 --- /dev/null +++ b/docs/services/DashboardSocket/onDisconnect.html @@ -0,0 +1,115 @@ + + + + + + + + onDisconnect property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onDisconnect
+ +
+ +
+
+
+
+
+ +

onDisconnect property +

+ + +
+ + void Function(Device device) + onDisconnect +
getter/setter pair
+ +
+ +
+

A callback to run when the device has disconnected.

+
+ + +
+

Implementation

+
void Function(Device device) onDisconnect;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/onHeartbeat.html b/docs/services/DashboardSocket/onHeartbeat.html new file mode 100644 index 0000000000..90bf07dca4 --- /dev/null +++ b/docs/services/DashboardSocket/onHeartbeat.html @@ -0,0 +1,123 @@ + + + + + + + + onHeartbeat method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onHeartbeat
+ +
+ +
+
+
+
+
+ +

onHeartbeat method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +onHeartbeat(
  1. Connect heartbeat,
  2. +
  3. SocketInfo source
  4. +
) + + + +
+ +
+

Handles an incoming heartbeat from another device.

+
+ + + +
+

Implementation

+
@override
+void onHeartbeat(Connect heartbeat, SocketInfo source) => _heartbeats++;
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/onMessage.html b/docs/services/DashboardSocket/onMessage.html new file mode 100644 index 0000000000..0549cf50d1 --- /dev/null +++ b/docs/services/DashboardSocket/onMessage.html @@ -0,0 +1,122 @@ + + + + + + + + onMessage method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onMessage
+ +
+ +
+
+
+
+
+ +

onMessage method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +onMessage(
  1. WrappedMessage wrapper
  2. +
) + + + +
+ +
+

Handles a non-heartbeat message, usually containing data or commands.

+
+ + + +
+

Implementation

+
@override
+void onMessage(WrappedMessage wrapper) => messageHandler(wrapper);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/onWrapper.html b/docs/services/DashboardSocket/onWrapper.html new file mode 100644 index 0000000000..6b947b4fe9 --- /dev/null +++ b/docs/services/DashboardSocket/onWrapper.html @@ -0,0 +1,131 @@ + + + + + + + + onWrapper method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onWrapper
+ +
+ +
+
+
+
+
+

onWrapper method +

+ +
+ +
+
    +
  1. @override
  2. +
  3. @mustCallSuper
  4. +
+
+void +onWrapper(
  1. WrappedMessage wrapper,
  2. +
  3. SocketInfo source
  4. +
) + +
inherited
+ +
+ +
+

A callback for when messages are received.

+
+ + + +
+

Implementation

+
@override
+@mustCallSuper
+void onWrapper(WrappedMessage wrapper, SocketInfo source) {
+  if (wrapper.name == Connect().messageName) {
+    final heartbeat = Connect.fromBuffer(wrapper.data);
+    onHeartbeat(heartbeat, source);
+  } else {
+    onMessage(wrapper);
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/operator_equals.html b/docs/services/DashboardSocket/operator_equals.html new file mode 100644 index 0000000000..884bed8177 --- /dev/null +++ b/docs/services/DashboardSocket/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/port.html b/docs/services/DashboardSocket/port.html new file mode 100644 index 0000000000..1299239270 --- /dev/null +++ b/docs/services/DashboardSocket/port.html @@ -0,0 +1,114 @@ + + + + + + + + port property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
port
+ +
+ +
+
+
+
+
+

port property +

+ + +
+ + int? + port +
getter/setter pairinherited
+ +
+ +
+

The port this socket is listening on. See RawDatagramSocket.bind.

+
+ + +
+

Implementation

+
int? port;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/quiet.html b/docs/services/DashboardSocket/quiet.html new file mode 100644 index 0000000000..412f226e04 --- /dev/null +++ b/docs/services/DashboardSocket/quiet.html @@ -0,0 +1,114 @@ + + + + + + + + quiet property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
quiet
+ +
+ +
+
+
+
+
+

quiet property +

+ + +
+ + bool + quiet +
finalinherited
+ +
+ +
+

Whether to silence "normal" output, like opening/closing and resetting sockets.

+
+ + +
+

Implementation

+
final bool quiet;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/runtimeType.html b/docs/services/DashboardSocket/runtimeType.html new file mode 100644 index 0000000000..8cf10a6124 --- /dev/null +++ b/docs/services/DashboardSocket/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/sendData.html b/docs/services/DashboardSocket/sendData.html new file mode 100644 index 0000000000..df7390ec7f --- /dev/null +++ b/docs/services/DashboardSocket/sendData.html @@ -0,0 +1,123 @@ + + + + + + + + sendData method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sendData
+ +
+ +
+
+
+
+
+

sendData method +

+ +
+ +void +sendData(
  1. List<int> data, {
  2. +
  3. SocketInfo? destinationOverride,
  4. +
}) + +
inherited
+ +
+ +
+

Sends data to the given destination.

+

Being UDP, this function does not wait for a response or even confirmation of a +successful send and is therefore very quick and non-blocking.

+
+ + + +
+

Implementation

+
void sendData(List<int> data, {SocketInfo? destinationOverride}) {
+  final target = destinationOverride ?? destination;
+  if (target == null) return;
+  if (_socket == null) throw StateError("Cannot use a UdpSocket on port $port after it's been disposed");
+  _socket!.send(data, target.address, target.port);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/sendMessage.html b/docs/services/DashboardSocket/sendMessage.html new file mode 100644 index 0000000000..04227abe24 --- /dev/null +++ b/docs/services/DashboardSocket/sendMessage.html @@ -0,0 +1,117 @@ + + + + + + + + sendMessage method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sendMessage
+ +
+ +
+
+
+
+
+

sendMessage method +

+ +
+ +void +sendMessage(
  1. Message message, {
  2. +
  3. SocketInfo? destinationOverride,
  4. +
}) + +
inherited
+ +
+ +
+

Wraps a message and sends it with sendWrapper.

+
+ + + +
+

Implementation

+
void sendMessage(Message message, {SocketInfo? destinationOverride}) =>
+  sendWrapper(message.wrap(), destinationOverride: destinationOverride);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/sendWrapper.html b/docs/services/DashboardSocket/sendWrapper.html new file mode 100644 index 0000000000..50a20ea93b --- /dev/null +++ b/docs/services/DashboardSocket/sendWrapper.html @@ -0,0 +1,118 @@ + + + + + + + + sendWrapper method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sendWrapper
+ +
+ +
+
+
+
+
+

sendWrapper method +

+ +
+ +void +sendWrapper(
  1. WrappedMessage wrapper, {
  2. +
  3. SocketInfo? destinationOverride,
  4. +
}) + +
inherited
+ +
+ +
+

Sends an already-wrapped WrappedMessage to the destination, or the given destinationOverride.

+

Use this function instead of sendMessage if you need to manually wrap a message yourself.

+
+ + + +
+

Implementation

+
void sendWrapper(WrappedMessage wrapper, {SocketInfo? destinationOverride}) =>
+  sendData(wrapper.writeToBuffer(), destinationOverride: destinationOverride);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DashboardSocket/toString.html b/docs/services/DashboardSocket/toString.html new file mode 100644 index 0000000000..c785b48e8d --- /dev/null +++ b/docs/services/DashboardSocket/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DeviceNotConnected-class-sidebar.html b/docs/services/DeviceNotConnected-class-sidebar.html new file mode 100644 index 0000000000..b8e55b8fde --- /dev/null +++ b/docs/services/DeviceNotConnected-class-sidebar.html @@ -0,0 +1,26 @@ +
    + +
  1. Constructors
  2. +
  3. DeviceNotConnected
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + + +
diff --git a/docs/services/DeviceNotConnected-class.html b/docs/services/DeviceNotConnected-class.html new file mode 100644 index 0000000000..e134cbbb76 --- /dev/null +++ b/docs/services/DeviceNotConnected-class.html @@ -0,0 +1,226 @@ + + + + + + + + DeviceNotConnected class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DeviceNotConnected
+ +
+ +
+
+
+
+
+ +

DeviceNotConnected class + +

+ + +
+

Indicates that no device has been connected.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ DeviceNotConnected() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DeviceNotConnected/DeviceNotConnected.html b/docs/services/DeviceNotConnected/DeviceNotConnected.html new file mode 100644 index 0000000000..d2f969d85f --- /dev/null +++ b/docs/services/DeviceNotConnected/DeviceNotConnected.html @@ -0,0 +1,104 @@ + + + + + + + + DeviceNotConnected constructor - DeviceNotConnected - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DeviceNotConnected
+ +
+ +
+
+
+
+
+ +

DeviceNotConnected constructor +

+ +
+ + DeviceNotConnected() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/DeviceNotConnected/toString.html b/docs/services/DeviceNotConnected/toString.html new file mode 100644 index 0000000000..47bae5ea4a --- /dev/null +++ b/docs/services/DeviceNotConnected/toString.html @@ -0,0 +1,130 @@ + + + + + + + + toString method - DeviceNotConnected class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+ +

toString method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+String +toString() + + + +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
@override
+String toString() => "No device was chosen. Please connect by calling Serial.connect() first.";
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService-class-sidebar.html b/docs/services/FilesService-class-sidebar.html new file mode 100644 index 0000000000..eaae5fc436 --- /dev/null +++ b/docs/services/FilesService-class-sidebar.html @@ -0,0 +1,43 @@ +
    + +
  1. Constructors
  2. +
  3. FilesService
  4. + + + +
  5. + Properties +
  6. +
  7. batchedLogs
  8. +
  9. dataLogger
  10. +
  11. hashCode
  12. +
  13. jsonEncoder
  14. +
  15. loggingDir
  16. +
  17. outputDir
  18. +
  19. runtimeType
  20. +
  21. screenshotsDir
  22. +
  23. settingsFile
  24. + +
  25. Methods
  26. +
  27. dispose
  28. +
  29. init
  30. +
  31. logAllData
  32. +
  33. logData
  34. +
  35. logError
  36. +
  37. logMessage
  38. +
  39. noSuchMethod
  40. +
  41. readLogs
  42. +
  43. readSettings
  44. +
  45. toString
  46. +
  47. writeImage
  48. +
  49. writeSettings
  50. + +
  51. Operators
  52. +
  53. operator ==
  54. + + + + + + +
diff --git a/docs/services/FilesService-class.html b/docs/services/FilesService-class.html new file mode 100644 index 0000000000..925359bd42 --- /dev/null +++ b/docs/services/FilesService-class.html @@ -0,0 +1,419 @@ + + + + + + + + FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
FilesService
+ +
+ +
+
+
+
+
+ +

FilesService class + +

+ + +
+

A service to read and write to the file system.

+

The dashboard reads and writes to files in outputDir.

+
+ + + + +
+

Constructors

+
+
+ FilesService() +
+
+ +
+
+
+ +
+

Properties

+
+
+ batchedLogs + ↔ Map<String, List<WrappedMessage>> + + +
+
+ Holds data to be logged by logData when dataLogger fires. +
getter/setter pair
+ +
+ +
+ dataLogger + ↔ Timer + + +
+
+ Saves all the data in batchedLogs to a file by calling logAllData. +
latefinal
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ jsonEncoder + → JsonEncoder + + +
+
+ The encoder to convert a Map<> to a json string with a nice indent +
final
+ +
+ +
+ loggingDir + ↔ Directory + + +
+
+ The directory where all logging data is outputted +
latefinal
+ +
+ +
+ outputDir + ↔ Directory + + +
+
+ The directory where the dashboard keeps its files. +
latefinal
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ screenshotsDir + → Directory + + +
+
+ The directory where screenshots are stored. +
no setter
+ +
+ +
+ settingsFile + → File + + +
+
+ The file containing the user's Settings, in JSON form. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ dispose() + → Future<void> + + + +
+
+ Cleans up any resources used by the service. + + +
+ +
+ init() + → Future<void> + + + +
+
+ Ensure that files and directories that are expected to be present actually +exist on the system. If not, create them. + + +
+ +
+ logAllData(Timer timer) + → Future<void> + + + +
+
+ Logs all the data saved in batchedLogs and resets it. + + +
+ +
+ logData(Message message) + → Future<void> + + + +
+
+ Outputs log data to the correct file based on message + + +
+ +
+ logError(Object error, StackTrace stack) + → Future<void> + + + +
+
+ Outputs error to log file + + +
+ +
+ logMessage(BurtLog log) + → Future<void> + + + +
+
+ Outputs a log to its device's respective log file. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ readLogs(File file) + → Future<List<WrappedMessage>> + + + +
+
+ Reads logs from the given file. + + +
+ +
+ readSettings({bool retry = true}) + → Future<Settings> + + + +
+
+ Reads the user's settings from the settingsFile. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ writeImage(List<int> image, String cameraName) + → Future<void> + + + +
+
+ Saves the current frame in the feed to the camera's output directory. + + +
+ +
+ writeSettings(Settings? value) + → Future<void> + + + +
+
+ Saves the Settings object to the settingsFile, as JSON. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/FilesService.html b/docs/services/FilesService/FilesService.html new file mode 100644 index 0000000000..d997b3dbac --- /dev/null +++ b/docs/services/FilesService/FilesService.html @@ -0,0 +1,104 @@ + + + + + + + + FilesService constructor - FilesService - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
FilesService
+ +
+ +
+
+
+
+
+ +

FilesService constructor +

+ +
+ + FilesService() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/batchedLogs.html b/docs/services/FilesService/batchedLogs.html new file mode 100644 index 0000000000..6d34a5ca6f --- /dev/null +++ b/docs/services/FilesService/batchedLogs.html @@ -0,0 +1,118 @@ + + + + + + + + batchedLogs property - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
batchedLogs
+ +
+ +
+
+
+
+
+ +

batchedLogs property +

+ + +
+ + Map<String, List<WrappedMessage>> + batchedLogs +
getter/setter pair
+ +
+ +
+

Holds data to be logged by logData when dataLogger fires.

+

This is used by logData instead of writing the data immediately because data can come in at +an unpredictable and burdensome rate, which would make the dashboard write a lot of data at +once to the same file(s) and overload the user's device.

+
+ + +
+

Implementation

+
Map<String, List<WrappedMessage>> batchedLogs = {};
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/dataLogger.html b/docs/services/FilesService/dataLogger.html new file mode 100644 index 0000000000..4bfb2fe6d9 --- /dev/null +++ b/docs/services/FilesService/dataLogger.html @@ -0,0 +1,115 @@ + + + + + + + + dataLogger property - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dataLogger
+ +
+ +
+
+
+
+
+ +

dataLogger property +

+ + +
+ + Timer + dataLogger +
latefinal
+ +
+ +
+

Saves all the data in batchedLogs to a file by calling logAllData.

+
+ + +
+

Implementation

+
late final Timer dataLogger;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/dispose.html b/docs/services/FilesService/dispose.html new file mode 100644 index 0000000000..423f1fafcb --- /dev/null +++ b/docs/services/FilesService/dispose.html @@ -0,0 +1,123 @@ + + + + + + + + dispose method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +dispose() + + + +
+ +
+

Cleans up any resources used by the service.

+
+ + + +
+

Implementation

+
@override
+Future<void> dispose() async {
+  dataLogger.cancel();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/hashCode.html b/docs/services/FilesService/hashCode.html new file mode 100644 index 0000000000..df0185729a --- /dev/null +++ b/docs/services/FilesService/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/init.html b/docs/services/FilesService/init.html new file mode 100644 index 0000000000..17e80d59ee --- /dev/null +++ b/docs/services/FilesService/init.html @@ -0,0 +1,128 @@ + + + + + + + + init method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + + + +
+ +
+

Ensure that files and directories that are expected to be present actually +exist on the system. If not, create them.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+  final appDir = await getApplicationDocumentsDirectory();
+  outputDir = await Directory("${appDir.path}/Dashboard").create();
+  loggingDir = await Directory("${outputDir.path}/logs/${DateTime.now().timeStamp}").create(recursive: true);
+  if (!settingsFile.existsSync()) await writeSettings(null);
+  dataLogger = Timer.periodic(const Duration(seconds: 5), logAllData);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/jsonEncoder.html b/docs/services/FilesService/jsonEncoder.html new file mode 100644 index 0000000000..369701a5c4 --- /dev/null +++ b/docs/services/FilesService/jsonEncoder.html @@ -0,0 +1,115 @@ + + + + + + + + jsonEncoder property - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
jsonEncoder
+ +
+ +
+
+
+
+
+ +

jsonEncoder property +

+ + +
+ + JsonEncoder + jsonEncoder +
final
+ +
+ +
+

The encoder to convert a Map<> to a json string with a nice indent

+
+ + +
+

Implementation

+
final JsonEncoder jsonEncoder = const JsonEncoder.withIndent("  ");
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/logAllData.html b/docs/services/FilesService/logAllData.html new file mode 100644 index 0000000000..0efbee720f --- /dev/null +++ b/docs/services/FilesService/logAllData.html @@ -0,0 +1,127 @@ + + + + + + + + logAllData method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
logAllData
+ +
+ +
+
+
+
+
+ +

logAllData method +

+ +
+ +Future<void> +logAllData(
  1. Timer timer
  2. +
) + + + +
+ +
+

Logs all the data saved in batchedLogs and resets it.

+
+ + + +
+

Implementation

+
Future<void> logAllData(Timer timer) async {
+  for (final name in batchedLogs.keys) {
+    final file = loggingDir / "$name.log";
+    final data = batchedLogs[name]!;
+    final copy = List<WrappedMessage>.from(data);
+    data.clear();
+    for (final wrapper in copy) {
+      final encoded = base64.encode(wrapper.writeToBuffer());
+      await file.writeAsString("$encoded\n", mode: FileMode.writeOnlyAppend);
+    }
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/logData.html b/docs/services/FilesService/logData.html new file mode 100644 index 0000000000..34b61130ca --- /dev/null +++ b/docs/services/FilesService/logData.html @@ -0,0 +1,119 @@ + + + + + + + + logData method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
logData
+ +
+ +
+
+
+
+
+ +

logData method +

+ +
+ +Future<void> +logData(
  1. Message message
  2. +
) + + + +
+ +
+

Outputs log data to the correct file based on message

+
+ + + +
+

Implementation

+
Future<void> logData(Message message) async {
+  batchedLogs[message.messageName] ??= [];
+  batchedLogs[message.messageName]!.add(message.wrap());
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/logError.html b/docs/services/FilesService/logError.html new file mode 100644 index 0000000000..47f3ee1a1a --- /dev/null +++ b/docs/services/FilesService/logError.html @@ -0,0 +1,120 @@ + + + + + + + + logError method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
logError
+ +
+ +
+
+
+
+
+ +

logError method +

+ +
+ +Future<void> +logError(
  1. Object error,
  2. +
  3. StackTrace stack
  4. +
) + + + +
+ +
+

Outputs error to log file

+
+ + + +
+

Implementation

+
Future<void> logError(Object error, StackTrace stack) async{
+  final file = loggingDir / "errors.log";
+  await file.writeAsString("${DateTime.now().timeStamp} $error $stack\n", mode: FileMode.writeOnlyAppend);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/logMessage.html b/docs/services/FilesService/logMessage.html new file mode 100644 index 0000000000..5b5a464ca5 --- /dev/null +++ b/docs/services/FilesService/logMessage.html @@ -0,0 +1,119 @@ + + + + + + + + logMessage method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
logMessage
+ +
+ +
+
+
+
+
+ +

logMessage method +

+ +
+ +Future<void> +logMessage(
  1. BurtLog log
  2. +
) + + + +
+ +
+

Outputs a log to its device's respective log file.

+
+ + + +
+

Implementation

+
Future<void> logMessage(BurtLog log) async {
+  final file = loggingDir / "${log.device.humanName}.log";
+  await file.writeAsString("${log.format()}\n", mode: FileMode.writeOnlyAppend);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/loggingDir.html b/docs/services/FilesService/loggingDir.html new file mode 100644 index 0000000000..3044548ea5 --- /dev/null +++ b/docs/services/FilesService/loggingDir.html @@ -0,0 +1,116 @@ + + + + + + + + loggingDir property - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
loggingDir
+ +
+ +
+
+
+
+
+ +

loggingDir property +

+ + +
+ + Directory + loggingDir +
latefinal
+ +
+ +
+

The directory where all logging data is outputted

+

This includes all the different operating modes with specified folders inside

+
+ + +
+

Implementation

+
late final Directory loggingDir;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/noSuchMethod.html b/docs/services/FilesService/noSuchMethod.html new file mode 100644 index 0000000000..506840586d --- /dev/null +++ b/docs/services/FilesService/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/operator_equals.html b/docs/services/FilesService/operator_equals.html new file mode 100644 index 0000000000..bd321c08db --- /dev/null +++ b/docs/services/FilesService/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/outputDir.html b/docs/services/FilesService/outputDir.html new file mode 100644 index 0000000000..f7ec106c82 --- /dev/null +++ b/docs/services/FilesService/outputDir.html @@ -0,0 +1,118 @@ + + + + + + + + outputDir property - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
outputDir
+ +
+ +
+
+
+
+
+ +

outputDir property +

+ + +
+ + Directory + outputDir +
latefinal
+ +
+ +
+

The directory where the dashboard keeps its files.

+

This includes settings, data, images, and anything else the user or dashboard +may want to keep between sessions. Categories of output, like screenshots, +should get their own subdirectory.

+
+ + +
+

Implementation

+
late final Directory outputDir;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/readLogs.html b/docs/services/FilesService/readLogs.html new file mode 100644 index 0000000000..a20804c1e2 --- /dev/null +++ b/docs/services/FilesService/readLogs.html @@ -0,0 +1,119 @@ + + + + + + + + readLogs method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
readLogs
+ +
+ +
+
+
+
+
+ +

readLogs method +

+ +
+ +Future<List<WrappedMessage>> +readLogs(
  1. File file
  2. +
) + + + +
+ +
+

Reads logs from the given file.

+
+ + + +
+

Implementation

+
Future<List<WrappedMessage>> readLogs(File file) async => [
+  for (final line in (await file.readAsString()).trim().split("\n"))
+    WrappedMessage.fromBuffer(base64.decode(line)),
+];
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/readSettings.html b/docs/services/FilesService/readSettings.html new file mode 100644 index 0000000000..e6f00e9641 --- /dev/null +++ b/docs/services/FilesService/readSettings.html @@ -0,0 +1,131 @@ + + + + + + + + readSettings method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
readSettings
+ +
+ +
+
+
+
+
+ +

readSettings method +

+ +
+ +Future<Settings> +readSettings({
  1. bool retry = true,
  2. +
}) + + + +
+ +
+

Reads the user's settings from the settingsFile.

+
+ + + +
+

Implementation

+
Future<Settings> readSettings({bool retry = true}) async {
+  final Json json = jsonDecode(await settingsFile.readAsString());
+  try {
+    final settings = Settings.fromJson(json);
+    await writeSettings(settings);  // re-save any default values
+    return settings;
+  } catch (error) {
+    services.error = "Settings were corrupted and reset back to defaults";
+    await writeSettings(Settings.fromJson({}));  // delete corrupt settings
+    if (retry) {
+      return readSettings(retry: false);
+    } else {
+      rethrow;
+    }
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/runtimeType.html b/docs/services/FilesService/runtimeType.html new file mode 100644 index 0000000000..15fc1c237c --- /dev/null +++ b/docs/services/FilesService/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/screenshotsDir.html b/docs/services/FilesService/screenshotsDir.html new file mode 100644 index 0000000000..9d5f481c0a --- /dev/null +++ b/docs/services/FilesService/screenshotsDir.html @@ -0,0 +1,122 @@ + + + + + + + + screenshotsDir property - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
screenshotsDir
+ +
+ +
+
+
+
+
+ +

screenshotsDir property +

+ + + + + +
+
+ + Directory + get + screenshotsDir + + +
+ +
+

The directory where screenshots are stored.

+

These are only screenshots of video feeds, not of the dashboard itself.

+
+ + +
+

Implementation

+
Directory get screenshotsDir => Directory("${outputDir.path}/screenshots");
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/settingsFile.html b/docs/services/FilesService/settingsFile.html new file mode 100644 index 0000000000..37eb7fce84 --- /dev/null +++ b/docs/services/FilesService/settingsFile.html @@ -0,0 +1,123 @@ + + + + + + + + settingsFile property - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
settingsFile
+ +
+ +
+
+
+
+
+ +

settingsFile property +

+ + + + + +
+
+ + File + get + settingsFile + + +
+ +
+

The file containing the user's Settings, in JSON form.

+

This file should contain the result of Settings.toJson, and loading settings +from the file should be done with Settings.fromJson.

+
+ + +
+

Implementation

+
File get settingsFile => outputDir / "settings.json";
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/toString.html b/docs/services/FilesService/toString.html new file mode 100644 index 0000000000..384f6e98df --- /dev/null +++ b/docs/services/FilesService/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/writeImage.html b/docs/services/FilesService/writeImage.html new file mode 100644 index 0000000000..0674979ca5 --- /dev/null +++ b/docs/services/FilesService/writeImage.html @@ -0,0 +1,122 @@ + + + + + + + + writeImage method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
writeImage
+ +
+ +
+
+
+
+
+ +

writeImage method +

+ +
+ +Future<void> +writeImage(
  1. List<int> image,
  2. +
  3. String cameraName
  4. +
) + + + +
+ +
+

Saves the current frame in the feed to the camera's output directory.

+
+ + + +
+

Implementation

+
Future<void> writeImage(List<int> image, String cameraName) async {
+  final dir = await Directory("${screenshotsDir.path}/$cameraName").create(recursive: true);
+  final files = dir.listSync();
+  final number = files.isEmpty ? 1 : (int.parse(files.last.filename) + 1);
+  await File("${dir.path}/$number.jpg").writeAsBytes(image);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/FilesService/writeSettings.html b/docs/services/FilesService/writeSettings.html new file mode 100644 index 0000000000..495e4c5b4b --- /dev/null +++ b/docs/services/FilesService/writeSettings.html @@ -0,0 +1,119 @@ + + + + + + + + writeSettings method - FilesService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
writeSettings
+ +
+ +
+
+
+
+
+ +

writeSettings method +

+ +
+ +Future<void> +writeSettings(
  1. Settings? value
  2. +
) + + + +
+ +
+

Saves the Settings object to the settingsFile, as JSON.

+
+ + + +
+

Implementation

+
Future<void> writeSettings(Settings? value) async {
+  final json = jsonEncoder.convert(value?.toJson() ?? {});
+  await settingsFile.writeAsString(json);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad-class-sidebar.html b/docs/services/Gamepad-class-sidebar.html new file mode 100644 index 0000000000..681d332fbc --- /dev/null +++ b/docs/services/Gamepad-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. Gamepad
  4. +
  5. forPlatform
  6. + + + +
  7. + Properties +
  8. +
  9. batteryLevel
  10. +
  11. controllerIndex
  12. +
  13. hashCode
  14. +
  15. isConnected
  16. +
  17. runtimeType
  18. + +
  19. Methods
  20. +
  21. dispose
  22. +
  23. getState
  24. +
  25. init
  26. +
  27. noSuchMethod
  28. +
  29. pulse
  30. +
  31. stopVibrating
  32. +
  33. toString
  34. +
  35. vibrate
  36. + +
  37. Operators
  38. +
  39. operator ==
  40. + + + + + + +
diff --git a/docs/services/Gamepad-class.html b/docs/services/Gamepad-class.html new file mode 100644 index 0000000000..6c10200aa6 --- /dev/null +++ b/docs/services/Gamepad-class.html @@ -0,0 +1,329 @@ + + + + + + + + Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Gamepad
+ +
+ +
+
+
+
+
+ +

Gamepad class + abstract + +

+ + +
+

A physical gamepad that can be connected and used to control the rover.

+

To interact with a gamepad, create an instance of this class. This class is completely safe to +use even if the gamepad in question is not connected or suddenly disconnects. Check +isConnected if you need to know the current state of the gamepad.

+

Use Gamepad.forPlatform to get the right implementation for the current platform.

+
+ + + + +
+

Constructors

+
+
+ Gamepad(int controllerIndex) +
+
+ Creates a new gamepad object, whether it is connected or not. +
+
+ Gamepad.forPlatform(int index) +
+
+ Returns a functional instance of this class, or a mock on unsupported platforms. +
factory
+
+
+
+ +
+

Properties

+
+
+ batteryLevel + GamepadBatteryLevel + + +
+
+ The current battery of the controller, or GamepadBatteryLevel.unknown if disconnected. +
no setter
+ +
+ +
+ controllerIndex + → int + + +
+
+ The unique number assigned to this controller by the operating system. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ isConnected + → bool + + +
+
+ Whether the gamepad is currently connected. +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ dispose() + → Future<void> + + + +
+
+ Cleans up any resources used by the service. +
inherited
+ +
+ +
+ getState() + GamepadState? + + + +
+
+ Gets the current state of the gamepad, or null if it's not connected. + + +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes the service. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ pulse() + → void + + + +
+
+ Makes the gamepad vibrate a small "pulse" + + +
+ +
+ stopVibrating() + → void + + + +
+
+ Stops vibrating the controller. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ vibrate({double intensity = 1}) + → void + + + +
+
+ Vibrates the gamepad at the given intensity, from a scale of 0.0 to 1.0. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/Gamepad.forPlatform.html b/docs/services/Gamepad/Gamepad.forPlatform.html new file mode 100644 index 0000000000..7f6def1453 --- /dev/null +++ b/docs/services/Gamepad/Gamepad.forPlatform.html @@ -0,0 +1,112 @@ + + + + + + + + Gamepad.forPlatform constructor - Gamepad - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Gamepad.forPlatform
+ +
+ +
+
+
+
+
+ +

Gamepad.forPlatform constructor +

+ +
+ + Gamepad.forPlatform(
  1. int index
  2. +
) +
+ +
+

Returns a functional instance of this class, or a mock on unsupported platforms.

+
+ + + +
+

Implementation

+
factory Gamepad.forPlatform(int index) => DesktopGamepad(index);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/Gamepad.html b/docs/services/Gamepad/Gamepad.html new file mode 100644 index 0000000000..133e426362 --- /dev/null +++ b/docs/services/Gamepad/Gamepad.html @@ -0,0 +1,112 @@ + + + + + + + + Gamepad constructor - Gamepad - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Gamepad
+ +
+ +
+
+
+
+
+ +

Gamepad constructor +

+ +
+ + Gamepad(
  1. int controllerIndex
  2. +
) +
+ +
+

Creates a new gamepad object, whether it is connected or not.

+
+ + + +
+

Implementation

+
Gamepad(this.controllerIndex);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/batteryLevel.html b/docs/services/Gamepad/batteryLevel.html new file mode 100644 index 0000000000..d2a828fa43 --- /dev/null +++ b/docs/services/Gamepad/batteryLevel.html @@ -0,0 +1,121 @@ + + + + + + + + batteryLevel property - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
batteryLevel
+ +
+ +
+
+
+
+
+ +

batteryLevel property +

+ + + + + +
+
+ + GamepadBatteryLevel + get + batteryLevel + + +
+ +
+

The current battery of the controller, or GamepadBatteryLevel.unknown if disconnected.

+
+ + +
+

Implementation

+
GamepadBatteryLevel get batteryLevel;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/controllerIndex.html b/docs/services/Gamepad/controllerIndex.html new file mode 100644 index 0000000000..eb6c7c1810 --- /dev/null +++ b/docs/services/Gamepad/controllerIndex.html @@ -0,0 +1,115 @@ + + + + + + + + controllerIndex property - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
controllerIndex
+ +
+ +
+
+
+
+
+ +

controllerIndex property +

+ + +
+ + int + controllerIndex +
final
+ +
+ +
+

The unique number assigned to this controller by the operating system.

+
+ + +
+

Implementation

+
final int controllerIndex;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/dispose.html b/docs/services/Gamepad/dispose.html new file mode 100644 index 0000000000..5d3cc6c7c7 --- /dev/null +++ b/docs/services/Gamepad/dispose.html @@ -0,0 +1,115 @@ + + + + + + + + dispose method - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose abstract method +

+ +
+ +Future<void> +dispose() + +
inherited
+ +
+ +
+

Cleans up any resources used by the service.

+
+ + + +
+

Implementation

+
Future<void> dispose();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/getState.html b/docs/services/Gamepad/getState.html new file mode 100644 index 0000000000..7e712a5f7a --- /dev/null +++ b/docs/services/Gamepad/getState.html @@ -0,0 +1,115 @@ + + + + + + + + getState method - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getState
+ +
+ +
+
+
+
+
+ +

getState abstract method +

+ +
+ +GamepadState? +getState() + + + +
+ +
+

Gets the current state of the gamepad, or null if it's not connected.

+
+ + + +
+

Implementation

+
GamepadState? getState();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/hashCode.html b/docs/services/Gamepad/hashCode.html new file mode 100644 index 0000000000..7f577e0af8 --- /dev/null +++ b/docs/services/Gamepad/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/init.html b/docs/services/Gamepad/init.html new file mode 100644 index 0000000000..edba343094 --- /dev/null +++ b/docs/services/Gamepad/init.html @@ -0,0 +1,115 @@ + + + + + + + + init method - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init abstract method +

+ +
+ +Future<void> +init() + +
inherited
+ +
+ +
+

Initializes the service.

+
+ + + +
+

Implementation

+
Future<void> init();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/isConnected.html b/docs/services/Gamepad/isConnected.html new file mode 100644 index 0000000000..e658bae4ab --- /dev/null +++ b/docs/services/Gamepad/isConnected.html @@ -0,0 +1,124 @@ + + + + + + + + isConnected property - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isConnected
+ +
+ +
+
+
+
+
+ +

isConnected property +

+ + + + + +
+
+ + bool + get + isConnected + + +
+ +
+

Whether the gamepad is currently connected.

+

The gamepad can suddenly disconnect at any time, and does not have to be connected to start.

+

Note that some gamepads with wireless receivers will show up as connected when the receiver is +plugged in, even if the gamepad itself is turned off. This is a fundamental limitation.

+
+ + +
+

Implementation

+
bool get isConnected;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/noSuchMethod.html b/docs/services/Gamepad/noSuchMethod.html new file mode 100644 index 0000000000..8ae488f83f --- /dev/null +++ b/docs/services/Gamepad/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/operator_equals.html b/docs/services/Gamepad/operator_equals.html new file mode 100644 index 0000000000..84f4fac5e7 --- /dev/null +++ b/docs/services/Gamepad/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/pulse.html b/docs/services/Gamepad/pulse.html new file mode 100644 index 0000000000..de32e71385 --- /dev/null +++ b/docs/services/Gamepad/pulse.html @@ -0,0 +1,125 @@ + + + + + + + + pulse method - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pulse
+ +
+ +
+
+
+
+
+ +

pulse method +

+ +
+ +void +pulse() + + + +
+ +
+

Makes the gamepad vibrate a small "pulse"

+
+ + + +
+

Implementation

+
// ignore: avoid_void_async -- meant to be ignored
+void pulse() async {
+  if (!isConnected) return;
+  vibrate();
+  await Future<void>.delayed(const Duration(milliseconds: 200));
+  stopVibrating();
+  await Future<void>.delayed(const Duration(milliseconds: 100));
+  vibrate();
+  await Future<void>.delayed(const Duration(milliseconds: 200));
+  stopVibrating();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/runtimeType.html b/docs/services/Gamepad/runtimeType.html new file mode 100644 index 0000000000..3488b32862 --- /dev/null +++ b/docs/services/Gamepad/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/stopVibrating.html b/docs/services/Gamepad/stopVibrating.html new file mode 100644 index 0000000000..5017eb6edc --- /dev/null +++ b/docs/services/Gamepad/stopVibrating.html @@ -0,0 +1,115 @@ + + + + + + + + stopVibrating method - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
stopVibrating
+ +
+ +
+
+
+
+
+ +

stopVibrating method +

+ +
+ +void +stopVibrating() + + + +
+ +
+

Stops vibrating the controller.

+
+ + + +
+

Implementation

+
void stopVibrating() => vibrate(intensity: 0);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/toString.html b/docs/services/Gamepad/toString.html new file mode 100644 index 0000000000..635ec94faf --- /dev/null +++ b/docs/services/Gamepad/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Gamepad/vibrate.html b/docs/services/Gamepad/vibrate.html new file mode 100644 index 0000000000..acbfcff5fa --- /dev/null +++ b/docs/services/Gamepad/vibrate.html @@ -0,0 +1,117 @@ + + + + + + + + vibrate method - Gamepad class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
vibrate
+ +
+ +
+
+
+
+
+ +

vibrate abstract method +

+ +
+ +void +vibrate({
  1. double intensity = 1,
  2. +
}) + + + +
+ +
+

Vibrates the gamepad at the given intensity, from a scale of 0.0 to 1.0.

+

The vibration may not stop until you call stopVibrating.

+
+ + + +
+

Implementation

+
void vibrate({double intensity = 1});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadBatteryLevel-enum-sidebar.html b/docs/services/GamepadBatteryLevel-enum-sidebar.html new file mode 100644 index 0000000000..4dc8c0a4ff --- /dev/null +++ b/docs/services/GamepadBatteryLevel-enum-sidebar.html @@ -0,0 +1,34 @@ +
    + + +
  1. Values
  2. +
  3. low
  4. +
  5. medium
  6. +
  7. full
  8. +
  9. unknown
  10. + + +
  11. + Properties +
  12. +
  13. hashCode
  14. +
  15. index
  16. +
  17. runtimeType
  18. + +
  19. Methods
  20. +
  21. noSuchMethod
  22. +
  23. toString
  24. + +
  25. Operators
  26. +
  27. operator ==
  28. + + + + + +
  29. Static methods
  30. +
  31. fromPercent
  32. + +
  33. Constants
  34. +
  35. values
  36. +
diff --git a/docs/services/GamepadBatteryLevel.html b/docs/services/GamepadBatteryLevel.html new file mode 100644 index 0000000000..7b444c5d05 --- /dev/null +++ b/docs/services/GamepadBatteryLevel.html @@ -0,0 +1,299 @@ + + + + + + + + GamepadBatteryLevel enum - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GamepadBatteryLevel
+ +
+ +
+
+
+
+
+ + +

+ GamepadBatteryLevel + enum + + +

+
+ + +
+

The battery level of a gamepad.

+
+ + + +
+

Values

+
+
+ low + → const GamepadBatteryLevel + + +
+
+

The battery is running low.

+ + +
+ +
+ medium + → const GamepadBatteryLevel + + +
+
+

The battery is at medium charge.

+ + +
+ +
+ full + → const GamepadBatteryLevel + + +
+
+

The battery is fully charged.

+ + +
+ +
+ unknown + → const GamepadBatteryLevel + + +
+
+

The battery's charge is unknown.

+

Either the device does not support battery readings, or the device +may be disconnected.

+ + +
+ +
+
+ + +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ A numeric identifier for the enumerated value. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ fromPercent(int percentage) + GamepadBatteryLevel + + + +
+
+ Returns a battery level from a percentage. + + +
+ +
+
+ + +
+

Constants

+
+
+ values + → const List<GamepadBatteryLevel> + + +
+
+ A constant List of the values in this enum, in order of their declaration. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadBatteryLevel/fromPercent.html b/docs/services/GamepadBatteryLevel/fromPercent.html new file mode 100644 index 0000000000..cae2a252f9 --- /dev/null +++ b/docs/services/GamepadBatteryLevel/fromPercent.html @@ -0,0 +1,121 @@ + + + + + + + + fromPercent method - GamepadBatteryLevel enum - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
fromPercent
+ +
+ +
+
+
+
+
+ +

fromPercent static method +

+ +
+ +GamepadBatteryLevel +fromPercent(
  1. int percentage
  2. +
) + + + +
+ +
+

Returns a battery level from a percentage.

+
+ + + +
+

Implementation

+
static GamepadBatteryLevel fromPercent(int percentage) => switch (percentage) {
+  < 33 => low,
+  < 66 => medium,
+  <= 100 => full,
+  _ => unknown,
+};
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadBatteryLevel/hashCode.html b/docs/services/GamepadBatteryLevel/hashCode.html new file mode 100644 index 0000000000..d3091813d0 --- /dev/null +++ b/docs/services/GamepadBatteryLevel/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - GamepadBatteryLevel enum - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadBatteryLevel/index.html b/docs/services/GamepadBatteryLevel/index.html new file mode 100644 index 0000000000..67574c9e45 --- /dev/null +++ b/docs/services/GamepadBatteryLevel/index.html @@ -0,0 +1,125 @@ + + + + + + + + index property - GamepadBatteryLevel enum - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+

index property +

+ + + + + +
+
+ + int + get + index +
inherited
+ +
+ +
+

A numeric identifier for the enumerated value.

+

The values of a single enumeration are numbered +consecutively from zero to one less than the +number of values. +This is also the index of the value in the +enumerated type's static values list.

+
+ + +
+

Implementation

+
int get index;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadBatteryLevel/noSuchMethod.html b/docs/services/GamepadBatteryLevel/noSuchMethod.html new file mode 100644 index 0000000000..049cf15cb9 --- /dev/null +++ b/docs/services/GamepadBatteryLevel/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - GamepadBatteryLevel enum - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadBatteryLevel/operator_equals.html b/docs/services/GamepadBatteryLevel/operator_equals.html new file mode 100644 index 0000000000..b8d60fe6c0 --- /dev/null +++ b/docs/services/GamepadBatteryLevel/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - GamepadBatteryLevel enum - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadBatteryLevel/runtimeType.html b/docs/services/GamepadBatteryLevel/runtimeType.html new file mode 100644 index 0000000000..94ed189938 --- /dev/null +++ b/docs/services/GamepadBatteryLevel/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - GamepadBatteryLevel enum - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadBatteryLevel/toString.html b/docs/services/GamepadBatteryLevel/toString.html new file mode 100644 index 0000000000..60fc61dd00 --- /dev/null +++ b/docs/services/GamepadBatteryLevel/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - GamepadBatteryLevel enum - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadBatteryLevel/values-constant.html b/docs/services/GamepadBatteryLevel/values-constant.html new file mode 100644 index 0000000000..6623254c57 --- /dev/null +++ b/docs/services/GamepadBatteryLevel/values-constant.html @@ -0,0 +1,111 @@ + + + + + + + + values constant - GamepadBatteryLevel enum - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
values
+ +
+ +
+
+
+
+
+ +

values constant +

+ + +
+ + List<GamepadBatteryLevel> + const values + + +
+ +
+

A constant List of the values in this enum, in order of their declaration.

+
+ + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService-class-sidebar.html b/docs/services/GamepadService-class-sidebar.html new file mode 100644 index 0000000000..684c89535d --- /dev/null +++ b/docs/services/GamepadService-class-sidebar.html @@ -0,0 +1,33 @@ +
    + +
  1. Constructors
  2. +
  3. GamepadService
  4. + + + +
  5. + Properties +
  6. +
  7. gamepads
  8. +
  9. hashCode
  10. +
  11. osIndexes
  12. +
  13. runtimeType
  14. + +
  15. Methods
  16. +
  17. connect
  18. +
  19. dispose
  20. +
  21. init
  22. +
  23. noSuchMethod
  24. +
  25. toString
  26. + +
  27. Operators
  28. +
  29. operator ==
  30. + + + + + + +
  31. Constants
  32. +
  33. maxGamepads
  34. +
diff --git a/docs/services/GamepadService-class.html b/docs/services/GamepadService-class.html new file mode 100644 index 0000000000..bea905b5ac --- /dev/null +++ b/docs/services/GamepadService-class.html @@ -0,0 +1,295 @@ + + + + + + + + GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GamepadService
+ +
+ +
+
+
+
+
+ +

GamepadService class + +

+ + +
+

A service to match operators to gamepads.

+

An operator is a human user who will be assigned a gamepad. This user will expect to operate +one part of the rover for the duration of the session, hence the name. Above all, it is +critical that, once assigned, an operator's controller never changes assignments. that means +managing differences between the order of the operators and the order of the gamepads.

+

For example, say there are three operators and three gamepads. It is very likely that they will +not grab the gamepads in the "correct" order -- operator 1 might end up with gamepad 2. Instead +of forcing the operators to think like machines, we keep the gamepads list in the order of the +operators. When an operator wishes to connect, they may call connect which will grab the first +gamepad available, which may have a mismatched gamepad index. init will simply try to connect +as many gamepads as possible, which is often desirable at the start of a session.

+

Note that some gamepads with wireless receivers will show up as connected when the receiver is +plugged in, even if the gamepad itself is turned off. This is a fundamental limitation.

+
+ + + + +
+

Constructors

+
+
+ GamepadService() +
+
+ +
+
+
+ +
+

Properties

+
+
+ gamepads + ↔ List<Gamepad> + + +
+
+ A list of gamepads that are currently connected. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ osIndexes + → Set<int> + + +
+
+ A list of Gamepad.controllerIndexes for each currently connected controller. +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ connect(int operatorIndex) + → Future<void> + + + +
+
+ Connects the given operator to the first available gamepad. + + +
+ +
+ dispose() + → Future<void> + + + +
+
+ Cleans up any resources used by the service. + + +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes the service. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ maxGamepads + → const int + + +
+
+ The maximum number of gamepads that will be connected. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/GamepadService.html b/docs/services/GamepadService/GamepadService.html new file mode 100644 index 0000000000..273c709cbd --- /dev/null +++ b/docs/services/GamepadService/GamepadService.html @@ -0,0 +1,104 @@ + + + + + + + + GamepadService constructor - GamepadService - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GamepadService
+ +
+ +
+
+
+
+
+ +

GamepadService constructor +

+ +
+ + GamepadService() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/connect.html b/docs/services/GamepadService/connect.html new file mode 100644 index 0000000000..564f27932e --- /dev/null +++ b/docs/services/GamepadService/connect.html @@ -0,0 +1,140 @@ + + + + + + + + connect method - GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
connect
+ +
+ +
+
+
+
+
+ +

connect method +

+ +
+ +Future<void> +connect(
  1. int operatorIndex
  2. +
) + + + +
+ +
+

Connects the given operator to the first available gamepad.

+

See the discussions at gamepads and osIndexes for context first. This function will +loop through all available OS indexes to find the first available index, and then assign +it to the operator at the given index.

+

For example, assume the OS provides gamepads at indexes 0 and 2. There is already an operator +connected to gamepad 0. If the next operator (at index 1) wants to connect, this function will +assign them the gamepad at index 2.

+
+ + + +
+

Implementation

+
Future<void> connect(int operatorIndex) async {
+  if (gamepads[operatorIndex].isConnected) {
+    gamepads[operatorIndex].pulse();
+    return;
+  }
+  gamepads[operatorIndex] = MockGamepad(0);
+  for (final osIndex in SdlGamepad.getConnectedGamepadIds()) {
+    if (osIndexes.contains(osIndex)) continue;
+    final gamepad = Gamepad.forPlatform(osIndex);
+    await gamepad.init();
+    if (!gamepad.isConnected) {
+      await gamepad.dispose();
+      continue;
+    }
+    gamepads[operatorIndex] = gamepad;
+    gamepad.pulse();
+    return;
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/dispose.html b/docs/services/GamepadService/dispose.html new file mode 100644 index 0000000000..70bd8a82bc --- /dev/null +++ b/docs/services/GamepadService/dispose.html @@ -0,0 +1,125 @@ + + + + + + + + dispose method - GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +dispose() + + + +
+ +
+

Cleans up any resources used by the service.

+
+ + + +
+

Implementation

+
@override
+Future<void> dispose() async {
+  for (final gamepad in gamepads) {
+    await gamepad.dispose();
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/gamepads.html b/docs/services/GamepadService/gamepads.html new file mode 100644 index 0000000000..86d5d72ccd --- /dev/null +++ b/docs/services/GamepadService/gamepads.html @@ -0,0 +1,118 @@ + + + + + + + + gamepads property - GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gamepads
+ +
+ +
+
+
+
+
+ +

gamepads property +

+ + +
+ + List<Gamepad> + gamepads +
getter/setter pair
+ +
+ +
+

A list of gamepads that are currently connected.

+

Note that the index in this list does not correspond to Gamepad.controllerIndex. The +latter is the unique integer ID assigned to the physical gamepad by the operating system, +while the former is a number 1-3 representing which operator is holding that gamepad.

+
+ + +
+

Implementation

+
List<Gamepad> gamepads = [];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/hashCode.html b/docs/services/GamepadService/hashCode.html new file mode 100644 index 0000000000..27bb1aa57a --- /dev/null +++ b/docs/services/GamepadService/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/init.html b/docs/services/GamepadService/init.html new file mode 100644 index 0000000000..00049c178b --- /dev/null +++ b/docs/services/GamepadService/init.html @@ -0,0 +1,127 @@ + + + + + + + + init method - GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + + + +
+ +
+

Initializes the service.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+  SdlLibrary.init();
+  gamepads = List.generate(maxGamepads, MockGamepad.new);
+  for (var i = 0; i < maxGamepads; i++) {
+    await connect(i);
+  }
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/maxGamepads-constant.html b/docs/services/GamepadService/maxGamepads-constant.html new file mode 100644 index 0000000000..455f2d6cbd --- /dev/null +++ b/docs/services/GamepadService/maxGamepads-constant.html @@ -0,0 +1,115 @@ + + + + + + + + maxGamepads constant - GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
maxGamepads
+ +
+ +
+
+
+
+
+ +

maxGamepads constant +

+ + +
+ + int + const maxGamepads + + +
+ +
+

The maximum number of gamepads that will be connected.

+
+ + +
+

Implementation

+
static const maxGamepads = 3;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/noSuchMethod.html b/docs/services/GamepadService/noSuchMethod.html new file mode 100644 index 0000000000..b361bfe96e --- /dev/null +++ b/docs/services/GamepadService/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/operator_equals.html b/docs/services/GamepadService/operator_equals.html new file mode 100644 index 0000000000..faf12867cf --- /dev/null +++ b/docs/services/GamepadService/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/osIndexes.html b/docs/services/GamepadService/osIndexes.html new file mode 100644 index 0000000000..58dddd24df --- /dev/null +++ b/docs/services/GamepadService/osIndexes.html @@ -0,0 +1,129 @@ + + + + + + + + osIndexes property - GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
osIndexes
+ +
+ +
+
+
+
+
+ +

osIndexes property +

+ + + + + +
+
+ + Set<int> + get + osIndexes + + +
+ +
+

A list of Gamepad.controllerIndexes for each currently connected controller.

+

This set exists because the order of indexes that the operating system assigns may, and +usually will, differ from the order that the operators are in. For example, if the OS assigns +indexes 0 and 2, we'd still want the gamepads to appear in indexes 0 and 1 and save the +disconnected gamepad for index 2.

+
+ + +
+

Implementation

+
Set<int> get osIndexes => {
+  for (final gamepad in gamepads)
+    if (gamepad.isConnected)
+      gamepad.controllerIndex,
+};
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/runtimeType.html b/docs/services/GamepadService/runtimeType.html new file mode 100644 index 0000000000..aa424a96ce --- /dev/null +++ b/docs/services/GamepadService/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadService/toString.html b/docs/services/GamepadService/toString.html new file mode 100644 index 0000000000..71666dd8b9 --- /dev/null +++ b/docs/services/GamepadService/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - GamepadService class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState-class-sidebar.html b/docs/services/GamepadState-class-sidebar.html new file mode 100644 index 0000000000..892804ff8e --- /dev/null +++ b/docs/services/GamepadState-class-sidebar.html @@ -0,0 +1,44 @@ +
    + +
  1. Constructors
  2. +
  3. GamepadState
  4. + + + +
  5. + Properties +
  6. +
  7. buttonA
  8. +
  9. buttonB
  10. +
  11. buttonBack
  12. +
  13. buttonStart
  14. +
  15. buttonX
  16. +
  17. buttonY
  18. +
  19. dpadDown
  20. +
  21. dpadUp
  22. +
  23. hashCode
  24. +
  25. leftShoulder
  26. +
  27. normalDpadX
  28. +
  29. normalDpadY
  30. +
  31. normalLeftX
  32. +
  33. normalLeftY
  34. +
  35. normalRightX
  36. +
  37. normalRightY
  38. +
  39. normalShoulder
  40. +
  41. normalTrigger
  42. +
  43. rightShoulder
  44. +
  45. runtimeType
  46. + +
  47. Methods
  48. +
  49. noSuchMethod
  50. +
  51. toString
  52. + +
  53. Operators
  54. +
  55. operator ==
  56. + + + + + + +
diff --git a/docs/services/GamepadState-class.html b/docs/services/GamepadState-class.html new file mode 100644 index 0000000000..51f5861bfd --- /dev/null +++ b/docs/services/GamepadState-class.html @@ -0,0 +1,427 @@ + + + + + + + + GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GamepadState
+ +
+ +
+
+
+
+
+ +

GamepadState class + +

+ + +
+

The complete state of a gamepad.

+

A "normal" value means a value that is linked to two buttons. For example, both triggers +contribute to the normalTrigger value, so if the left was pressed less than the right, +the "normalized" result would be a small positive value. In general, the normal values range +from -1.0 to +1.0, inclusive, with -1 meaning all the way to one side, +1 to the other, and +0 indicates that neither button is pressed.

+

For digital buttons, a normalized value will only ever be -1, 0, or +1. For analog inputs, +including pressure-sensitive triggers, the value will be in the range -1.0, +1.0.

+
+ + + + +
+

Constructors

+
+
+ GamepadState({required bool buttonA, required bool buttonB, required bool buttonX, required bool buttonY, required bool buttonBack, required bool buttonStart, required double normalTrigger, required double normalShoulder, required double normalLeftX, required double normalLeftY, required double normalRightX, required double normalRightY, required double normalDpadX, required double normalDpadY}) +
+
+ Creates a new representation of the gamepad state. +
const
+
+
+
+ +
+

Properties

+
+
+ buttonA + → bool + + +
+
+ Whether the A button was pressed. +
final
+ +
+ +
+ buttonB + → bool + + +
+
+ Whether the B button was pressed. +
final
+ +
+ +
+ buttonBack + → bool + + +
+
+ Whether the Back or Select button was pressed. +
final
+ +
+ +
+ buttonStart + → bool + + +
+
+ Whether the Start or Options button was pressed. +
final
+ +
+ +
+ buttonX + → bool + + +
+
+ Whether the X button was pressed. +
final
+ +
+ +
+ buttonY + → bool + + +
+
+ Whether the Y button was pressed. +
final
+ +
+ +
+ dpadDown + → bool + + +
+
+ Whether the D-pad's down button is being pressed. +
no setter
+ +
+ +
+ dpadUp + → bool + + +
+
+ Whether the D-pad's up button is being pressed. +
no setter
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ leftShoulder + → bool + + +
+
+ Whether the left shoulder is being pressed. +
no setter
+ +
+ +
+ normalDpadX + → double + + +
+
+ A normalized reading of the D-pad's X-axis. +
final
+ +
+ +
+ normalDpadY + → double + + +
+
+ A normalized reading of the D-pad's X-axis. +
final
+ +
+ +
+ normalLeftX + → double + + +
+
+ A normalized reading of the left joystick's X-axis. +
final
+ +
+ +
+ normalLeftY + → double + + +
+
+ A normalized reading of the left joystick's Y-axis. +
final
+ +
+ +
+ normalRightX + → double + + +
+
+ A normalized reading of the right joystick's X-axis. +
final
+ +
+ +
+ normalRightY + → double + + +
+
+ A normalized reading of the right joystick's X-axis. +
final
+ +
+ +
+ normalShoulder + → double + + +
+
+ A normalized reading of the shoulder buttons. +
final
+ +
+ +
+ normalTrigger + → double + + +
+
+ A normalized reading of the triggers. +
final
+ +
+ +
+ rightShoulder + → bool + + +
+
+ Whether the right shoulder is being pressed. +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/GamepadState.html b/docs/services/GamepadState/GamepadState.html new file mode 100644 index 0000000000..46d248831b --- /dev/null +++ b/docs/services/GamepadState/GamepadState.html @@ -0,0 +1,140 @@ + + + + + + + + GamepadState constructor - GamepadState - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GamepadState
+ +
+ +
+
+
+
+
+ +

GamepadState constructor +

+ +
+ const + GamepadState({
  1. required bool buttonA,
  2. +
  3. required bool buttonB,
  4. +
  5. required bool buttonX,
  6. +
  7. required bool buttonY,
  8. +
  9. required bool buttonBack,
  10. +
  11. required bool buttonStart,
  12. +
  13. required double normalTrigger,
  14. +
  15. required double normalShoulder,
  16. +
  17. required double normalLeftX,
  18. +
  19. required double normalLeftY,
  20. +
  21. required double normalRightX,
  22. +
  23. required double normalRightY,
  24. +
  25. required double normalDpadX,
  26. +
  27. required double normalDpadY,
  28. +
}) +
+ +
+

Creates a new representation of the gamepad state.

+
+ + + +
+

Implementation

+
const GamepadState({
+  required this.buttonA,
+  required this.buttonB,
+  required this.buttonX,
+  required this.buttonY,
+  required this.buttonBack,
+  required this.buttonStart,
+  required this.normalTrigger,
+  required this.normalShoulder,
+  required this.normalLeftX,
+  required this.normalLeftY,
+  required this.normalRightX,
+  required this.normalRightY,
+  required this.normalDpadX,
+  required this.normalDpadY,
+});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/buttonA.html b/docs/services/GamepadState/buttonA.html new file mode 100644 index 0000000000..6e1d6bfc7a --- /dev/null +++ b/docs/services/GamepadState/buttonA.html @@ -0,0 +1,115 @@ + + + + + + + + buttonA property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonA
+ +
+ +
+
+
+
+
+ +

buttonA property +

+ + +
+ + bool + buttonA +
final
+ +
+ +
+

Whether the A button was pressed.

+
+ + +
+

Implementation

+
final bool buttonA;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/buttonB.html b/docs/services/GamepadState/buttonB.html new file mode 100644 index 0000000000..aabec50cb7 --- /dev/null +++ b/docs/services/GamepadState/buttonB.html @@ -0,0 +1,115 @@ + + + + + + + + buttonB property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonB
+ +
+ +
+
+
+
+
+ +

buttonB property +

+ + +
+ + bool + buttonB +
final
+ +
+ +
+

Whether the B button was pressed.

+
+ + +
+

Implementation

+
final bool buttonB;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/buttonBack.html b/docs/services/GamepadState/buttonBack.html new file mode 100644 index 0000000000..ceab61c1c9 --- /dev/null +++ b/docs/services/GamepadState/buttonBack.html @@ -0,0 +1,115 @@ + + + + + + + + buttonBack property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonBack
+ +
+ +
+
+
+
+
+ +

buttonBack property +

+ + +
+ + bool + buttonBack +
final
+ +
+ +
+

Whether the Back or Select button was pressed.

+
+ + +
+

Implementation

+
final bool buttonBack;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/buttonStart.html b/docs/services/GamepadState/buttonStart.html new file mode 100644 index 0000000000..b3779f8bf2 --- /dev/null +++ b/docs/services/GamepadState/buttonStart.html @@ -0,0 +1,115 @@ + + + + + + + + buttonStart property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonStart
+ +
+ +
+
+
+
+
+ +

buttonStart property +

+ + +
+ + bool + buttonStart +
final
+ +
+ +
+

Whether the Start or Options button was pressed.

+
+ + +
+

Implementation

+
final bool buttonStart;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/buttonX.html b/docs/services/GamepadState/buttonX.html new file mode 100644 index 0000000000..2a577f480b --- /dev/null +++ b/docs/services/GamepadState/buttonX.html @@ -0,0 +1,115 @@ + + + + + + + + buttonX property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonX
+ +
+ +
+
+
+
+
+ +

buttonX property +

+ + +
+ + bool + buttonX +
final
+ +
+ +
+

Whether the X button was pressed.

+
+ + +
+

Implementation

+
final bool buttonX;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/buttonY.html b/docs/services/GamepadState/buttonY.html new file mode 100644 index 0000000000..6d0867bf35 --- /dev/null +++ b/docs/services/GamepadState/buttonY.html @@ -0,0 +1,115 @@ + + + + + + + + buttonY property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buttonY
+ +
+ +
+
+
+
+
+ +

buttonY property +

+ + +
+ + bool + buttonY +
final
+ +
+ +
+

Whether the Y button was pressed.

+
+ + +
+

Implementation

+
final bool buttonY;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/dpadDown.html b/docs/services/GamepadState/dpadDown.html new file mode 100644 index 0000000000..187fe1c2bb --- /dev/null +++ b/docs/services/GamepadState/dpadDown.html @@ -0,0 +1,121 @@ + + + + + + + + dpadDown property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dpadDown
+ +
+ +
+
+
+
+
+ +

dpadDown property +

+ + + + + +
+
+ + bool + get + dpadDown + + +
+ +
+

Whether the D-pad's down button is being pressed.

+
+ + +
+

Implementation

+
bool get dpadDown => normalDpadY < 0;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/dpadUp.html b/docs/services/GamepadState/dpadUp.html new file mode 100644 index 0000000000..505c141c4f --- /dev/null +++ b/docs/services/GamepadState/dpadUp.html @@ -0,0 +1,121 @@ + + + + + + + + dpadUp property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dpadUp
+ +
+ +
+
+
+
+
+ +

dpadUp property +

+ + + + + +
+
+ + bool + get + dpadUp + + +
+ +
+

Whether the D-pad's up button is being pressed.

+
+ + +
+

Implementation

+
bool get dpadUp => normalDpadY > 0;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/hashCode.html b/docs/services/GamepadState/hashCode.html new file mode 100644 index 0000000000..002fcdadac --- /dev/null +++ b/docs/services/GamepadState/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/leftShoulder.html b/docs/services/GamepadState/leftShoulder.html new file mode 100644 index 0000000000..ebeb5127b5 --- /dev/null +++ b/docs/services/GamepadState/leftShoulder.html @@ -0,0 +1,121 @@ + + + + + + + + leftShoulder property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
leftShoulder
+ +
+ +
+
+
+
+
+ +

leftShoulder property +

+ + + + + +
+
+ + bool + get + leftShoulder + + +
+ +
+

Whether the left shoulder is being pressed.

+
+ + +
+

Implementation

+
bool get leftShoulder => normalShoulder < 0;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/noSuchMethod.html b/docs/services/GamepadState/noSuchMethod.html new file mode 100644 index 0000000000..17116eecb9 --- /dev/null +++ b/docs/services/GamepadState/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/normalDpadX.html b/docs/services/GamepadState/normalDpadX.html new file mode 100644 index 0000000000..4a52fe4f8f --- /dev/null +++ b/docs/services/GamepadState/normalDpadX.html @@ -0,0 +1,115 @@ + + + + + + + + normalDpadX property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
normalDpadX
+ +
+ +
+
+
+
+
+ +

normalDpadX property +

+ + +
+ + double + normalDpadX +
final
+ +
+ +
+

A normalized reading of the D-pad's X-axis.

+
+ + +
+

Implementation

+
final double normalDpadX;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/normalDpadY.html b/docs/services/GamepadState/normalDpadY.html new file mode 100644 index 0000000000..13956dd9c4 --- /dev/null +++ b/docs/services/GamepadState/normalDpadY.html @@ -0,0 +1,115 @@ + + + + + + + + normalDpadY property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
normalDpadY
+ +
+ +
+
+
+
+
+ +

normalDpadY property +

+ + +
+ + double + normalDpadY +
final
+ +
+ +
+

A normalized reading of the D-pad's X-axis.

+
+ + +
+

Implementation

+
final double normalDpadY;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/normalLeftX.html b/docs/services/GamepadState/normalLeftX.html new file mode 100644 index 0000000000..0987a374ae --- /dev/null +++ b/docs/services/GamepadState/normalLeftX.html @@ -0,0 +1,115 @@ + + + + + + + + normalLeftX property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
normalLeftX
+ +
+ +
+
+
+
+
+ +

normalLeftX property +

+ + +
+ + double + normalLeftX +
final
+ +
+ +
+

A normalized reading of the left joystick's X-axis.

+
+ + +
+

Implementation

+
final double normalLeftX;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/normalLeftY.html b/docs/services/GamepadState/normalLeftY.html new file mode 100644 index 0000000000..122f9cde1d --- /dev/null +++ b/docs/services/GamepadState/normalLeftY.html @@ -0,0 +1,115 @@ + + + + + + + + normalLeftY property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
normalLeftY
+ +
+ +
+
+
+
+
+ +

normalLeftY property +

+ + +
+ + double + normalLeftY +
final
+ +
+ +
+

A normalized reading of the left joystick's Y-axis.

+
+ + +
+

Implementation

+
final double normalLeftY;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/normalRightX.html b/docs/services/GamepadState/normalRightX.html new file mode 100644 index 0000000000..e3beb27425 --- /dev/null +++ b/docs/services/GamepadState/normalRightX.html @@ -0,0 +1,115 @@ + + + + + + + + normalRightX property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
normalRightX
+ +
+ +
+
+
+
+
+ +

normalRightX property +

+ + +
+ + double + normalRightX +
final
+ +
+ +
+

A normalized reading of the right joystick's X-axis.

+
+ + +
+

Implementation

+
final double normalRightX;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/normalRightY.html b/docs/services/GamepadState/normalRightY.html new file mode 100644 index 0000000000..3f1d09483b --- /dev/null +++ b/docs/services/GamepadState/normalRightY.html @@ -0,0 +1,115 @@ + + + + + + + + normalRightY property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
normalRightY
+ +
+ +
+
+
+
+
+ +

normalRightY property +

+ + +
+ + double + normalRightY +
final
+ +
+ +
+

A normalized reading of the right joystick's X-axis.

+
+ + +
+

Implementation

+
final double normalRightY;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/normalShoulder.html b/docs/services/GamepadState/normalShoulder.html new file mode 100644 index 0000000000..591f973db1 --- /dev/null +++ b/docs/services/GamepadState/normalShoulder.html @@ -0,0 +1,115 @@ + + + + + + + + normalShoulder property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
normalShoulder
+ +
+ +
+
+
+
+
+ +

normalShoulder property +

+ + +
+ + double + normalShoulder +
final
+ +
+ +
+

A normalized reading of the shoulder buttons.

+
+ + +
+

Implementation

+
final double normalShoulder;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/normalTrigger.html b/docs/services/GamepadState/normalTrigger.html new file mode 100644 index 0000000000..af1d2163b8 --- /dev/null +++ b/docs/services/GamepadState/normalTrigger.html @@ -0,0 +1,115 @@ + + + + + + + + normalTrigger property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
normalTrigger
+ +
+ +
+
+
+
+
+ +

normalTrigger property +

+ + +
+ + double + normalTrigger +
final
+ +
+ +
+

A normalized reading of the triggers.

+
+ + +
+

Implementation

+
final double normalTrigger;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/operator_equals.html b/docs/services/GamepadState/operator_equals.html new file mode 100644 index 0000000000..b34babd479 --- /dev/null +++ b/docs/services/GamepadState/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/rightShoulder.html b/docs/services/GamepadState/rightShoulder.html new file mode 100644 index 0000000000..9ce2e1c5e5 --- /dev/null +++ b/docs/services/GamepadState/rightShoulder.html @@ -0,0 +1,121 @@ + + + + + + + + rightShoulder property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
rightShoulder
+ +
+ +
+
+
+
+
+ +

rightShoulder property +

+ + + + + +
+
+ + bool + get + rightShoulder + + +
+ +
+

Whether the right shoulder is being pressed.

+
+ + +
+

Implementation

+
bool get rightShoulder => normalShoulder > 0;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/runtimeType.html b/docs/services/GamepadState/runtimeType.html new file mode 100644 index 0000000000..7f35471019 --- /dev/null +++ b/docs/services/GamepadState/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/GamepadState/toString.html b/docs/services/GamepadState/toString.html new file mode 100644 index 0000000000..25566c0371 --- /dev/null +++ b/docs/services/GamepadState/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - GamepadState class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/MalformedSerialPacket-class-sidebar.html b/docs/services/MalformedSerialPacket-class-sidebar.html new file mode 100644 index 0000000000..65631c5ebb --- /dev/null +++ b/docs/services/MalformedSerialPacket-class-sidebar.html @@ -0,0 +1,27 @@ +
    + +
  1. Constructors
  2. +
  3. MalformedSerialPacket
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. packet
  10. +
  11. runtimeType
  12. + +
  13. Methods
  14. +
  15. noSuchMethod
  16. +
  17. toString
  18. + +
  19. Operators
  20. +
  21. operator ==
  22. + + + + + + +
diff --git a/docs/services/MalformedSerialPacket-class.html b/docs/services/MalformedSerialPacket-class.html new file mode 100644 index 0000000000..eb6f943ddd --- /dev/null +++ b/docs/services/MalformedSerialPacket-class.html @@ -0,0 +1,241 @@ + + + + + + + + MalformedSerialPacket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MalformedSerialPacket
+ +
+ +
+
+
+
+
+ +

MalformedSerialPacket class + +

+ + +
+

Indicates that a data packet has come malformed.

+

Similar to a FormatException, but this usually indicates a hardware or +physical connection issue to the serial device.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ MalformedSerialPacket({required Uint8List packet}) +
+
+ Creates an error about a malformed packet. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ packet + Uint8List + + +
+
+ The malformed packet. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/MalformedSerialPacket/MalformedSerialPacket.html b/docs/services/MalformedSerialPacket/MalformedSerialPacket.html new file mode 100644 index 0000000000..c6f77d0a84 --- /dev/null +++ b/docs/services/MalformedSerialPacket/MalformedSerialPacket.html @@ -0,0 +1,112 @@ + + + + + + + + MalformedSerialPacket constructor - MalformedSerialPacket - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MalformedSerialPacket
+ +
+ +
+
+
+
+
+ +

MalformedSerialPacket constructor +

+ +
+ const + MalformedSerialPacket({
  1. required Uint8List packet,
  2. +
}) +
+ +
+

Creates an error about a malformed packet.

+
+ + + +
+

Implementation

+
const MalformedSerialPacket({required this.packet});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/MalformedSerialPacket/packet.html b/docs/services/MalformedSerialPacket/packet.html new file mode 100644 index 0000000000..ac1611e632 --- /dev/null +++ b/docs/services/MalformedSerialPacket/packet.html @@ -0,0 +1,115 @@ + + + + + + + + packet property - MalformedSerialPacket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
packet
+ +
+ +
+
+
+
+
+ +

packet property +

+ + +
+ + Uint8List + packet +
final
+ +
+ +
+

The malformed packet.

+
+ + +
+

Implementation

+
final Uint8List packet;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/MalformedSerialPacket/toString.html b/docs/services/MalformedSerialPacket/toString.html new file mode 100644 index 0000000000..fba3efffe4 --- /dev/null +++ b/docs/services/MalformedSerialPacket/toString.html @@ -0,0 +1,130 @@ + + + + + + + + toString method - MalformedSerialPacket class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+ +

toString method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+String +toString() + + + +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
@override
+String toString() => "Malformed serial packet: $packet.";
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/MultipleDevicesFound-class-sidebar.html b/docs/services/MultipleDevicesFound-class-sidebar.html new file mode 100644 index 0000000000..d4057eb69c --- /dev/null +++ b/docs/services/MultipleDevicesFound-class-sidebar.html @@ -0,0 +1,27 @@ +
    + +
  1. Constructors
  2. +
  3. MultipleDevicesFound
  4. + + + +
  5. + Properties +
  6. +
  7. devices
  8. +
  9. hashCode
  10. +
  11. runtimeType
  12. + +
  13. Methods
  14. +
  15. noSuchMethod
  16. +
  17. toString
  18. + +
  19. Operators
  20. +
  21. operator ==
  22. + + + + + + +
diff --git a/docs/services/MultipleDevicesFound-class.html b/docs/services/MultipleDevicesFound-class.html new file mode 100644 index 0000000000..94861ba3ef --- /dev/null +++ b/docs/services/MultipleDevicesFound-class.html @@ -0,0 +1,239 @@ + + + + + + + + MultipleDevicesFound class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MultipleDevicesFound
+ +
+ +
+
+
+
+
+ +

MultipleDevicesFound class + +

+ + +
+

Indicates that multiple devices are available to connect to.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ MultipleDevicesFound(List<String> devices) +
+
+ Creates an error that contains the list of available devices. +
const
+
+
+
+ +
+

Properties

+
+
+ devices + → List<String> + + +
+
+ The list of available devices. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/MultipleDevicesFound/MultipleDevicesFound.html b/docs/services/MultipleDevicesFound/MultipleDevicesFound.html new file mode 100644 index 0000000000..437137ca31 --- /dev/null +++ b/docs/services/MultipleDevicesFound/MultipleDevicesFound.html @@ -0,0 +1,112 @@ + + + + + + + + MultipleDevicesFound constructor - MultipleDevicesFound - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MultipleDevicesFound
+ +
+ +
+
+
+
+
+ +

MultipleDevicesFound constructor +

+ +
+ const + MultipleDevicesFound(
  1. List<String> devices
  2. +
) +
+ +
+

Creates an error that contains the list of available devices.

+
+ + + +
+

Implementation

+
const MultipleDevicesFound(this.devices);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/MultipleDevicesFound/devices.html b/docs/services/MultipleDevicesFound/devices.html new file mode 100644 index 0000000000..e6c47c1259 --- /dev/null +++ b/docs/services/MultipleDevicesFound/devices.html @@ -0,0 +1,115 @@ + + + + + + + + devices property - MultipleDevicesFound class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
devices
+ +
+ +
+
+
+
+
+ +

devices property +

+ + +
+ + List<String> + devices +
final
+ +
+ +
+

The list of available devices.

+
+ + +
+

Implementation

+
final List<String> devices;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/MultipleDevicesFound/toString.html b/docs/services/MultipleDevicesFound/toString.html new file mode 100644 index 0000000000..e07d64b921 --- /dev/null +++ b/docs/services/MultipleDevicesFound/toString.html @@ -0,0 +1,130 @@ + + + + + + + + toString method - MultipleDevicesFound class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+ +

toString method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+String +toString() + + + +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
@override
+String toString() => "Multiple serial devices were found: ${devices.join(', ')}";
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/NoDeviceFound-class-sidebar.html b/docs/services/NoDeviceFound-class-sidebar.html new file mode 100644 index 0000000000..ae70128125 --- /dev/null +++ b/docs/services/NoDeviceFound-class-sidebar.html @@ -0,0 +1,26 @@ +
    + +
  1. Constructors
  2. +
  3. NoDeviceFound
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + + +
diff --git a/docs/services/NoDeviceFound-class.html b/docs/services/NoDeviceFound-class.html new file mode 100644 index 0000000000..c641820073 --- /dev/null +++ b/docs/services/NoDeviceFound-class.html @@ -0,0 +1,226 @@ + + + + + + + + NoDeviceFound class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NoDeviceFound
+ +
+ +
+
+
+
+
+ +

NoDeviceFound class + +

+ + +
+

Indicates that no devices are available to connect to.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ NoDeviceFound() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/NoDeviceFound/NoDeviceFound.html b/docs/services/NoDeviceFound/NoDeviceFound.html new file mode 100644 index 0000000000..659659c013 --- /dev/null +++ b/docs/services/NoDeviceFound/NoDeviceFound.html @@ -0,0 +1,104 @@ + + + + + + + + NoDeviceFound constructor - NoDeviceFound - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NoDeviceFound
+ +
+ +
+
+
+
+
+ +

NoDeviceFound constructor +

+ +
+ + NoDeviceFound() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/NoDeviceFound/toString.html b/docs/services/NoDeviceFound/toString.html new file mode 100644 index 0000000000..ee08fc1f18 --- /dev/null +++ b/docs/services/NoDeviceFound/toString.html @@ -0,0 +1,130 @@ + + + + + + + + toString method - NoDeviceFound class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+ +

toString method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+String +toString() + + + +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
@override
+String toString() => "No available serial device found.";
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialCannotOpen-class-sidebar.html b/docs/services/SerialCannotOpen-class-sidebar.html new file mode 100644 index 0000000000..bb0bebe260 --- /dev/null +++ b/docs/services/SerialCannotOpen-class-sidebar.html @@ -0,0 +1,27 @@ +
    + +
  1. Constructors
  2. +
  3. SerialCannotOpen
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. port
  10. +
  11. runtimeType
  12. + +
  13. Methods
  14. +
  15. noSuchMethod
  16. +
  17. toString
  18. + +
  19. Operators
  20. +
  21. operator ==
  22. + + + + + + +
diff --git a/docs/services/SerialCannotOpen-class.html b/docs/services/SerialCannotOpen-class.html new file mode 100644 index 0000000000..fb2e22de7a --- /dev/null +++ b/docs/services/SerialCannotOpen-class.html @@ -0,0 +1,240 @@ + + + + + + + + SerialCannotOpen class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialCannotOpen
+ +
+ +
+
+
+
+
+ +

SerialCannotOpen class + +

+ + +
+

Indicates that the port could not be opened.

+

This usually means another process has an open handle on the port.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SerialCannotOpen(String port) +
+
+ Creates an error about a port that won't open. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ port + → String + + +
+
+ The port that failed to open. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialCannotOpen/SerialCannotOpen.html b/docs/services/SerialCannotOpen/SerialCannotOpen.html new file mode 100644 index 0000000000..9d764f1a11 --- /dev/null +++ b/docs/services/SerialCannotOpen/SerialCannotOpen.html @@ -0,0 +1,112 @@ + + + + + + + + SerialCannotOpen constructor - SerialCannotOpen - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialCannotOpen
+ +
+ +
+
+
+
+
+ +

SerialCannotOpen constructor +

+ +
+ const + SerialCannotOpen(
  1. String port
  2. +
) +
+ +
+

Creates an error about a port that won't open.

+
+ + + +
+

Implementation

+
const SerialCannotOpen(this.port);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialCannotOpen/port.html b/docs/services/SerialCannotOpen/port.html new file mode 100644 index 0000000000..bbc3c2f8ae --- /dev/null +++ b/docs/services/SerialCannotOpen/port.html @@ -0,0 +1,115 @@ + + + + + + + + port property - SerialCannotOpen class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
port
+ +
+ +
+
+
+
+
+ +

port property +

+ + +
+ + String + port +
final
+ +
+ +
+

The port that failed to open.

+
+ + +
+

Implementation

+
final String port;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialCannotOpen/toString.html b/docs/services/SerialCannotOpen/toString.html new file mode 100644 index 0000000000..8d5e04c4c5 --- /dev/null +++ b/docs/services/SerialCannotOpen/toString.html @@ -0,0 +1,130 @@ + + + + + + + + toString method - SerialCannotOpen class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+ +

toString method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+String +toString() + + + +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
@override
+String toString() => "Could not open port $port";
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice-class-sidebar.html b/docs/services/SerialDevice-class-sidebar.html new file mode 100644 index 0000000000..22338b4659 --- /dev/null +++ b/docs/services/SerialDevice-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. SerialDevice
  4. + + + +
  5. + Properties +
  6. +
  7. device
  8. +
  9. hashCode
  10. +
  11. onMessage
  12. +
  13. port
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. connect
  20. +
  21. dispose
  22. +
  23. noSuchMethod
  24. +
  25. sendMessage
  26. +
  27. toString
  28. + +
  29. Operators
  30. +
  31. operator ==
  32. + + + + +
  33. Static properties
  34. +
  35. availablePorts
  36. + + +
  37. Constants
  38. +
  39. resetCode
  40. +
diff --git a/docs/services/SerialDevice-class.html b/docs/services/SerialDevice-class.html new file mode 100644 index 0000000000..87d48efe85 --- /dev/null +++ b/docs/services/SerialDevice-class.html @@ -0,0 +1,315 @@ + + + + + + + + SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialDevice
+ +
+ +
+
+
+
+
+ +

SerialDevice class + +

+ + +
+

A service to connect to a single serial device.

+

Create a new SerialDevice instance for every device you wish to connect to. You must call +connect before you can use the device, and you must call dispose when you are done.

+

To send a message, use sendMessage. To handle messages, pass an onMessage callback.

+
+ + + + +
+

Constructors

+
+
+ SerialDevice({required String port, required WrappedMessageHandler onMessage}) +
+
+ Manages a connection to a Serial device. +
+
+
+ +
+

Properties

+
+
+ device + Device + + +
+
+ The device we're connected to. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ onMessage + WrappedMessageHandler + + +
+
+ A callback to run whenever a message is received by this device. +
final
+ +
+ +
+ port + → String + + +
+
+ The port to connect to. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ connect() + → Future<void> + + + +
+
+ Opens the Serial port and identifies the device on the other end. + + +
+ +
+ dispose() + → void + + + +
+
+ Closes the connection and resets the device. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ sendMessage(Message message) + → void + + + +
+
+ Sends a message to the device, if the device accepts it. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ +
+

Static Properties

+
+
+ availablePorts + → List<String> + + +
+
+ A list of all available ports to connect to. +
no setter
+ +
+ +
+
+ + + +
+

Constants

+
+
+ resetCode + → const List<int> + + +
+
+ Sending this code resets the Teensy to its "unconnected" state. + + +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/SerialDevice.html b/docs/services/SerialDevice/SerialDevice.html new file mode 100644 index 0000000000..3d87db847a --- /dev/null +++ b/docs/services/SerialDevice/SerialDevice.html @@ -0,0 +1,113 @@ + + + + + + + + SerialDevice constructor - SerialDevice - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialDevice
+ +
+ +
+
+
+
+
+ +

SerialDevice constructor +

+ +
+ + SerialDevice({
  1. required String port,
  2. +
  3. required WrappedMessageHandler onMessage,
  4. +
}) +
+ +
+

Manages a connection to a Serial device.

+
+ + + +
+

Implementation

+
SerialDevice({required this.port, required this.onMessage});
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/availablePorts.html b/docs/services/SerialDevice/availablePorts.html new file mode 100644 index 0000000000..aa7c284b66 --- /dev/null +++ b/docs/services/SerialDevice/availablePorts.html @@ -0,0 +1,121 @@ + + + + + + + + availablePorts property - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
availablePorts
+ +
+ +
+
+
+
+
+ +

availablePorts property +

+ + + + + +
+
+ + List<String> + get + availablePorts + + +
+ +
+

A list of all available ports to connect to.

+
+ + +
+

Implementation

+
static List<String> get availablePorts => SerialPort.availablePorts;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/connect.html b/docs/services/SerialDevice/connect.html new file mode 100644 index 0000000000..07bc1ba772 --- /dev/null +++ b/docs/services/SerialDevice/connect.html @@ -0,0 +1,119 @@ + + + + + + + + connect method - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
connect
+ +
+ +
+
+
+
+
+ +

connect method +

+ +
+ +Future<void> +connect() + + + +
+ +
+

Opens the Serial port and identifies the device on the other end.

+
+ + + +
+

Implementation

+
Future<void> connect() async {
+	await Future(_setupConnection);
+	await _identifyDevice();
+	_reader.stream.listen(_onData);
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/device.html b/docs/services/SerialDevice/device.html new file mode 100644 index 0000000000..61ab231cf0 --- /dev/null +++ b/docs/services/SerialDevice/device.html @@ -0,0 +1,117 @@ + + + + + + + + device property - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
device
+ +
+ +
+
+
+
+
+ +

device property +

+ + +
+ + Device + device +
getter/setter pair
+ +
+ +
+

The device we're connected to.

+

Initially, the device is just a generic "firmware", but after calling Connect, the Teensy +will identify itself more specifically.

+
+ + +
+

Implementation

+
Device device = Device.FIRMWARE;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/dispose.html b/docs/services/SerialDevice/dispose.html new file mode 100644 index 0000000000..54a9ccb632 --- /dev/null +++ b/docs/services/SerialDevice/dispose.html @@ -0,0 +1,118 @@ + + + + + + + + dispose method - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +void +dispose() + + + +
+ +
+

Closes the connection and resets the device.

+
+ + + +
+

Implementation

+
void dispose() {
+	_writer..close()..dispose();
+	_reader.close();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/hashCode.html b/docs/services/SerialDevice/hashCode.html new file mode 100644 index 0000000000..ec7d704bd4 --- /dev/null +++ b/docs/services/SerialDevice/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/noSuchMethod.html b/docs/services/SerialDevice/noSuchMethod.html new file mode 100644 index 0000000000..a652dd9b8f --- /dev/null +++ b/docs/services/SerialDevice/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/onMessage.html b/docs/services/SerialDevice/onMessage.html new file mode 100644 index 0000000000..9f560f5b85 --- /dev/null +++ b/docs/services/SerialDevice/onMessage.html @@ -0,0 +1,115 @@ + + + + + + + + onMessage property - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onMessage
+ +
+ +
+
+
+
+
+ +

onMessage property +

+ + +
+ + WrappedMessageHandler + onMessage +
final
+ +
+ +
+

A callback to run whenever a message is received by this device.

+
+ + +
+

Implementation

+
final WrappedMessageHandler onMessage;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/operator_equals.html b/docs/services/SerialDevice/operator_equals.html new file mode 100644 index 0000000000..ba296b93a2 --- /dev/null +++ b/docs/services/SerialDevice/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/port.html b/docs/services/SerialDevice/port.html new file mode 100644 index 0000000000..44c125f44b --- /dev/null +++ b/docs/services/SerialDevice/port.html @@ -0,0 +1,115 @@ + + + + + + + + port property - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
port
+ +
+ +
+
+
+
+
+ +

port property +

+ + +
+ + String + port +
final
+ +
+ +
+

The port to connect to.

+
+ + +
+

Implementation

+
final String port;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/resetCode-constant.html b/docs/services/SerialDevice/resetCode-constant.html new file mode 100644 index 0000000000..b00185821c --- /dev/null +++ b/docs/services/SerialDevice/resetCode-constant.html @@ -0,0 +1,115 @@ + + + + + + + + resetCode constant - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
resetCode
+ +
+ +
+
+
+
+
+ +

resetCode constant +

+ + +
+ + List<int> + const resetCode + + +
+ +
+

Sending this code resets the Teensy to its "unconnected" state.

+
+ + +
+

Implementation

+
static const resetCode = [0, 0, 0, 0];
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/runtimeType.html b/docs/services/SerialDevice/runtimeType.html new file mode 100644 index 0000000000..150c9fd86b --- /dev/null +++ b/docs/services/SerialDevice/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/sendMessage.html b/docs/services/SerialDevice/sendMessage.html new file mode 100644 index 0000000000..881b99c817 --- /dev/null +++ b/docs/services/SerialDevice/sendMessage.html @@ -0,0 +1,123 @@ + + + + + + + + sendMessage method - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
sendMessage
+ +
+ +
+
+
+
+
+ +

sendMessage method +

+ +
+ +void +sendMessage(
  1. Message message
  2. +
) + + + +
+ +
+

Sends a message to the device, if the device accepts it.

+

The firmware on the rover cannot handle WrappedMessages and instead assume that all commands +they receive are the type they expect. This function checks getCommandName to ensure that +the message is of the correct type before sending it.

+
+ + + +
+

Implementation

+
void sendMessage(Message message) {
+	final thisDeviceAccepts = getCommandName(device);
+	if (message.messageName != thisDeviceAccepts) return;
+	_sendRaw(message.writeToBuffer());
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialDevice/toString.html b/docs/services/SerialDevice/toString.html new file mode 100644 index 0000000000..c91011dd0c --- /dev/null +++ b/docs/services/SerialDevice/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialException-class-sidebar.html b/docs/services/SerialException-class-sidebar.html new file mode 100644 index 0000000000..969113b057 --- /dev/null +++ b/docs/services/SerialException-class-sidebar.html @@ -0,0 +1,26 @@ +
    + +
  1. Constructors
  2. +
  3. SerialException
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + + +
diff --git a/docs/services/SerialException-class.html b/docs/services/SerialException-class.html new file mode 100644 index 0000000000..ef7c6bd683 --- /dev/null +++ b/docs/services/SerialException-class.html @@ -0,0 +1,236 @@ + + + + + + + + SerialException class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialException
+ +
+ +
+
+
+
+
+ +

SerialException class + +

+ + +
+

The base class for all exceptions relating to using Serial devices.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + +
Implementers
+
+ + + + + +
+
+ + +
+

Constructors

+
+
+ SerialException() +
+
+ Provides a const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialException/SerialException.html b/docs/services/SerialException/SerialException.html new file mode 100644 index 0000000000..e452707df0 --- /dev/null +++ b/docs/services/SerialException/SerialException.html @@ -0,0 +1,111 @@ + + + + + + + + SerialException constructor - SerialException - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialException
+ +
+ +
+
+
+
+
+ +

SerialException constructor +

+ +
+ const + SerialException() +
+ +
+

Provides a const constructor.

+
+ + + +
+

Implementation

+
const SerialException();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialHandshakeFailed-class-sidebar.html b/docs/services/SerialHandshakeFailed-class-sidebar.html new file mode 100644 index 0000000000..2dace71529 --- /dev/null +++ b/docs/services/SerialHandshakeFailed-class-sidebar.html @@ -0,0 +1,26 @@ +
    + +
  1. Constructors
  2. +
  3. SerialHandshakeFailed
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. runtimeType
  10. + +
  11. Methods
  12. +
  13. noSuchMethod
  14. +
  15. toString
  16. + +
  17. Operators
  18. +
  19. operator ==
  20. + + + + + + +
diff --git a/docs/services/SerialHandshakeFailed-class.html b/docs/services/SerialHandshakeFailed-class.html new file mode 100644 index 0000000000..4765fbc160 --- /dev/null +++ b/docs/services/SerialHandshakeFailed-class.html @@ -0,0 +1,228 @@ + + + + + + + + SerialHandshakeFailed class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialHandshakeFailed
+ +
+ +
+
+
+
+
+ +

SerialHandshakeFailed class + +

+ + +
+

Indicates that the Serial device did not reciprocate the handshake.

+

In particular, the device sent back a "Connect" message, but the fields +weren't set properly.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SerialHandshakeFailed() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialHandshakeFailed/SerialHandshakeFailed.html b/docs/services/SerialHandshakeFailed/SerialHandshakeFailed.html new file mode 100644 index 0000000000..b544b9f3f5 --- /dev/null +++ b/docs/services/SerialHandshakeFailed/SerialHandshakeFailed.html @@ -0,0 +1,104 @@ + + + + + + + + SerialHandshakeFailed constructor - SerialHandshakeFailed - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialHandshakeFailed
+ +
+ +
+
+
+
+
+ +

SerialHandshakeFailed constructor +

+ +
+ + SerialHandshakeFailed() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialHandshakeFailed/toString.html b/docs/services/SerialHandshakeFailed/toString.html new file mode 100644 index 0000000000..f75023686a --- /dev/null +++ b/docs/services/SerialHandshakeFailed/toString.html @@ -0,0 +1,130 @@ + + + + + + + + toString method - SerialHandshakeFailed class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+ +

toString method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+String +toString() + + + +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
@override
+String toString() => "Connection handshake failed";
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialIOError-class-sidebar.html b/docs/services/SerialIOError-class-sidebar.html new file mode 100644 index 0000000000..fda4ee14a3 --- /dev/null +++ b/docs/services/SerialIOError-class-sidebar.html @@ -0,0 +1,27 @@ +
    + +
  1. Constructors
  2. +
  3. SerialIOError
  4. + + + +
  5. + Properties +
  6. +
  7. error
  8. +
  9. hashCode
  10. +
  11. runtimeType
  12. + +
  13. Methods
  14. +
  15. noSuchMethod
  16. +
  17. toString
  18. + +
  19. Operators
  20. +
  21. operator ==
  22. + + + + + + +
diff --git a/docs/services/SerialIOError-class.html b/docs/services/SerialIOError-class.html new file mode 100644 index 0000000000..c9e0dbaeba --- /dev/null +++ b/docs/services/SerialIOError-class.html @@ -0,0 +1,240 @@ + + + + + + + + SerialIOError class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialIOError
+ +
+ +
+
+
+
+
+ +

SerialIOError class + +

+ + +
+

Indicates that the device is unreachable.

+

This is simply a SerialPortError wrapped up as a SerialException.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SerialIOError(SerialPortError error) +
+
+ Creates an SerialException to represent a SerialPortError. +
const
+
+
+
+ +
+

Properties

+
+
+ error + SerialPortError + + +
+
+ The underlying IO error thrown by the libserialport library. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialIOError/SerialIOError.html b/docs/services/SerialIOError/SerialIOError.html new file mode 100644 index 0000000000..6ace9d10bb --- /dev/null +++ b/docs/services/SerialIOError/SerialIOError.html @@ -0,0 +1,112 @@ + + + + + + + + SerialIOError constructor - SerialIOError - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialIOError
+ +
+ +
+
+
+
+
+ +

SerialIOError constructor +

+ +
+ const + SerialIOError(
  1. SerialPortError error
  2. +
) +
+ +
+

Creates an SerialException to represent a SerialPortError.

+
+ + + +
+

Implementation

+
const SerialIOError(this.error);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialIOError/error.html b/docs/services/SerialIOError/error.html new file mode 100644 index 0000000000..1673722b0e --- /dev/null +++ b/docs/services/SerialIOError/error.html @@ -0,0 +1,115 @@ + + + + + + + + error property - SerialIOError class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
error
+ +
+ +
+
+
+
+
+ +

error property +

+ + +
+ + SerialPortError + error +
final
+ +
+ +
+

The underlying IO error thrown by the libserialport library.

+
+ + +
+

Implementation

+
final SerialPortError error;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/SerialIOError/toString.html b/docs/services/SerialIOError/toString.html new file mode 100644 index 0000000000..b3c37d8696 --- /dev/null +++ b/docs/services/SerialIOError/toString.html @@ -0,0 +1,130 @@ + + + + + + + + toString method - SerialIOError class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+ +

toString method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+String +toString() + + + +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
@override
+String toString() => error.toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services-class-sidebar.html b/docs/services/Services-class-sidebar.html new file mode 100644 index 0000000000..f019b23c4b --- /dev/null +++ b/docs/services/Services-class-sidebar.html @@ -0,0 +1,31 @@ +
    + +
  1. Constructors
  2. +
  3. Services
  4. + + + +
  5. + Properties +
  6. +
  7. error
  8. +
  9. files
  10. +
  11. gamepad
  12. +
  13. hashCode
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. dispose
  20. +
  21. init
  22. +
  23. noSuchMethod
  24. +
  25. toString
  26. + +
  27. Operators
  28. +
  29. operator ==
  30. + + + + + + +
diff --git a/docs/services/Services-class.html b/docs/services/Services-class.html new file mode 100644 index 0000000000..b86a5d76c1 --- /dev/null +++ b/docs/services/Services-class.html @@ -0,0 +1,270 @@ + + + + + + + + Services class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Services
+ +
+ +
+
+
+
+
+ +

Services class + +

+ + +
+

A dependency injection service that manages the lifecycle of other services.

+

All services must only be used by accessing them from this class, and this class will take care +of calling lifecycle methods like init while handling possibly asynchrony.

+

When adding a new service, declare it as a field in this class and add it to the init +and dispose methods. Otherwise, the service will fail to initialize and dispose properly.

+

To get an instance of this class, use services.

+
+ + + + +
+

Constructors

+
+
+ Services() +
+
+ +
+
+
+ +
+

Properties

+
+
+ error + ↔ String? + + +
+
+ The first error that occurred during startup. +
getter/setter pair
+ +
+ +
+ files + FilesService + + +
+
+ A service that reads and writes to device files. +
final
+ +
+ +
+ gamepad + GamepadService + + +
+
+ A service that handles controller inputs. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ dispose() + → Future<void> + + + +
+
+ Cleans up any resources used by the service. + + +
+ +
+ init() + → Future<void> + + + +
+
+ Initializes the service. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services/Services.html b/docs/services/Services/Services.html new file mode 100644 index 0000000000..507c170920 --- /dev/null +++ b/docs/services/Services/Services.html @@ -0,0 +1,104 @@ + + + + + + + + Services constructor - Services - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Services
+ +
+ +
+
+
+
+
+ +

Services constructor +

+ +
+ + Services() +
+ + + + + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services/dispose.html b/docs/services/Services/dispose.html new file mode 100644 index 0000000000..3291aa7a45 --- /dev/null +++ b/docs/services/Services/dispose.html @@ -0,0 +1,124 @@ + + + + + + + + dispose method - Services class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +dispose() + + + +
+ +
+

Cleans up any resources used by the service.

+
+ + + +
+

Implementation

+
@override
+Future<void> dispose() async {
+	await gamepad.dispose();
+	await files.dispose();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services/error.html b/docs/services/Services/error.html new file mode 100644 index 0000000000..ea65bbd0d1 --- /dev/null +++ b/docs/services/Services/error.html @@ -0,0 +1,115 @@ + + + + + + + + error property - Services class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
error
+ +
+ +
+
+
+
+
+ +

error property +

+ + +
+ + String? + error +
getter/setter pair
+ +
+ +
+

The first error that occurred during startup.

+
+ + +
+

Implementation

+
String? error;
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services/files.html b/docs/services/Services/files.html new file mode 100644 index 0000000000..494612a9e9 --- /dev/null +++ b/docs/services/Services/files.html @@ -0,0 +1,115 @@ + + + + + + + + files property - Services class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
files
+ +
+ +
+
+
+
+
+ +

files property +

+ + +
+ + FilesService + files +
final
+ +
+ +
+

A service that reads and writes to device files.

+
+ + +
+

Implementation

+
final files = FilesService();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services/gamepad.html b/docs/services/Services/gamepad.html new file mode 100644 index 0000000000..945437a1c5 --- /dev/null +++ b/docs/services/Services/gamepad.html @@ -0,0 +1,115 @@ + + + + + + + + gamepad property - Services class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gamepad
+ +
+ +
+
+
+
+
+ +

gamepad property +

+ + +
+ + GamepadService + gamepad +
final
+ +
+ +
+

A service that handles controller inputs.

+
+ + +
+

Implementation

+
final gamepad = GamepadService();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services/hashCode.html b/docs/services/Services/hashCode.html new file mode 100644 index 0000000000..ee05b25d13 --- /dev/null +++ b/docs/services/Services/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - Services class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services/init.html b/docs/services/Services/init.html new file mode 100644 index 0000000000..e42689bf67 --- /dev/null +++ b/docs/services/Services/init.html @@ -0,0 +1,124 @@ + + + + + + + + init method - Services class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
init
+ +
+ +
+
+
+
+
+ +

init method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Future<void> +init() + + + +
+ +
+

Initializes the service.

+
+ + + +
+

Implementation

+
@override
+Future<void> init() async {
+	await gamepad.init();
+	await files.init();
+}
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services/noSuchMethod.html b/docs/services/Services/noSuchMethod.html new file mode 100644 index 0000000000..0c0db451a5 --- /dev/null +++ b/docs/services/Services/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - Services class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services/operator_equals.html b/docs/services/Services/operator_equals.html new file mode 100644 index 0000000000..29e23960f2 --- /dev/null +++ b/docs/services/Services/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - Services class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services/runtimeType.html b/docs/services/Services/runtimeType.html new file mode 100644 index 0000000000..9758b9481b --- /dev/null +++ b/docs/services/Services/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - Services class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/Services/toString.html b/docs/services/Services/toString.html new file mode 100644 index 0000000000..b275ba6ce4 --- /dev/null +++ b/docs/services/Services/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - Services class - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+ + + + + + + + + diff --git a/docs/services/services-library-sidebar.html b/docs/services/services-library-sidebar.html new file mode 100644 index 0000000000..5e6f284f09 --- /dev/null +++ b/docs/services/services-library-sidebar.html @@ -0,0 +1,32 @@ +
    +
  1. Classes
  2. +
  3. DashboardSocket
  4. +
  5. FilesService
  6. +
  7. Gamepad
  8. +
  9. GamepadService
  10. +
  11. GamepadState
  12. +
  13. SerialDevice
  14. +
  15. Services
  16. + +
  17. Enums
  18. +
  19. GamepadBatteryLevel
  20. + + + + +
  21. Properties
  22. +
  23. services
  24. + + + +
  25. Exceptions
  26. +
  27. DeviceNotConnected
  28. +
  29. MalformedSerialPacket
  30. +
  31. MultipleDevicesFound
  32. +
  33. NoDeviceFound
  34. +
  35. SerialCannotOpen
  36. +
  37. SerialException
  38. +
  39. SerialHandshakeFailed
  40. +
  41. SerialIOError
  42. + +
diff --git a/docs/services/services-library.html b/docs/services/services-library.html new file mode 100644 index 0000000000..db5562de19 --- /dev/null +++ b/docs/services/services-library.html @@ -0,0 +1,294 @@ + + + + + + + + services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
services
+ +
+ +
+
+
+
+ +
+ + + +

+ services + library + + +

+
+ + +
+

Defines handler classes for out-of-app resources.

+

These resources include plugins that are designed to be general, not specific to the rover project. +By providing rover-centric APIs for these services, the app's logic becomes simpler and easier +to follow without having to study the specific service. Each service declared is to extend +the abstract Service class.

+

The Services class acts as a bundle service for all services defined in this library. Its +responsibilities include initializing and disposing of the services, and it also acts as a +sort of dependency injection service by ensuring simple access. Use the services singleton.

+

This library sits right above the data library, and may import it, but not any other library +in this project, only 3rd party plugins. That way, all other code can import any service.

+
+ + +
+

Classes

+
+
+ DashboardSocket + +
+
+ A service to send and receive Protobuf messages over a UDP socket, using ProtoSocket. +
+ +
+ FilesService + +
+
+ A service to read and write to the file system. +
+ +
+ Gamepad + +
+
+ A physical gamepad that can be connected and used to control the rover. +
+ +
+ GamepadService + +
+
+ A service to match operators to gamepads. +
+ +
+ GamepadState + +
+
+ The complete state of a gamepad. +
+ +
+ SerialDevice + +
+
+ A service to connect to a single serial device. +
+ +
+ Services + +
+
+ A dependency injection service that manages the lifecycle of other services. +
+ +
+
+ +
+

Enums

+
+
+ GamepadBatteryLevel + +
+
+ The battery level of a gamepad. +
+ +
+
+ + + + + +
+

Properties

+
+
+ services + Services + + +
+
+ The singleton instance of the Services class. +
final
+ +
+ +
+
+ + + +
+

Exceptions / Errors

+
+
+ DeviceNotConnected + +
+
+ Indicates that no device has been connected. +
+ +
+ MalformedSerialPacket + +
+
+ Indicates that a data packet has come malformed. +
+ +
+ MultipleDevicesFound + +
+
+ Indicates that multiple devices are available to connect to. +
+ +
+ NoDeviceFound + +
+
+ Indicates that no devices are available to connect to. +
+ +
+ SerialCannotOpen + +
+
+ Indicates that the port could not be opened. +
+ +
+ SerialException + +
+
+ The base class for all exceptions relating to using Serial devices. +
+ +
+ SerialHandshakeFailed + +
+
+ Indicates that the Serial device did not reciprocate the handshake. +
+ +
+ SerialIOError + +
+
+ Indicates that the device is unreachable. +
+ +
+
+
+ + +
+ + + + + + + + + diff --git a/docs/services/services.html b/docs/services/services.html new file mode 100644 index 0000000000..4245af2ba5 --- /dev/null +++ b/docs/services/services.html @@ -0,0 +1,114 @@ + + + + + + + + services property - services library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
services
+ +
+ +
+
+
+
+
+ +

services top-level property + +

+ +
+ + Services + services +
final
+ +
+ +
+

The singleton instance of the Services class.

+

This is the only instance of this class the app can guarantee is properly initialized.

+
+ + +
+

Implementation

+
final services = Services();
+
+ + + +
+ + +
+ + + + + + + + + diff --git a/docs/static-assets/docs.dart.js b/docs/static-assets/docs.dart.js new file mode 100644 index 0000000000..1ff70434f2 --- /dev/null +++ b/docs/static-assets/docs.dart.js @@ -0,0 +1,4655 @@ +(function dartProgram(){function copyProperties(a,b){var s=Object.keys(a) +for(var r=0;r=0)return true +if(typeof version=="function"&&version.length==0){var q=version() +if(/^\d+\.\d+\.\d+\.\d+$/.test(q))return true}}catch(p){}return false}() +function inherit(a,b){a.prototype.constructor=a +a.prototype["$i"+a.name]=a +if(b!=null){if(z){Object.setPrototypeOf(a.prototype,b.prototype) +return}var s=Object.create(b.prototype) +copyProperties(a.prototype,s) +a.prototype=s}}function inheritMany(a,b){for(var s=0;s4294967295)throw A.a(A.H(a,0,4294967295,"length",null)) +return J.hK(new Array(a),b)}, +hJ(a,b){if(a<0)throw A.a(A.L("Length must be a non-negative integer: "+a,null)) +return A.h(new Array(a),b.i("o<0>"))}, +eS(a,b){if(a<0)throw A.a(A.L("Length must be a non-negative integer: "+a,null)) +return A.h(new Array(a),b.i("o<0>"))}, +hK(a,b){return J.eb(A.h(a,b.i("o<0>")))}, +eb(a){a.fixed$length=Array +return a}, +hL(a,b){return J.hn(a,b)}, +aj(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.aL.prototype +return J.bE.prototype}if(typeof a=="string")return J.ab.prototype +if(a==null)return J.aM.prototype +if(typeof a=="boolean")return J.bD.prototype +if(Array.isArray(a))return J.o.prototype +if(typeof a!="object"){if(typeof a=="function")return J.Z.prototype +if(typeof a=="symbol")return J.aQ.prototype +if(typeof a=="bigint")return J.aO.prototype +return a}if(a instanceof A.k)return a +return J.eC(a)}, +cj(a){if(typeof a=="string")return J.ab.prototype +if(a==null)return a +if(Array.isArray(a))return J.o.prototype +if(typeof a!="object"){if(typeof a=="function")return J.Z.prototype +if(typeof a=="symbol")return J.aQ.prototype +if(typeof a=="bigint")return J.aO.prototype +return a}if(a instanceof A.k)return a +return J.eC(a)}, +dT(a){if(a==null)return a +if(Array.isArray(a))return J.o.prototype +if(typeof a!="object"){if(typeof a=="function")return J.Z.prototype +if(typeof a=="symbol")return J.aQ.prototype +if(typeof a=="bigint")return J.aO.prototype +return a}if(a instanceof A.k)return a +return J.eC(a)}, +jy(a){if(typeof a=="number")return J.aN.prototype +if(typeof a=="string")return J.ab.prototype +if(a==null)return a +if(!(a instanceof A.k))return J.ar.prototype +return a}, +F(a,b){if(a==null)return b==null +if(typeof a!="object")return b!=null&&a===b +return J.aj(a).E(a,b)}, +hk(a,b){if(typeof b==="number")if(Array.isArray(a)||typeof a=="string"||A.fY(a,a[v.dispatchPropertyName]))if(b>>>0===b&&b>>0===b&&b").b(a))return new A.b4(a,b.i("@<0>").B(c).i("b4<1,2>")) +return new A.a9(a,b.i("@<0>").B(c).i("a9<1,2>"))}, +dU(a){var s,r=a^48 +if(r<=9)return r +s=a|32 +if(97<=s&&s<=102)return s-87 +return-1}, +a1(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +ej(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +ci(a,b,c){return a}, +eE(a){var s,r +for(s=$.ak.length,r=0;r").B(d).i("aI<1,2>")) +return new A.ad(a,b,c.i("@<0>").B(d).i("ad<1,2>"))}, +eR(){return new A.b1("No element")}, +a2:function a2(){}, +bw:function bw(a,b){this.a=a +this.$ti=b}, +a9:function a9(a,b){this.a=a +this.$ti=b}, +b4:function b4(a,b){this.a=a +this.$ti=b}, +b3:function b3(){}, +M:function M(a,b){this.a=a +this.$ti=b}, +aR:function aR(a){this.a=a}, +bx:function bx(a){this.a=a}, +cL:function cL(){}, +c:function c(){}, +J:function J(){}, +an:function an(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +ad:function ad(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aI:function aI(a,b,c){this.a=a +this.b=b +this.$ti=c}, +ao:function ao(a,b,c){var _=this +_.a=null +_.b=a +_.c=b +_.$ti=c}, +ae:function ae(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aK:function aK(){}, +bW:function bW(){}, +as:function as(){}, +bk:function bk(){}, +hy(){throw A.a(A.ag("Cannot modify unmodifiable Map"))}, +h2(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +fY(a,b){var s +if(b!=null){s=b.x +if(s!=null)return s}return t.p.b(a)}, +i(a){var s +if(typeof a=="string")return a +if(typeof a=="number"){if(a!==0)return""+a}else if(!0===a)return"true" +else if(!1===a)return"false" +else if(a==null)return"null" +s=J.al(a) +return s}, +bS(a){var s,r=$.eX +if(r==null)r=$.eX=Symbol("identityHashCode") +s=a[r] +if(s==null){s=Math.random()*0x3fffffff|0 +a[r]=s}return s}, +eY(a,b){var s,r,q,p,o,n=null,m=/^\s*[+-]?((0x[a-f0-9]+)|(\d+)|([a-z0-9]+))\s*$/i.exec(a) +if(m==null)return n +s=m[3] +if(b==null){if(s!=null)return parseInt(a,10) +if(m[2]!=null)return parseInt(a,16) +return n}if(b<2||b>36)throw A.a(A.H(b,2,36,"radix",n)) +if(b===10&&s!=null)return parseInt(a,10) +if(b<10||s==null){r=b<=10?47+b:86+b +q=m[1] +for(p=q.length,o=0;or)return n}return parseInt(a,b)}, +cK(a){return A.hS(a)}, +hS(a){var s,r,q,p +if(a instanceof A.k)return A.C(A.aB(a),null) +s=J.aj(a) +if(s===B.E||s===B.G||t.o.b(a)){r=B.l(a) +if(r!=="Object"&&r!=="")return r +q=a.constructor +if(typeof q=="function"){p=q.name +if(typeof p=="string"&&p!=="Object"&&p!=="")return p}}return A.C(A.aB(a),null)}, +eZ(a){if(a==null||typeof a=="number"||A.ev(a))return J.al(a) +if(typeof a=="string")return JSON.stringify(a) +if(a instanceof A.aa)return a.h(0) +if(a instanceof A.ba)return a.aG(!0) +return"Instance of '"+A.cK(a)+"'"}, +hU(a,b,c){var s,r,q,p +if(c<=500&&b===0&&c===a.length)return String.fromCharCode.apply(null,a) +for(s=b,r="";s>>0,s&1023|56320)}}throw A.a(A.H(a,0,1114111,null,null))}, +hT(a){var s=a.$thrownJsError +if(s==null)return null +return A.a6(s)}, +eB(a,b){var s,r="index" +if(!A.fI(b))return new A.G(!0,b,r,null) +s=J.bs(a) +if(b<0||b>=s)return A.e9(b,s,a,r) +return A.hV(b,r)}, +jv(a,b,c){if(a>c)return A.H(a,0,c,"start",null) +if(b!=null)if(bc)return A.H(b,a,c,"end",null) +return new A.G(!0,b,"end",null)}, +jo(a){return new A.G(!0,a,null,null)}, +a(a){return A.fX(new Error(),a)}, +fX(a,b){var s +if(b==null)b=new A.Q() +a.dartException=b +s=A.jV +if("defineProperty" in Object){Object.defineProperty(a,"message",{get:s}) +a.name=""}else a.toString=s +return a}, +jV(){return J.al(this.dartException)}, +ck(a){throw A.a(a)}, +h1(a,b){throw A.fX(b,a)}, +eG(a){throw A.a(A.aD(a))}, +R(a){var s,r,q,p,o,n +a=A.jP(a.replace(String({}),"$receiver$")) +s=a.match(/\\\$[a-zA-Z]+\\\$/g) +if(s==null)s=A.h([],t.s) +r=s.indexOf("\\$arguments\\$") +q=s.indexOf("\\$argumentsExpr\\$") +p=s.indexOf("\\$expr\\$") +o=s.indexOf("\\$method\\$") +n=s.indexOf("\\$receiver\\$") +return new A.cO(a.replace(new RegExp("\\\\\\$arguments\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$argumentsExpr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$expr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$method\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$receiver\\\\\\$","g"),"((?:x|[^x])*)"),r,q,p,o,n)}, +cP(a){return function($expr$){var $argumentsExpr$="$arguments$" +try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, +f6(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, +ed(a,b){var s=b==null,r=s?null:b.method +return new A.bF(a,r,s?null:b.receiver)}, +a8(a){if(a==null)return new A.cJ(a) +if(a instanceof A.aJ)return A.a7(a,a.a) +if(typeof a!=="object")return a +if("dartException" in a)return A.a7(a,a.dartException) +return A.jn(a)}, +a7(a,b){if(t.Q.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a +return b}, +jn(a){var s,r,q,p,o,n,m,l,k,j,i,h,g +if(!("message" in a))return a +s=a.message +if("number" in a&&typeof a.number=="number"){r=a.number +q=r&65535 +if((B.c.W(r,16)&8191)===10)switch(q){case 438:return A.a7(a,A.ed(A.i(s)+" (Error "+q+")",null)) +case 445:case 5007:A.i(s) +return A.a7(a,new A.aY())}}if(a instanceof TypeError){p=$.h3() +o=$.h4() +n=$.h5() +m=$.h6() +l=$.h9() +k=$.ha() +j=$.h8() +$.h7() +i=$.hc() +h=$.hb() +g=p.D(s) +if(g!=null)return A.a7(a,A.ed(s,g)) +else{g=o.D(s) +if(g!=null){g.method="call" +return A.a7(a,A.ed(s,g))}else if(n.D(s)!=null||m.D(s)!=null||l.D(s)!=null||k.D(s)!=null||j.D(s)!=null||m.D(s)!=null||i.D(s)!=null||h.D(s)!=null)return A.a7(a,new A.aY())}return A.a7(a,new A.bV(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.b0() +s=function(b){try{return String(b)}catch(f){}return null}(a) +return A.a7(a,new A.G(!1,null,null,typeof s=="string"?s.replace(/^RangeError:\s*/,""):s))}if(typeof InternalError=="function"&&a instanceof InternalError)if(typeof s=="string"&&s==="too much recursion")return new A.b0() +return a}, +a6(a){var s +if(a instanceof A.aJ)return a.b +if(a==null)return new A.bb(a) +s=a.$cachedTrace +if(s!=null)return s +s=new A.bb(a) +if(typeof a==="object")a.$cachedTrace=s +return s}, +fZ(a){if(a==null)return J.W(a) +if(typeof a=="object")return A.bS(a) +return J.W(a)}, +jx(a,b){var s,r,q,p=a.length +for(s=0;s=0}, +jP(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") +return a}, +fQ(a){return a}, +jT(a,b,c,d){var s,r,q,p=new A.cY(b,a,0),o=t.F,n=0,m="" +for(;p.m();){s=p.d +if(s==null)s=o.a(s) +r=s.b +q=r.index +m=m+A.i(A.fQ(B.a.j(a,n,q)))+A.i(c.$1(s)) +n=q+r[0].length}p=m+A.i(A.fQ(B.a.J(a,n))) +return p.charCodeAt(0)==0?p:p}, +cb:function cb(a,b){this.a=a +this.b=b}, +aE:function aE(){}, +aG:function aG(a,b,c){this.a=a +this.b=b +this.$ti=c}, +c8:function c8(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +aF:function aF(){}, +aH:function aH(a,b,c){this.a=a +this.b=b +this.$ti=c}, +cO:function cO(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aY:function aY(){}, +bF:function bF(a,b,c){this.a=a +this.b=b +this.c=c}, +bV:function bV(a){this.a=a}, +cJ:function cJ(a){this.a=a}, +aJ:function aJ(a,b){this.a=a +this.b=b}, +bb:function bb(a){this.a=a +this.b=null}, +aa:function aa(){}, +co:function co(){}, +cp:function cp(){}, +cN:function cN(){}, +cM:function cM(){}, +aC:function aC(a,b){this.a=a +this.b=b}, +c2:function c2(a){this.a=a}, +bT:function bT(a){this.a=a}, +ac:function ac(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +cC:function cC(a){this.a=a}, +cF:function cF(a,b){this.a=a +this.b=b +this.c=null}, +N:function N(a,b){this.a=a +this.$ti=b}, +bG:function bG(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +dV:function dV(a){this.a=a}, +dW:function dW(a){this.a=a}, +dX:function dX(a){this.a=a}, +ba:function ba(){}, +ca:function ca(){}, +cA:function cA(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +c9:function c9(a){this.b=a}, +cY:function cY(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +iQ(a){return a}, +hP(a){return new Int8Array(a)}, +hQ(a){return new Uint8Array(a)}, +T(a,b,c){if(a>>>0!==a||a>=c)throw A.a(A.eB(b,a))}, +iN(a,b,c){var s +if(!(a>>>0!==a))s=b>>>0!==b||a>b||b>c +else s=!0 +if(s)throw A.a(A.jv(a,b,c)) +return b}, +bH:function bH(){}, +aV:function aV(){}, +bI:function bI(){}, +ap:function ap(){}, +aT:function aT(){}, +aU:function aU(){}, +bJ:function bJ(){}, +bK:function bK(){}, +bL:function bL(){}, +bM:function bM(){}, +bN:function bN(){}, +bO:function bO(){}, +bP:function bP(){}, +aW:function aW(){}, +aX:function aX(){}, +b6:function b6(){}, +b7:function b7(){}, +b8:function b8(){}, +b9:function b9(){}, +f0(a,b){var s=b.c +return s==null?b.c=A.en(a,b.x,!0):s}, +ei(a,b){var s=b.c +return s==null?b.c=A.be(a,"Y",[b.x]):s}, +f1(a){var s=a.w +if(s===6||s===7||s===8)return A.f1(a.x) +return s===12||s===13}, +hW(a){return a.as}, +bo(a){return A.cf(v.typeUniverse,a,!1)}, +a5(a1,a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=a2.w +switch(a0){case 5:case 1:case 2:case 3:case 4:return a2 +case 6:s=a2.x +r=A.a5(a1,s,a3,a4) +if(r===s)return a2 +return A.fl(a1,r,!0) +case 7:s=a2.x +r=A.a5(a1,s,a3,a4) +if(r===s)return a2 +return A.en(a1,r,!0) +case 8:s=a2.x +r=A.a5(a1,s,a3,a4) +if(r===s)return a2 +return A.fj(a1,r,!0) +case 9:q=a2.y +p=A.ay(a1,q,a3,a4) +if(p===q)return a2 +return A.be(a1,a2.x,p) +case 10:o=a2.x +n=A.a5(a1,o,a3,a4) +m=a2.y +l=A.ay(a1,m,a3,a4) +if(n===o&&l===m)return a2 +return A.el(a1,n,l) +case 11:k=a2.x +j=a2.y +i=A.ay(a1,j,a3,a4) +if(i===j)return a2 +return A.fk(a1,k,i) +case 12:h=a2.x +g=A.a5(a1,h,a3,a4) +f=a2.y +e=A.jk(a1,f,a3,a4) +if(g===h&&e===f)return a2 +return A.fi(a1,g,e) +case 13:d=a2.y +a4+=d.length +c=A.ay(a1,d,a3,a4) +o=a2.x +n=A.a5(a1,o,a3,a4) +if(c===d&&n===o)return a2 +return A.em(a1,n,c,!0) +case 14:b=a2.x +if(b") +for(r=1;r=0)p+=" "+r[q];++q}return p+"})"}, +fG(a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=", ",a2=null +if(a5!=null){s=a5.length +if(a4==null)a4=A.h([],t.s) +else a2=a4.length +r=a4.length +for(q=s;q>0;--q)a4.push("T"+(r+q)) +for(p=t.X,o=t._,n="<",m="",q=0;q0){a+=a0+"[" +for(a0="",q=0;q0){a+=a0+"{" +for(a0="",q=0;q "+b}, +C(a,b){var s,r,q,p,o,n,m=a.w +if(m===5)return"erased" +if(m===2)return"dynamic" +if(m===3)return"void" +if(m===1)return"Never" +if(m===4)return"any" +if(m===6)return A.C(a.x,b) +if(m===7){s=a.x +r=A.C(s,b) +q=s.w +return(q===12||q===13?"("+r+")":r)+"?"}if(m===8)return"FutureOr<"+A.C(a.x,b)+">" +if(m===9){p=A.jm(a.x) +o=a.y +return o.length>0?p+("<"+A.fN(o,b)+">"):p}if(m===11)return A.je(a,b) +if(m===12)return A.fG(a,b,null) +if(m===13)return A.fG(a.x,b,a.y) +if(m===14){n=a.x +return b[b.length-1-n]}return"?"}, +jm(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +ip(a,b){var s=a.tR[b] +for(;typeof s=="string";)s=a.tR[s] +return s}, +io(a,b){var s,r,q,p,o,n=a.eT,m=n[b] +if(m==null)return A.cf(a,b,!1) +else if(typeof m=="number"){s=m +r=A.bf(a,5,"#") +q=A.dB(s) +for(p=0;p0)p+="<"+A.bd(c)+">" +s=a.eC.get(p) +if(s!=null)return s +r=new A.I(null,null) +r.w=9 +r.x=b +r.y=c +if(c.length>0)r.c=c[0] +r.as=p +q=A.S(a,r) +a.eC.set(p,q) +return q}, +el(a,b,c){var s,r,q,p,o,n +if(b.w===10){s=b.x +r=b.y.concat(c)}else{r=c +s=b}q=s.as+(";<"+A.bd(r)+">") +p=a.eC.get(q) +if(p!=null)return p +o=new A.I(null,null) +o.w=10 +o.x=s +o.y=r +o.as=q +n=A.S(a,o) +a.eC.set(q,n) +return n}, +fk(a,b,c){var s,r,q="+"+(b+"("+A.bd(c)+")"),p=a.eC.get(q) +if(p!=null)return p +s=new A.I(null,null) +s.w=11 +s.x=b +s.y=c +s.as=q +r=A.S(a,s) +a.eC.set(q,r) +return r}, +fi(a,b,c){var s,r,q,p,o,n=b.as,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.bd(m) +if(j>0){s=l>0?",":"" +g+=s+"["+A.bd(k)+"]"}if(h>0){s=l>0?",":"" +g+=s+"{"+A.ie(i)+"}"}r=n+(g+")") +q=a.eC.get(r) +if(q!=null)return q +p=new A.I(null,null) +p.w=12 +p.x=b +p.y=c +p.as=r +o=A.S(a,p) +a.eC.set(r,o) +return o}, +em(a,b,c,d){var s,r=b.as+("<"+A.bd(c)+">"),q=a.eC.get(r) +if(q!=null)return q +s=A.ih(a,b,c,r,d) +a.eC.set(r,s) +return s}, +ih(a,b,c,d,e){var s,r,q,p,o,n,m,l +if(e){s=c.length +r=A.dB(s) +for(q=0,p=0;p0){n=A.a5(a,b,r,0) +m=A.ay(a,c,r,0) +return A.em(a,n,m,c!==m)}}l=new A.I(null,null) +l.w=13 +l.x=b +l.y=c +l.as=d +return A.S(a,l)}, +fe(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, +fg(a){var s,r,q,p,o,n,m,l=a.r,k=a.s +for(s=l.length,r=0;r=48&&q<=57)r=A.i7(r+1,q,l,k) +else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.ff(a,r,l,k,!1) +else if(q===46)r=A.ff(a,r,l,k,!0) +else{++r +switch(q){case 44:break +case 58:k.push(!1) +break +case 33:k.push(!0) +break +case 59:k.push(A.a3(a.u,a.e,k.pop())) +break +case 94:k.push(A.ik(a.u,k.pop())) +break +case 35:k.push(A.bf(a.u,5,"#")) +break +case 64:k.push(A.bf(a.u,2,"@")) +break +case 126:k.push(A.bf(a.u,3,"~")) +break +case 60:k.push(a.p) +a.p=k.length +break +case 62:A.i9(a,k) +break +case 38:A.i8(a,k) +break +case 42:p=a.u +k.push(A.fl(p,A.a3(p,a.e,k.pop()),a.n)) +break +case 63:p=a.u +k.push(A.en(p,A.a3(p,a.e,k.pop()),a.n)) +break +case 47:p=a.u +k.push(A.fj(p,A.a3(p,a.e,k.pop()),a.n)) +break +case 40:k.push(-3) +k.push(a.p) +a.p=k.length +break +case 41:A.i6(a,k) +break +case 91:k.push(a.p) +a.p=k.length +break +case 93:o=k.splice(a.p) +A.fh(a.u,a.e,o) +a.p=k.pop() +k.push(o) +k.push(-1) +break +case 123:k.push(a.p) +a.p=k.length +break +case 125:o=k.splice(a.p) +A.ib(a.u,a.e,o) +a.p=k.pop() +k.push(o) +k.push(-2) +break +case 43:n=l.indexOf("(",r) +k.push(l.substring(r,n)) +k.push(-4) +k.push(a.p) +a.p=k.length +r=n+1 +break +default:throw"Bad character "+q}}}m=k.pop() +return A.a3(a.u,a.e,m)}, +i7(a,b,c,d){var s,r,q=b-48 +for(s=c.length;a=48&&r<=57))break +q=q*10+(r-48)}d.push(q) +return a}, +ff(a,b,c,d,e){var s,r,q,p,o,n,m=b+1 +for(s=c.length;m>>0)-97&65535)<26||r===95||r===36||r===124))q=r>=48&&r<=57 +else q=!0 +if(!q)break}}p=c.substring(b,m) +if(e){s=a.u +o=a.e +if(o.w===10)o=o.x +n=A.ip(s,o.x)[p] +if(n==null)A.ck('No "'+p+'" in "'+A.hW(o)+'"') +d.push(A.bg(s,o,n))}else d.push(p) +return m}, +i9(a,b){var s,r=a.u,q=A.fd(a,b),p=b.pop() +if(typeof p=="string")b.push(A.be(r,p,q)) +else{s=A.a3(r,a.e,p) +switch(s.w){case 12:b.push(A.em(r,s,q,a.n)) +break +default:b.push(A.el(r,s,q)) +break}}}, +i6(a,b){var s,r,q,p=a.u,o=b.pop(),n=null,m=null +if(typeof o=="number")switch(o){case-1:n=b.pop() +break +case-2:m=b.pop() +break +default:b.push(o) +break}else b.push(o) +s=A.fd(a,b) +o=b.pop() +switch(o){case-3:o=b.pop() +if(n==null)n=p.sEA +if(m==null)m=p.sEA +r=A.a3(p,a.e,o) +q=new A.c5() +q.a=s +q.b=n +q.c=m +b.push(A.fi(p,r,q)) +return +case-4:b.push(A.fk(p,b.pop(),s)) +return +default:throw A.a(A.bu("Unexpected state under `()`: "+A.i(o)))}}, +i8(a,b){var s=b.pop() +if(0===s){b.push(A.bf(a.u,1,"0&")) +return}if(1===s){b.push(A.bf(a.u,4,"1&")) +return}throw A.a(A.bu("Unexpected extended operation "+A.i(s)))}, +fd(a,b){var s=b.splice(a.p) +A.fh(a.u,a.e,s) +a.p=b.pop() +return s}, +a3(a,b,c){if(typeof c=="string")return A.be(a,c,a.sEA) +else if(typeof c=="number"){b.toString +return A.ia(a,b,c)}else return c}, +fh(a,b,c){var s,r=c.length +for(s=0;sn)return!1 +m=n-o +l=s.b +k=r.b +j=l.length +i=k.length +if(o+j=d)return!1 +a1=f[b] +b+=3 +if(a00?new Array(q):v.typeUniverse.sEA +for(o=0;o0?new Array(a):v.typeUniverse.sEA}, +I:function I(a,b){var _=this +_.a=a +_.b=b +_.r=_.f=_.d=_.c=null +_.w=0 +_.as=_.Q=_.z=_.y=_.x=null}, +c5:function c5(){this.c=this.b=this.a=null}, +dt:function dt(a){this.a=a}, +c4:function c4(){}, +bc:function bc(a){this.a=a}, +i1(){var s,r,q={} +if(self.scheduleImmediate!=null)return A.jp() +if(self.MutationObserver!=null&&self.document!=null){s=self.document.createElement("div") +r=self.document.createElement("span") +q.a=null +new self.MutationObserver(A.aA(new A.d_(q),1)).observe(s,{childList:true}) +return new A.cZ(q,s,r)}else if(self.setImmediate!=null)return A.jq() +return A.jr()}, +i2(a){self.scheduleImmediate(A.aA(new A.d0(a),0))}, +i3(a){self.setImmediate(A.aA(new A.d1(a),0))}, +i4(a){A.ic(0,a)}, +ic(a,b){var s=new A.dr() +s.bc(a,b) +return s}, +fL(a){return new A.c_(new A.v($.r,a.i("v<0>")),a.i("c_<0>"))}, +fD(a,b){a.$2(0,null) +b.b=!0 +return b.a}, +fA(a,b){A.iL(a,b)}, +fC(a,b){b.ae(a)}, +fB(a,b){b.af(A.a8(a),A.a6(a))}, +iL(a,b){var s,r,q=new A.dD(b),p=new A.dE(b) +if(a instanceof A.v)a.aF(q,p,t.z) +else{s=t.z +if(a instanceof A.v)a.ar(q,p,s) +else{r=new A.v($.r,t.e) +r.a=8 +r.c=a +r.aF(q,p,s)}}}, +fS(a){var s=function(b,c){return function(d,e){while(true){try{b(d,e) +break}catch(r){e=r +d=c}}}}(a,1) +return $.r.aZ(new A.dR(s))}, +cl(a,b){var s=A.ci(a,"error",t.K) +return new A.bv(s,b==null?A.eK(a):b)}, +eK(a){var s +if(t.Q.b(a)){s=a.gS() +if(s!=null)return s}return B.D}, +fc(a,b){var s,r +for(;s=a.a,(s&4)!==0;)a=a.c +if(a===b){b.T(new A.G(!0,a,null,"Cannot complete a future with itself"),A.f2()) +return}s|=b.a&1 +a.a=s +if((s&24)!==0){r=b.ac() +b.U(a) +A.b5(b,r)}else{r=b.c +b.aD(a) +a.ab(r)}}, +i5(a,b){var s,r,q={},p=q.a=a +for(;s=p.a,(s&4)!==0;){p=p.c +q.a=p}if(p===b){b.T(new A.G(!0,p,null,"Cannot complete a future with itself"),A.f2()) +return}if((s&24)===0){r=b.c +b.aD(p) +q.a.ab(r) +return}if((s&16)===0&&b.c==null){b.U(p) +return}b.a^=2 +A.ax(null,null,b.b,new A.d7(q,b))}, +b5(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g={},f=g.a=a +for(;!0;){s={} +r=f.a +q=(r&16)===0 +p=!q +if(b==null){if(p&&(r&1)===0){f=f.c +A.ex(f.a,f.b)}return}s.a=b +o=b.a +for(f=b;o!=null;f=o,o=n){f.a=null +A.b5(g.a,f) +s.a=o +n=o.a}r=g.a +m=r.c +s.b=p +s.c=m +if(q){l=f.c +l=(l&1)!==0||(l&15)===8}else l=!0 +if(l){k=f.b.b +if(p){r=r.b===k +r=!(r||r)}else r=!1 +if(r){A.ex(m.a,m.b) +return}j=$.r +if(j!==k)$.r=k +else j=null +f=f.c +if((f&15)===8)new A.de(s,g,p).$0() +else if(q){if((f&1)!==0)new A.dd(s,m).$0()}else if((f&2)!==0)new A.dc(g,s).$0() +if(j!=null)$.r=j +f=s.c +if(f instanceof A.v){r=s.a.$ti +r=r.i("Y<2>").b(f)||!r.y[1].b(f)}else r=!1 +if(r){i=s.a.b +if((f.a&24)!==0){h=i.c +i.c=null +b=i.V(h) +i.a=f.a&30|i.a&1 +i.c=f.c +g.a=f +continue}else A.fc(f,i) +return}}i=s.a.b +h=i.c +i.c=null +b=i.V(h) +f=s.b +r=s.c +if(!f){i.a=8 +i.c=r}else{i.a=i.a&1|16 +i.c=r}g.a=i +f=i}}, +jf(a,b){if(t.C.b(a))return b.aZ(a) +if(t.v.b(a))return a +throw A.a(A.eJ(a,"onError",u.c))}, +jc(){var s,r +for(s=$.aw;s!=null;s=$.aw){$.bn=null +r=s.b +$.aw=r +if(r==null)$.bm=null +s.a.$0()}}, +jj(){$.ew=!0 +try{A.jc()}finally{$.bn=null +$.ew=!1 +if($.aw!=null)$.eI().$1(A.fU())}}, +fP(a){var s=new A.c0(a),r=$.bm +if(r==null){$.aw=$.bm=s +if(!$.ew)$.eI().$1(A.fU())}else $.bm=r.b=s}, +ji(a){var s,r,q,p=$.aw +if(p==null){A.fP(a) +$.bn=$.bm +return}s=new A.c0(a) +r=$.bn +if(r==null){s.b=p +$.aw=$.bn=s}else{q=r.b +s.b=q +$.bn=r.b=s +if(q==null)$.bm=s}}, +jQ(a){var s=null,r=$.r +if(B.d===r){A.ax(s,s,B.d,a) +return}A.ax(s,s,r,r.aH(a))}, +k0(a){A.ci(a,"stream",t.K) +return new A.cd()}, +ex(a,b){A.ji(new A.dP(a,b))}, +fM(a,b,c,d){var s,r=$.r +if(r===c)return d.$0() +$.r=c +s=r +try{r=d.$0() +return r}finally{$.r=s}}, +jh(a,b,c,d,e){var s,r=$.r +if(r===c)return d.$1(e) +$.r=c +s=r +try{r=d.$1(e) +return r}finally{$.r=s}}, +jg(a,b,c,d,e,f){var s,r=$.r +if(r===c)return d.$2(e,f) +$.r=c +s=r +try{r=d.$2(e,f) +return r}finally{$.r=s}}, +ax(a,b,c,d){if(B.d!==c)d=c.aH(d) +A.fP(d)}, +d_:function d_(a){this.a=a}, +cZ:function cZ(a,b,c){this.a=a +this.b=b +this.c=c}, +d0:function d0(a){this.a=a}, +d1:function d1(a){this.a=a}, +dr:function dr(){}, +ds:function ds(a,b){this.a=a +this.b=b}, +c_:function c_(a,b){this.a=a +this.b=!1 +this.$ti=b}, +dD:function dD(a){this.a=a}, +dE:function dE(a){this.a=a}, +dR:function dR(a){this.a=a}, +bv:function bv(a,b){this.a=a +this.b=b}, +c1:function c1(){}, +b2:function b2(a,b){this.a=a +this.$ti=b}, +au:function au(a,b,c,d,e){var _=this +_.a=null +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +v:function v(a,b){var _=this +_.a=0 +_.b=a +_.c=null +_.$ti=b}, +d4:function d4(a,b){this.a=a +this.b=b}, +db:function db(a,b){this.a=a +this.b=b}, +d8:function d8(a){this.a=a}, +d9:function d9(a){this.a=a}, +da:function da(a,b,c){this.a=a +this.b=b +this.c=c}, +d7:function d7(a,b){this.a=a +this.b=b}, +d6:function d6(a,b){this.a=a +this.b=b}, +d5:function d5(a,b,c){this.a=a +this.b=b +this.c=c}, +de:function de(a,b,c){this.a=a +this.b=b +this.c=c}, +df:function df(a){this.a=a}, +dd:function dd(a,b){this.a=a +this.b=b}, +dc:function dc(a,b){this.a=a +this.b=b}, +c0:function c0(a){this.a=a +this.b=null}, +cd:function cd(){}, +dC:function dC(){}, +dP:function dP(a,b){this.a=a +this.b=b}, +di:function di(){}, +dj:function dj(a,b){this.a=a +this.b=b}, +eU(a,b,c){return A.jx(a,new A.ac(b.i("@<0>").B(c).i("ac<1,2>")))}, +ee(a,b){return new A.ac(a.i("@<0>").B(b).i("ac<1,2>"))}, +ef(a){var s,r={} +if(A.eE(a))return"{...}" +s=new A.z("") +try{$.ak.push(a) +s.a+="{" +r.a=!0 +a.F(0,new A.cG(r,s)) +s.a+="}"}finally{$.ak.pop()}r=s.a +return r.charCodeAt(0)==0?r:r}, +e:function e(){}, +O:function O(){}, +cG:function cG(a,b){this.a=a +this.b=b}, +cg:function cg(){}, +aS:function aS(){}, +at:function at(a,b){this.a=a +this.$ti=b}, +aq:function aq(){}, +bh:function bh(){}, +jd(a,b){var s,r,q,p=null +try{p=JSON.parse(a)}catch(r){s=A.a8(r) +q=A.x(String(s),null,null) +throw A.a(q)}q=A.dF(p) +return q}, +dF(a){var s +if(a==null)return null +if(typeof a!="object")return a +if(!Array.isArray(a))return new A.c6(a,Object.create(null)) +for(s=0;s")) +for(s=J.X(a);s.m();)r.push(s.gn()) +if(b)return r +return J.eb(r)}, +eW(a,b,c){var s=A.hM(a,c) +return s}, +hM(a,b){var s,r +if(Array.isArray(a))return A.h(a.slice(0),b.i("o<0>")) +s=A.h([],b.i("o<0>")) +for(r=J.X(a);r.m();)s.push(r.gn()) +return s}, +f5(a,b,c){var s,r +A.eg(b,"start") +if(c!=null){s=c-b +if(s<0)throw A.a(A.H(c,b,null,"end",null)) +if(s===0)return""}r=A.hX(a,b,c) +return r}, +hX(a,b,c){var s=a.length +if(b>=s)return"" +return A.hU(a,b,c==null||c>s?s:c)}, +f_(a,b){return new A.cA(a,A.eT(a,!1,b,!1,!1,!1))}, +f4(a,b,c){var s=J.X(b) +if(!s.m())return a +if(c.length===0){do a+=A.i(s.gn()) +while(s.m())}else{a+=A.i(s.gn()) +for(;s.m();)a=a+c+A.i(s.gn())}return a}, +ft(a,b,c,d){var s,r,q,p,o,n="0123456789ABCDEF" +if(c===B.e){s=$.he() +s=s.b.test(b)}else s=!1 +if(s)return b +r=B.C.H(b) +for(s=r.length,q=0,p="";q>>4]&1<<(o&15))!==0)p+=A.P(o) +else p=d&&o===32?p+"+":p+"%"+n[o>>>4&15]+n[o&15]}return p.charCodeAt(0)==0?p:p}, +ix(a){var s,r,q +if(!$.hf())return A.iy(a) +s=new URLSearchParams() +a.F(0,new A.dw(s)) +r=s.toString() +q=r.length +if(q>0&&r[q-1]==="=")r=B.a.j(r,0,q-1) +return r.replace(/=&|\*|%7E/g,b=>b==="=&"?"&":b==="*"?"%2A":"~")}, +f2(){return A.a6(new Error())}, +cs(a){if(typeof a=="number"||A.ev(a)||a==null)return J.al(a) +if(typeof a=="string")return JSON.stringify(a) +return A.eZ(a)}, +hA(a,b){A.ci(a,"error",t.K) +A.ci(b,"stackTrace",t.l) +A.hz(a,b)}, +bu(a){return new A.bt(a)}, +L(a,b){return new A.G(!1,null,b,a)}, +eJ(a,b,c){return new A.G(!0,a,b,c)}, +hV(a,b){return new A.aZ(null,null,!0,a,b,"Value not in range")}, +H(a,b,c,d,e){return new A.aZ(b,c,!0,a,d,"Invalid value")}, +b_(a,b,c){if(0>a||a>c)throw A.a(A.H(a,0,c,"start",null)) +if(b!=null){if(a>b||b>c)throw A.a(A.H(b,a,c,"end",null)) +return b}return c}, +eg(a,b){if(a<0)throw A.a(A.H(a,0,null,b,null)) +return a}, +e9(a,b,c,d){return new A.bB(b,!0,a,d,"Index out of range")}, +ag(a){return new A.bX(a)}, +f7(a){return new A.bU(a)}, +f3(a){return new A.b1(a)}, +aD(a){return new A.bz(a)}, +x(a,b,c){return new A.ct(a,b,c)}, +hH(a,b,c){var s,r +if(A.eE(a)){if(b==="("&&c===")")return"(...)" +return b+"..."+c}s=A.h([],t.s) +$.ak.push(a) +try{A.ja(a,s)}finally{$.ak.pop()}r=A.f4(b,s,", ")+c +return r.charCodeAt(0)==0?r:r}, +ea(a,b,c){var s,r +if(A.eE(a))return b+"..."+c +s=new A.z(b) +$.ak.push(a) +try{r=s +r.a=A.f4(r.a,a,", ")}finally{$.ak.pop()}s.a+=c +r=s.a +return r.charCodeAt(0)==0?r:r}, +ja(a,b){var s,r,q,p,o,n,m,l=a.gA(a),k=0,j=0 +while(!0){if(!(k<80||j<3))break +if(!l.m())return +s=A.i(l.gn()) +b.push(s) +k+=s.length+2;++j}if(!l.m()){if(j<=5)return +r=b.pop() +q=b.pop()}else{p=l.gn();++j +if(!l.m()){if(j<=4){b.push(A.i(p)) +return}r=A.i(p) +q=b.pop() +k+=r.length+2}else{o=l.gn();++j +for(;l.m();p=o,o=n){n=l.gn();++j +if(j>100){while(!0){if(!(k>75&&j>3))break +k-=b.pop().length+2;--j}b.push("...") +return}}q=A.i(p) +r=A.i(o) +k+=r.length+q.length+4}}if(j>b.length+2){k+=5 +m="..."}else m=null +while(!0){if(!(k>80&&b.length>3))break +k-=b.pop().length+2 +if(m==null){k+=5 +m="..."}}if(m!=null)b.push(m) +b.push(q) +b.push(r)}, +hR(a,b,c,d){var s +if(B.i===c){s=B.c.gp(a) +b=J.W(b) +return A.ej(A.a1(A.a1($.e7(),s),b))}if(B.i===d){s=B.c.gp(a) +b=J.W(b) +c=J.W(c) +return A.ej(A.a1(A.a1(A.a1($.e7(),s),b),c))}s=B.c.gp(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +d=A.ej(A.a1(A.a1(A.a1(A.a1($.e7(),s),b),c),d)) +return d}, +bZ(a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=null,a4=a5.length +if(a4>=5){s=((a5.charCodeAt(4)^58)*3|a5.charCodeAt(0)^100|a5.charCodeAt(1)^97|a5.charCodeAt(2)^116|a5.charCodeAt(3)^97)>>>0 +if(s===0)return A.f8(a4=14)r[7]=a4 +q=r[1] +if(q>=0)if(A.fO(a5,0,q,20,r)===20)r[7]=q +p=r[2]+1 +o=r[3] +n=r[4] +m=r[5] +l=r[6] +if(lq+3)){i=o>0 +if(!(i&&o+1===n)){if(!B.a.v(a5,"\\",n))if(p>0)h=B.a.v(a5,"\\",p-1)||B.a.v(a5,"\\",p-2) +else h=!1 +else h=!0 +if(!h){if(!(mn+2&&B.a.v(a5,"/..",m-3) +else h=!0 +if(!h)if(q===4){if(B.a.v(a5,"file",0)){if(p<=0){if(!B.a.v(a5,"/",n)){g="file:///" +s=3}else{g="file://" +s=2}a5=g+B.a.j(a5,n,a4) +m+=s +l+=s +a4=a5.length +p=7 +o=7 +n=7}else if(n===m){++l +f=m+1 +a5=B.a.I(a5,n,m,"/");++a4 +m=f}j="file"}else if(B.a.v(a5,"http",0)){if(i&&o+3===n&&B.a.v(a5,"80",o+1)){l-=3 +e=n-3 +m-=3 +a5=B.a.I(a5,o,n,"") +a4-=3 +n=e}j="http"}}else if(q===5&&B.a.v(a5,"https",0)){if(i&&o+4===n&&B.a.v(a5,"443",o+1)){l-=4 +e=n-4 +m-=4 +a5=B.a.I(a5,o,n,"") +a4-=3 +n=e}j="https"}k=!h}}}}if(k)return new A.cc(a40)j=A.iz(a5,0,q) +else{if(q===0)A.av(a5,0,"Invalid empty scheme") +j=""}d=a3 +if(p>0){c=q+3 +b=c9)k.$2("invalid character",s)}else{if(q===3)k.$2(m,s) +o=A.e1(B.a.j(a,r,s),null) +if(o>255)k.$2(l,r) +n=q+1 +j[q]=o +r=s+1 +q=n}}if(q!==3)k.$2(m,c) +o=A.e1(B.a.j(a,r,c),null) +if(o>255)k.$2(l,r) +j[q]=o +return j}, +f9(a,b,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null,d=new A.cS(a),c=new A.cT(d,a) +if(a.length<2)d.$2("address is too short",e) +s=A.h([],t.t) +for(r=b,q=r,p=!1,o=!1;r>>0) +s.push((k[2]<<8|k[3])>>>0)}if(p){if(s.length>7)d.$2("an address with a wildcard must have less than 7 parts",e)}else if(s.length!==8)d.$2("an address without a wildcard must contain exactly 8 parts",e) +j=new Uint8Array(16) +for(l=s.length,i=9-l,r=0,h=0;r=b&&q=b&&s>>4]&1<<(p&15))!==0){if(q&&65<=p&&90>=p){if(i==null)i=new A.z("") +if(r>>4]&1<<(o&15))!==0){if(p&&65<=o&&90>=o){if(q==null)q=new A.z("") +if(r>>4]&1<<(o&15))!==0)A.av(a,s,"Invalid character") +else{j=1 +if((o&64512)===55296&&s+1>>4]&1<<(q&15))!==0))A.av(a,s,"Illegal scheme character") +if(65<=q&&q<=90)r=!0}a=B.a.j(a,b,c) +return A.iq(r?a.toLowerCase():a)}, +iq(a){if(a==="http")return"http" +if(a==="file")return"file" +if(a==="https")return"https" +if(a==="package")return"package" +return a}, +iA(a,b,c){return A.bj(a,b,c,B.a4,!1,!1)}, +iv(a,b,c,d,e,f){var s,r=e==="file",q=r||f +if(a==null)return r?"/":"" +else s=A.bj(a,b,c,B.o,!0,!0) +if(s.length===0){if(r)return"/"}else if(q&&!B.a.u(s,"/"))s="/"+s +return A.iB(s,e,f)}, +iB(a,b,c){var s=b.length===0 +if(s&&!c&&!B.a.u(a,"/")&&!B.a.u(a,"\\"))return A.iD(a,!s||c) +return A.iE(a)}, +eq(a,b,c,d){if(a!=null){if(d!=null)throw A.a(A.L("Both query and queryParameters specified",null)) +return A.bj(a,b,c,B.f,!0,!1)}if(d==null)return null +return A.ix(d)}, +iy(a){var s={},r=new A.z("") +s.a="" +a.F(0,new A.du(new A.dv(s,r))) +s=r.a +return s.charCodeAt(0)==0?s:s}, +it(a,b,c){return A.bj(a,b,c,B.f,!0,!1)}, +er(a,b,c){var s,r,q,p,o,n=b+2 +if(n>=a.length)return"%" +s=a.charCodeAt(b+1) +r=a.charCodeAt(n) +q=A.dU(s) +p=A.dU(r) +if(q<0||p<0)return"%" +o=q*16+p +if(o<127&&(B.h[B.c.W(o,4)]&1<<(o&15))!==0)return A.P(c&&65<=o&&90>=o?(o|32)>>>0:o) +if(s>=97||r>=97)return B.a.j(a,b,b+3).toUpperCase() +return null}, +ep(a){var s,r,q,p,o,n="0123456789ABCDEF" +if(a<128){s=new Uint8Array(3) +s[0]=37 +s[1]=n.charCodeAt(a>>>4) +s[2]=n.charCodeAt(a&15)}else{if(a>2047)if(a>65535){r=240 +q=4}else{r=224 +q=3}else{r=192 +q=2}s=new Uint8Array(3*q) +for(p=0;--q,q>=0;r=128){o=B.c.br(a,6*q)&63|r +s[p]=37 +s[p+1]=n.charCodeAt(o>>>4) +s[p+2]=n.charCodeAt(o&15) +p+=3}}return A.f5(s,0,null)}, +bj(a,b,c,d,e,f){var s=A.fr(a,b,c,d,e,f) +return s==null?B.a.j(a,b,c):s}, +fr(a,b,c,d,e,f){var s,r,q,p,o,n,m,l,k,j,i=null +for(s=!e,r=b,q=r,p=i;r>>4]&1<<(o&15))!==0)++r +else{n=1 +if(o===37){m=A.er(a,r,!1) +if(m==null){r+=3 +continue}if("%"===m)m="%25" +else n=3}else if(o===92&&f)m="/" +else if(s&&o<=93&&(B.q[o>>>4]&1<<(o&15))!==0){A.av(a,r,"Invalid character") +n=i +m=n}else{if((o&64512)===55296){l=r+1 +if(l=2&&A.fp(a.charCodeAt(0)))for(s=1;s127||(B.n[r>>>4]&1<<(r&15))===0)break}return a}, +is(a,b){var s,r,q +for(s=0,r=0;r<2;++r){q=a.charCodeAt(b+r) +if(48<=q&&q<=57)s=s*16+q-48 +else{q|=32 +if(97<=q&&q<=102)s=s*16+q-87 +else throw A.a(A.L("Invalid URL encoding",null))}}return s}, +es(a,b,c,d,e){var s,r,q,p,o=b +while(!0){if(!(o127)throw A.a(A.L("Illegal percent encoding in URI",null)) +if(r===37){if(o+3>q)throw A.a(A.L("Truncated URI",null)) +p.push(A.is(a,o+1)) +o+=2}else if(r===43)p.push(32) +else p.push(r)}}return B.an.H(p)}, +fp(a){var s=a|32 +return 97<=s&&s<=122}, +f8(a,b,c){var s,r,q,p,o,n,m,l,k="Invalid MIME type",j=A.h([b-1],t.t) +for(s=a.length,r=b,q=-1,p=null;rb)throw A.a(A.x(k,a,r)) +for(;p!==44;){j.push(r);++r +for(o=-1;r=0)j.push(o) +else{n=B.b.ga0(j) +if(p!==44||r!==n+7||!B.a.v(a,"base64",n+1))throw A.a(A.x("Expecting '='",a,r)) +break}}j.push(r) +m=r+1 +if((j.length&1)===1)a=B.t.bJ(a,m,s) +else{l=A.fr(a,m,s,B.f,!0,!1) +if(l!=null)a=B.a.I(a,m,s,l)}return new A.cQ(a,j,c)}, +iP(){var s,r,q,p,o,n="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-._~!$&'()*+,;=",m=".",l=":",k="/",j="\\",i="?",h="#",g="/\\",f=J.eS(22,t.D) +for(s=0;s<22;++s)f[s]=new Uint8Array(96) +r=new A.dI(f) +q=new A.dJ() +p=new A.dK() +o=r.$2(0,225) +q.$3(o,n,1) +q.$3(o,m,14) +q.$3(o,l,34) +q.$3(o,k,3) +q.$3(o,j,227) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(14,225) +q.$3(o,n,1) +q.$3(o,m,15) +q.$3(o,l,34) +q.$3(o,g,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(15,225) +q.$3(o,n,1) +q.$3(o,"%",225) +q.$3(o,l,34) +q.$3(o,k,9) +q.$3(o,j,233) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(1,225) +q.$3(o,n,1) +q.$3(o,l,34) +q.$3(o,k,10) +q.$3(o,j,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(2,235) +q.$3(o,n,139) +q.$3(o,k,131) +q.$3(o,j,131) +q.$3(o,m,146) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(3,235) +q.$3(o,n,11) +q.$3(o,k,68) +q.$3(o,j,68) +q.$3(o,m,18) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(4,229) +q.$3(o,n,5) +p.$3(o,"AZ",229) +q.$3(o,l,102) +q.$3(o,"@",68) +q.$3(o,"[",232) +q.$3(o,k,138) +q.$3(o,j,138) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(5,229) +q.$3(o,n,5) +p.$3(o,"AZ",229) +q.$3(o,l,102) +q.$3(o,"@",68) +q.$3(o,k,138) +q.$3(o,j,138) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(6,231) +p.$3(o,"19",7) +q.$3(o,"@",68) +q.$3(o,k,138) +q.$3(o,j,138) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(7,231) +p.$3(o,"09",7) +q.$3(o,"@",68) +q.$3(o,k,138) +q.$3(o,j,138) +q.$3(o,i,172) +q.$3(o,h,205) +q.$3(r.$2(8,8),"]",5) +o=r.$2(9,235) +q.$3(o,n,11) +q.$3(o,m,16) +q.$3(o,g,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(16,235) +q.$3(o,n,11) +q.$3(o,m,17) +q.$3(o,g,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(17,235) +q.$3(o,n,11) +q.$3(o,k,9) +q.$3(o,j,233) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(10,235) +q.$3(o,n,11) +q.$3(o,m,18) +q.$3(o,k,10) +q.$3(o,j,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(18,235) +q.$3(o,n,11) +q.$3(o,m,19) +q.$3(o,g,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(19,235) +q.$3(o,n,11) +q.$3(o,g,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(11,235) +q.$3(o,n,11) +q.$3(o,k,10) +q.$3(o,j,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(12,236) +q.$3(o,n,12) +q.$3(o,i,12) +q.$3(o,h,205) +o=r.$2(13,237) +q.$3(o,n,13) +q.$3(o,i,13) +p.$3(r.$2(20,245),"az",21) +o=r.$2(21,245) +p.$3(o,"az",21) +p.$3(o,"09",21) +q.$3(o,"+-.",21) +return f}, +fO(a,b,c,d,e){var s,r,q,p,o=$.hj() +for(s=b;s95?31:q] +d=p&31 +e[p>>>5]=s}return d}, +dw:function dw(a){this.a=a}, +d2:function d2(){}, +l:function l(){}, +bt:function bt(a){this.a=a}, +Q:function Q(){}, +G:function G(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aZ:function aZ(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.a=c +_.b=d +_.c=e +_.d=f}, +bB:function bB(a,b,c,d,e){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e}, +bX:function bX(a){this.a=a}, +bU:function bU(a){this.a=a}, +b1:function b1(a){this.a=a}, +bz:function bz(a){this.a=a}, +bQ:function bQ(){}, +b0:function b0(){}, +d3:function d3(a){this.a=a}, +ct:function ct(a,b,c){this.a=a +this.b=b +this.c=c}, +n:function n(){}, +u:function u(){}, +k:function k(){}, +ce:function ce(){}, +z:function z(a){this.a=a}, +cU:function cU(a){this.a=a}, +cR:function cR(a){this.a=a}, +cS:function cS(a){this.a=a}, +cT:function cT(a,b){this.a=a +this.b=b}, +bi:function bi(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.z=_.y=_.w=$}, +dv:function dv(a,b){this.a=a +this.b=b}, +du:function du(a){this.a=a}, +cQ:function cQ(a,b,c){this.a=a +this.b=b +this.c=c}, +dI:function dI(a){this.a=a}, +dJ:function dJ(){}, +dK:function dK(){}, +cc:function cc(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=null}, +c3:function c3(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.z=_.y=_.w=$}, +a4(a){var s +if(typeof a=="function")throw A.a(A.L("Attempting to rewrap a JS function.",null)) +s=function(b,c){return function(d){return b(c,d,arguments.length)}}(A.iM,a) +s[$.eH()]=a +return s}, +iM(a,b,c){if(c>=1)return a.$1(b) +return a.$0()}, +e4(a,b){var s=new A.v($.r,b.i("v<0>")),r=new A.b2(s,b.i("b2<0>")) +a.then(A.aA(new A.e5(r),1),A.aA(new A.e6(r),1)) +return s}, +e5:function e5(a){this.a=a}, +e6:function e6(a){this.a=a}, +cI:function cI(a){this.a=a}, +m:function m(a,b){this.a=a +this.b=b}, +hD(a){var s,r,q,p,o,n,m,l,k="enclosedBy" +if(a.k(0,k)!=null){s=t.a.a(a.k(0,k)) +r=new A.cq(A.fz(s.k(0,"name")),B.p[A.fx(s.k(0,"kind"))],A.fz(s.k(0,"href")))}else r=null +q=a.k(0,"name") +p=a.k(0,"qualifiedName") +o=A.fy(a.k(0,"packageRank")) +if(o==null)o=0 +n=a.k(0,"href") +m=B.p[A.fx(a.k(0,"kind"))] +l=A.fy(a.k(0,"overriddenDepth")) +if(l==null)l=0 +return new A.w(q,p,o,m,n,l,a.k(0,"desc"),r)}, +A:function A(a,b){this.a=a +this.b=b}, +cw:function cw(a){this.a=a}, +cz:function cz(a,b){this.a=a +this.b=b}, +cx:function cx(){}, +cy:function cy(){}, +w:function w(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +cq:function cq(a,b,c){this.a=a +this.b=b +this.c=c}, +jC(){var s=self,r=s.document.getElementById("search-box"),q=s.document.getElementById("search-body"),p=s.document.getElementById("search-sidebar") +A.e4(s.window.fetch($.br()+"index.json"),t.m).aq(new A.dZ(new A.e_(r,q,p),r,q,p),t.P)}, +ek(a){var s=A.h([],t.O),r=A.h([],t.M) +return new A.dk(a,A.bZ(self.window.location.href),s,r)}, +iO(a,b){var s,r,q,p,o,n,m,l=self,k=l.document.createElement("div"),j=b.e +if(j==null)j="" +k.setAttribute("data-href",j) +k.classList.add("tt-suggestion") +s=l.document.createElement("span") +s.classList.add("tt-suggestion-title") +s.innerHTML=A.et(b.a+" "+b.d.h(0).toLowerCase(),a) +k.appendChild(s) +r=b.w +j=r!=null +if(j){s=l.document.createElement("span") +s.classList.add("tt-suggestion-container") +s.innerHTML="(in "+A.et(r.a,a)+")" +k.appendChild(s)}q=b.r +if(q!=null&&q.length!==0){s=l.document.createElement("blockquote") +s.classList.add("one-line-description") +p=l.document.createElement("textarea") +p.innerHTML=q +s.setAttribute("title",p.value) +s.innerHTML=A.et(q,a) +k.appendChild(s)}k.addEventListener("mousedown",A.a4(new A.dG())) +k.addEventListener("click",A.a4(new A.dH(b))) +if(j){j=r.a +o=r.b.h(0) +n=r.c +s=l.document.createElement("div") +s.classList.add("tt-container") +p=l.document.createElement("p") +p.textContent="Results from " +p.classList.add("tt-container-text") +m=l.document.createElement("a") +m.setAttribute("href",n) +m.innerHTML=j+" "+o +p.appendChild(m) +s.appendChild(p) +A.jb(s,k)}return k}, +jb(a,b){var s,r=a.innerHTML +if(r.length===0)return +s=$.bl.k(0,r) +if(s!=null)s.appendChild(b) +else{a.appendChild(b) +$.bl.q(0,r,a)}}, +et(a,b){return A.jT(a,A.f_(b,!1),new A.dL(),null)}, +dM:function dM(){}, +e_:function e_(a,b,c){this.a=a +this.b=b +this.c=c}, +dZ:function dZ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +dk:function dk(a,b,c,d){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=$ +_.f=null +_.r="" +_.w=c +_.x=d +_.y=-1}, +dl:function dl(a){this.a=a}, +dm:function dm(a,b){this.a=a +this.b=b}, +dn:function dn(a,b){this.a=a +this.b=b}, +dp:function dp(a,b){this.a=a +this.b=b}, +dq:function dq(a,b){this.a=a +this.b=b}, +dG:function dG(){}, +dH:function dH(a){this.a=a}, +dL:function dL(){}, +iW(){var s=self,r=s.document.getElementById("sidenav-left-toggle"),q=s.document.querySelector(".sidebar-offcanvas-left"),p=s.document.getElementById("overlay-under-drawer"),o=A.a4(new A.dN(q,p)) +if(p!=null)p.addEventListener("click",o) +if(r!=null)r.addEventListener("click",o)}, +iV(){var s,r,q,p,o=self,n=o.document.body +if(n==null)return +s=n.getAttribute("data-using-base-href") +if(s==null)return +if(s!=="true"){r=n.getAttribute("data-base-href") +if(r==null)return +q=r}else q="" +p=o.document.getElementById("dartdoc-main-content") +if(p==null)return +A.fK(q,p.getAttribute("data-above-sidebar"),o.document.getElementById("dartdoc-sidebar-left-content")) +A.fK(q,p.getAttribute("data-below-sidebar"),o.document.getElementById("dartdoc-sidebar-right"))}, +fK(a,b,c){if(b==null||b.length===0||c==null)return +A.e4(self.window.fetch(a+A.i(b)),t.m).aq(new A.dO(c,a),t.P)}, +fR(a,b){var s,r,q,p +if(b.nodeName.toLowerCase()==="a"){s=b.getAttribute("href") +if(s!=null)if(!A.bZ(s).gaV())b.href=a+s}r=b.childNodes +for(q=0;q").B(b).i("M<1,2>"))}, +Z(a){if(!!a.fixed$length)A.ck(A.ag("clear")) +a.length=0}, +aW(a,b){var s,r=A.eV(a.length,"",!1,t.N) +for(s=0;ss)throw A.a(A.H(b,0,s,"start",null)) +if(cs)throw A.a(A.H(c,b,s,"end",null)) +if(b===c)return A.h([],A.ah(a)) +return A.h(a.slice(b,c),A.ah(a))}, +gbB(a){if(a.length>0)return a[0] +throw A.a(A.eR())}, +ga0(a){var s=a.length +if(s>0)return a[s-1] +throw A.a(A.eR())}, +b9(a,b){var s,r,q,p,o +if(!!a.immutable$list)A.ck(A.ag("sort")) +s=a.length +if(s<2)return +if(b==null)b=J.j_() +if(s===2){r=a[0] +q=a[1] +if(b.$2(r,q)>0){a[0]=q +a[1]=r}return}p=0 +if(A.ah(a).c.b(null))for(o=0;o0)this.bp(a,p)}, +bp(a,b){var s,r=a.length +for(;s=r-1,r>0;r=s)if(a[s]===null){a[s]=void 0;--b +if(b===0)break}}, +h(a){return A.ea(a,"[","]")}, +gA(a){return new J.am(a,a.length,A.ah(a).i("am<1>"))}, +gp(a){return A.bS(a)}, +gl(a){return a.length}, +k(a,b){if(!(b>=0&&b=0&&b=p){r.d=null +return!1}r.d=q[s] +r.c=s+1 +return!0}} +J.aN.prototype={ +aJ(a,b){var s +if(ab)return 1 +else if(a===b){if(a===0){s=this.gal(b) +if(this.gal(a)===s)return 0 +if(this.gal(a))return-1 +return 1}return 0}else if(isNaN(a)){if(isNaN(b))return 0 +return 1}else return-1}, +gal(a){return a===0?1/a<0:a<0}, +h(a){if(a===0&&1/a<0)return"-0.0" +else return""+a}, +gp(a){var s,r,q,p,o=a|0 +if(a===o)return o&536870911 +s=Math.abs(a) +r=Math.log(s)/0.6931471805599453|0 +q=Math.pow(2,r) +p=s<1?s/q:q/s +return((p*9007199254740992|0)+(p*3542243181176521|0))*599197+r*1259&536870911}, +a2(a,b){var s=a%b +if(s===0)return 0 +if(s>0)return s +return s+b}, +bs(a,b){return(a|0)===a?a/b|0:this.bt(a,b)}, +bt(a,b){var s=a/b +if(s>=-2147483648&&s<=2147483647)return s|0 +if(s>0){if(s!==1/0)return Math.floor(s)}else if(s>-1/0)return Math.ceil(s) +throw A.a(A.ag("Result of truncating division is "+A.i(s)+": "+A.i(a)+" ~/ "+b))}, +W(a,b){var s +if(a>0)s=this.aE(a,b) +else{s=b>31?31:b +s=a>>s>>>0}return s}, +br(a,b){if(0>b)throw A.a(A.jo(b)) +return this.aE(a,b)}, +aE(a,b){return b>31?0:a>>>b}, +gt(a){return A.ai(t.H)}, +$it:1} +J.aL.prototype={ +gt(a){return A.ai(t.S)}, +$ij:1, +$ib:1} +J.bE.prototype={ +gt(a){return A.ai(t.i)}, +$ij:1} +J.ab.prototype={ +b3(a,b){return a+b}, +I(a,b,c,d){var s=A.b_(b,c,a.length) +return a.substring(0,b)+d+a.substring(s)}, +v(a,b,c){var s +if(c<0||c>a.length)throw A.a(A.H(c,0,a.length,null,null)) +s=c+b.length +if(s>a.length)return!1 +return b===a.substring(c,s)}, +u(a,b){return this.v(a,b,0)}, +j(a,b,c){return a.substring(b,A.b_(b,c,a.length))}, +J(a,b){return this.j(a,b,null)}, +b6(a,b){var s,r +if(0>=b)return"" +if(b===1||a.length===0)return a +if(b!==b>>>0)throw A.a(B.B) +for(s=a,r="";!0;){if((b&1)===1)r=s+r +b=b>>>1 +if(b===0)break +s+=s}return r}, +a_(a,b,c){var s +if(c<0||c>a.length)throw A.a(A.H(c,0,a.length,null,null)) +s=a.indexOf(b,c) +return s}, +aS(a,b){return this.a_(a,b,0)}, +N(a,b){return A.jS(a,b,0)}, +aJ(a,b){var s +if(a===b)s=0 +else s=a>6}r=r+((r&67108863)<<3)&536870911 +r^=r>>11 +return r+((r&16383)<<15)&536870911}, +gt(a){return A.ai(t.N)}, +gl(a){return a.length}, +$ij:1, +$id:1} +A.a2.prototype={ +gA(a){return new A.bw(J.X(this.gM()),A.E(this).i("bw<1,2>"))}, +gl(a){return J.bs(this.gM())}, +C(a,b){return A.E(this).y[1].a(J.e8(this.gM(),b))}, +h(a){return J.al(this.gM())}} +A.bw.prototype={ +m(){return this.a.m()}, +gn(){return this.$ti.y[1].a(this.a.gn())}} +A.a9.prototype={ +gM(){return this.a}} +A.b4.prototype={$ic:1} +A.b3.prototype={ +k(a,b){return this.$ti.y[1].a(J.hk(this.a,b))}, +q(a,b,c){J.hl(this.a,b,this.$ti.c.a(c))}, +$ic:1, +$if:1} +A.M.prototype={ +Y(a,b){return new A.M(this.a,this.$ti.i("@<1>").B(b).i("M<1,2>"))}, +gM(){return this.a}} +A.aR.prototype={ +h(a){return"LateInitializationError: "+this.a}} +A.bx.prototype={ +gl(a){return this.a.length}, +k(a,b){return this.a.charCodeAt(b)}} +A.cL.prototype={} +A.c.prototype={} +A.J.prototype={ +gA(a){var s=this +return new A.an(s,s.gl(s),A.E(s).i("an"))}} +A.an.prototype={ +gn(){var s=this.d +return s==null?this.$ti.c.a(s):s}, +m(){var s,r=this,q=r.a,p=J.cj(q),o=p.gl(q) +if(r.b!==o)throw A.a(A.aD(q)) +s=r.c +if(s>=o){r.d=null +return!1}r.d=p.C(q,s);++r.c +return!0}} +A.ad.prototype={ +gA(a){return new A.ao(J.X(this.a),this.b,A.E(this).i("ao<1,2>"))}, +gl(a){return J.bs(this.a)}, +C(a,b){return this.b.$1(J.e8(this.a,b))}} +A.aI.prototype={$ic:1} +A.ao.prototype={ +m(){var s=this,r=s.b +if(r.m()){s.a=s.c.$1(r.gn()) +return!0}s.a=null +return!1}, +gn(){var s=this.a +return s==null?this.$ti.y[1].a(s):s}} +A.ae.prototype={ +gl(a){return J.bs(this.a)}, +C(a,b){return this.b.$1(J.e8(this.a,b))}} +A.aK.prototype={} +A.bW.prototype={ +q(a,b,c){throw A.a(A.ag("Cannot modify an unmodifiable list"))}} +A.as.prototype={} +A.bk.prototype={} +A.cb.prototype={$r:"+item,matchPosition(1,2)",$s:1} +A.aE.prototype={ +h(a){return A.ef(this)}, +q(a,b,c){A.hy()}, +$iy:1} +A.aG.prototype={ +gl(a){return this.b.length}, +gbm(){var s=this.$keys +if(s==null){s=Object.keys(this.a) +this.$keys=s}return s}, +O(a){if("__proto__"===a)return!1 +return this.a.hasOwnProperty(a)}, +k(a,b){if(!this.O(b))return null +return this.b[this.a[b]]}, +F(a,b){var s,r,q=this.gbm(),p=this.b +for(s=q.length,r=0;r=s.b){s.d=null +return!1}s.d=s.a[r] +s.c=r+1 +return!0}} +A.aF.prototype={} +A.aH.prototype={ +gl(a){return this.b}, +gA(a){var s,r=this,q=r.$keys +if(q==null){q=Object.keys(r.a) +r.$keys=q}s=q +return new A.c8(s,s.length,r.$ti.i("c8<1>"))}, +N(a,b){if("__proto__"===b)return!1 +return this.a.hasOwnProperty(b)}} +A.cO.prototype={ +D(a){var s,r,q=this,p=new RegExp(q.a).exec(a) +if(p==null)return null +s=Object.create(null) +r=q.b +if(r!==-1)s.arguments=p[r+1] +r=q.c +if(r!==-1)s.argumentsExpr=p[r+1] +r=q.d +if(r!==-1)s.expr=p[r+1] +r=q.e +if(r!==-1)s.method=p[r+1] +r=q.f +if(r!==-1)s.receiver=p[r+1] +return s}} +A.aY.prototype={ +h(a){return"Null check operator used on a null value"}} +A.bF.prototype={ +h(a){var s,r=this,q="NoSuchMethodError: method not found: '",p=r.b +if(p==null)return"NoSuchMethodError: "+r.a +s=r.c +if(s==null)return q+p+"' ("+r.a+")" +return q+p+"' on '"+s+"' ("+r.a+")"}} +A.bV.prototype={ +h(a){var s=this.a +return s.length===0?"Error":"Error: "+s}} +A.cJ.prototype={ +h(a){return"Throw of null ('"+(this.a===null?"null":"undefined")+"' from JavaScript)"}} +A.aJ.prototype={} +A.bb.prototype={ +h(a){var s,r=this.b +if(r!=null)return r +r=this.a +s=r!==null&&typeof r==="object"?r.stack:null +return this.b=s==null?"":s}, +$ia0:1} +A.aa.prototype={ +h(a){var s=this.constructor,r=s==null?null:s.name +return"Closure '"+A.h2(r==null?"unknown":r)+"'"}, +gbS(){return this}, +$C:"$1", +$R:1, +$D:null} +A.co.prototype={$C:"$0",$R:0} +A.cp.prototype={$C:"$2",$R:2} +A.cN.prototype={} +A.cM.prototype={ +h(a){var s=this.$static_name +if(s==null)return"Closure of unknown static method" +return"Closure '"+A.h2(s)+"'"}} +A.aC.prototype={ +E(a,b){if(b==null)return!1 +if(this===b)return!0 +if(!(b instanceof A.aC))return!1 +return this.$_target===b.$_target&&this.a===b.a}, +gp(a){return(A.fZ(this.a)^A.bS(this.$_target))>>>0}, +h(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.cK(this.a)+"'")}} +A.c2.prototype={ +h(a){return"Reading static variable '"+this.a+"' during its initialization"}} +A.bT.prototype={ +h(a){return"RuntimeError: "+this.a}} +A.ac.prototype={ +gl(a){return this.a}, +gP(){return new A.N(this,A.E(this).i("N<1>"))}, +gb2(){var s=A.E(this) +return A.hO(new A.N(this,s.i("N<1>")),new A.cC(this),s.c,s.y[1])}, +O(a){var s=this.b +if(s==null)return!1 +return s[a]!=null}, +k(a,b){var s,r,q,p,o=null +if(typeof b=="string"){s=this.b +if(s==null)return o +r=s[b] +q=r==null?o:r.b +return q}else if(typeof b=="number"&&(b&0x3fffffff)===b){p=this.c +if(p==null)return o +r=p[b] +q=r==null?o:r.b +return q}else return this.bH(b)}, +bH(a){var s,r,q=this.d +if(q==null)return null +s=q[this.aT(a)] +r=this.aU(s,a) +if(r<0)return null +return s[r].b}, +q(a,b,c){var s,r,q,p,o,n,m=this +if(typeof b=="string"){s=m.b +m.au(s==null?m.b=m.a9():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=m.c +m.au(r==null?m.c=m.a9():r,b,c)}else{q=m.d +if(q==null)q=m.d=m.a9() +p=m.aT(b) +o=q[p] +if(o==null)q[p]=[m.aa(b,c)] +else{n=m.aU(o,b) +if(n>=0)o[n].b=c +else o.push(m.aa(b,c))}}}, +Z(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=s.f=null +s.a=0 +s.aB()}}, +F(a,b){var s=this,r=s.e,q=s.r +for(;r!=null;){b.$2(r.a,r.b) +if(q!==s.r)throw A.a(A.aD(s)) +r=r.c}}, +au(a,b,c){var s=a[b] +if(s==null)a[b]=this.aa(b,c) +else s.b=c}, +aB(){this.r=this.r+1&1073741823}, +aa(a,b){var s=this,r=new A.cF(a,b) +if(s.e==null)s.e=s.f=r +else s.f=s.f.c=r;++s.a +s.aB() +return r}, +aT(a){return J.W(a)&1073741823}, +aU(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"]=s +delete s[""] +return s}} +A.cC.prototype={ +$1(a){var s=this.a,r=s.k(0,a) +return r==null?A.E(s).y[1].a(r):r}, +$S(){return A.E(this.a).i("2(1)")}} +A.cF.prototype={} +A.N.prototype={ +gl(a){return this.a.a}, +gA(a){var s=this.a,r=new A.bG(s,s.r) +r.c=s.e +return r}} +A.bG.prototype={ +gn(){return this.d}, +m(){var s,r=this,q=r.a +if(r.b!==q.r)throw A.a(A.aD(q)) +s=r.c +if(s==null){r.d=null +return!1}else{r.d=s.a +r.c=s.c +return!0}}} +A.dV.prototype={ +$1(a){return this.a(a)}, +$S:10} +A.dW.prototype={ +$2(a,b){return this.a(a,b)}, +$S:11} +A.dX.prototype={ +$1(a){return this.a(a)}, +$S:12} +A.ba.prototype={ +h(a){return this.aG(!1)}, +aG(a){var s,r,q,p,o,n=this.bk(),m=this.aA(),l=(a?""+"Record ":"")+"(" +for(s=n.length,r="",q=0;q0;){--q;--s +j[q]=r[s]}}j=A.hN(j,!1,k) +j.fixed$length=Array +j.immutable$list=Array +return j}} +A.ca.prototype={ +aA(){return[this.a,this.b]}, +E(a,b){if(b==null)return!1 +return b instanceof A.ca&&this.$s===b.$s&&J.F(this.a,b.a)&&J.F(this.b,b.b)}, +gp(a){return A.hR(this.$s,this.a,this.b,B.i)}} +A.cA.prototype={ +h(a){return"RegExp/"+this.a+"/"+this.b.flags}, +gbn(){var s=this,r=s.c +if(r!=null)return r +r=s.b +return s.c=A.eT(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,!0)}, +bj(a,b){var s,r=this.gbn() +r.lastIndex=b +s=r.exec(a) +if(s==null)return null +return new A.c9(s)}} +A.c9.prototype={ +gbz(){var s=this.b +return s.index+s[0].length}, +k(a,b){return this.b[b]}, +$icH:1, +$ieh:1} +A.cY.prototype={ +gn(){var s=this.d +return s==null?t.F.a(s):s}, +m(){var s,r,q,p,o,n,m=this,l=m.b +if(l==null)return!1 +s=m.c +r=l.length +if(s<=r){q=m.a +p=q.bj(l,s) +if(p!=null){m.d=p +o=p.gbz() +if(p.b.index===o){s=!1 +if(q.b.unicode){q=m.c +n=q+1 +if(n=55296&&r<=56319){s=l.charCodeAt(n) +s=s>=56320&&s<=57343}}}o=(s?o+1:o)+1}m.c=o +return!0}}m.b=m.d=null +return!1}} +A.bH.prototype={ +gt(a){return B.ab}, +$ij:1} +A.aV.prototype={} +A.bI.prototype={ +gt(a){return B.ac}, +$ij:1} +A.ap.prototype={ +gl(a){return a.length}, +$iD:1} +A.aT.prototype={ +k(a,b){A.T(b,a,a.length) +return a[b]}, +q(a,b,c){A.T(b,a,a.length) +a[b]=c}, +$ic:1, +$if:1} +A.aU.prototype={ +q(a,b,c){A.T(b,a,a.length) +a[b]=c}, +$ic:1, +$if:1} +A.bJ.prototype={ +gt(a){return B.ad}, +$ij:1} +A.bK.prototype={ +gt(a){return B.ae}, +$ij:1} +A.bL.prototype={ +gt(a){return B.af}, +k(a,b){A.T(b,a,a.length) +return a[b]}, +$ij:1} +A.bM.prototype={ +gt(a){return B.ag}, +k(a,b){A.T(b,a,a.length) +return a[b]}, +$ij:1} +A.bN.prototype={ +gt(a){return B.ah}, +k(a,b){A.T(b,a,a.length) +return a[b]}, +$ij:1} +A.bO.prototype={ +gt(a){return B.aj}, +k(a,b){A.T(b,a,a.length) +return a[b]}, +$ij:1} +A.bP.prototype={ +gt(a){return B.ak}, +k(a,b){A.T(b,a,a.length) +return a[b]}, +$ij:1} +A.aW.prototype={ +gt(a){return B.al}, +gl(a){return a.length}, +k(a,b){A.T(b,a,a.length) +return a[b]}, +$ij:1} +A.aX.prototype={ +gt(a){return B.am}, +gl(a){return a.length}, +k(a,b){A.T(b,a,a.length) +return a[b]}, +$ij:1, +$iaf:1} +A.b6.prototype={} +A.b7.prototype={} +A.b8.prototype={} +A.b9.prototype={} +A.I.prototype={ +i(a){return A.bg(v.typeUniverse,this,a)}, +B(a){return A.fm(v.typeUniverse,this,a)}} +A.c5.prototype={} +A.dt.prototype={ +h(a){return A.C(this.a,null)}} +A.c4.prototype={ +h(a){return this.a}} +A.bc.prototype={$iQ:1} +A.d_.prototype={ +$1(a){var s=this.a,r=s.a +s.a=null +r.$0()}, +$S:4} +A.cZ.prototype={ +$1(a){var s,r +this.a.a=a +s=this.b +r=this.c +s.firstChild?s.removeChild(r):s.appendChild(r)}, +$S:13} +A.d0.prototype={ +$0(){this.a.$0()}, +$S:5} +A.d1.prototype={ +$0(){this.a.$0()}, +$S:5} +A.dr.prototype={ +bc(a,b){if(self.setTimeout!=null)self.setTimeout(A.aA(new A.ds(this,b),0),a) +else throw A.a(A.ag("`setTimeout()` not found."))}} +A.ds.prototype={ +$0(){this.b.$0()}, +$S:0} +A.c_.prototype={ +ae(a){var s,r=this +if(a==null)a=r.$ti.c.a(a) +if(!r.b)r.a.av(a) +else{s=r.a +if(r.$ti.i("Y<1>").b(a))s.aw(a) +else s.a5(a)}}, +af(a,b){var s=this.a +if(this.b)s.K(a,b) +else s.T(a,b)}} +A.dD.prototype={ +$1(a){return this.a.$2(0,a)}, +$S:2} +A.dE.prototype={ +$2(a,b){this.a.$2(1,new A.aJ(a,b))}, +$S:14} +A.dR.prototype={ +$2(a,b){this.a(a,b)}, +$S:15} +A.bv.prototype={ +h(a){return A.i(this.a)}, +$il:1, +gS(){return this.b}} +A.c1.prototype={ +af(a,b){var s +A.ci(a,"error",t.K) +s=this.a +if((s.a&30)!==0)throw A.a(A.f3("Future already completed")) +if(b==null)b=A.eK(a) +s.T(a,b)}, +aK(a){return this.af(a,null)}} +A.b2.prototype={ +ae(a){var s=this.a +if((s.a&30)!==0)throw A.a(A.f3("Future already completed")) +s.av(a)}} +A.au.prototype={ +bI(a){if((this.c&15)!==6)return!0 +return this.b.b.ap(this.d,a.a)}, +bE(a){var s,r=this.e,q=null,p=a.a,o=this.b.b +if(t.C.b(r))q=o.bN(r,p,a.b) +else q=o.ap(r,p) +try{p=q +return p}catch(s){if(t.c.b(A.a8(s))){if((this.c&1)!==0)throw A.a(A.L("The error handler of Future.then must return a value of the returned future's type","onError")) +throw A.a(A.L("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} +A.v.prototype={ +aD(a){this.a=this.a&1|4 +this.c=a}, +ar(a,b,c){var s,r,q=$.r +if(q===B.d){if(b!=null&&!t.C.b(b)&&!t.v.b(b))throw A.a(A.eJ(b,"onError",u.c))}else if(b!=null)b=A.jf(b,q) +s=new A.v(q,c.i("v<0>")) +r=b==null?1:3 +this.a4(new A.au(s,r,a,b,this.$ti.i("@<1>").B(c).i("au<1,2>"))) +return s}, +aq(a,b){return this.ar(a,null,b)}, +aF(a,b,c){var s=new A.v($.r,c.i("v<0>")) +this.a4(new A.au(s,19,a,b,this.$ti.i("@<1>").B(c).i("au<1,2>"))) +return s}, +bq(a){this.a=this.a&1|16 +this.c=a}, +U(a){this.a=a.a&30|this.a&1 +this.c=a.c}, +a4(a){var s=this,r=s.a +if(r<=3){a.a=s.c +s.c=a}else{if((r&4)!==0){r=s.c +if((r.a&24)===0){r.a4(a) +return}s.U(r)}A.ax(null,null,s.b,new A.d4(s,a))}}, +ab(a){var s,r,q,p,o,n=this,m={} +m.a=a +if(a==null)return +s=n.a +if(s<=3){r=n.c +n.c=a +if(r!=null){q=a.a +for(p=a;q!=null;p=q,q=o)o=q.a +p.a=r}}else{if((s&4)!==0){s=n.c +if((s.a&24)===0){s.ab(a) +return}n.U(s)}m.a=n.V(a) +A.ax(null,null,n.b,new A.db(m,n))}}, +ac(){var s=this.c +this.c=null +return this.V(s)}, +V(a){var s,r,q +for(s=a,r=null;s!=null;r=s,s=q){q=s.a +s.a=r}return r}, +be(a){var s,r,q,p=this +p.a^=2 +try{a.ar(new A.d8(p),new A.d9(p),t.P)}catch(q){s=A.a8(q) +r=A.a6(q) +A.jQ(new A.da(p,s,r))}}, +a5(a){var s=this,r=s.ac() +s.a=8 +s.c=a +A.b5(s,r)}, +K(a,b){var s=this.ac() +this.bq(A.cl(a,b)) +A.b5(this,s)}, +av(a){if(this.$ti.i("Y<1>").b(a)){this.aw(a) +return}this.bd(a)}, +bd(a){this.a^=2 +A.ax(null,null,this.b,new A.d6(this,a))}, +aw(a){if(this.$ti.b(a)){A.i5(a,this) +return}this.be(a)}, +T(a,b){this.a^=2 +A.ax(null,null,this.b,new A.d5(this,a,b))}, +$iY:1} +A.d4.prototype={ +$0(){A.b5(this.a,this.b)}, +$S:0} +A.db.prototype={ +$0(){A.b5(this.b,this.a.a)}, +$S:0} +A.d8.prototype={ +$1(a){var s,r,q,p=this.a +p.a^=2 +try{p.a5(p.$ti.c.a(a))}catch(q){s=A.a8(q) +r=A.a6(q) +p.K(s,r)}}, +$S:4} +A.d9.prototype={ +$2(a,b){this.a.K(a,b)}, +$S:16} +A.da.prototype={ +$0(){this.a.K(this.b,this.c)}, +$S:0} +A.d7.prototype={ +$0(){A.fc(this.a.a,this.b)}, +$S:0} +A.d6.prototype={ +$0(){this.a.a5(this.b)}, +$S:0} +A.d5.prototype={ +$0(){this.a.K(this.b,this.c)}, +$S:0} +A.de.prototype={ +$0(){var s,r,q,p,o,n,m=this,l=null +try{q=m.a.a +l=q.b.b.bL(q.d)}catch(p){s=A.a8(p) +r=A.a6(p) +q=m.c&&m.b.a.c.a===s +o=m.a +if(q)o.c=m.b.a.c +else o.c=A.cl(s,r) +o.b=!0 +return}if(l instanceof A.v&&(l.a&24)!==0){if((l.a&16)!==0){q=m.a +q.c=l.c +q.b=!0}return}if(l instanceof A.v){n=m.b.a +q=m.a +q.c=l.aq(new A.df(n),t.z) +q.b=!1}}, +$S:0} +A.df.prototype={ +$1(a){return this.a}, +$S:17} +A.dd.prototype={ +$0(){var s,r,q,p,o +try{q=this.a +p=q.a +q.c=p.b.b.ap(p.d,this.b)}catch(o){s=A.a8(o) +r=A.a6(o) +q=this.a +q.c=A.cl(s,r) +q.b=!0}}, +$S:0} +A.dc.prototype={ +$0(){var s,r,q,p,o,n,m=this +try{s=m.a.a.c +p=m.b +if(p.a.bI(s)&&p.a.e!=null){p.c=p.a.bE(s) +p.b=!1}}catch(o){r=A.a8(o) +q=A.a6(o) +p=m.a.a.c +n=m.b +if(p.a===r)n.c=p +else n.c=A.cl(r,q) +n.b=!0}}, +$S:0} +A.c0.prototype={} +A.cd.prototype={} +A.dC.prototype={} +A.dP.prototype={ +$0(){A.hA(this.a,this.b)}, +$S:0} +A.di.prototype={ +bP(a){var s,r,q +try{if(B.d===$.r){a.$0() +return}A.fM(null,null,this,a)}catch(q){s=A.a8(q) +r=A.a6(q) +A.ex(s,r)}}, +aH(a){return new A.dj(this,a)}, +bM(a){if($.r===B.d)return a.$0() +return A.fM(null,null,this,a)}, +bL(a){return this.bM(a,t.z)}, +bQ(a,b){if($.r===B.d)return a.$1(b) +return A.jh(null,null,this,a,b)}, +ap(a,b){var s=t.z +return this.bQ(a,b,s,s)}, +bO(a,b,c){if($.r===B.d)return a.$2(b,c) +return A.jg(null,null,this,a,b,c)}, +bN(a,b,c){var s=t.z +return this.bO(a,b,c,s,s,s)}, +bK(a){return a}, +aZ(a){var s=t.z +return this.bK(a,s,s,s)}} +A.dj.prototype={ +$0(){return this.a.bP(this.b)}, +$S:0} +A.e.prototype={ +gA(a){return new A.an(a,this.gl(a),A.aB(a).i("an"))}, +C(a,b){return this.k(a,b)}, +Y(a,b){return new A.M(a,A.aB(a).i("@").B(b).i("M<1,2>"))}, +bA(a,b,c,d){var s +A.b_(b,c,this.gl(a)) +for(s=b;s"))}return new A.c7(this)}, +q(a,b,c){var s,r,q=this +if(q.b==null)q.c.q(0,b,c) +else if(q.O(b)){s=q.b +s[b]=c +r=q.a +if(r==null?s!=null:r!==s)r[b]=null}else q.bu().q(0,b,c)}, +O(a){if(this.b==null)return this.c.O(a) +return Object.prototype.hasOwnProperty.call(this.a,a)}, +F(a,b){var s,r,q,p,o=this +if(o.b==null)return o.c.F(0,b) +s=o.L() +for(r=0;r"))}return s}} +A.dz.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:true}) +return s}catch(r){}return null}, +$S:6} +A.dy.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:false}) +return s}catch(r){}return null}, +$S:6} +A.cm.prototype={ +bJ(a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a="Invalid base64 encoding length " +a2=A.b_(a1,a2,a0.length) +s=$.hd() +for(r=a1,q=r,p=null,o=-1,n=-1,m=0;r=0){g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(f) +if(g===k)continue +k=g}else{if(f===-1){if(o<0){e=p==null?null:p.a.length +if(e==null)e=0 +o=e+(r-q) +n=r}++m +if(k===61)continue}k=g}if(f!==-2){if(p==null){p=new A.z("") +e=p}else e=p +e.a+=B.a.j(a0,q,r) +d=A.P(k) +e.a+=d +q=l +continue}}throw A.a(A.x("Invalid base64 data",a0,r))}if(p!=null){e=B.a.j(a0,q,a2) +e=p.a+=e +d=e.length +if(o>=0)A.eL(a0,n,a2,o,m,d) +else{c=B.c.a2(d-1,4)+1 +if(c===1)throw A.a(A.x(a,a0,a2)) +for(;c<4;){e+="=" +p.a=e;++c}}e=p.a +return B.a.I(a0,a1,a2,e.charCodeAt(0)==0?e:e)}b=a2-a1 +if(o>=0)A.eL(a0,n,a2,o,m,b) +else{c=B.c.a2(b,4) +if(c===1)throw A.a(A.x(a,a0,a2)) +if(c>1)a0=B.a.I(a0,a2,a2,c===2?"==":"=")}return a0}} +A.cn.prototype={} +A.by.prototype={} +A.bA.prototype={} +A.cr.prototype={} +A.cv.prototype={ +h(a){return"unknown"}} +A.cu.prototype={ +H(a){var s=this.bh(a,0,a.length) +return s==null?a:s}, +bh(a,b,c){var s,r,q,p +for(s=b,r=null;s":q=">" +break +case"/":q="/" +break +default:q=null}if(q!=null){if(r==null)r=new A.z("") +if(s>b)r.a+=B.a.j(a,b,s) +r.a+=q +b=s+1}}if(r==null)return null +if(c>b){p=B.a.j(a,b,c) +r.a+=p}p=r.a +return p.charCodeAt(0)==0?p:p}} +A.cD.prototype={ +bw(a,b){var s=A.jd(a,this.gby().a) +return s}, +gby(){return B.H}} +A.cE.prototype={} +A.cV.prototype={} +A.cX.prototype={ +H(a){var s,r,q,p=A.b_(0,null,a.length) +if(p===0)return new Uint8Array(0) +s=p*3 +r=new Uint8Array(s) +q=new A.dA(r) +if(q.bl(a,0,p)!==p)q.ad() +return new Uint8Array(r.subarray(0,A.iN(0,q.b,s)))}} +A.dA.prototype={ +ad(){var s=this,r=s.c,q=s.b,p=s.b=q+1 +r[q]=239 +q=s.b=p+1 +r[p]=191 +s.b=q+1 +r[q]=189}, +bv(a,b){var s,r,q,p,o=this +if((b&64512)===56320){s=65536+((a&1023)<<10)|b&1023 +r=o.c +q=o.b +p=o.b=q+1 +r[q]=s>>>18|240 +q=o.b=p+1 +r[p]=s>>>12&63|128 +p=o.b=q+1 +r[q]=s>>>6&63|128 +o.b=p+1 +r[p]=s&63|128 +return!0}else{o.ad() +return!1}}, +bl(a,b,c){var s,r,q,p,o,n,m,l=this +if(b!==c&&(a.charCodeAt(c-1)&64512)===55296)--c +for(s=l.c,r=s.length,q=b;q=r)break +l.b=o+1 +s[o]=p}else{o=p&64512 +if(o===55296){if(l.b+4>r)break +n=q+1 +if(l.bv(p,a.charCodeAt(n)))q=n}else if(o===56320){if(l.b+3>r)break +l.ad()}else if(p<=2047){o=l.b +m=o+1 +if(m>=r)break +l.b=m +s[o]=p>>>6|192 +l.b=m+1 +s[m]=p&63|128}else{o=l.b +if(o+2>=r)break +m=l.b=o+1 +s[o]=p>>>12|224 +o=l.b=m+1 +s[m]=p>>>6&63|128 +l.b=o+1 +s[o]=p&63|128}}}return q}} +A.cW.prototype={ +H(a){return new A.dx(this.a).bi(a,0,null,!0)}} +A.dx.prototype={ +bi(a,b,c,d){var s,r,q,p,o,n,m=this,l=A.b_(b,c,J.bs(a)) +if(b===l)return"" +if(a instanceof Uint8Array){s=a +r=s +q=0}else{r=A.iG(a,b,l) +l-=b +q=b +b=0}if(l-b>=15){p=m.a +o=A.iF(p,r,b,l) +if(o!=null){if(!p)return o +if(o.indexOf("\ufffd")<0)return o}}o=m.a6(r,b,l,!0) +p=m.b +if((p&1)!==0){n=A.iH(p) +m.b=0 +throw A.a(A.x(n,a,q+m.c))}return o}, +a6(a,b,c,d){var s,r,q=this +if(c-b>1000){s=B.c.bs(b+c,2) +r=q.a6(a,b,s,!1) +if((q.b&1)!==0)return r +return r+q.a6(a,s,c,d)}return q.bx(a,b,c,d)}, +bx(a,b,c,d){var s,r,q,p,o,n,m,l=this,k=65533,j=l.b,i=l.c,h=new A.z(""),g=b+1,f=a[b] +$label0$0:for(s=l.a;!0;){for(;!0;g=p){r="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHIHHHJEEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBKCCCCCCCCCCCCDCLONNNMEEEEEEEEEEE".charCodeAt(f)&31 +i=j<=32?f&61694>>>r:(f&63|i<<6)>>>0 +j=" \x000:XECCCCCN:lDb \x000:XECCCCCNvlDb \x000:XECCCCCN:lDb AAAAA\x00\x00\x00\x00\x00AAAAA00000AAAAA:::::AAAAAGG000AAAAA00KKKAAAAAG::::AAAAA:IIIIAAAAA000\x800AAAAA\x00\x00\x00\x00 AAAAA".charCodeAt(j+r) +if(j===0){q=A.P(i) +h.a+=q +if(g===c)break $label0$0 +break}else if((j&1)!==0){if(s)switch(j){case 69:case 67:q=A.P(k) +h.a+=q +break +case 65:q=A.P(k) +h.a+=q;--g +break +default:q=A.P(k) +q=h.a+=q +h.a=q+A.P(k) +break}else{l.b=j +l.c=g-1 +return""}j=0}if(g===c)break $label0$0 +p=g+1 +f=a[g]}p=g+1 +f=a[g] +if(f<128){while(!0){if(!(p=128){o=n-1 +p=n +break}p=n}if(o-g<20)for(m=g;m32)if(s){s=A.P(k) +h.a+=s}else{l.b=77 +l.c=c +return""}l.b=j +l.c=i +s=h.a +return s.charCodeAt(0)==0?s:s}} +A.dw.prototype={ +$2(a,b){var s,r +if(typeof b=="string")this.a.set(a,b) +else if(b==null)this.a.set(a,"") +else for(s=J.X(b),r=this.a;s.m();){b=s.gn() +if(typeof b=="string")r.append(a,b) +else if(b==null)r.append(a,"") +else A.iJ(b)}}, +$S:7} +A.d2.prototype={ +h(a){return this.az()}} +A.l.prototype={ +gS(){return A.hT(this)}} +A.bt.prototype={ +h(a){var s=this.a +if(s!=null)return"Assertion failed: "+A.cs(s) +return"Assertion failed"}} +A.Q.prototype={} +A.G.prototype={ +ga8(){return"Invalid argument"+(!this.a?"(s)":"")}, +ga7(){return""}, +h(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+p,n=s.ga8()+q+o +if(!s.a)return n +return n+s.ga7()+": "+A.cs(s.gak())}, +gak(){return this.b}} +A.aZ.prototype={ +gak(){return this.b}, +ga8(){return"RangeError"}, +ga7(){var s,r=this.e,q=this.f +if(r==null)s=q!=null?": Not less than or equal to "+A.i(q):"" +else if(q==null)s=": Not greater than or equal to "+A.i(r) +else if(q>r)s=": Not in inclusive range "+A.i(r)+".."+A.i(q) +else s=qe.length +else s=!1 +if(s)f=null +if(f==null){if(e.length>78)e=B.a.j(e,0,75)+"..." +return g+"\n"+e}for(r=1,q=0,p=!1,o=0;o1?g+(" (at line "+r+", character "+(f-q+1)+")\n"):g+(" (at character "+(f+1)+")\n") +m=e.length +for(o=f;o78){k="..." +if(f-q<75){j=q+75 +i=q}else{if(m-f<75){i=m-75 +j=m +k=""}else{i=f-36 +j=f+36}l="..."}}else{j=m +i=q +k=""}return g+l+B.a.j(e,i,j)+k+"\n"+B.a.b6(" ",f-i+l.length)+"^\n"}else return f!=null?g+(" (at offset "+A.i(f)+")"):g}} +A.n.prototype={ +Y(a,b){return A.hs(this,A.E(this).i("n.E"),b)}, +gl(a){var s,r=this.gA(this) +for(s=0;r.m();)++s +return s}, +C(a,b){var s,r +A.eg(b,"index") +s=this.gA(this) +for(r=b;s.m();){if(r===0)return s.gn();--r}throw A.a(A.e9(b,b-r,this,"index"))}, +h(a){return A.hH(this,"(",")")}} +A.u.prototype={ +gp(a){return A.k.prototype.gp.call(this,0)}, +h(a){return"null"}} +A.k.prototype={$ik:1, +E(a,b){return this===b}, +gp(a){return A.bS(this)}, +h(a){return"Instance of '"+A.cK(this)+"'"}, +gt(a){return A.jA(this)}, +toString(){return this.h(this)}} +A.ce.prototype={ +h(a){return""}, +$ia0:1} +A.z.prototype={ +gl(a){return this.a.length}, +h(a){var s=this.a +return s.charCodeAt(0)==0?s:s}} +A.cU.prototype={ +$2(a,b){var s,r,q,p=B.a.aS(b,"=") +if(p===-1){if(b!=="")a.q(0,A.es(b,0,b.length,this.a,!0),"")}else if(p!==0){s=B.a.j(b,0,p) +r=B.a.J(b,p+1) +q=this.a +a.q(0,A.es(s,0,s.length,q,!0),A.es(r,0,r.length,q,!0))}return a}, +$S:19} +A.cR.prototype={ +$2(a,b){throw A.a(A.x("Illegal IPv4 address, "+a,this.a,b))}, +$S:20} +A.cS.prototype={ +$2(a,b){throw A.a(A.x("Illegal IPv6 address, "+a,this.a,b))}, +$S:21} +A.cT.prototype={ +$2(a,b){var s +if(b-a>4)this.a.$2("an IPv6 part can only contain a maximum of 4 hex digits",a) +s=A.e1(B.a.j(this.b,a,b),16) +if(s<0||s>65535)this.a.$2("each part must be in the range of `0x0..0xFFFF`",a) +return s}, +$S:22} +A.bi.prototype={ +gX(){var s,r,q,p,o=this,n=o.w +if(n===$){s=o.a +r=s.length!==0?""+s+":":"" +q=o.c +p=q==null +if(!p||s==="file"){s=r+"//" +r=o.b +if(r.length!==0)s=s+r+"@" +if(!p)s+=q +r=o.d +if(r!=null)s=s+":"+A.i(r)}else s=r +s+=o.e +r=o.f +if(r!=null)s=s+"?"+r +r=o.r +if(r!=null)s=s+"#"+r +n!==$&&A.bq() +n=o.w=s.charCodeAt(0)==0?s:s}return n}, +gp(a){var s,r=this,q=r.y +if(q===$){s=B.a.gp(r.gX()) +r.y!==$&&A.bq() +r.y=s +q=s}return q}, +gan(){var s,r=this,q=r.z +if(q===$){s=r.f +s=A.fa(s==null?"":s) +r.z!==$&&A.bq() +q=r.z=new A.at(s,t.h)}return q}, +gb1(){return this.b}, +gai(){var s=this.c +if(s==null)return"" +if(B.a.u(s,"["))return B.a.j(s,1,s.length-1) +return s}, +ga1(){var s=this.d +return s==null?A.fn(this.a):s}, +gam(){var s=this.f +return s==null?"":s}, +gaM(){var s=this.r +return s==null?"":s}, +ao(a){var s,r,q,p,o=this,n=o.a,m=n==="file",l=o.b,k=o.d,j=o.c +if(!(j!=null))j=l.length!==0||k!=null||m?"":null +s=o.e +if(!m)r=j!=null&&s.length!==0 +else r=!0 +if(r&&!B.a.u(s,"/"))s="/"+s +q=s +p=A.eq(null,0,0,a) +return A.eo(n,l,j,k,q,p,o.r)}, +gaV(){if(this.a!==""){var s=this.r +s=(s==null?"":s)===""}else s=!1 +return s}, +gaO(){return this.c!=null}, +gaR(){return this.f!=null}, +gaP(){return this.r!=null}, +h(a){return this.gX()}, +E(a,b){var s,r,q,p=this +if(b==null)return!1 +if(p===b)return!0 +s=!1 +if(t.R.b(b))if(p.a===b.ga3())if(p.c!=null===b.gaO())if(p.b===b.gb1())if(p.gai()===b.gai())if(p.ga1()===b.ga1())if(p.e===b.gaY()){r=p.f +q=r==null +if(!q===b.gaR()){if(q)r="" +if(r===b.gam()){r=p.r +q=r==null +if(!q===b.gaP()){s=q?"":r +s=s===b.gaM()}}}}return s}, +$ibY:1, +ga3(){return this.a}, +gaY(){return this.e}} +A.dv.prototype={ +$2(a,b){var s=this.b,r=this.a +s.a+=r.a +r.a="&" +r=A.ft(B.h,a,B.e,!0) +r=s.a+=r +if(b!=null&&b.length!==0){s.a=r+"=" +r=A.ft(B.h,b,B.e,!0) +s.a+=r}}, +$S:23} +A.du.prototype={ +$2(a,b){var s,r +if(b==null||typeof b=="string")this.a.$2(a,b) +else for(s=J.X(b),r=this.a;s.m();)r.$2(a,s.gn())}, +$S:7} +A.cQ.prototype={ +gb0(){var s,r,q,p,o=this,n=null,m=o.c +if(m==null){m=o.a +s=o.b[0]+1 +r=B.a.a_(m,"?",s) +q=m.length +if(r>=0){p=A.bj(m,r+1,q,B.f,!1,!1) +q=r}else p=n +m=o.c=new A.c3("data","",n,n,A.bj(m,s,q,B.o,!1,!1),p,n)}return m}, +h(a){var s=this.a +return this.b[0]===-1?"data:"+s:s}} +A.dI.prototype={ +$2(a,b){var s=this.a[a] +B.a7.bA(s,0,96,b) +return s}, +$S:24} +A.dJ.prototype={ +$3(a,b,c){var s,r +for(s=b.length,r=0;r>>0]=c}, +$S:8} +A.cc.prototype={ +gaO(){return this.c>0}, +gaQ(){return this.c>0&&this.d+10&&this.r>=this.a.length}, +ga3(){var s=this.w +return s==null?this.w=this.bg():s}, +bg(){var s,r=this,q=r.b +if(q<=0)return"" +s=q===4 +if(s&&B.a.u(r.a,"http"))return"http" +if(q===5&&B.a.u(r.a,"https"))return"https" +if(s&&B.a.u(r.a,"file"))return"file" +if(q===7&&B.a.u(r.a,"package"))return"package" +return B.a.j(r.a,0,q)}, +gb1(){var s=this.c,r=this.b+3 +return s>r?B.a.j(this.a,r,s-1):""}, +gai(){var s=this.c +return s>0?B.a.j(this.a,s,this.d):""}, +ga1(){var s,r=this +if(r.gaQ())return A.e1(B.a.j(r.a,r.d+1,r.e),null) +s=r.b +if(s===4&&B.a.u(r.a,"http"))return 80 +if(s===5&&B.a.u(r.a,"https"))return 443 +return 0}, +gaY(){return B.a.j(this.a,this.e,this.f)}, +gam(){var s=this.f,r=this.r +return s=this.r)return B.a6 +return new A.at(A.fa(this.gam()),t.h)}, +ao(a){var s,r,q,p,o,n=this,m=null,l=n.ga3(),k=l==="file",j=n.c,i=j>0?B.a.j(n.a,n.b+3,j):"",h=n.gaQ()?n.ga1():m +j=n.c +if(j>0)s=B.a.j(n.a,j,n.d) +else s=i.length!==0||h!=null||k?"":m +j=n.a +r=B.a.j(j,n.e,n.f) +if(!k)q=s!=null&&r.length!==0 +else q=!0 +if(q&&!B.a.u(r,"/"))r="/"+r +p=A.eq(m,0,0,a) +q=n.r +o=q1,n="dart:"+s,m=0;m") +m=new A.cw(A.eW(new A.ae(o,A.jR(),n),!0,n.i("J.E"))) +n=self +l=A.bZ(J.al(n.window.location)).gan().k(0,"search") +if(l!=null){k=m.aL(l) +if(k.length!==0){j=B.b.gbB(k).e +if(j!=null){n.window.location.assign($.br()+j) +s=1 +break}}}n=p.b +if(n!=null)A.ek(m).aj(n) +n=p.c +if(n!=null)A.ek(m).aj(n) +n=p.d +if(n!=null)A.ek(m).aj(n) +case 1:return A.fC(q,r)}}) +return A.fD($async$$1,r)}, +$S:9} +A.dk.prototype={ +gG(){var s,r=this,q=r.c +if(q===$){s=self.document.createElement("div") +s.setAttribute("role","listbox") +s.setAttribute("aria-expanded","false") +s.style.display="none" +s.classList.add("tt-menu") +s.appendChild(r.gaX()) +s.appendChild(r.gR()) +r.c!==$&&A.bq() +r.c=s +q=s}return q}, +gaX(){var s,r=this.d +if(r===$){s=self.document.createElement("div") +s.classList.add("enter-search-message") +this.d!==$&&A.bq() +this.d=s +r=s}return r}, +gR(){var s,r=this.e +if(r===$){s=self.document.createElement("div") +s.classList.add("tt-search-results") +this.e!==$&&A.bq() +this.e=s +r=s}return r}, +aj(a){var s,r,q,p=this +a.disabled=!1 +a.setAttribute("placeholder","Search API Docs") +s=self +s.document.addEventListener("keydown",A.a4(new A.dl(a))) +r=s.document.createElement("div") +r.classList.add("tt-wrapper") +a.replaceWith(r) +a.setAttribute("autocomplete","off") +a.setAttribute("spellcheck","false") +a.classList.add("tt-input") +r.appendChild(a) +r.appendChild(p.gG()) +p.b7(a) +if(J.ho(s.window.location.href,"search.html")){q=p.b.gan().k(0,"q") +if(q==null)return +q=B.k.H(q) +$.ez=$.dQ +p.bG(q,!0) +p.b8(q) +p.ah() +$.ez=10}}, +b8(a){var s,r,q,p,o,n=self,m=n.document.getElementById("dartdoc-main-content") +if(m==null)return +m.textContent="" +s=n.document.createElement("section") +s.classList.add("search-summary") +m.appendChild(s) +s=n.document.createElement("h2") +s.innerHTML="Search Results" +m.appendChild(s) +s=n.document.createElement("div") +s.classList.add("search-summary") +s.innerHTML=""+$.dQ+' results for "'+a+'"' +m.appendChild(s) +if($.bl.a!==0)for(n=$.bl.gb2(),r=A.E(n),n=new A.ao(J.X(n.a),n.b,r.i("ao<1,2>")),r=r.y[1];n.m();){q=n.a +if(q==null)q=r.a(q) +m.appendChild(q)}else{s=n.document.createElement("div") +s.classList.add("search-summary") +s.innerHTML='There was not a match for "'+a+'". Want to try searching from additional Dart-related sites? ' +p=A.bZ("https://dart.dev/search?cx=011220921317074318178%3A_yy-tmb5t_i&ie=UTF-8&hl=en&q=").ao(A.eU(["q",a],t.N,t.z)) +o=n.document.createElement("a") +o.setAttribute("href",p.gX()) +o.textContent="Search on dart.dev." +s.appendChild(o) +m.appendChild(s)}}, +ah(){var s=this.gG() +s.style.display="none" +s.setAttribute("aria-expanded","false") +return s}, +b_(a,b,c){var s,r,q,p,o=this +o.x=A.h([],t.M) +s=o.w +B.b.Z(s) +$.bl.Z(0) +o.gR().textContent="" +r=b.length +if(r===0){o.ah() +return}for(q=0;q10?'Press "Enter" key to see all '+r+" results":"" +o.gaX().textContent=r}, +bR(a,b){return this.b_(a,b,!1)}, +ag(a,b,c){var s,r,q,p=this +if(p.r===a&&!b)return +if(a.length===0){p.bR("",A.h([],t.M)) +return}s=p.a.aL(a) +r=s.length +$.dQ=r +q=$.ez +if(r>q)s=B.b.ba(s,0,q) +p.r=a +p.b_(a,s,c)}, +bG(a,b){return this.ag(a,!1,b)}, +aN(a){return this.ag(a,!1,!1)}, +bF(a,b){return this.ag(a,b,!1)}, +aI(a){var s,r=this +r.y=-1 +s=r.f +if(s!=null){a.value=s +r.f=null}r.ah()}, +b7(a){var s=this +a.addEventListener("focus",A.a4(new A.dm(s,a))) +a.addEventListener("blur",A.a4(new A.dn(s,a))) +a.addEventListener("input",A.a4(new A.dp(s,a))) +a.addEventListener("keydown",A.a4(new A.dq(s,a)))}} +A.dl.prototype={ +$1(a){var s +if(!J.F(a.key,"/"))return +s=self.document.activeElement +if(s==null||!B.aa.N(0,s.nodeName.toLowerCase())){a.preventDefault() +this.a.focus()}}, +$S:1} +A.dm.prototype={ +$1(a){this.a.bF(this.b.value,!0)}, +$S:1} +A.dn.prototype={ +$1(a){this.a.aI(this.b)}, +$S:1} +A.dp.prototype={ +$1(a){this.a.aN(this.b.value)}, +$S:1} +A.dq.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +if(!J.F(a.type,"keydown"))return +if(J.F(a.code,"Enter")){a.preventDefault() +s=e.a +r=s.y +if(r!==-1){q=s.w[r].getAttribute("data-href") +if(q!=null)self.window.location.assign($.br()+q) +return}else{p=B.k.H(s.r) +o=A.bZ($.br()+"search.html").ao(A.eU(["q",p],t.N,t.z)) +self.window.location.assign(o.gX()) +return}}s=e.a +r=s.w +n=r.length-1 +m=s.y +if(J.F(a.code,"ArrowUp")){l=s.y +if(l===-1)s.y=n +else s.y=l-1}else if(J.F(a.code,"ArrowDown")){l=s.y +if(l===n)s.y=-1 +else s.y=l+1}else if(J.F(a.code,"Escape"))s.aI(e.b) +else{if(s.f!=null){s.f=null +s.aN(e.b.value)}return}l=m!==-1 +if(l)r[m].classList.remove("tt-cursor") +k=s.y +if(k!==-1){j=r[k] +j.classList.add("tt-cursor") +r=s.y +if(r===0)s.gG().scrollTop=0 +else if(r===n)s.gG().scrollTop=s.gG().scrollHeight +else{i=j.offsetTop +h=s.gG().offsetHeight +if(i"+A.i(a.k(0,0))+""}, +$S:29} +A.dN.prototype={ +$1(a){var s=this.a +if(s!=null)s.classList.toggle("active") +s=this.b +if(s!=null)s.classList.toggle("active")}, +$S:1} +A.dO.prototype={ +$1(a){return this.b4(a)}, +b4(a){var s=0,r=A.fL(t.P),q,p=this,o,n +var $async$$1=A.fS(function(b,c){if(b===1)return A.fB(c,r) +while(true)switch(s){case 0:if(!J.F(a.status,200)){o=self.document.createElement("a") +o.href="https://dart.dev/tools/dart-doc#troubleshoot" +o.text="Failed to load sidebar. Visit dart.dev for help troubleshooting." +p.a.appendChild(o) +s=1 +break}s=3 +return A.fA(A.e4(a.text(),t.N),$async$$1) +case 3:n=c +o=self.document.createElement("div") +o.innerHTML=n +A.fR(p.b,o) +p.a.appendChild(o) +case 1:return A.fC(q,r)}}) +return A.fD($async$$1,r)}, +$S:9} +A.e0.prototype={ +$0(){var s=this.a,r=this.b +if(s.checked){r.setAttribute("class","dark-theme") +s.setAttribute("value","dark-theme") +self.window.localStorage.setItem("colorTheme","true")}else{r.setAttribute("class","light-theme") +s.setAttribute("value","light-theme") +self.window.localStorage.setItem("colorTheme","false")}}, +$S:0} +A.dY.prototype={ +$1(a){this.a.$0()}, +$S:1};(function aliases(){var s=J.a_.prototype +s.bb=s.h})();(function installTearOffs(){var s=hunkHelpers._static_2,r=hunkHelpers._static_1,q=hunkHelpers._static_0 +s(J,"j_","hL",30) +r(A,"jp","i2",3) +r(A,"jq","i3",3) +r(A,"jr","i4",3) +q(A,"fU","jj",0) +r(A,"jR","hD",31)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.inherit,q=hunkHelpers.inheritMany +r(A.k,null) +q(A.k,[A.ec,J.bC,J.am,A.n,A.bw,A.l,A.e,A.cL,A.an,A.ao,A.aK,A.bW,A.ba,A.aE,A.c8,A.aq,A.cO,A.cJ,A.aJ,A.bb,A.aa,A.O,A.cF,A.bG,A.cA,A.c9,A.cY,A.I,A.c5,A.dt,A.dr,A.c_,A.bv,A.c1,A.au,A.v,A.c0,A.cd,A.dC,A.cg,A.aS,A.by,A.bA,A.cv,A.dA,A.dx,A.d2,A.bQ,A.b0,A.d3,A.ct,A.u,A.ce,A.z,A.bi,A.cQ,A.cc,A.cI,A.cw,A.w,A.cq,A.dk]) +q(J.bC,[J.bD,J.aM,J.aP,J.aO,J.aQ,J.aN,J.ab]) +q(J.aP,[J.a_,J.o,A.bH,A.aV]) +q(J.a_,[J.bR,J.ar,J.Z]) +r(J.cB,J.o) +q(J.aN,[J.aL,J.bE]) +q(A.n,[A.a2,A.c,A.ad]) +q(A.a2,[A.a9,A.bk]) +r(A.b4,A.a9) +r(A.b3,A.bk) +r(A.M,A.b3) +q(A.l,[A.aR,A.Q,A.bF,A.bV,A.c2,A.bT,A.c4,A.bt,A.G,A.bX,A.bU,A.b1,A.bz]) +r(A.as,A.e) +r(A.bx,A.as) +q(A.c,[A.J,A.N]) +r(A.aI,A.ad) +q(A.J,[A.ae,A.c7]) +r(A.ca,A.ba) +r(A.cb,A.ca) +r(A.aG,A.aE) +r(A.aF,A.aq) +r(A.aH,A.aF) +r(A.aY,A.Q) +q(A.aa,[A.co,A.cp,A.cN,A.cC,A.dV,A.dX,A.d_,A.cZ,A.dD,A.d8,A.df,A.dJ,A.dK,A.e5,A.e6,A.cz,A.cy,A.dZ,A.dl,A.dm,A.dn,A.dp,A.dq,A.dG,A.dH,A.dL,A.dN,A.dO,A.dY]) +q(A.cN,[A.cM,A.aC]) +q(A.O,[A.ac,A.c6]) +q(A.cp,[A.dW,A.dE,A.dR,A.d9,A.cG,A.dw,A.cU,A.cR,A.cS,A.cT,A.dv,A.du,A.dI,A.cx]) +q(A.aV,[A.bI,A.ap]) +q(A.ap,[A.b6,A.b8]) +r(A.b7,A.b6) +r(A.aT,A.b7) +r(A.b9,A.b8) +r(A.aU,A.b9) +q(A.aT,[A.bJ,A.bK]) +q(A.aU,[A.bL,A.bM,A.bN,A.bO,A.bP,A.aW,A.aX]) +r(A.bc,A.c4) +q(A.co,[A.d0,A.d1,A.ds,A.d4,A.db,A.da,A.d7,A.d6,A.d5,A.de,A.dd,A.dc,A.dP,A.dj,A.dz,A.dy,A.dM,A.e_,A.e0]) +r(A.b2,A.c1) +r(A.di,A.dC) +r(A.bh,A.aS) +r(A.at,A.bh) +q(A.by,[A.cm,A.cr,A.cD]) +q(A.bA,[A.cn,A.cu,A.cE,A.cX,A.cW]) +r(A.cV,A.cr) +q(A.G,[A.aZ,A.bB]) +r(A.c3,A.bi) +q(A.d2,[A.m,A.A]) +s(A.as,A.bW) +s(A.bk,A.e) +s(A.b6,A.e) +s(A.b7,A.aK) +s(A.b8,A.e) +s(A.b9,A.aK) +s(A.bh,A.cg)})() +var v={typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{b:"int",t:"double",jN:"num",d:"String",js:"bool",u:"Null",f:"List",k:"Object",y:"Map"},mangledNames:{},types:["~()","u(p)","~(@)","~(~())","u(@)","u()","@()","~(d,@)","~(af,d,b)","Y(p)","@(@)","@(@,d)","@(d)","u(~())","u(@,a0)","~(b,@)","u(k,a0)","v<@>(@)","~(k?,k?)","y(y,d)","~(d,b)","~(d,b?)","b(b,b)","~(d,d?)","af(@,@)","~(A)","b(+item,matchPosition(w,A),+item,matchPosition(w,A))","w(+item,matchPosition(w,A))","d()","d(cH)","b(@,@)","w(y)"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti"),rttc:{"2;item,matchPosition":(a,b)=>c=>c instanceof A.cb&&a.b(c.a)&&b.b(c.b)}} +A.im(v.typeUniverse,JSON.parse('{"bR":"a_","ar":"a_","Z":"a_","bD":{"j":[]},"aM":{"u":[],"j":[]},"aP":{"p":[]},"a_":{"p":[]},"o":{"f":["1"],"c":["1"],"p":[]},"cB":{"o":["1"],"f":["1"],"c":["1"],"p":[]},"aN":{"t":[]},"aL":{"t":[],"b":[],"j":[]},"bE":{"t":[],"j":[]},"ab":{"d":[],"j":[]},"a2":{"n":["2"]},"a9":{"a2":["1","2"],"n":["2"],"n.E":"2"},"b4":{"a9":["1","2"],"a2":["1","2"],"c":["2"],"n":["2"],"n.E":"2"},"b3":{"e":["2"],"f":["2"],"a2":["1","2"],"c":["2"],"n":["2"]},"M":{"b3":["1","2"],"e":["2"],"f":["2"],"a2":["1","2"],"c":["2"],"n":["2"],"e.E":"2","n.E":"2"},"aR":{"l":[]},"bx":{"e":["b"],"f":["b"],"c":["b"],"e.E":"b"},"c":{"n":["1"]},"J":{"c":["1"],"n":["1"]},"ad":{"n":["2"],"n.E":"2"},"aI":{"ad":["1","2"],"c":["2"],"n":["2"],"n.E":"2"},"ae":{"J":["2"],"c":["2"],"n":["2"],"J.E":"2","n.E":"2"},"as":{"e":["1"],"f":["1"],"c":["1"]},"aE":{"y":["1","2"]},"aG":{"y":["1","2"]},"aF":{"aq":["1"],"c":["1"]},"aH":{"aq":["1"],"c":["1"]},"aY":{"Q":[],"l":[]},"bF":{"l":[]},"bV":{"l":[]},"bb":{"a0":[]},"c2":{"l":[]},"bT":{"l":[]},"ac":{"O":["1","2"],"y":["1","2"],"O.V":"2"},"N":{"c":["1"],"n":["1"],"n.E":"1"},"c9":{"eh":[],"cH":[]},"bH":{"p":[],"j":[]},"aV":{"p":[]},"bI":{"p":[],"j":[]},"ap":{"D":["1"],"p":[]},"aT":{"e":["t"],"f":["t"],"D":["t"],"c":["t"],"p":[]},"aU":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[]},"bJ":{"e":["t"],"f":["t"],"D":["t"],"c":["t"],"p":[],"j":[],"e.E":"t"},"bK":{"e":["t"],"f":["t"],"D":["t"],"c":["t"],"p":[],"j":[],"e.E":"t"},"bL":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"bM":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"bN":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"bO":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"bP":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"aW":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"aX":{"af":[],"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"c4":{"l":[]},"bc":{"Q":[],"l":[]},"v":{"Y":["1"]},"bv":{"l":[]},"b2":{"c1":["1"]},"e":{"f":["1"],"c":["1"]},"O":{"y":["1","2"]},"aS":{"y":["1","2"]},"at":{"y":["1","2"]},"aq":{"c":["1"]},"c6":{"O":["d","@"],"y":["d","@"],"O.V":"@"},"c7":{"J":["d"],"c":["d"],"n":["d"],"J.E":"d","n.E":"d"},"f":{"c":["1"]},"eh":{"cH":[]},"bt":{"l":[]},"Q":{"l":[]},"G":{"l":[]},"aZ":{"l":[]},"bB":{"l":[]},"bX":{"l":[]},"bU":{"l":[]},"b1":{"l":[]},"bz":{"l":[]},"bQ":{"l":[]},"b0":{"l":[]},"ce":{"a0":[]},"bi":{"bY":[]},"cc":{"bY":[]},"c3":{"bY":[]},"hG":{"f":["b"],"c":["b"]},"af":{"f":["b"],"c":["b"]},"i_":{"f":["b"],"c":["b"]},"hE":{"f":["b"],"c":["b"]},"hY":{"f":["b"],"c":["b"]},"hF":{"f":["b"],"c":["b"]},"hZ":{"f":["b"],"c":["b"]},"hB":{"f":["t"],"c":["t"]},"hC":{"f":["t"],"c":["t"]}}')) +A.il(v.typeUniverse,JSON.parse('{"aK":1,"bW":1,"as":1,"bk":2,"aE":2,"aF":1,"bG":1,"ap":1,"cd":1,"cg":2,"aS":2,"bh":2,"by":2,"bA":2}')) +var u={c:"Error handler must accept one Object or one Object and a StackTrace as arguments, and return a value of the returned future's type"} +var t=(function rtii(){var s=A.bo +return{U:s("c<@>"),Q:s("l"),Z:s("jZ"),M:s("o"),O:s("o

"),r:s("o<+item,matchPosition(w,A)>"),s:s("o"),b:s("o<@>"),t:s("o"),T:s("aM"),m:s("p"),g:s("Z"),p:s("D<@>"),j:s("f<@>"),a:s("y"),V:s("ae<+item,matchPosition(w,A),w>"),P:s("u"),K:s("k"),L:s("k_"),d:s("+()"),F:s("eh"),l:s("a0"),N:s("d"),k:s("j"),c:s("Q"),D:s("af"),o:s("ar"),h:s("at"),R:s("bY"),e:s("v<@>"),y:s("js"),i:s("t"),z:s("@"),v:s("@(k)"),C:s("@(k,a0)"),S:s("b"),A:s("0&*"),_:s("k*"),W:s("Y?"),X:s("k?"),H:s("jN")}})();(function constants(){var s=hunkHelpers.makeConstList +B.E=J.bC.prototype +B.b=J.o.prototype +B.c=J.aL.prototype +B.a=J.ab.prototype +B.F=J.Z.prototype +B.G=J.aP.prototype +B.a7=A.aX.prototype +B.r=J.bR.prototype +B.j=J.ar.prototype +B.ar=new A.cn() +B.t=new A.cm() +B.as=new A.cv() +B.k=new A.cu() +B.l=function getTagFallback(o) { + var s = Object.prototype.toString.call(o); + return s.substring(8, s.length - 1); +} +B.u=function() { + var toStringFunction = Object.prototype.toString; + function getTag(o) { + var s = toStringFunction.call(o); + return s.substring(8, s.length - 1); + } + function getUnknownTag(object, tag) { + if (/^HTML[A-Z].*Element$/.test(tag)) { + var name = toStringFunction.call(object); + if (name == "[object Object]") return null; + return "HTMLElement"; + } + } + function getUnknownTagGenericBrowser(object, tag) { + if (object instanceof HTMLElement) return "HTMLElement"; + return getUnknownTag(object, tag); + } + function prototypeForTag(tag) { + if (typeof window == "undefined") return null; + if (typeof window[tag] == "undefined") return null; + var constructor = window[tag]; + if (typeof constructor != "function") return null; + return constructor.prototype; + } + function discriminator(tag) { return null; } + var isBrowser = typeof HTMLElement == "function"; + return { + getTag: getTag, + getUnknownTag: isBrowser ? getUnknownTagGenericBrowser : getUnknownTag, + prototypeForTag: prototypeForTag, + discriminator: discriminator }; +} +B.z=function(getTagFallback) { + return function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("DumpRenderTree") >= 0) return hooks; + if (userAgent.indexOf("Chrome") >= 0) { + function confirm(p) { + return typeof window == "object" && window[p] && window[p].name == p; + } + if (confirm("Window") && confirm("HTMLElement")) return hooks; + } + hooks.getTag = getTagFallback; + }; +} +B.v=function(hooks) { + if (typeof dartExperimentalFixupGetTag != "function") return hooks; + hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag); +} +B.y=function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("Firefox") == -1) return hooks; + var getTag = hooks.getTag; + var quickMap = { + "BeforeUnloadEvent": "Event", + "DataTransfer": "Clipboard", + "GeoGeolocation": "Geolocation", + "Location": "!Location", + "WorkerMessageEvent": "MessageEvent", + "XMLDocument": "!Document"}; + function getTagFirefox(o) { + var tag = getTag(o); + return quickMap[tag] || tag; + } + hooks.getTag = getTagFirefox; +} +B.x=function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("Trident/") == -1) return hooks; + var getTag = hooks.getTag; + var quickMap = { + "BeforeUnloadEvent": "Event", + "DataTransfer": "Clipboard", + "HTMLDDElement": "HTMLElement", + "HTMLDTElement": "HTMLElement", + "HTMLPhraseElement": "HTMLElement", + "Position": "Geoposition" + }; + function getTagIE(o) { + var tag = getTag(o); + var newTag = quickMap[tag]; + if (newTag) return newTag; + if (tag == "Object") { + if (window.DataView && (o instanceof window.DataView)) return "DataView"; + } + return tag; + } + function prototypeForTagIE(tag) { + var constructor = window[tag]; + if (constructor == null) return null; + return constructor.prototype; + } + hooks.getTag = getTagIE; + hooks.prototypeForTag = prototypeForTagIE; +} +B.w=function(hooks) { + var getTag = hooks.getTag; + var prototypeForTag = hooks.prototypeForTag; + function getTagFixed(o) { + var tag = getTag(o); + if (tag == "Document") { + if (!!o.xmlVersion) return "!Document"; + return "!HTMLDocument"; + } + return tag; + } + function prototypeForTagFixed(tag) { + if (tag == "Document") return null; + return prototypeForTag(tag); + } + hooks.getTag = getTagFixed; + hooks.prototypeForTag = prototypeForTagFixed; +} +B.m=function(hooks) { return hooks; } + +B.A=new A.cD() +B.B=new A.bQ() +B.i=new A.cL() +B.e=new A.cV() +B.C=new A.cX() +B.d=new A.di() +B.D=new A.ce() +B.H=new A.cE(null) +B.a4=A.h(s([0,0,32722,12287,65534,34815,65534,18431]),t.t) +B.f=A.h(s([0,0,65490,45055,65535,34815,65534,18431]),t.t) +B.a5=A.h(s([0,0,32754,11263,65534,34815,65534,18431]),t.t) +B.n=A.h(s([0,0,26624,1023,65534,2047,65534,2047]),t.t) +B.o=A.h(s([0,0,65490,12287,65535,34815,65534,18431]),t.t) +B.I=new A.m(0,"accessor") +B.J=new A.m(1,"constant") +B.U=new A.m(2,"constructor") +B.Y=new A.m(3,"class_") +B.Z=new A.m(4,"dynamic") +B.a_=new A.m(5,"enum_") +B.a0=new A.m(6,"extension") +B.a1=new A.m(7,"extensionType") +B.a2=new A.m(8,"function") +B.a3=new A.m(9,"library") +B.K=new A.m(10,"method") +B.L=new A.m(11,"mixin") +B.M=new A.m(12,"never") +B.N=new A.m(13,"package") +B.O=new A.m(14,"parameter") +B.P=new A.m(15,"prefix") +B.Q=new A.m(16,"property") +B.R=new A.m(17,"sdk") +B.S=new A.m(18,"topic") +B.T=new A.m(19,"topLevelConstant") +B.V=new A.m(20,"topLevelProperty") +B.W=new A.m(21,"typedef") +B.X=new A.m(22,"typeParameter") +B.p=A.h(s([B.I,B.J,B.U,B.Y,B.Z,B.a_,B.a0,B.a1,B.a2,B.a3,B.K,B.L,B.M,B.N,B.O,B.P,B.Q,B.R,B.S,B.T,B.V,B.W,B.X]),A.bo("o")) +B.q=A.h(s([0,0,32776,33792,1,10240,0,0]),t.t) +B.h=A.h(s([0,0,24576,1023,65534,34815,65534,18431]),t.t) +B.a8={} +B.a6=new A.aG(B.a8,[],A.bo("aG")) +B.a9={input:0,textarea:1} +B.aa=new A.aH(B.a9,2,A.bo("aH")) +B.ab=A.K("jW") +B.ac=A.K("jX") +B.ad=A.K("hB") +B.ae=A.K("hC") +B.af=A.K("hE") +B.ag=A.K("hF") +B.ah=A.K("hG") +B.ai=A.K("k") +B.aj=A.K("hY") +B.ak=A.K("hZ") +B.al=A.K("i_") +B.am=A.K("af") +B.an=new A.cW(!1) +B.ao=new A.A(0,"isExactly") +B.ap=new A.A(1,"startsWith") +B.aq=new A.A(2,"contains")})();(function staticFields(){$.dg=null +$.ak=A.h([],A.bo("o")) +$.eX=null +$.eO=null +$.eN=null +$.fW=null +$.fT=null +$.h0=null +$.dS=null +$.e2=null +$.eD=null +$.dh=A.h([],A.bo("o?>")) +$.aw=null +$.bm=null +$.bn=null +$.ew=!1 +$.r=B.d +$.ez=10 +$.dQ=0 +$.bl=A.ee(t.N,t.m)})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal +s($,"jY","eH",()=>A.jz("_$dart_dartClosure")) +s($,"k1","h3",()=>A.R(A.cP({ +toString:function(){return"$receiver$"}}))) +s($,"k2","h4",()=>A.R(A.cP({$method$:null, +toString:function(){return"$receiver$"}}))) +s($,"k3","h5",()=>A.R(A.cP(null))) +s($,"k4","h6",()=>A.R(function(){var $argumentsExpr$="$arguments$" +try{null.$method$($argumentsExpr$)}catch(r){return r.message}}())) +s($,"k7","h9",()=>A.R(A.cP(void 0))) +s($,"k8","ha",()=>A.R(function(){var $argumentsExpr$="$arguments$" +try{(void 0).$method$($argumentsExpr$)}catch(r){return r.message}}())) +s($,"k6","h8",()=>A.R(A.f6(null))) +s($,"k5","h7",()=>A.R(function(){try{null.$method$}catch(r){return r.message}}())) +s($,"ka","hc",()=>A.R(A.f6(void 0))) +s($,"k9","hb",()=>A.R(function(){try{(void 0).$method$}catch(r){return r.message}}())) +s($,"kb","eI",()=>A.i1()) +s($,"kh","hi",()=>A.hQ(4096)) +s($,"kf","hg",()=>new A.dz().$0()) +s($,"kg","hh",()=>new A.dy().$0()) +s($,"kc","hd",()=>A.hP(A.iQ(A.h([-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-2,-2,-2,-2,-2,62,-2,62,-2,63,52,53,54,55,56,57,58,59,60,61,-2,-2,-2,-1,-2,-2,-2,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-2,-2,-2,-2,63,-2,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-2,-2,-2,-2,-2],t.t)))) +s($,"kd","he",()=>A.f_("^[\\-\\.0-9A-Z_a-z~]*$",!0)) +s($,"ke","hf",()=>typeof URLSearchParams=="function") +s($,"kt","e7",()=>A.fZ(B.ai)) +s($,"kv","hj",()=>A.iP()) +s($,"ku","br",()=>new A.dM().$0())})();(function nativeSupport(){!function(){var s=function(a){var m={} +m[a]=1 +return Object.keys(hunkHelpers.convertToFastObject(m))[0]} +v.getIsolateTag=function(a){return s("___dart_"+a+v.isolateTag)} +var r="___dart_isolate_tags_" +var q=Object[r]||(Object[r]=Object.create(null)) +var p="_ZxYxX" +for(var o=0;;o++){var n=s(p+"_"+o+"_") +if(!(n in q)){q[n]=1 +v.isolateTag=n +break}}v.dispatchPropertyName=v.getIsolateTag("dispatch_record")}() +hunkHelpers.setOrUpdateInterceptorsByTag({ArrayBuffer:A.bH,ArrayBufferView:A.aV,DataView:A.bI,Float32Array:A.bJ,Float64Array:A.bK,Int16Array:A.bL,Int32Array:A.bM,Int8Array:A.bN,Uint16Array:A.bO,Uint32Array:A.bP,Uint8ClampedArray:A.aW,CanvasPixelArray:A.aW,Uint8Array:A.aX}) +hunkHelpers.setOrUpdateLeafTags({ArrayBuffer:true,ArrayBufferView:false,DataView:true,Float32Array:true,Float64Array:true,Int16Array:true,Int32Array:true,Int8Array:true,Uint16Array:true,Uint32Array:true,Uint8ClampedArray:true,CanvasPixelArray:true,Uint8Array:false}) +A.ap.$nativeSuperclassTag="ArrayBufferView" +A.b6.$nativeSuperclassTag="ArrayBufferView" +A.b7.$nativeSuperclassTag="ArrayBufferView" +A.aT.$nativeSuperclassTag="ArrayBufferView" +A.b8.$nativeSuperclassTag="ArrayBufferView" +A.b9.$nativeSuperclassTag="ArrayBufferView" +A.aU.$nativeSuperclassTag="ArrayBufferView"})() +Function.prototype.$0=function(){return this()} +Function.prototype.$1=function(a){return this(a)} +Function.prototype.$2=function(a,b){return this(a,b)} +Function.prototype.$1$1=function(a){return this(a)} +Function.prototype.$3=function(a,b,c){return this(a,b,c)} +Function.prototype.$4=function(a,b,c,d){return this(a,b,c,d)} +Function.prototype.$1$0=function(){return this()} +convertAllToFastObject(w) +convertToFastObject($);(function(a){if(typeof document==="undefined"){a(null) +return}if(typeof document.currentScript!="undefined"){a(document.currentScript) +return}var s=document.scripts +function onLoad(b){for(var q=0;q","JsLinkedHashMap_values_closure","LinkedHashMapKeyIterable.length","LinkedHashMapKeyIterable.iterator","LinkedHashMapKeyIterator","LinkedHashMapKeyIterator.current","LinkedHashMapKeyIterator.moveNext","initHooks.","_Record.toString","_Record._toString","StringBuffer._writeString","_Record._fieldKeys","_Record._computeFieldKeys","_Record2._getFieldValues","_Record2.==","_Record._sameShape","_Record2.hashCode","JSSyntaxRegExp.toString","JSSyntaxRegExp._nativeGlobalVersion","JSSyntaxRegExp._execGlobal","_MatchImplementation.end","_MatchImplementation.[]","_AllMatchesIterator.current","_AllMatchesIterator.moveNext","JSSyntaxRegExp.isUnicode","NativeByteBuffer.runtimeType","NativeByteData.runtimeType","NativeTypedArray.length","NativeTypedArrayOfDouble.[]","NativeTypedArrayOfDouble.[]=","NativeTypedArrayOfInt.[]=","NativeFloat32List.runtimeType","NativeFloat64List.runtimeType","NativeInt16List.runtimeType","NativeInt16List.[]","NativeInt32List.runtimeType","NativeInt32List.[]","NativeInt8List.runtimeType","NativeInt8List.[]","NativeUint16List.runtimeType","NativeUint16List.[]","NativeUint32List.runtimeType","NativeUint32List.[]","NativeUint8ClampedList.runtimeType","NativeUint8ClampedList.length","NativeUint8ClampedList.[]","NativeUint8List.runtimeType","NativeUint8List.length","NativeUint8List.[]","Rti._eval","Rti._bind","_Type.toString","_Error.toString","_AsyncRun._initializeScheduleImmediate.internalCallback","_AsyncRun._initializeScheduleImmediate.","_AsyncRun._scheduleImmediateJsOverride.internalCallback","_AsyncRun._scheduleImmediateWithSetImmediate.internalCallback","_TimerImpl.internalCallback","_AsyncAwaitCompleter.complete","_AsyncAwaitCompleter.completeError","_awaitOnObject.","_wrapJsFunctionForAsync.","AsyncError.toString","_Completer.completeError","_Completer.completeError[function-entry$1]","_AsyncCompleter.complete","_FutureListener.matchesErrorTest","_FutureListener.handleError","_Future._setChained","_Future.then","_Future.then[function-entry$1]","_Future._thenAwait","_Future._setErrorObject","_Future._cloneResult","_Future._addListener","_Future._prependListeners","_Future._removeListeners","_Future._reverseListeners","_Future._chainForeignFuture","_Future._completeWithValue","_Future._completeError","_Future._asyncComplete","_Future._asyncCompleteWithValue","_Future._chainFuture","_Future._asyncCompleteError","_Future._addListener.","_Future._prependListeners.","_Future._chainForeignFuture.","_Future._chainCoreFutureAsync.","_Future._asyncCompleteWithValue.","_Future._asyncCompleteError.","_Future._propagateToListeners.handleWhenCompleteCallback","_FutureListener.handleWhenComplete","_Future._propagateToListeners.handleWhenCompleteCallback.","_Future._propagateToListeners.handleValueCallback","_FutureListener.handleValue","_Future._propagateToListeners.handleError","_FutureListener.hasErrorCallback","_rootHandleError.","_RootZone.runGuarded","_RootZone.bindCallbackGuarded","_RootZone.run","_RootZone.run[function-entry$1]","_RootZone.runUnary","_RootZone.runUnary[function-entry$2]","_RootZone.runBinary","_RootZone.runBinary[function-entry$3]","_RootZone.registerBinaryCallback","_RootZone.registerBinaryCallback[function-entry$1]","_RootZone.bindCallbackGuarded.","ListBase.iterator","ListBase.elementAt","ListBase.cast","ListBase.fillRange","ListBase.toString","MapBase.forEach","MapBase.length","MapBase.toString","MapBase.mapToString.","_UnmodifiableMapMixin.[]=","MapView.[]","MapView.[]=","MapView.length","MapView.toString","SetBase.toString","SetBase.elementAt","_JsonMap.[]","_JsonMap.length","_JsonMap.keys","_JsonMap.[]=","_JsonMap.containsKey","_JsonMap.forEach","_JsonMap._computeKeys","_JsonMap._upgrade","_JsonMap._process","_JsonMapKeyIterable.length","_JsonMapKeyIterable.elementAt","_JsonMapKeyIterable.iterator","_Utf8Decoder._decoder.","_Utf8Decoder._decoderNonfatal.","Base64Codec.normalize","HtmlEscapeMode.toString","HtmlEscape.convert","HtmlEscape._convert","JsonCodec.decode","JsonCodec.decoder","Utf8Encoder.convert","NativeUint8List.sublist","_Utf8Encoder._writeReplacementCharacter","_Utf8Encoder._writeSurrogate","_Utf8Encoder._fillBuffer","Utf8Decoder.convert","_Utf8Decoder._convertGeneral","_Utf8Decoder._decodeRecursive","_Utf8Decoder.decodeGeneral","_Uri._makeQueryFromParameters.","_Enum.toString","Error.stackTrace","AssertionError.toString","ArgumentError._errorName","ArgumentError._errorExplanation","ArgumentError.toString","RangeError.invalidValue","RangeError._errorName","RangeError._errorExplanation","IndexError.invalidValue","IndexError._errorName","IndexError._errorExplanation","UnsupportedError.toString","UnimplementedError.toString","StateError.toString","ConcurrentModificationError.toString","OutOfMemoryError.toString","OutOfMemoryError.stackTrace","StackOverflowError.toString","StackOverflowError.stackTrace","_Exception.toString","FormatException.toString","Iterable.cast","Iterable.length","Iterable.elementAt","Iterable.toString","Null.hashCode","Null.toString","Object.hashCode","Object.==","Object.toString","Object.runtimeType","_StringStackTrace.toString","StringBuffer.length","StringBuffer.toString","Uri.splitQueryString.","Uri._parseIPv4Address.error","Uri.parseIPv6Address.error","Uri.parseIPv6Address.parseHex","_Uri._text","_Uri._initializeText","_Uri._writeAuthority","_Uri.hashCode","_Uri.queryParameters","_Uri.userInfo","_Uri.host","_Uri.port","_Uri.query","_Uri.fragment","_Uri.replace","_Uri.isAbsolute","_Uri.hasAuthority","_Uri.hasQuery","_Uri.hasFragment","_Uri.toString","_Uri.==","_Uri._makeQueryFromParametersDefault.writeParameter","_Uri._makeQueryFromParametersDefault.","UriData.uri","UriData._computeUri","UriData.toString","_createTables.build","_createTables.setChars","_createTables.setRange","_SimpleUri.hasAuthority","_SimpleUri.hasPort","_SimpleUri.hasQuery","_SimpleUri.hasFragment","_SimpleUri.isAbsolute","_SimpleUri.scheme","_SimpleUri._computeScheme","_SimpleUri.userInfo","_SimpleUri.host","_SimpleUri.port","_SimpleUri.path","_SimpleUri.query","_SimpleUri.fragment","_SimpleUri.queryParameters","_SimpleUri.replace","_SimpleUri.hashCode","_SimpleUri.==","_SimpleUri.toString","promiseToFuture.","NullRejectionException.toString","Kind._enumToString","Kind.toString","_MatchPosition._enumToString","Index.find","JSArray.map","Index.find.score","Index.find.","IndexItem._scope","_htmlBase.","init.disableSearch","print","init.","init_closure","Index.fromJson","ListBase.map","_Search.listBox","_Search.moreResults","_Search.searchResults","_Search.initialize","_Search.showSearchResultPage","HTMLElement|constructor#section","HTMLHeadingElement|constructor#h2","JsLinkedHashMap.isNotEmpty","_Search.hideSuggestions","_Search.updateSuggestions","_Search.showSuggestions","_Search.showEnterMessage","_Search.updateSuggestions[function-entry$2]","_Search.handleSearch","_Search.handleSearch[function-entry$1$isSearchPage]","_Search.handleSearch[function-entry$1]","_Search.handleSearch[function-entry$1$forceUpdate]","_Search.clearSearch","_Search.setEventListeners","_Search.initialize.","ElementExtension.acceptsInput","_Search.setEventListeners.","_createSuggestion.","_highlight.","_initializeToggles.","_loadSidebar.","_loadSidebar_closure","init.switchThemes","DART_CLOSURE_PROPERTY_NAME","TypeErrorDecoder.noSuchMethodPattern","TypeErrorDecoder.notClosurePattern","TypeErrorDecoder.nullCallPattern","TypeErrorDecoder.nullLiteralCallPattern","TypeErrorDecoder.undefinedCallPattern","TypeErrorDecoder.undefinedLiteralCallPattern","TypeErrorDecoder.nullPropertyPattern","TypeErrorDecoder.nullLiteralPropertyPattern","TypeErrorDecoder.undefinedPropertyPattern","TypeErrorDecoder.undefinedLiteralPropertyPattern","_AsyncRun._scheduleImmediateClosure","_Utf8Decoder._reusableBuffer","_Utf8Decoder._decoder","_Utf8Decoder._decoderNonfatal","_Base64Decoder._inverseAlphabet","_Uri._needsNoEncoding","_Uri._useURLSearchParams","_hashSeed","_scannerTables","_htmlBase","","$intercepted$$eq$Iu","$intercepted$__$asx","$intercepted$___$ax","$intercepted$cast10$ax","$intercepted$compareTo1$ns","$intercepted$contains1$asx","$intercepted$elementAt1$ax","$intercepted$get$hashCode$IJavaScriptBigIntJavaScriptSymbolLegacyJavaScriptObjectabnsu","$intercepted$get$iterator$ax","$intercepted$get$length$asx","$intercepted$get$runtimeType$Ibdinsux","$intercepted$toString0$IJavaScriptBigIntJavaScriptFunctionJavaScriptSymbolLegacyJavaScriptObjectabnsux","ArrayIterator","Base64Codec","Base64Encoder","BoundClosure","ByteBuffer","ByteData","CastIterator","CastList","Closure","Closure0Args","Closure2Args","CodeUnits","Codec","ConstantMap","ConstantSet","ConstantStringMap","ConstantStringSet","Converter","EfficientLengthIterable","EfficientLengthMappedIterable","EnclosedBy","Encoding","Error","ExceptionAndStackTrace","FixedLengthListMixin","Float32List","Float64List","Function","Future","HtmlEscape","HtmlEscapeMode","Index","IndexError","IndexItem","Index_find_closure","Index_find_score","Int16List","Int32List","Int8List","Interceptor","Iterable","JSArray","JSBool","JSInt","JSNull","JSNumNotInt","JSNumber","JSObject","JSString","JSSyntaxRegExp","JSUnmodifiableArray","JS_CONST","JavaScriptBigInt","JavaScriptFunction","JavaScriptIndexingBehavior","JavaScriptObject","JavaScriptSymbol","JsLinkedHashMap","JsonCodec","JsonDecoder","Kind","LateError","LegacyJavaScriptObject","LinkedHashMapCell","LinkedHashMapKeyIterable","List","ListBase","ListIterable","ListIterator","Map","MapBase","MapBase_mapToString_closure","MapView","MappedIterator","MappedListIterable","Match","NativeByteBuffer","NativeByteData","NativeFloat32List","NativeFloat64List","NativeInt16List","NativeInt32List","NativeInt8List","NativeTypedArray","NativeTypedArrayOfDouble","NativeTypedArrayOfInt","NativeTypedData","NativeUint16List","NativeUint32List","NativeUint8ClampedList","Null","NullError","NullRejectionException","NullThrownFromJavaScriptException","Object","OutOfMemoryError","PlainJavaScriptObject","RangeError","Record","RegExpMatch","Rti","RuntimeError","SentinelValue","SetBase","StackOverflowError","StackTrace","StaticClosure","String","StringBuffer","TearOffClosure","TrustedGetRuntimeType","TypeError","TypeErrorDecoder","Uint16List","Uint32List","Uint8ClampedList","Uint8List","UnknownJavaScriptObject","UnknownJsTypeError","UnmodifiableListBase","UnmodifiableListMixin","UnmodifiableMapView","Uri","UriData","Uri__parseIPv4Address_error","Uri_parseIPv6Address_error","Uri_parseIPv6Address_parseHex","Uri_splitQueryString_closure","Utf8Codec","Utf8Decoder","Utf8Encoder","_#fromMap#tearOff","_AllMatchesIterator","_AsyncAwaitCompleter","_AsyncCallbackEntry","_AsyncCompleter","_AsyncRun__initializeScheduleImmediate_closure","_AsyncRun__initializeScheduleImmediate_internalCallback","_AsyncRun__scheduleImmediateJsOverride_internalCallback","_AsyncRun__scheduleImmediateWithSetImmediate_internalCallback","_CastIterableBase","_CastListBase","_Completer","_CyclicInitializationError","_DataUri","_EfficientLengthCastIterable","_Enum","_Error","_Exception","_FunctionParameters","_Future","_FutureListener","_Future__addListener_closure","_Future__asyncCompleteError_closure","_Future__asyncCompleteWithValue_closure","_Future__chainCoreFutureAsync_closure","_Future__chainForeignFuture_closure","_Future__prependListeners_closure","_Future__propagateToListeners_handleError","_Future__propagateToListeners_handleValueCallback","_Future__propagateToListeners_handleWhenCompleteCallback","_Future__propagateToListeners_handleWhenCompleteCallback_closure","_JS_INTEROP_INTERCEPTOR_TAG","_JsonMap","_JsonMapKeyIterable","_KeysOrValuesOrElementsIterator","_MatchImplementation","_MatchPosition","_NativeTypedArrayOfDouble&NativeTypedArray&ListMixin","_NativeTypedArrayOfDouble&NativeTypedArray&ListMixin&FixedLengthListMixin","_NativeTypedArrayOfInt&NativeTypedArray&ListMixin","_NativeTypedArrayOfInt&NativeTypedArray&ListMixin&FixedLengthListMixin","_Record","_Record2","_Record_2_item_matchPosition","_RootZone","_RootZone_bindCallbackGuarded_closure","_Search_initialize_closure","_Search_setEventListeners_closure","_SimpleUri","_StackTrace","_StreamIterator","_StringStackTrace","_TimerImpl_internalCallback","_TypeError","_UnmodifiableMapMixin","_UnmodifiableMapView&MapView&_UnmodifiableMapMixin","_Uri","_Uri__makeQueryFromParametersDefault_closure","_Uri__makeQueryFromParametersDefault_writeParameter","_Uri__makeQueryFromParameters_closure","_Utf8Decoder","_Utf8Decoder__decoderNonfatal_closure","_Utf8Decoder__decoder_closure","_Utf8Encoder","_Zone","__CastListBase&_CastIterableBase&ListMixin","_awaitOnObject_closure","_canonicalRecipeJoin","_canonicalRecipeJoinNamed","_canonicalizeScheme","_chainCoreFutureAsync","_chainCoreFutureSync","_checkPadding","_checkZoneID","_compareAny","_computeFieldNamed","_computeSignatureFunctionNewRti","_computedFieldKeys","_containerMap","_convertInterceptedUint8List","_create1","_createFutureOrRti","_createGenericFunctionRti","_createQuestionRti","_createStarRti","_createSuggestion_closure","_createTables_build","_createTables_setChars","_createTables_setRange","_current","_decoder","_decoderNonfatal","_defaultPort","_empty","_escapeChar","_escapeScheme","_fail","_getCanonicalRecipe","_getFutureFromFutureOr","_getQuestionFromStar","_hexCharPairToByte","_highlight_closure","_htmlBase_closure","_identityHashCodeProperty","_initializeScheduleImmediate","_initializeToggles_closure","_installTypeTests","_interceptorFieldNameCache","_interceptors_JSArray__compareAny$closure","_internal","_inverseAlphabet","_isAlphabeticCharacter","_isInCallbackLoop","_isUnionOfFunctionType","_lastCallback","_lastPriorityCallback","_literal","_lookupBindingRti","_lookupFunctionRti","_lookupFutureOrRti","_lookupGenericFunctionParameterRti","_lookupGenericFunctionRti","_lookupInterfaceRti","_lookupQuestionRti","_lookupRecordRti","_lookupStarRti","_lookupTerminalRti","_makeFragment","_makeHost","_makeNativeUint8List","_makePath","_makePort","_makeQuery","_makeQueryFromParameters","_makeQueryFromParametersDefault","_makeScheme","_makeUserInfo","_mayContainDotSegments","_needsNoEncoding","_nextCallback","_normalize","_normalizeEscape","_normalizeOrSubstring","_normalizePath","_normalizeRegName","_normalizeRelativePath","_normalizeZoneID","_objectTypeNameNewRti","_of","_parse","_parseIPv4Address","_propagateToListeners","_receiverFieldNameCache","_removeDotSegments","_reusableBuffer","_rootHandleError_closure","_scheduleImmediateClosure","_scheduleImmediateJsOverride","_scheduleImmediateWithSetImmediate","_scheduleImmediateWithTimer","_stringFromUint8List","_suggestionLength","_suggestionLimit","_throw","_throwUnmodifiable","_uriDecode","_uriEncode","_useTextDecoder","_useURLSearchParams","_wrapJsFunctionForAsync_closure","_writeAll","addErasedTypes","addRules","allocateGrowable","alternateTagFunction","async__AsyncRun__scheduleImmediateJsOverride$closure","async__AsyncRun__scheduleImmediateWithSetImmediate$closure","async__AsyncRun__scheduleImmediateWithTimer$closure","async___startMicrotaskLoop$closure","bind","bool","checkNotNegative","checkValidRange","collectArray","combine","compose","create","cspForwardCall","cspForwardInterceptedCall","current","defaultStackTrace","dispatchRecordsForInstanceTags","double","errorDescription","eval","evalInEnvironment","evalRecipe","extractPattern","extractStackTrace","filled","findErasedType","findRule","finish","fixed","forType","forwardCallTo","forwardInterceptedCallTo","from","fromCharCodes","fromMessage","fromTearOff","getInterceptor$","getInterceptor$asx","getInterceptor$ax","getInterceptor$ns","getTagFunction","growable","handleArguments","handleDigit","handleExtendedOperations","handleIdentifier","handleTypeArguments","hash","indexToType","initHooks_closure","initNativeDispatchFlag","init_disableSearch","init_switchThemes","int","interceptorOf","interceptorsForUncacheableTags","iterableToFullString","iterableToShortString","makeNative","mapToString","markFixed","markFixedList","newArrayOrEmpty","noElement","noSuchMethodPattern","notClosurePattern","nullCallPattern","nullLiteralCallPattern","nullLiteralPropertyPattern","nullPropertyPattern","num","objectAssign","objectTypeName","of","parse","parseIPv6Address","parseInt","promiseToFuture_closure","prototypeForTagFunction","provokeCallErrorOn","provokePropertyErrorOn","range","receiverOf","safeToString","search_IndexItem___fromMap_tearOff$closure","splitQueryString","stringFromCharCode","stringFromNativeUint8List","throwWithStackTrace","toStringVisiting","toType","toTypes","toTypesNamed","undefinedCallPattern","undefinedLiteralCallPattern","undefinedLiteralPropertyPattern","undefinedPropertyPattern","value","withLength","$add","$eq","$index","$indexSet","$mod","$mul","bindCallbackGuarded","call","cast","clear","clearSearch","compareTo","complete","completeError","contains","containsKey","convert","dart:_interceptors#_replaceSomeNullsWithUndefined","dart:_interceptors#_shrBothPositive","dart:_interceptors#_shrOtherPositive","dart:_interceptors#_shrReceiverPositive","dart:_interceptors#_tdivFast","dart:_interceptors#_tdivSlow","dart:_internal#_source","dart:_js_helper#_addHashTableEntry","dart:_js_helper#_computeFieldKeys","dart:_js_helper#_execGlobal","dart:_js_helper#_fieldKeys","dart:_js_helper#_getFieldValues","dart:_js_helper#_keys","dart:_js_helper#_modified","dart:_js_helper#_nativeGlobalVersion","dart:_js_helper#_newHashTable","dart:_js_helper#_newLinkedCell","dart:_js_helper#_toString","dart:_rti#_bind","dart:_rti#_eval","dart:async#_addListener","dart:async#_asyncComplete","dart:async#_asyncCompleteError","dart:async#_asyncCompleteWithValue","dart:async#_chainForeignFuture","dart:async#_chainFuture","dart:async#_cloneResult","dart:async#_completeError","dart:async#_completeWithValue","dart:async#_prependListeners","dart:async#_removeListeners","dart:async#_reverseListeners","dart:async#_setChained","dart:async#_setErrorObject","dart:async#_thenAwait","dart:convert#_computeKeys","dart:convert#_convert","dart:convert#_convertGeneral","dart:convert#_decodeRecursive","dart:convert#_fillBuffer","dart:convert#_process","dart:convert#_upgrade","dart:convert#_writeReplacementCharacter","dart:convert#_writeSurrogate","dart:core#_computeScheme","dart:core#_enumToString","dart:core#_errorExplanation","dart:core#_errorName","dart:core#_text","decode","decodeGeneral","decoder","elementAt","end","fillRange","find","first","fold","forEach","fragment","handleError","handleSearch","hasAuthority","hasFragment","hasPort","hasQuery","hashCode","hideSuggestions","host","indexOf","initialize","internalComputeHashCode","internalFindBucketIndex","internalGet","invalidValue","isAbsolute","isNegative","iterator","join","keys","last","length","listBox","matchTypeError","matchesErrorTest","moreResults","moveNext","normalize","package:dartdoc/src/search.dart#_scope","path","port","query","queryParameters","registerBinaryCallback","replace","replaceRange","run","runBinary","runGuarded","runUnary","runtimeType","scheme","searchResults","setEventListeners","showSearchResultPage","sort","stackTrace","startsWith","sublist","substring","then","toString","updateSuggestions","uri","userInfo","values","Rti._unstar","isTopType","_Universe._canonicalRecipeOfStar","_Universe._canonicalRecipeOfQuestion","_Universe._canonicalRecipeOfFutureOr","_Universe._canonicalRecipeOfBinding","_Universe._canonicalRecipeOfGenericFunction","Error._stringToSafeString","_Utf8Encoder.withBufferSize","_Utf8Encoder._createBuffer","-","ElementExtension|get#acceptsInput","JSPromiseToFuture|get#toDart","_","_asCheck","_callMethodUnchecked0","_callMethodUnchecked1","_callMethodUnchecked2","_canonicalRecipeOfBinding","_canonicalRecipeOfFunction","_canonicalRecipeOfFunctionParameters","_canonicalRecipeOfFutureOr","_canonicalRecipeOfGenericFunction","_canonicalRecipeOfInterface","_canonicalRecipeOfQuestion","_canonicalRecipeOfRecord","_canonicalRecipeOfStar","_chainSource","_cloneResult","_combineSurrogatePair","_completeError","_computeIdentityHashCodeProperty","_computeUri","_containsTableEntry","_createBindingRti","_createBuffer","_createFunctionRti","_createGenericFunctionParameterRti","_createInterfaceRti","_createLength","_createRecordRti","_createTerminalRti","_createTimer","_equalFields","_error","_errorTest","_failedAsCheckError","_findRule","_future","_getBindCache","_getBindingArguments","_getBindingBase","_getBucket","_getCachedRuntimeType","_getEvalCache","_getFunctionParameters","_getFutureOrArgument","_getGenericFunctionBase","_getGenericFunctionBounds","_getGenericFunctionParameterIndex","_getInterfaceName","_getInterfaceTypeArguments","_getIsSubtypeCache","_getKind","_getNamed","_getOptionalPositional","_getPrimary","_getProperty","_getQuestionArgument","_getRecordFields","_getRecordPartialShapeTag","_getRequiredPositional","_getReturnType","_getRti","_getRuntimeTypeOfArrayAsRti","_getSpecializedTestResource","_getStarArgument","_getTableBucket","_getTableCell","_hasError","_hasProperty","_hasTimer","_initializeText","_installRti","_isChained","_isCheck","_isClosure","_isComplete","_isDartObject","_isDotAll","_isFile","_isGeneralDelimiter","_isHttp","_isHttps","_isLeadSurrogate","_isMultiLine","_isPackage","_isRegNameChar","_isSchemeCharacter","_isSubtypeUncached","_isTrailSurrogate","_isUnicode","_isUnreservedChar","_isUpgraded","_isZoneIDChar","_keys","_keysFromIndex","_lookupAnyRti","_lookupDynamicRti","_lookupErasedRti","_lookupFutureRti","_lookupNeverRti","_lookupVoidRti","_mayAddListener","_mayComplete","_name","_newJavaScriptObject","_objectToString","_ofArray","_onError","_onValue","_parseRecipe","_processed","_recipeJoin","_removeListeners","_sameShape","_scheduleImmediate","_setAsCheckFunction","_setBindCache","_setCachedRuntimeType","_setCanonicalRecipe","_setError","_setErrorObject","_setEvalCache","_setIsTestFunction","_setKind","_setNamed","_setOptionalPositional","_setPrecomputed1","_setPrimary","_setPropertyUnchecked","_setRequiredPositional","_setRest","_setSpecializedTestResource","_setValue","_shapeTag","_startsWithData","_stringToSafeString","_target","_theUniverse","_unstar","_upgradedMap","_whenCompleteAction","_writeAuthority","_writeOne","_writeString","_zone","allocate","arrayAt","arrayConcat","arrayLength","arraySplice","asBool","asInt","asRti","asRtiOrNull","asString","as_Type","castFrom","charCodeAt","checkGrowable","checkMutable","checkString","codeUnits","collectNamed","compare","constructorNameFallback","convertSingle","decodeQueryComponent","defineProperty","dispatchRecordExtension","dispatchRecordIndexability","dispatchRecordInterceptor","dispatchRecordProto","encode","encodeQueryComponent","environment","erasedTypes","evalCache","evalTypeVariable","fieldADI","fromCharCode","fromJson","fromList","fromMap","future","getDispatchProperty","getIndex","getLegacyErasedRecipe","getLength","getProperty","getRuntimeTypeOfInterceptorNotArray","group","handleNamedGroup","handleOptionalGroup","handleStartRecord","handleUncaughtError","handleValue","handleWhenComplete","handlesComplete","handlesValue","hasErrorCallback","hasErrorTest","hasMatch","hasScheme","hash2","hash3","hash4","identityHashCode","instanceTypeName","interceptorFieldName","interceptorsByTag","internalSet","isArray","isDigit","isEmpty","isIdentical","isNaN","isNotEmpty","isUnicode","jsHasOwnProperty","jsonDecode","jsonEncodeNative","leafTags","listToString","lookupSupertype","lookupTypeVariable","makeListFixedLength","map","mapGet","mapSet","markGrowable","notSimple","objectKeys","objectToHumanReadableString","parseHexByte","pop","position","printToConsole","propertyGet","provokeCallErrorOnNull","provokeCallErrorOnUndefined","provokePropertyErrorOnNull","provokePropertyErrorOnUndefined","push","pushStackFrame","receiverFieldName","recipe","removeSelectedElement","replaceAllMapped","setToString","sharedEmptyArray","shouldChain","showEnterMessage","showSuggestions","splitMapJoin","stack","start","staticInteropGlobalContext","stringConcatUnchecked","stringIndexOf","stringIndexOfStringUnchecked","stringReplaceRangeUnchecked","stringSafeToString","stringSplit","suggestionElements","suggestionsInfo","thenAwait","toGenericFunctionParameter","toList","toLowerCase","toUpperCase","tryParse","tryStringifyException","typeRules","typed","universe","unmangleGlobalNameIfPreservedAnyways","unmodifiable","withBufferSize","write","writeAll","writeCharCode"], + "mappings": "A;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoFAA,UA6BEA,uBAEFA,C;EASAC,qBApDSA,EACiBA;AAsDxBA,eACMA,WACFA;GAzDGA,EACiBA,uBA6DxBA,eAhB6BA;AAkB3BA,UAAoBA,QAnBaA,EA0ErCA;AAtDIA,UAAmBA,QAsDvBA;AArDsBA;AAClBA,SACEA,QAvB+BA,EA0ErCA;IAxEmCA,OA8B7BA,UAAMA,+BAA4CA,IAD3BA,aAOTA;WAEdA;QAuCGC;WCwkFAC,QADgBA;GDjkFjBF,IA7CNA,WAAyBA,QAkC3BA;AA9BgBA;AACdA,WAAyBA,QA6B3BA;AAvBEA,wBAIEA,QAHcA,EAsBlBA;AAjBcA;AACZA,WAEEA,QAIcA,EAUlBA;wBAPIA,QAHcA,EAUlBA;AALEA,4BAUOG;WCwkFAD,QADgBA;ACpsFvBC,kCFuHOH;AAFLA,QAEKA,EACTA,CADEA,QAAOA,EACTA,C;EGvKUI,MAWNA,qBACEA,UAAiBA;AAEnBA,OAAOA,KAAqBA,eAC9BA,C;EAmCQC,MAGNA,OACEA,UAAMA;AAERA,OAsCEA,IANiCC,yBA/BrCD,C;EAUQE,MAGNA,OACEA,UAAMA;AAERA,OAqBEA,IANiCD,yBAdrCC,C;EAgBQC,MACJA,YAAsCA,mBAA8BA,C;EAKzDC,ICjCmCC;ADsChDD,QACFA,C;EA2gBWC,MACTA,gBACFA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EEtkBQC,uBACKA,KACTA,OAUJA,yCAPAA;AADEA,OANFA,yCAOAA,C;EC2CEC,IAKEA;AACJA,QAAgBA,QAIlBA;AAHgBA;AACdA,iBAAgCA,WAElCA;AADEA,QACFA,C;EAuDaC,MACFA;AACAA;AACPA,cACFA,C;EAEWC,IACFA;AACAA;AACPA,kCACFA,C;EA6iBAC,QAIAA,QACFA,C;EAwSKC,IACHA;OAAoBA,GAAiBA,YAArCA,gBAAoBA,GACIA,IAAsBA,QAGhDA;AADEA,QACFA,C;EClrBUC,UACOA,YACXA,OAsBJA,2CAnBAA;AADEA,OAGFA,2CAFAA,C;EAsqBkBC,GAAeA,OC1djCA,sBD0dyDA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EEx+B5CC,GACXA,UAAMA,uCACRA,C;ERmDKC,WShFOA,mBACLA;ATiFPA,WAAuBA,QAGzBA;AAF+BA,mBAE/BA,C;EAuBKC,MACHA;eDV0CA;ACYxCA,WAAoBA,QAGxBA,CADEA,OAAcA,QAChBA,C;CAEOC,IACLA;sBAAqBA,QAmBvBA;AAlBEA,uBACEA,SAEEA,UAeNA,MAbSA,UACLA,YAYJA;KAXSA,UACLA,aAUJA;KATSA,WACLA,YAQJA;AANeA;AAKbA,QACFA,C;EA2HaC,aAELA;WAUFA;GATUA;AACZA;OAIAA,QACFA,C;EAKYC,+EAGIA;AAIdA,WAIEA,QA0DJA;GAxDyBA;AACvBA,YACEA,WAEEA,OAAOA,cAoDbA;AAhDaA,IAFLA,UAEFA,qBAgDNA;AA9CIA,QA8CJA,CAxCEA,aACEA,UAAiBA;AAEnBA,mBAEEA,OAAOA,cAmCXA;AA/BEA;GAoBsBA;OACWA,YAA/BA,QACsBA,0BAElBA,QAORA,CADEA,OAAOA,aACTA,C;EAgEcC,IACZA,OAAOA,OACTA,C;EAOcC,IACRA;AUmeCA,iBVneuBA,GAG1BA,WU+dMA,aV3bVA;AAjCoBA;AAGPA,QAFgBA,SACAA,cCvLtBA,GACHA;ADyMAA,wBAAwCA,QAY5CA;GAXsBA;AAClBA,4BACwBA;AACtBA,4CAEEA,QAMRA,EADEA,OU6bKA,IADGA,aV3bVA,C;EAecC,IACkCA,wCAC5CA,OAAOA,OAcXA;AAZEA,sBACEA,OAixEGC,iBAtwEPD;AAPWA,qBAAPA,aAOJA;AAJWA,qBAAPA,eAIJA;AADEA,sBAvBcA,WAwBhBA,C;EAyFcE,QAGZA;AACSA,uBAD8CA,QACrDA,wCAcJA;AAXEA,sBACkBA;AAOZA;mDAENA,QACFA,C;CAEcC,IACZA;SACEA,YACEA,OAAOA,sBAYbA;AATIA,eACaA;AAGXA,OAAOA,qBADcA,oCAM3BA,EADEA,UAAiBA,2BACnBA,C;EA4cmBC,WACHA;AACdA,WAAqBA,WAEvBA;AADEA,OAAOA,OACTA,C;EAyBIC,MACJA;YAAmBA,OOv5BnBA,oBPk6BFA;AAVyBA;AAIvBA,aACEA,OAAkBA,aAKtBA;AADEA,OAAkBA,SACpBA,C;EAKMC,QAIJA,OACEA,OAAkBA,uBAYtBA;AAVEA,WAIEA,YACEA,OAAkBA,qBAKxBA;AADEA,OOv7BAA,wBPw7BFA,C;EAOcC,IACZA,OOh8BAA,uBPi8BFA,C;CAiCAC,IAEEA,OAAOA,KADSA,cAElBA,C;EAGAC,MACEA;WOpiCIA;;;APwiCJA,+BAKEA;eAgBKC;AAPPD,QACFA,C;EAGAC,GAGEA,gBAAOA,eACTA,C;EAOMC,IAEJA,MAAyBA,MAC3BA,C;EAEMC,MACJA,MAAyBA,SAC3BA,C;EA2BAC,IACEA,UAAMA,QACRA,C;CAqJSC,IAULA;AAIUA,OAJAA;AAUNA;AACJA,WAA2BA;AAKXA;AACIA;AACTA;AACEA;AACEA;AAiBfA,OArHFA,mRAyGmBA,4EAcnBA,C;EAMcC,IAmDZA,OAReA;gEAQRA,GACTA,C;EAkCcC,IASZA,OAPeA,gEAORA,GACTA,C;EA8CAC,8BACuCA;AADvCA,4BAGiCA,UAHjCA,AAGuEA,C;EA+ClEC,IAGLA,WACEA,OA7BFA,WA2CFA;AAVWA,qBAAPA,eAA6BA,GAUjCA;AANEA,uBAA6CA,QAM/CA;AAJEA,wBACEA,OAAOA,QAAmBA,eAG9BA;AADEA,OAAOA,OACTA,C;EAKOC,MACKA,gBACeA;AAKzBA,QACFA,C;EAEOC,IACLA;qBACEA,QAqGJA;GAjGgBA;gDAMCA;AAKKA;AACMA,2BAKtBA,mBAEIA,OAAOA,OACCA,KAAsBA,8BA6ExCA;mBA1EgDA;AAAtCA,OAAOA,OA5HfA,WAsMFA,EArEEA,2BAE8BA;AACMA;AACFA;AACOA;AACNA;AACOA;AACJA;AACOA;AACNA;AACOA;AAC/BA;AAAbA,WACEA,OAAOA,OAAmBA,UAwDhCA;KAvDwBA;AAAbA,YAMEA;AAAPA,cAA0BA,UAiDhCA,MAhDwBA,iBACPA,cACAA,cACAA,cACAA,cACAA,cACAA,cACAA,aACXA,OAAOA,OA9JXA,WAsMFA,CAlCIA,OAAOA,OAtITA,kCAwKFA,CA9BEA,4BCruDOA,oDDuuDHA,OO9oCEA,UP0qCRA;yDAMSA;AAvBLA,OAAOA,OOjkDTA,wCP+jDcA,mCAmBhBA,CAbEA,gEAIEA,gDACEA,OOlqCEA,UP0qCRA;AADEA,QACFA,C;EAqBWC,IACTA;qBACEA,QAAiBA,EAiBrBA;AAfEA,WAAuBA,OAoBvBA,WALFA;GAduBA;AACrBA,WAAmBA,QAarBA;AAKEA;AAVAA;AAIAA,QACFA,C;EAwBIC,IAEFA,WAAoBA,OAAcA,MAMpCA;AALEA,sBACEA,OAAkBA,OAItBA;AADEA,OAAcA,MAChBA,C;EAsBAC,mBA+CSA;AA1CPA,iBACoCA;AACEA;AACpCA,OAkCKA,UAhCPA,QACFA,C;EAuCAC,cAEEA,iBAEIA,OAAOA,MAWbA;OATMA,OAAOA,OASbA;OAPMA,OAAOA,SAObA;OALMA,OAAOA,WAKbA;OAHMA,OAAOA,aAGbA,CADEA,UW54DAC,gEX64DFD,C;EAIAE,aAEiBA;AACfA,OAAkCA,QAIpCA;AAHaA;;AAEXA,QACFA,C;EAEAC,MAOUA;AACRA,oBAEYA;AADVA;UAGUA;AADVA;UAGUA;AADVA;UAGUA;AADVA;UAGUA;AAVZA;QAYIA,OAAJA,WACEA,OAAOA,SA0BXA;AAXEA,uEAAOA,UAWTA,C;EA4BSC,iCAcDA,QAGAA,QAEAA,QACqBA,SAGrBA,QAGAA,QAEAA,OAKUA,OACKA,QACAA,SAOfA;EAAiEA;AA6B/DA,kBAoZEA,kCAlZFA,cAkbRA;eA/a0CA;AAkBDA,IAZjCA,+CAEIA;;;;;AAmBNA;AAAJA,KAEMA;;AAWgBA,KAJlBA;;AAOJA,eAAgCA,QAAhCA,QACiBA;AAGfA,0BAESA;AASaA;AAAUA,SAZdA;GAMKA;AAGvBA,YACEA,KAEMA;OAIRA;OAS+BA;OAKQA;AAKzCA,QACFA,C;EAEOC,QAELA,sBAEEA,QAoBJA;AAlBEA,uBAEEA,KAEEA;AAGFA,yDAAOA,QAWXA,CADEA,6CACFA,C;EAEOC;AAiBLA,sBAEIA,4DAAOA,KAuEbA;OA7DMA,8DAAOA,KA6DbA;OAnDMA,kEAAOA,KAmDbA;OAzCMA,sEAAOA,KAyCbA;OA/BMA,0EAAOA,KA+BbA;OArBMA,8EAAOA,KAqBbA;QAVMA,0EAAOA,KAUbA,E;EAIOC,UAELA,KACEA,OAAOA,WA4BXA;AAxBIA,OAAOA,MAHGA,cA2BdA,C;EAEOC;AAMLA,sBAIIA,UAwZNA;OAtZMA,qEAAOA,OA+EbA;OApEMA,wEAAOA,OAoEbA;OAzDMA,4EAAOA,OAyDbA;OA9CMA,gFAAOA,OA8CbA;OAnCMA,oFAAOA,OAmCbA;OAxBMA,wFAAOA,OAwBbA;QAbMA;;2BAAOA,OAabA,E;EAEOC,QAEEA;IA8ILA,UAA+BA;IAJ/BA,UAA4BA;GAxIlBA;AAIHA;AAAPA,QAwBJA,C;EAwBFC,IACEA,OAAeA,OACjBA,C;EAoESC,MACLA,OU1/DeC,MAHOC,cA8BRF,MV+9DuBA,MACvCA,C;EAIOG,IAAoCA,QAAQA,EAASA,C;EAIrDC,IAAuCA,QAAQA,EAAYA,C;EAYpDC,IA/CdA,iDAiDsBA,KAChBA;OACsBA,YAA1BA,YACaA;YAETA,QAINA,CADEA,UAAMA,wCACRA,C;EA4IGC,IACHA,UAaAA,YAZFA,C;EAoEOC,IAELA,OAAOA,CADgBA,iBAEzBA,C;EC3nFAC,IAE6BA,iBAAdA,aAIYA,GA/HlBA;AAgIPA,YAlFAC,yBFOYC;AE2EQF,QFpCeE,EEuGrCF,IAlEgCA,GAjIvBA;AAkIPA,WAAyBA,QAiE3BA;GA7HyBG,kBAtEhBA;AAuIPH,YACuCA,GAApBA;AACjBA,eAGuBA,GA5IlBA;AA6IHA,YA/FJC,yBFOYC;AEwFYF,QFjDWE,EEuGrCF,IArDgCA,GA9IvBA;AA+IHA,WAAyBA,QAoD/BA;GA7HyBG,kBAtEhBA;KAqJPH,WAQEA,WAsCJA;GAnCgBA;GAEHA;AAEXA,YACWA;CACGA;AAxHdC,yBFOYC;AEkHVF,QF3EiCE,EEuGrCF,CAzBEA,aACcA;AACZA,QAuBJA,CApBEA,YACyBA;AAlIzBC,sBA6JoBD,0BFtJRI;AE2HVJ,QFpFiCI,EEuGrCJ,CAhBEA,WACEA,OAAOA,SAeXA;AAZEA,WAEEA,UAAMA;IA7GMA,qBAmHWA;AAjJzBC,sBA6JoBD,0BFtJRI;AE0IVJ,QFnGiCI,EEuGrCJ,MAFIA,OAAOA,SAEXA,C;EAYAK,MACcA;AAlKZJ,yBFOYI,6BE4JCA;AAEbA,QACFA,C;EAEAC,IAGEA,OAAOA,uBACTA,C;EAEAC,eACoBA;AAGTA,IApJKA,oBAoJZA,cAIJA;KAFIA,OAAOA,mBAEXA,C;EAgBKC,YACSA,IAAwBA,MAGtCA;;AADEA,MACFA,C;EAGKC,GACHA;AAAiCA;AACAA;AAEjCA;GAzLuBA;AA+LRA;AAEfA,+BACgBA;AACJA;AACVA,WAAyBA,QAAzBA,QACYA;AACyBA,GAAvBA;AACZA,YAEeA,UADUA;AAEvBA,YAlONR,yBFOYQ;iBEuOZA,WAAyBA,QAAzBA,QACYA;gBACNA,YA9RCA;;;;;YAuSTA,C;EAmCKC,GAESA,mBAAcA;AAiBlBA,QACJA,GALIA,MAAsBA,GAFtBA,MADsBA,GAAtBA,MAAsBA,GADtBA,MAAsBA,GADtBA,MAAsBA,GAHtBA,KAFmCA,CACvCA,IAA+CA;AAqBnDA,2DACqBA;AACnBA,wBAGmCA;AAA/BA,oBACFA,WAAoBA,QAApBA,QACoBA;AAClBA,wBAmBSA,cAZFA;GACOA;GACEA;AAELA;AAEbA;AAEAA,gBACNA,C;EAEAC,MAEEA,OADeA,OAEjBA,C;EWhJQC,aAGeA,WAEPA,KAGGA;AAEjBA,WAGEA,WAsBJA;AAnBEA,SACEA,QAkBJA;AANWA,QAFWA,QAElBA,sBAMJA;AADEA,OAAOA,IACTA,C;EChOSC,uIAUQA;AAgBbA,uBAA+CA,QAKjDA;AADEA,UAAMA,+BADgBA,sBAExBA,C;ECIGC,QAzGIC;AA2GLD,WAOJA,C;EAgCAE,4BAGMA,QACFA,OAAOA,uCAGXA;AADEA,QACFA,C;EA8EOC,IAAkCA,QAAMA,C;EAExCC,UDQLC;KCQAD,WDN2BA;WAASA;GA/DgCA;GAAhEA;AE6UaA,QDvQFA,KAAWA,eCuQTA,IDtQFA;QDpEXA,QE0UaA,QDnQJA,KAAWA;AACxBA,6BACFA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AE+qBME;EAvjBDC,IACsBA,QAM3BA,C;EA+iBwBD,IAClBA,uBAA6CA,C;EA6JzCE,IAA+BA,OA8BUA,iBA9ByBA,C;CAuvBvEC,QACHA,mBACEA,UAAMA,UAEVA,C;EASIC,QACFA;AAAgCA,gBAGoBA;KAHpBA;AAAhCA,KAIEA,UAAMA;AAGRA,QACFA,C;;;;;;;;;;;;;;;;;;;;ENrrDaC,MAKOA,OAwiHoBA;AAriHpCA,gBAdIA,WAkjHyBC,QAniH/BD,C;EAEWE,MA2xEPA,OAuwCkCA;AA3hHpCA,gBAxBIA,gBAkjHyBC,MAzhH/BD,C;EAuEYE,WA+8GmBC;AA78G7BD,uBACEA,OAAOA,MA+8GoBA,GA58G/BA;AADEA,qBACFA,C;EAqJcE,IAGZA,QAmzGmCA,GAlzGrCA,C;EAsIEC,IASFA,OAAiBA,MAzBOA,mBA0B1BA,C;EAuEIC,6DAylG6BH;AAvlG/BG,8CAMIA,SAoFNA;WAggGiCA;AAhlGvBA;AACJA,SAAuDA,SA+E7DA;AA9EMA,OAAiBA,aA8EvBA;WAggGiCA;AA1kGvBA;AACJA,SAAuDA,SAyE7DA;AAxEMA,OAAiBA,aAwEvBA;WAggGiCA;AApkGvBA;AACJA,SAAuDA,SAmE7DA;AAlEMA,OAAiBA,aAkEvBA;WAhaWA;AAiWmCA;AAExCA,SAEEA,SA2DRA;AA1DMA,OAAiBA,UAyjGgBC,KA//FvCD;YAggGiCE;AAtjGLF;IAhWjBA;AAmWDA;AACJA,gBACyDA,SAiD/DA;AAhDMA,OAAiBA,YAgDvBA;YA7b6CG;IAiDlCH;AAkWDA;AACJA,SAAmDA,SAyCzDA;AAxCMA,OAAiBA,YAwCvBA;YAggGiCI;AApiGvBJ;IA/UCA;AAkVDA;AAEJA,gBAEEA,SA6BRA;AA5BMA,OAAiBA,YA4BvBA;YAzWWA;KA44GgCA;AAzjGjCA;IAshGuBK;AAphGLL;AACtBA,gBAC+CA,SAkBrDA;AAjBMA,OAAiBA,eAiBvBA;YA6/FiCM;AAxgG3BN,QAAmBA,SAWzBA;IAqiGkDA;AA1iG5CA,WAAsBA,SAK5BA;AAJMA,QAINA;QAFMA,UAAMA,yDAEZA,C;EAEQO,UAIkBA,eA6hGiBA;AA5hGzCA,yBAy/F+BA;AAv/FRA;AACrBA,SACYA;OAIdA,YACFA,C;EAEQC,UAKkBA,mBA4gGiBA;AA3gGzCA,0BA6gGgDA;;GArCjBA;AAp+FRA;AACrBA,SACYA;AAEZA,oBAGFA,YACFA,C;EAEoBC,UAKdA,SAzQAA,sBAQAA,KAqQAA,iBAnPAA,KAsPAA;AACJA,uBAEiDA,QAQnDA;AAhSMC;CAQSD;CAQAA;CAiBAA;AA8PbA,QACFA,C;CAcQE,SAEYA;AAElBA,QACFA,C;EAKKC,WAEaA;AAChBA,YACEA,sBACEA,OAAOA,OAabA;AAJMA,OA65F2BA,MAz5FjCA,CADEA,WACFA,C;EAOIC,MACFA;AAAQA,4BA5CNA,KAiDaA;AACXA,WAAiBA,QAIvBA,CADEA,OAAOA,OACTA,C;EAKIC,IAUOA,iBAxEPA,GAwEAA,aASJA;AAg5FoCA,oBAr5FhCA,OAAOA,OAKXA;AADEA,OAAOA,KADWA,QAEpBA,C;EAIIC,WAiBQA,EAAwBA;AAIlCA,WAAiBA,QAUnBA;iCALIA,QAKJA;AADEA,QACFA,C;CAKIC,IAEuCA,OAD/BA;AACVA,wBACFA,C;EAOIC,WACgBA,gBACNA;AACZA,WAAmBA,QAErBA;AADEA,OAAOA,SACTA,C;EAGIC,0BAxIAA,mDA2JMA,iBAGUA,MA9ZMA,eA+ZFA;;AAGtBA,QACFA,C;EASIC,aACUA,UAqzFoCA;AAnzFhDA,uBAtZiBA,QAzBOpB;AA8bjBqB;AAZLD,QAGJA,CADEA,QACFA,C;EAOKC,IAEHA,YADUA,OAEZA,C;EAyDIC,IACFA;AEz/BgBC,qBFy/BMD,aE1/BhBC,IACuCA,OFkgC/CD;AA1FyBA,gBAxKrBE;AA2PFF,WAAyBA,QAO3BA;AANaA,YAETA,OAisFiCA,OAjsFLA,EAIhCA;AA4tFoCA,oBA9tFNA,OAxDlBA,OA0DZA;AADEA,OAAOA,OACTA,C;EAIKG,IAKUA,OAr0BTA;AAi0BJA,gBA/zBMC,YAg0BRD,C;EAQME,IA5nBKA,WAbKA;AA+oBdA,SACEA,QA/0BIC,GAk3BND,WA9BFA;AAHgCA,QAzhBNA;AA2gBXA,GAr0BTA;AAo1BJA,gBAl1BMD,YAo1BRC,C;EAEIE,qBAEoBA;AACtBA,SAAiBA,UAcnBA;AA5iBmBA,QAHOnE,cAoiBpBmE,MAAkBA;AAMtBA,gBA/hBiBA,QAXOC,gBA2iBQD,MAAkBA;AAGlDA,OA3iBiBA,MAHOnE,kBA+iB1BmE,C;CAGKE,IACHA,OAAOA,KA1hBUA,MAzBO/B,oBAojB1B+B,C;EAuDKC,IAGCA;AAGKA,WAAPA,oBA4DJA;AA++EIC;KAA2CA;AAziF7CD,KACEA,OAAOA,aAyDXA;GA19BmDA;AAm6BjDA,SACEA,OAAOA,aAsDXA;AA7CEA,SACEA,OAAOA,aA4CXA;SAghFiCtC;GAHAI;AAnjF/BkC,SACEA,OAAOA,aAqCXA;;;;;AAjCEA,WACEA,OAAOA,UAgCXA;AA7BEA,aA4iFqC9B;AAriF/B8B,IA13BGA,iBA7FHA;AA+9BFA,WACEA,OAAOA,aAafA;AAVMA,OAAOA,aAUbA,OANSA,WAkCKA,QAm/EyB5B,IA34G5B8B;AAw3BPF,OAAOA,uBAIXA,CAFEA,OAAOA,aAETA,C;CAGKG,QAzkCMA,CAVHA;AAqlCNA,aACFA,C;EA8BQC;AA28EJH;KAh8E+CG;AALjDA;;KAMIA;AAFGA,YAznCEA,CATHA;AAyoCNA,aACFA,C;EAEKC,WAq9E4BvC;AAn9ExBuC,uCAGEA,SACmBA,kBAk9EG3C,KAj9EC2C,eAi9EDzC;AAt9E/ByC,QAOFA,C;EAGKC,IAGCA;AACJA,WAAoBA,OAAOA,OAG7BA;AADEA,OAAOA,MAvvBiBA,cAsvBRA,YAElBA,C;EAQKC,IACHA,WAAoBA,QAMtBA;AADEA,OA/pCSA,IAslHsBC,OAt7EjCD,C;EAGKE,IAGCA;AACJA,WAAoBA,OAAOA,OAY7BA;GA9lCeA;AA4lCKA,iBA3hBhBA,GAwhBAA,YAKJA;AADEA,kBACFA,C;EAIKC,IAGCA;AACJA,WAAoBA,OAAOA,OAoB7BA;AAdEA,sBAAgDA,QAclDA;AAw6EoCA,oBAp7ENA,QAY9BA;GA1nCeA;AAwnCKA,iBAvjBhBA,GAojBAA,YAKJA;AADEA,kBACFA,C;EAIQC,IAGFA;AACJA,YAEMA,WACFA,QAWNA,MAruCWA,UAmuCiCA,QAE5CA;AADEA,SACFA,C;EAIQC,IAGFA;AACJA,WACEA,QAGJA;KAjvCWA,UA+uCiCA,QAE5CA;AADEA,SACFA,C;EAQMC,MACJA,UALkBA,KADMA,OAAgBA,cAO1CA,C;EAqBgBC,MAIZA,OAHiCA,mBAEFA,IADfA,kDAKlBA,C;EAOAC,oCAAqEA,C;CAE7DC,MACNA,OAHFA,uBAGuCA,UACvCA,C;EAaGC,IA/yCMA,cAmlHsBnD,QAGAJ;AApyE/BuD,QAoyE+BrD,SAlyEnBqD,MA35BYA,iBAzZfA,IAqzCXA,C;EAIKC,IACHA,cACFA,C;EAIQC,IACNA,WAAoBA,QAStBA;AADEA,UAAiBA,gBACnBA,C;EAIKC,IACHA,QACFA,C;EAIQC,IACNA,QACFA,C;EAIKC,IACHA,QACFA,C;EAIKC,IACHA,oBACFA,C;EAMKC,IACHA,UAAoBA,QAGtBA;AAFEA,UAAqBA,QAEvBA;AADEA,UAAiBA,cACnBA,C;EAIMC,IACJA,UAAoBA,QAUtBA;AATEA,UAAqBA,QASvBA;AAREA,WAKEA,QAGJA;AADEA,UAAiBA,cACnBA,C;EAIMC,IACJA,UAAoBA,QAItBA;AAHEA,UAAqBA,QAGvBA;AAFEA,WAAoBA,QAEtBA;AADEA,UAAiBA,eACnBA,C;EAIOC,IACLA,sBAAoBA,QAEtBA;AADEA,UAAiBA,gBACnBA,C;EAIQC,IACNA,sBAAoBA,QAStBA;AAREA,WAKEA,QAGJA;AADEA,UAAiBA,gBACnBA,C;EAIQC,IACNA,sBAAoBA,QAGtBA;AAFEA,WAAoBA,QAEtBA;AADEA,UAAiBA,iBACnBA,C;EAIKC,IACHA,4CAEFA,C;EAIIC,6CACkBA,QAEtBA;AADEA,UAAiBA,aACnBA,C;EAIKC,6CACiBA,QAStBA;AAREA,WAKEA,QAGJA;AADEA,UAAiBA,aACnBA,C;EAIKC,6CACiBA,QAGtBA;AAFEA,WAAoBA,QAEtBA;AADEA,UAAiBA,cACnBA,C;EAIKC,IACHA,yBACFA,C;EAIIC,IACFA,sBAAoBA,QAEtBA;AADEA,UAAiBA,aACnBA,C;EAIKC,IACHA,sBAAoBA,QAStBA;AAREA,WAKEA,QAGJA;AADEA,UAAiBA,aACnBA,C;EAIKC,IACHA,sBAAoBA,QAGtBA;AAFEA,WAAoBA,QAEtBA;AADEA,UAAiBA,cACnBA,C;EAIKC,IACHA,yBACFA,C;EAIOC,IACLA,sBAAuBA,QAEzBA;AADEA,UAAiBA,gBACnBA,C;EAIQC,IACNA,sBAAuBA,QASzBA;AAREA,WAKEA,QAGJA;AADEA,UAAiBA,gBACnBA,C;EAIQC,IACNA,sBAAuBA,QAGzBA;AAFEA,WAAoBA,QAEtBA;AADEA,UAAiBA,iBACnBA,C;EAEOC,MACEA;AACPA,qBA2mEyCA,QA3mEzCA,WAEMA,UAskEyBA;AAnkE/BA,QACFA,C;EAEOC,yBA+jEgCvE,MA34G5BuE;AAo1CTA,UAEEA,UAAaA,aAmBjBA;GAskE2CA;AAkBrCA;GAlBqCA;AAjlEzCA,mCACEA;AAEAA,SAAqBA;AAChBA,QA0iEwBA;AAziE7BA,gBAwiEmCA,IAriEnCA,IAEFA,aACFA,C;EAEOC,WAEEA;AAGPA,iBA+jEyCA;AA7jEvCA,YAC2BA;UAEWA;IAEVA;AAC5BA,gBACEA;+BAKFA,cAEEA,eAAsBA,GAA8BA;IA4gEzBA;GAHA9E;AA9BcmC,wCA2CI4C;KA3CJ5C;AAz+DzC2C,MAEoBA,yBAItBA,YA3B0BA;IA95CevE;IA0ElCuE;GAqJLA;GAiwGqCA;GAzvGrCA;GAyvGqCA;GAvuGrCA;GAuuGqCA;AAxhEjBA;AAIxBA,iCAEMA,WA++DyBA;AA1+D/BA,QACEA;AAEAA,4BAEMA,WAq+DuBA;AAj+D7BA,OAGFA,QACEA;AAEAA,8BACEA;IAq9D6BA,MAn9D3BA;AAEeA,QAs9DUA,eADMA,IA/8DnCA,OAGFA,eAEuCA;aAOvCA,wBACFA,C;CAYOE,yBAo7D0BhF;AAj7D/BgF,SAA4BA,cA4E9BA;AA3EEA,SAA6BA,eA2E/BA;AA1EEA,SAA0BA,YA0E5BA;AAzEEA,SAA2BA,aAyE7BA;AAxEEA,SAAyBA,WAwE3BA;AAtEEA,SAWIA,OATSA,KA46DkBpF,KAx2DjCoF;AAvDEA,aA+5D+BtC;AA75DlBsC;GA05DkBhF;AAp5D7BgF,sCA+CJA,CA5CEA,SAEEA,kBAAmBA,KAk5DUlF,SAx2DjCkF;AAvCEA,UAESA,QA44D4B5E;AAl4DnB4E,GA7hDTA;AA+hDPA,QAHcA,iCA4BlBA,CAtBEA,UACEA,OAAOA,SAqBXA;AAlBEA,UACEA,OAAOA,cAiBXA;AAdEA,UAGEA,OAAOA,MAm3DsBxE,MAz2GtBwE,GAigDXA;AAPEA,cA9kD2CvE;AAilDzCuE,QAAOA,EAFqBA,YAMhCA,CADEA,SACFA,C;EAEOC,WD71DOA,mBACLA;AC81DPA,WAAuBA,QAEzBA;AADEA,mBACFA,C;EAgLiBC,aAXXC,GASAD;KAIFA,uBAbEC,GASAD;AAOFA,QACFA,C;EAEWE,uBAhBPA,OAkBUA;AACZA,WACEA,OAAOA,YAcXA;KAbSA,uBAkqDsBA;AA99CtBA;AAjMsBA;AAC3BA;AAGgBA;AAYTC;AAVPD,QAIJA,MAFIA,QAEJA,C;EAKYC,MACRA,aA3CAA,MA2C+CA,C;EA2BvCC,MACRA,OAAOA,MApEPA,MAoEiDA,C;EAS1CC,QA8qDPA,SAlwDAA;AAuFFA,WAAmBA,QAIrBA;AA2DoBA,OADGA;AAgnDrBA;AA3qDAA,QACFA,C;EAEWC,mBAlvDkCA;AAqvD3CA,WACUA,GApvDNA;AAq5GFA;AA7pDFA,WAAmBA,QAIrBA;AA6CoBA,OADGA;AAgnDrBA;AA7pDAA,QACFA,C;EAEWC,qBA5uDkCA;AA8uD3CA,WACUA,GA7uDNA;GA+zG+BxF;AAkEjCwF;AA/oDFA,WAAmBA,QAUrBA;AAHYA,YAokDmBzF,SAn5GtByF;AA09GPA;AAzoDAA,QACFA,C;CA6BWC,OA7jELA;CAIAA;AAikEJA,QACFA,C;EAmFWC,QA4gDPA,WAlwDAA;AAyPFA,WAAmBA,QAErBA;AA1qEIC;CAwIEC;CAwLAA;AAg3DGF;AAogDPG,CArwDEA;AA0PFH,QACFA,C;EASWI,QA8/CPA,SAlEiC9F,WAhsDjC8F;AAwQFA,WAAmBA,QAGrBA;AADqBA;AA2/CnBD,CArwDEA;AAyQFC,QAEFA,C;EAEWC,UAETA;SA+6C6BhG;AA76CvBgG;KAE6BA;AAFjCA,KAIEA,QAQNA,CA5sEIJ;CAwIEI;CA6CAA;AAshEGA,CA34DHA;AA24DJA,eACFA,C;EAEWC,QAm+CPA,SAlEiChG,WAhsDjCgG;AAoSFA,WAAmBA,QAGrBA;AADqBA;AA+9CnBH,CArwDEA;AAqSFG,QAEFA,C;EAEWC,UAETA;SAm5C6BlG;;AAj5CvBkG,kCAESA,SAELA,eAg5CmBpG;AAp5C3BoG,KAKEA,QAoBNA;uBAjBMA,UAiBNA;KAhBWA,aA24CoBtG;AAv4CrBsG,IAo4CqBlG,cAGAF,IAt4CvBoG,QAWRA;KATQA,OAAWA,SASnBA,EArvEIN;CAwIEM;CA6CAA;AA+jEGA,CAp7DHA;AAo7DJA,eACFA,C;EAEWC,QA07CPA,SAlEiClG,WAhsDjCkG;AA6UFA,WAAmBA,QAGrBA;AADqBA;AAs7CnBL,CArwDEA;AA8UFK,QAEFA,C;EAEWC,UAETA;SA7nE+CA;AA+nEzCA,4BAGFA,QAYNA;KAXWA,SACLA,OAgGFA,eAtFJA;yBARMA,UAQNA,CApxEIR;CAwIEQ;CA6CAA;AA8lEGA,CAn9DHA;AAm9DJA,eACFA,C;EAEWC,MA25CPA,sBAlwDAA;AA2WFA,WAAmBA,QAGrBA;AA7xEIT;CAwIEU;CA6CAA;CA2IAA;AAq+DGD;AA+4CPP,CArwDEA;AA4WFO,QAEFA,C;EAWcE,iBA22C2BA;AAx2CvCA,sCAq0C6BA,GADMtG;AA9zCnCsG,QACFA,C;EAEcC,qBA+1C2BA;AA31CvCA,qCA61C8CA;GA1CfA;UAKFA,KADMvG,IA5yCnCuG,QACFA,C;EAaWC,QAEFA;IAg0CgCC,UAv0CjCD;AAq2CJA,GAlwDAA;AAuaFA,WAAmBA,QAGrBA;AAz1EIb;CAwIEe;CA6CAA;CAeAA;IA+8GmCA,WArlHnCA,IAulH0CA;CAr1G1CA;AAsiEGF;AA80CPX,CArwDEA;AAwaFW,QAEFA,C;EA+BWG,QACLA;IAovCyB5G,YAGAK;AAkD3BuG,GAx8GKA,kBAsqEyCA;AAATA,IAbnCA,GA4vC+B3G;AAkEjC2G,GAlwDAA;AAodFA,WAAmBA,QAGrBA;AAt4EIhB;CAwIEiB;CA6CAA;CAeAA;CA4HAA;AA+kEGD;AAqyCPd,CArwDEA;AAqdFc,QAEFA,C;EAsBWE,QAJLA,oCAyxCFA,CAlwDAA;AAkfFA,WAAmBA,QAGrBA;AAp6EIlB;CAwIEmB;CA6CAA;CAeAA;CA4HAA;AA6mEGD;AAuwCPhB,CArwDEA;AAmfFgB,QAEFA,C;EAmDWE,QArBLC,iBAxoEQA,OAwFVC,MAiwGqCA,WAzvGrCA,MAyvGqCA,WAvuGrCA,MAuuGqCA;AA/sCvCD,QAIMA;AAEAA,qBAINA,QAEgCA;AAC1BA,qBA7W2CA;AA6kD/CD,GAlwDAA;AA6iBFA,WAAmBA,QAGrBA;AA/9EIpB;CAwIEuB;CA6CAA;CAeAA;CA4HAA;AAwqEGH;AA4sCPlB,CArwDEA;AA8iBFkB,QAEFA,C;EAoBWI,UAHHA,SA+nC6BnH,wBAkEjCmH,CAlwDAA;AAykBFA,WAAmBA,QAMrBA;AAFMA;AAwrCJtB,CArwDEA;AA0kBFsB,QAKFA,C;EAEWC,YAETA;SAipCuCA;AA9oCNA;AAC/BA,wBA0mC2BA;IAHArH,eAnmCvBqH,KAGJA,QAEMA;AAEAA;AACJA,OAAOA,iBAabA,EA/hFIzB;CAwIEyB;CA6CAA;CAeAA;AA01EGA,CA9tEHA;AA8tEJA,eACFA,C;EA6HcC,UAEZA,gCAcFA,C;EAqBWC,yBAhB6BA,MACDA;OAmBnBA,YAAlBA,MAXwCA;AAatCA,gBACMA;KACCA,uDACDA;KACCA,UACDA;KAEJA;AACAA,kBAEIA;QArBRA;AAyBQA;QAzBRA;AA6BQA;QA7BRA,OAiCYA,MA9C4BA,IACCA,GAeNA;AA+B3BA;QAlCRA,OAuYiBA,MApZuBA,GA87BXC;AA14BrBD;QAvCRA,OA7iBOA,MAgiBiCA;AAwDhCA;QA3CRA,OAxiBOA,MA2hBiCA;AA4DhCA;SA/CRA,OAniBOA,MAshBiCA;AAgEhCA;QAnDRE,QATqCA;KAg+BEA;AAh6B/BF;QAGAA;AACAA;QAGAA;AACAA;WA5EgCA;AAaxCA,OAqEsBA,OAENA,QAnFyBA,GAeNA,UAPIA;AA6E/BA;WAtFgCA;AAaxCA,OA+EsBA,OAENA,QA7FyBA,GAeNA,UAPIA;AAuF/BA;WAhGgCA;AAaxCA,OAyFsBA,OAENA,QAvGyBA,GAeNA,UAPIA;AAiG/BA;QA7FRA;AAAAE,QATqCA;KAg+BEA;AAr3B/BF;QAGAA;AACAA;QAtGRE,QATqCA;KAg+BEA;AA72B/BF;QAy3BNG,YA5+BmCA;AAsUrCC,MA1UwCD,IACCA;AA67BZA;AAj7B7BC;;AA8GQJ;SA9GRE,QATqCA;KAg+BEA;AAr2B/BF;SAi3BNK,YA5+BmCA;AA6UrCC,MAjVwCD,IACCA;AA67BZA;AAj7B7BC;;AAsHQN;QAy3BNO;AA/+BFA,OA4+BEA;AA5+BFA;AAAAL,QATqCA;KAg+BEA;AA5qBhCF;AAjLCA;QAGAA,0BA1H2BA;AA+HnCA,OAAOA,MA/IiCA,IACCA,KA+I3CA,C;EAOWQ,UACLA;OACcA,QAAlBA,SA9IwCA;AAgJtCA,mBAAyBA;AACXA,cA/IhBA;AAkJAA,QACFA,C;EAEWC,YAELA;OACcA,QAAlBA,SA1JwCA;AA4JtCA,WACEA,KAAeA;AACHA,UAC0BA,0DOp3FKA;KPm3F/BA;AACPA,MAGLA,OA40BFA;AAx0BFA,SAjLwCA;GACCA;IA67BZhI,WAGAK;AAvjDR2H,UAsjDc5H,GA/hBjC6H;AAphCFD,WACEA,uBAA4BA;AA+nB9BA,OA7nBiBA,kBA6nBjBA;AA4KAA,QACFA,C;EAEYE,MAEMA,SA9LwBA,iBAgBLA;AAgLnCA,sBAnLAA,OAqLwBA;KAEXA,UAnM4BA;QA67BZlI,YAj7B7BkI,OA4LoBA,YAhMmBA;AAkMjCA;QA9LNA,OAiM4BA;AACtBA,OAGRA,C;EAOYC,MAzMyBA,aAhBKA;AA8OxCA,sBAEEA,iBAhOiCA;AAmO7BA;OAnO6BA;AAuO7BA;QA1ONA;AA8OMA,WA9ONA;AAoP6BA;AAjPMA;AAoPnCA,iBApPmCA;cAhsBgBA;;AAy7B9BA,UAxQoBA;AAnyEvCtH;CAQSsH;CAQAA;CAiBAA;AA8wEXA,OAoQkBA;AACdA,MAgBNA;OArREA,OA8QkBA,OAqqBiBA;AAnqB/BA,MAKNA;QAFMA,UAAMA,qCAA8CA,SAE1DA,C;EAyBYC,MA3SyBA;AA6SnCA,UAhTAA,OA/hBOA,MAkhBiCA;AA+TtCA,MAOJA,CALEA,UApTAA,OA1hBOA,MA6gBiCA;AAmUtCA,MAGJA,CADEA,UAAMA,sCAA+CA,QACvDA,C;EAEeV,MAwqBXA,gBA5+BmCA;AAsUrCA,MA1UwCA,IACCA;AA67BZA;AAlnB7BA,QACFA,C;EAWWW,QACTA,sBAEEA,OAAiBA,UA3gCgCA,KAkhCrDA;KALSA,uBACUA,CAAiCA;AAAhDA,kBAIJA,MAFIA,QAEJA,C;EAEYC,iBAgoB6BA;AA9nBvCA,gBAEaA,eA8nBiCA,IA3nBhDA,C;EAEYC,iBAunB6BA;AApnBvCA,iBAEaA,eAonBiCA,IAjnBhDA,C;EAEWC,mBAukBoBxI;AArkB7BwI,WACEA,SAAgBA,QAukBWnI,EAjjB/BmI;GAr2FSA;GAy7GgCA;AAvmBrCA,QACEA,QAmkByBA,KAjjB/BA;AAfIA;GAgkB2BnI;GAHAL,QAzjB3BwI,SAAgBA,QAWpBA;AATEA,SACEA,UAAMA;GAv2FDA;OAm8GgCA,QAvlBrCA,QAojB2BA,KAjjB/BA;AADEA,UAAMA,4BAAsCA,QAC9CA,C;EAoDGC,iBAvhGKA;WAAoBA,GAApBA;AAqlHJA;AA3jBJA,YAqBSA;AAyiBPA,WA1jBFA,SAAmCA,QAOrCA;AANEA,SAAkCA,QAMpCA;AADEA,QACFA,C;CAuCKC,cAWHA;SAA8BA,QAwKhCA;AAoPIA;KA5ZmCA;AAGrCA,KAA4BA,QAqK9BA;GAkRiC1I;AApb/B0I,SAA0BA,QAkK5BA;AA/JMA,UAAmBA,QA+JzBA;GArtGmDC;AAyjGjDD,SAA+BA,QA4JjCA;AAzJ0BA;AACxBA,KAGMA,UA0ayBA,EAHAjI,cAva6BiI,QAqJ9DA;GAkRiC1I;;AA/Z/B0I,MACEA,SACEA,OAAOA,WAgaoB5I,QArRjC4I;AAxIIA,qCAwIJA,aAnIIA,SACEA,OAAOA,OAuZoB5I,YArRjC4I;AA/HIA,SACEA,OAAOA,OAmZoB9I,YArRjC8I;AA3HIA,YA2HJA,CAvHEA,SACEA,OAAOA,OA2YsB9I,YArRjC8I;AAjHEA,UAOgBA;AANdA,OAAOA,iBAgHXA,CApGEA,UACOA,WAwXwB5I,aAtX3B4I,QAiGNA;AA/FIA,OAAOA,MAAyBA,mBA+FpCA,CA1FEA,UAEUA;AADRA,UAEIA,OA4WyBhG,YArRjCgG,CA7EEA,UACMA,cAiWyB5I,SA/V3B4I,QA0ENA;AAxEIA,OAAOA,UACCA,eAuEZA,CAnEEA,UAEUA;AADRA,UAEIA,WAqVyBhG,QArRjCgG,CAzDEA,KAAsBA,QAyDxBA;AAtDiCA;yBAE7BA,QAoDJA;AAhDMA;cAAqDA,QAgD3DA;AA3CEA,sBAC2BA,QA0C7BA;AAzCIA,UAAsCA,QAyC1CA;GAplGWA;;GA44GgCA;gBA3VfA,QAmC5BA;AAuUMA;;AArWFA,oBAmT6BA;;AAhTtBA,wBACAA,kBACHA,QAyBRA,CArBIA,OAAOA,QA0SsBlI,cArRjCkI,CAlBEA,sBAC2BA,QAiB7BA;AAhBIA,KAA+BA,QAgBnCA;AAfIA,OAAOA,kBAeXA,CAXEA,UACEA,SAAgCA,QAUpCA;AATIA,OAAOA,kBASXA,CALEA,aACEA,OAAOA,kBAIXA;AADEA,QACFA,C;EAEKE,oBAKCA;AAECA,aA4Q0BrI,kBA3Q7BqI,QAuFJA;IA/rGWA;;GAqJLA;;GAiwGqCA;;AAlSzCA,OAA2DA,QA2E7DA;AAzEMA;GAz9FAA;;GAyvGqCA;;AAxRzCA,WAC2DA,QAgE7DA;AA9DEA,oBAuRgDA;AApRzCA,YA+OwBA,gBA9O3BA,QA0DNA,CAtDEA,oBA+QgDA;AA3QzCA,YAsOwBA,kBArO3BA,QAiDNA,CA7CEA,oBAsQgDA;AAlQzCA,YA6NwBA,gBA5N3BA,QAwCNA,IAhhGMA;;GAuuGqCA;;AArPzCA,0BAiNqCA;KA/MnCA,KACEA,QAA4BA,QA2BlCA;IAmLuCA;AA5MjCA;AACAA,SAAyCA,QAwB/CA;IA+KmCA;AApM7BA,UACEA,MAAiBA,QAoBzBA;AAnBQA,YA4O0CA;AAxO5CA,UAAiCA,QAevCA;GAyNkDA;AArOvCA,YAgMsBA,kBA/LzBA,QAWRA;AAVMA,YAIFA,UAqL+BA,MApL0BA,QAK7DA;AAJMA,KAGJA,QACFA,C;EAEKC,+BAiLkCzI;KA5KrCyI,WAhhDI1D,GASA0D;AAohDFA,WAAkBA,QA8BtBA;AA7BIA,uBA8JmCA;AA5JjCA,YAhYAA;AAoYFA,WAAqBA,QAuBzBA;GAqK2CA;AALnCA,oBA3tGkBC,aA4kD6BA;AA29CnDD,gBAE+BA,eAmJIA;AA/InCA,OAAOA,iBAhxGAA,QA8xGXA,CAFEA,OAAOA,QA5xGEA,mBA8xGXA,C;EAEKE,yBAmKsCA;AAxJzCA,gBA8BSA,WAuFsBA,iBAtFzBA,QAKRA;AADEA,QACFA,C;EAEKC,uBA7zGMA,YA+6GgCA;gBA1GnBA,QAaxBA;IAyDuC1I,SAnEnB0I,QAUpBA;AAREA,gBAGOA,WA+DwBA,iBA9D3BA,QAINA;AADEA,QACFA,C;EAEKC,WAqD4BjJ;uBAlD3BiJ,WACKA,SACmBA,kBAmDGrJ,KAlDCqJ,eAkDDnJ;AAtD/BmJ,QAKFA,C;EAWK9G,IAA8BA;AAK/BA;KAA2CA;AALZA,QACsCA,C;CAMpE+G,WA4B4BlJ;AA1B/BkJ,0CAKFA,C;EA2CcC,MAFRA,4BAkBqCA;AAZvCA,oBAxBmCA;AA+B/BL,UAHNK,C;EAEeL,IAA+BA,yBA1tGtBA,aA4kD6BA,IAgpDLA,C;;;;;;;;;;;EQvtHhCM,GACdA;AAESA,OADLA,yBACFA,aAgCJA;OA9BMA,6BACAA,iBAEQA;AACCA;;AASIA,0BACXA,KAPYA,gBAQhBA;AAEAA,OAAOA,eAaXA,MAJWA,OADEA,oBACTA,aAIJA;AADEA,OAAOA,MACTA,C;EAEYC,IAKVA,uBACIA,KALYA,eAMlBA,C;EAEYC,IAKVA,kBACIA,KALYA,eAMlBA,C;EAEYC,IAWHA,SATTA,C;EA0BAC;;QAaAA,C;EA0FWC,IACXA,OAjCAA,SCoGAC,SAAyBA,GAAzBA,aDpGAD,aAkCFA,C;EAUQE,MAENA;CACUA;AACVA,QAxBwBA,EAyB1BA,C;EASQC,MACNA,SACFA,C;EAQQC,MACNA,OACFA,C;EAOQC,MAENA,KACIA,QAAyBA,QAC/BA,C;EASKC,MAECA,wBAEqBA;oBASvBA;;oBAEAA;KCLFA,WAAyBA;CA4IvBA;CACAA;ADnIAA,aAEJA,C;EAIkBC;;OACAA;AAuBhBA,OAAYA,CE6QeA,MF7QgBA,YAG7CA,C;EG3TEC,MACcA;AADdA,0BAEiCA,UAFjCA,AAEyDA,C;EAOvCC,IAChBA;AAAUA,aACeA;AACvBA,WAAwBA,QAG5BA,CADEA,QAAkBA,EACpBA,C;EFiiBYC,MAEVA;QA1QsBA,iBA8GfA;AA+JPA,UACEA,IZ1XJA,0DY6XmBA;AACfA,MAYJA,KAV0BA;CAAjBA;AACPA,eAC+BA;AAC7BA;AACAA,kBAEoCA;AACpCA;AACAA,QAEJA,C;EAQYC;QAtSYA,kBA8GfA;CA2LLA,KAEFA,UACEA,IZxZJA,0DY2ZmBA;AACfA,MAuBJA,CArBEA,kBAGsCA;AACpCA;AACAA;AACAA,MAeJA,iBAVkCA,UAC9BA;AACAA,MAQJA;ACmhCEA,gBDthCOA,GAAwBA,cAGjCA,C;EAgIYC;KAEVA;GAvcqBA;AAAOA;AAAeA;AA0czCA,YACEA,oBApWGA;AC8sCPA,MDv2B0CA,IAAkBA,IAExDA,MA+JNA,EA1JoBA;GACyBA;AACzCA,0BACWA;AACTA,MAAsBA;CACtBA;GACwBA,MAGGA;GAAOA;CAQ/BA;CACDA;AAKkCA,SAnqBhBA;AAmqBGA,6BArCpBA;AAqCLA,SArqBeA,EAAOA;AAuqBPA,SAAWA;AAARA,eAAHA;AAAbA,MCu0BJA,MDn0B0CA,IAAkBA;AACtDA,MA4HRA,IAxH0BA;AAApBA;KAmFIA;GA9vBmBA;AAivBvBA,cA/D+BA,gBAgE7BA;KACKA,MACLA,aA9BsBA,cA+BpBA,UAGFA,aAzBcA,cA0BZA;AAKJA;GAIIA;wBACAA;cAprBuCA,OAAsBA,iBAmrB9BA;AAAnCA,SAKmBA,EAASA;KAplBTA,eA2MIA;CAC3BA;AACOA;CAtEPA,IACYA,OAAkCA;CAC9CA,IAA4BA;CAgdlBA;AACAA,cAEAA;AAKJA,MAeRA,KAXqBA,EAASA;GA1ZDA;CAC3BA;AACOA;GA0ZAA;GACcA;AADnBA,QApfFA;CACAA,WAKAA,IAAwBA;CACxBA,MAofEA;IAEJA,C;EAqDOC,MACUA,YACfA,OAAOA,OAWXA;AARmBA,YACfA,QAOJA;AALEA,UAAoBA,sBAKtBA,C;EGx8BKC,GACHA;OAAiBA,IAAjBA,WAAuDA;GAEpCA;;AAEjBA;AACOA,SAEXA,C;EAEKC;IAKDA;;IAIIA,UJ3BJA,OAAyBA,GI4BMA,QAGnCA,C;EAMKC,IAnDHA,qBAqDoCA;AACpCA;KAEOA,IJ1CLA,OAAyBA,GI2CMA,mBAGlBA,IAGjBA,C;EAQKC,iBACCA;AAAJA,YACEA;MACwBA;AACxBA,MAgBJA,CA3FEA;GA8E4CA;AAC5CA,aACQA;oBAG0BA;CAC1BA;MACeA;AAErBA,kBAIJA,C;EA0BKC,kBACsBA;IACXA,QAGZA,UAHYA;AAIZA,MAUJA,CFggDIA,WEjgDkCA,QACtCA,C;EC64EUC,ICxkDWA;AD2kDfA,OC5kDJA,UD4kDkCA,C;EHzrC/BC,MACHA,KAA+BA,cAGjCA,C;EAEEC,mBACmBA;AAAnBA,SAAoCA,OAAOA,MAY7CA;;AANQA;IAEGA;AAAPA,QAIJA,gB;EAEEC,qBAEmBA;AAAnBA,SAAoCA,OAAOA,OAY7CA;;AANQA;IAEGA;AAAPA,QAIJA,gB;EAEEC,uBAEmBA;AAAnBA,SAAoCA,OAAOA,SAY7CA;;AANQA;IAEGA;AAAPA,QAIJA,gB;EAqBKC,cAEYA,OAGPA;AAKRA,OACFA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AK75BWC;EADDA,QACNA,cCrfFA,wCDsfAA,C;EAMQC,MACNA,OC7fFA,uCD8fAA,C;EExbcC,IAEZA;AAAIA,WACFA,aAwBJA;AZyXAA;IY5YIA;;CAEKA;AACLA,MAAUA;iBAYVA,cZ4Z0CA;AYzZ5CA,6BACFA,C;;;;;;;;;;;EC9GFC,MACEA;IAIWA,yBADXA;AAIQA,MAAgBA;AAAtBA,aAIOA;AAAPA,QAIJA,C;EA8CAC,IAEEA;WAAoBA,WAsBtBA;AAnBEA,sBACEA,QAkBJA;qBAdIA,OA8BFA,WA6LiCC,oBA7MnCD;AAVEA,WAAoBA,QAApBA,IAO8BA,WADjBA;AAGbA,QACFA,C;ECPmBE,QAELA;WAI0BA;KbkgCWhM;Aa//BrCgM,kBADVA,SACUA;AACRA,eAASA;OAOXA,QACFA,C;EAKeC,UAEoBA,eAAmBA;AACpDA,WAAqBA,WASvBA;AAPWA,eAD0BA,QACjCA,gBAOJA;AAJEA,OAAOA,OAEHA,gBAENA,C;EAEeC,MAIbA;IACSA;AAAPA,QAGJA,WADEA,WACFA,C;EC2CYC,cAENA,mBACFA,UAAMA;AAMRA,WACEA,UAAMA;AAGRA,OACEA,UAAMA,gEAKVA,C;ECsTcC,IACZA,kBAEIA,8BAgBNA;QAdMA,iCAcNA;QAZMA,0BAYNA;QAVMA,yBAUNA;QARMA,4BAQNA;QANMA,yBAMNA;QAJMA,uCAINA;QAFMA,QAENA,E;;;;;;;;;;;;;;;;;;;;;;;;EhB1TWC,MAUSA;AAPlBA,WAAmBA,QAGrBA;AADEA,UAAMA,iBACRA,C;EAyCaC,MACHA;AACyBA;AACjCA;AACAA,wBACFA,C;EAoCQC,UAESA,oBAA8BA;AAC7CA,kBAEEA,WAA2BA,QAA3BA;AAMFA,QACFA,C;EAQQC,QACYA;AAClBA,oBACEA,OADFA;AAGAA,KAAcA,QAEhBA;AADEA,OiBpSaA,OjBqSfA,C;EAGQC,QAC4BA;AAAZA,QAOxBA,C;EAOQC,MACNA;AAAaA,oBAAYA,ObpPvBC,IANiCjS,uBakQrCgS;AALoBA;AAClBA,oBACEA,OADFA;AAGAA,QACFA,C;EAoCQE,QAEKA;;AACXA,YACkBA;AAChBA,OACEA,UAAiBA;AAEnBA,SACEA,QAcNA,CAHWA;AAAPA,QAGJA,C;EAqBcC,eAEQA;AACpBA,QAAkBA,QAGpBA;AADEA,OAAkBA,0BACpBA,C;EA8BQC,MAKJA,OF5bJA,WAM2BA,sBE0bJA,C;EAwDTC,QACgBA;AACvBA,UAAqBA,QAa5BA;IkBpKoBA,gBlBuKgCA,OAbVA;MAC7BA,YAYuCA,OAVZA;KAC7BA,OASyCA,UAPVA,QAGxCA,QACFA,C;EAgIcC,UAEZA;QAAwBA,IAASA;AFjkB1BA,GAAyBA,gBb4iCtBC;Ae3eVD,KACEA,QAsBJA;AgB5oBeA;OhB6nBaA,iBAA1BA,YACaA;YAELA,uBAlRUE;8BAyRDF,YACAA,OAGjBA,6BACFA,C;EAGcG,IAEZA;AAAKA,WACHA,OAAOA,OAoDXA;AA/CiBA;AACfA,MAAwBA;AAwBPA;GAUMA;SACLA,YACNA;AASZA,OALUA,yDAMZA,C;EAUsBC,GAAWA,YAAsBA,YAAsBA,C;ERrsB/DC,IACgBA,wCAC1BA,OAAOA,OAMXA;AAJEA,sBACEA,OP8qFGrR,iBO3qFPqR;AADEA,OQkLkBA,ORjLpBA,C;EA8BaC,MACXA;AACAA;AACAA,SACFA,C;EAYAC,sBAA8BA,C;CAsD9BC,iCAEuBA,C;EAcvBC,gCAEsBA,C;EA4DtBC,4DAG+DA,C;CAe/DC,uDAIiEA,C;EAmEtDC,QAITA,YAEEA,UAAiBA;AAEnBA,YACEA,YAEEA,UAAiBA;AAEnBA,QAGJA,CADEA,QACFA,C;EAWWC,MACTA,OACEA,UAAiBA;AAEnBA,QACFA,C;EAkEAC,wDAEsEA,C;EAkFtEC,sBAAqCA,C;EAcrCC,sBAAkCA,C;EAyBlCC,sBAAwBA,C;EAaxBC,sBAAkDA,C;CIpgB5CC,8BAA8DA,C;EuB0vBtDC,QAEZA;AAAIA,YACFA,oBAEEA,aAgBNA;AAdIA,gBAcJA,CAZ+BA;AAC7BA;IAEEA,kBAGAA,CALFA,UnBxTYA;AmB+TZA,6BAIFA,C;EAYcC,QAEZA;AAAIA,WACFA,gBAYJA;AnB/WAA;AmBsWEA;IAEEA;AnBvVUA,CAAZA,SAAsBA,mBmB0VpBA,CALFA;GnBvU4CA;AmB+U5CA,6BACFA,C;EA0BGC,MAwB6BA;AAGhCA;AACOA,UAAeA,MAkFxBA;AAjFwBA;AACpBA;IACeA,UACfA,IAQGA,WACHA,QAAoCA,MAqExCA;AApEqBA;AACGA,eAEKA,SACzBA;AACKA,WACHA,SACEA,OAAYA;AACZA,MA4DRA,CA1DyBA;AACCA;IACKA,eAEHA,SACtBA;KAGOA,MAAPA,SAEgBA,SACdA;AACAA,UAQEA;AAEYA,UAAmBA,UAC7BA,IAEFA;AACAA,MAgCVA,EA7B4BA;AACHA;IACMA,SAA2BA,iBAOtCA,WAEhBA;AAfgBA;AAqBlBA,sBAAqCA;AACzBA,UAAmBA;AAC7BA,YAEEA;AAzBcA,SA4BlBA,WACEA;AAEFA;AACAA,SACFA,C;ECn0BaC,UAmBTA;IAOqBA,QANaA;AAAkBA;AAAlDA,O9BJKA,KADAA,KADAA,K8BMuDA,aA2QhEA,KArQuBA,QAFPA;AAAkBA;AAAkBA;AADhDA,O9BCKA,KADAA,KADAA,KADAA,K8BGqDA,gBAuQ9DA,CApQoCA;AAAkBA;AACtCA;AAAkBA;A9BKzBA,OADAA,KADAA,KADAA,KADAA,K8BDmCA;AADxCA,QAoQJA,C;ECqXWC,qEAyDGA;AAGZA,UAy+HWA,2BACJA,qBACAA,oBACAA,qBACAA;AA3+HLA,SAGEA,OAAeA,WAD0BA,wBACLA,KAwO1CA;KAvOWA,UACLA,OAAeA,KAAOA,qBAAwCA,KAsOpEA,CA9NgBA;;;;;;;;;AAcFA;GAMIA;AAChBA,QAEUA;GAaMA;GACAA;GACAA;GACCA;GACGA;AAMpBA,OAOcA;AAHdA,OAYuCA;KARhCA,QAEOA;AAMdA,OAoBaA;GAXGA;;AAEhBA,MAzE+CA;AA6E7CA,aAKWA;AAAJA,kBAIIA,qBACWA,OACbA,sBACGA;KAzFiCA;KAlB/CA;AAwGSA,OAUKA,sCAEJA;KApHVA;AAgHSA,MAeLA,UAEMA,uBAEFA,SAKOA,qBACUA;AAm2HyBA,SAt2HpBA;AAy2HCA,IAn2HFA;AAKnBA;AACAA;KAEUA;AAzHfA;;SA0HUA,UAeHA;AADAA;AAXMA,qBAGNA;IA1BaA,cAwCRA,uBAKLA,mCAeAA;AAFAA;AACAA;AAZMA;AAINA;IAXoBA,eA0BSA,+BAK/BA,oCAeAA;AAFAA;AACAA;AAZMA;AAINA;IAX8CA,kBA6BxDA,KAUEA,OAgxGJA,cAzxG+BA,QACnBA,gCAcZA;AAwcEA,WAEEA,OACWA;KACJA,SACLA;AA7gBqDA;AAmhBzDA,QACsBA;AAEPA;AAENA;AACHA;AAAJA,QrB91CgBC,QqBg2CGD;AAEVA,gBADEA,KAAMA,sCAKqCA;AAjiBCA,KAiiBrDA;AAGMA;AAteVA,OA4eYA,wBAFCA,mBAxefA,C;EAuL2BE,IAEZA;AAAbA,cAAOA,sBAAsBA,UAAIA,cAcnCA,C;EAWiBC,QACLA,0HpBpNqC3O;AoB2N/C2O,yBACaA;AACXA,WACEA,YAEEA,iCAGFA,SACEA;AAEaA,OAAMA;AACrBA,SACEA;AAEKA;;AACKA;KAIhBA,SACEA;AAGaA,OAAMA;AACrBA,SACEA;;AAIFA,QACFA,C;EAmBiBC,SAULA,uDAKEA;IAWHA,UAAYA;AACHA;AAMlBA,gCACaA;AACXA,WACEA,UAEEA;AACIA,wBACFA;AAIAA,IAAJA,UAEEA,KACEA;AAGFA;AADeA,UAIfA,OAAUA;AAEAA,WACPA,UAPYA,SAWXA,YAAaA;AACTA;AACeA;AAC7BA,aACEA;AAEFA,MACEA,MACEA,OAAUA;KAEOA;AACjBA,SAAUA,QAAeA;AACzBA,SAAUA,QAAeA,UAG7BA,UACYA,UACRA,0EAEaA,YACfA;ApB7V6C5O;OoBgWV4O,sBAArCA,YACcA;AACZA,UAEEA;;AAGEA,UAGaA;;AAEfA,MAGJA,QACFA,C;EAsEAC,8CACgCA,C;EA4IrBC,IACTA,cAAsBA,SAGxBA;AAFEA,eAAuBA,UAEzBA;AADEA,QACFA,C;EAcaC,QACXA,UAAMA,WACRA,C;EAoTYC,MAEkBA,wBAAsBA,WAEpDA;AADEA,QACFA,C;EAWeC,UAEbA;AACAA,SAAkBA,QAkCpBA;AAhCMA,yBACkBA;AAAhBA,wBACFA;AAG6BA;AAAnBA;AACZA,QAE6BA;AAClBA,SADJA,oCAVgBA;AAanBA;AAEJA,OAAOA,aH93DFA,mBGi5DTA,CAfIA,gBACMA,yBAmBIA;AAELA;AAlBDA,QAE6BA;AAClBA,SADJA,oCAzBYA;AA4BfA;AACJA,UAAWA,kBAKnBA,CADEA,OAAOA,WACTA,C;EAIWC,QACGA;AAEZA,oBACFA,C;EAYcC,UrBnkDdA;AqB8kDEA,uBACaA;AACXA,WACwBA;AAClBA;AAAJA,SACEA;AACAA,oBrBplDRA;AqBulDqBA;AAGfA,KACgBA;KACTA,WACLA;CrB3jDNC;AqB8jDID;;AApBgBA,sBAlBEA,0BA0ClBA,+BrBpmDNA;AqBumDQA,QACeA;SAKjBA,SAnD6CA;AAsD7CA,6BACaA;AACXA,sBACiBA;AACAA,KAGJA;YrBvnDrBA;AAOEA;;AqBmnDcA;;AACVA;KAIJA,WAAoBA,OAAOA,YAM7BA;AALEA,QACiBA;UrBlmD2BA;AqBqmD5CA,6BACFA,C;EAWcE,QACEA;AAMdA,8BACaA;AACXA,WAEwBA;AAClBA;AAAJA,SACEA;AACAA,oBrB9pDRA;AqBiqDqBA;AACfA,MHpgEGA;;AG+/DQA;AAQXA,KACgBA;KACTA,YACSA;AACCA,KrBvoDrBD;AqB0oDIC;;AAvBgBA,sBAbEA,2BAwClBA,+BrBhrDNA;AqBmrDQA,QACeA;SAKjBA,qBA2UEA,yBAzUFA;KAlBiBA;AAqBjBA,6BACaA;AACXA,sBACiBA;AACAA,KAGJA;AACfA,MHxiEGA;YlBkWTA;AAOEA;;AqBksDcA;;AACVA;KAIJA,WAAoBA,OAAOA,YAO7BA;AANEA,QACiBA;AACfA,MHnjEKA;UlBiYqCA;AqBqrD5CA,6BACFA,C;EAKcC,QACZA;SAAkBA,QAkBpBA;AAhBOA,SADqBA,iBAExBA;AAGFA,sBACuBA;cA6RFA,0BA3RjBA;AAEFA,gBACsBA,KAGfA;AAETA,OAAOA,OH9kEAA,kBG+kETA,C;EAKcC,IACZA,cAAsBA,YAKxBA;AAJEA,cAAsBA,YAIxBA;AAHEA,eAAuBA,aAGzBA;AAFEA,iBAAyBA,eAE3BA;AADEA,QACFA,C;EAEcC,QAEZA,OAAOA,YAA4CA,UACrDA,C;EAEcC,cAEPA;AAGLA,WAC4BA,eAiB9BA;KAVaA,cAAwCA;IH53DjCA,aGg4DhBA,KAAYA,SAMhBA,MALoCA,oBACvBA;AAGXA,OADSA,WAEXA,C;EAOcC,eH74DMA;AGg5DbA,0BACAA,cACHA,OAAOA,aAGXA;AADEA,OAAOA,OACTA,C;EAEeC,UAEbA,YACEA,WACEA,UAAMA;AAERA,OAAOA,YAAyCA,SAKpDA,CAFEA,WAA6BA,WAE/BA;AADEA,OAAOA,OACTA,C;EAScC,IrB3zDdA;CqB8zDMA;AAYJA,MAAwBA,SAVLA;GrBjyDyBA;AqBqzD5CA,6BACFA,C;EAEeC,QAEbA,OAAOA,YAA4CA,SAErDA,C;EAaeC,QAEbA;OAAwBA,QACtBA,SAuBJA;AArBmBA;AACCA;AACIA;AACCA;AACvBA,YACEA,SAgBJA;AAd8BA;AAutBLA,YAAjBA,8BAltBJA,OrB18DgBA,iCqBm9DpBA;AAPEA,gBAEEA,OAAOA,eH1tEFA,aG+tETA;AADEA,WACFA,C;EAEcC,IAEFA;AACVA,UpBvxC+C/P;;AoB2xC9B+P;AACAA,6BAKfA,UAGEA,YAESA;AAXkCA,SAOpCA;AATaA,SAMXA;AAHDA,IpB5xCmC/P;AoB2yC7C+P,wBACeA;;AAEUA;AACAA;AACvBA,MAIJA,OAAcA,cAChBA,C;EAMcC,cAGLA;AAAPA,eAGIA,cACNA,C;EAWeC,cAGCA;AAIdA,2BACaA;YACQA,uBACjBA;KADyCA;AAKzCA,WACgBA;AAEdA,YACEA;AACAA,SAGFA,WACgBA;KALLA,SAUNA,aACSA;oBA0CdA,0BAvCAA;;SAIAA,sBAEMA;AAAJA,QACaA;AACXA,sBAGiBA;AADAA,MAKPA,sBrB5+DtBA;AAOEA;AqBw+DcA;ArBx+DCA,CA2Bfb;AqB+8DIa;KAIJA,WACEA,QAMJA;AAJEA,QACeA;UrB19D6BA;AqB49D5CA,6BACFA,C;EAoDYC,IACNA,gBAAsBA,QAG5BA;AADEA,OADYA,mBAEdA,C;EAOcC,IACZA;AAAKA,YAA8BA,QAsBrCA;AApBwBA;AAECA,sBAAvBA;AAEMA,oBlC/2DYC,akCi3DZD;IlCj3DYA,YkCm3DVA,WAGUA,UACLA;AAAJA,MAGLA,WAGJA,KAAiBA;AACjBA,OAAOA,aACTA,C;EAacE,MAEZA;AAAKA,YAEHA,SADyBA,SA2B7BA;AAvBwBA;AAECA,sBAAvBA;AAEEA,aACgCA,GlCx5DhBA;AkCw5DdA,KACEA;KAGAA,kBAEOA;AAAJA,MAGLA,clCj6DcA;AkCo6DCA,mBAA0BA,GHvuE3BA;KG6tEEA;AAUpBA,KACEA,UAKJA;AAH4BA,wBAAcA;AACxCA,MAA8BA,WAAcA;AAC5CA,OAAOA,aACTA,C;EAGcC,eACHA;AAAeA,cAAuBA,iBAC7CA,iBACaA;AACXA,UACEA,OAAUA,mBAA0BA,YAS5CA;YANYA,yBACJA,MAINA,QACFA,C;EA2WWC,MACLA;AACJA,qBACiBA;AACfA,gBACmBA;KAGjBA;AACAA,iBACmBA;KAEjBA,UAAMA,mCAIZA,QACFA,C;EAYcC,YAMPA;AACLA,qBADcA;MAEGA;AAFHA;AAIaA,UAAZA,UACOA;AAFpBA,MLt+FsCA;AK0+FpCA,MANyBA,IAU7BA,KAEWA,IADLA,OACFA,mBAyBNA;K/Bx+FAC,W+Bi9FcD;KAGGA;OAOQA,YANrBA,SACiBA;AACfA,SACEA,UAAMA;AAERA,WACEA,SACEA,UAAMA;AAERA,OAAUA;AACVA,UACKA,UACLA;KAEAA,WAINA,OLrgGOA,CADKA,QKugGdA,C;EAEYE,IACNA;AACJA,oBACFA,C;EAqwBeC,QASOA;OAIJA,wBAAhBA,SACSA;AACPA,kBAAwCA;AACxCA,WACEA;AAEEA,SAEFA,UAAMA,aAGVA,YAGEA,UAAMA;KAERA,SAEEA,UACAA;AAEAA,kBACSA;AACPA,WACEA,gBACKA,kBACLA,MAGJA,QACEA;KAG4BA;AAGvBA,2CACHA,UAAMA;AAERA,OAGJA;AAGgCA;KAFRA,eAEfA;KAKSA,cAAqCA;AAErDA,WACSA,iBAGXA,OAxiBFA,eAyiBAA,C;EA2McC,GAmDDA;iBpBhiGoC5Q;AoBoiGlC4Q;AAOFA;AAaAA;AAUTA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AAGAA,KADIA;AAGAA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AAEIA;AACJA;AACAA;AAKAA,KADIA;AAGAA;AACJA;AACAA;AACAA;AAEAA,QACFA,C;EAWIC,YACWA;AAEbA,oBACcA;AAEDA;GAGMA;AACTA;WAGVA,QACFA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ECnwImBC,IACjBA;wBACEA,UAAMA;mEAEOA;AAWWA;AAC1BA,QACFA,C;EAqGAC,QACEA,QAAiBA,OAAOA,OAE1BA;AADEA,OAAOA,MACTA,C;EC6PUC,MnBjMRC,eAAyBA,GAAzBA,eAvPIC;AmBucJF,OAZgBA,KAAuBA,eACzBA,KAAuBA;AAYrCA,QACFA,C;;;;;;EChXUG;AAEFA,mBAC6BA,QAAnBA;AAuEhBC,WA9D0BD,KAAZA,gBACKA,GAAmBA,KAAZA,gBACAA,KAAZA,qBAWEA;AAPNA;AACSA;AACmBA,OAApBA;WAAgCA;AACxCA;AACyBA,GAThBA,EASJA,MAAOA;AACwBA,OAAxBA;WAH4BA;AApB1CA,OAxBRC,oBAgDUD,gBAxBFA,C;;;;;;;;;;;;;;;;;;;;ECxGLE,GF0HIA,cAlELA,yCAkEKA,CAlELA,0CAkEKA,CAlELA;AGgE8BA,KHEzBA,CAlELA,cEzCYA,0BAETA,GAAKA,SAXQA,2BA8CpBA,C;EAyCEC,IAJ0DA,oBACbA;AAG7CA,kBAAgCA,SFrC9BA,2BEqCFA,AAA2DA,C;EA0SjDC,MF7QHC,4BAlELA,kCEiVkCD;WAAQA;AFzPrCA;AAtBAA,CAlELA;AAkEKE,GAlELA;AAkEKF,CAlELA;AEsVcA,kBACDA,OAAcA,SPvQpBA;AKdFA;GEwRwBA;AACVA;AAArBA,MFzROE,GAlELA;AAkEKF,CAlELA;AE8VuBA,yBAA4BA;AF5R9CA,oBEgSwBA;aPhCXG,aKhQbC,GAlELA;AAkEKJ,CAlELA;AAkEKK,GAlELA;;AAwFKL,wBAxFLM;AEuWgBN;AFrSXA,iBAsBAA,+BEuRHA,KAFFA;AFrRKA,2BEiSHA,KALFA;AAQFA,SAG0BA;AAAyBA;GAC5BA;AF9ThBC,GAlELA;AAkEKM,CAlELA;AAkEKC,GAlELA;;AAkEKD,CAlELA;AAkEKE,GAlELA;AAwFKF;;AAtBAA;;AE2TLP,UAQFA,QACFA,C;EAGKU,eFzYDA;ILkUkBA,YO2ElBA,MAUJA;AAPkBA;AAChBA,WF/UOA;;AEmVLA,CALcA,aAOlBA,C;EAcOC,MAAyCA,OP9arCC,OO+aLD,WACAA,gBACDA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EExeAE,GJkIIA,cAlELA,kDAkEKA,CAlELA,qDAkEKA,CAlELA,mDIxDAA,KAH6BA;WJmJxBA;wCI5ITA,C;EAEKC,yBJkDDA;AIhDFA,WACEA,MAiCJA;AJgFSA;AI7GPA,WAGEA,MA0BJA;AAtBEA,eJsGOA;AIpGLA,WACEA,MAmBNA;AALeA,SAVAA;AJ+FNA,GAlELA;AIzBFA,WACEA,MAUJA;AALEA,OJqFOA,sCAlELA;AIfFA,OJiFOA,sCAlELA,kDIdJA,C;EAEKC,qBT8UiBA,qBSxUlBA,MAmBJA;ADmDkCA,KHEzBA,IAlELA,gBIHsBA,aAA0BA,GAAKA,kBAgBzDA,C;EAIKC,MAEHA;AT6DSA,IKhFPA,+BAkEKA;AI7CLA,WACmBA,YACPA,oBJvBZA;AI8BFA,WJ9BEA,QI8BFA,KJoCOA;AInCLA,WACEA,UAGNA,C;;;;;EC3GKlB,uBLwEDA;AKrEFA,WACEA,MA4BJA;AL0GSA,GAlELA;WKjE2CA;AAE5BA;ALuJVA,4BKvIHA,KAFFA;ALmHKA,GAlELA;AK5CFA;AAEEA,OAEJA,C;;;;ECvBKmB,IACHA,iCAEEA;AACAA,MAoBJA,+DAdIA;AACAA,MAaJA,CATEA,6BACEA;AACAA,MAOJA,CADEA,0CACFA,C;EClBKC,IAEHA,KCRAA,mEDOgBA,YAElBA,C;EAeKC,GAEHA,KC1BAA,8DDyBgBA,YAElBA,C;EEnCKC,GLGHA;AACAA;AKFOA;UTqELtB;WA6CKA;AShHDsB,MACRA,C;;;;AhDsTiCC;CAFjBC,MAAoBA,YAAsBA,C;EAEhDD,IAAYA,cAA+BA,C;CAE5CE,IAAcA,sBC6JLA,WD7JiDA,C;EAoBxDC,IACLA,OW6qBGA,KADGA,WX5qByDA,C;AAQ9CC;CAAdA,IAAcA,gBAAgCA,C;EAU7CC,IAAYA,sBAAwCA,C;EAGnDC,IAAeA,gBAAmCA,C;;;CAWpCC,MAAEA,cAAcA,C;CAGhCC,IAAcA,YAAMA,C;EAEnBC,IAAYA,QAACA,C;;;;AAmDAC;EALbC,IAAYA,QAACA,C;CAKdD,IAAcA,gBAA+BA,C;;;;CAyB7CE,IACiCA,OAApBA;AAClBA,WAAyBA,OAAaA,UAExCA;AADEA,iCAAkCA,OACpCA,C;AAiBqBC;EAHbC,IAAYA,QAACA,C;CAGdD,IAAcA,gBAA+BA,C;AAqB/BE;EAHbC,IAAYA,QAACA,C;CAGdD,IAAcA,gBAA+BA,C;AKzUpDE;CFRQC,MAAaA,iBAAKA,QEQ1BD,2BFR8CC,C;CAoIzCC,wBAxIDA,KAAMA;UA2IVA,C;EAqBOC,MACWA,cAAYA;AAC5BA,WAAyBA,QAAzBA,IACmBA;AAEnBA,OAAOA,SACTA,C;EAgCEC,mBAEkBA;AAClBA,qBAIUA,UADMA;IAELA,YAAkBA,UAAMA,SAEnCA,QACFA,C;EAXEC,kC;CAiEAC,MACAA,QAAWA,GACbA,C;EAEQC,eAGmBA;AAAzBA,OACEA,UAAiBA;AAMjBA,YACEA,UAAiBA;AAGrBA,SAAkBA,OAAUA,eAE9BA;AADEA,OArUEA,IANiC1Z,aA2U5B0Z,QACTA,C;GAOMC,QACAA,UAAYA,QAAWA,GAE7BA;AADEA,UAA2BA,OAC7BA,C;GAEMC,WACAA;AAAJA,OAAgBA,QAAWA,KAE7BA;AADEA,UAA2BA,OAC7BA,C;EAuHKC,MACHA;sBAxaEA,KAAMA;GAyaIA;AACZA,OAAaA,MAkEfA;WAjEcA;AACZA,aACgBA;GACAA;AACVA;OAMJA,MAuDJA,CA/DmBA;aAiDiBA,QAChCA,WAAoBA,QAApBA,QACoBA,wBAKhBA,IAINA,OAA0BA;AAE1BA,OAAoBA,YACtBA,C;EAUKC,eAEKA;KAIRA,kBACoBA,wBAGVA;AAANA,SAAkBA,MAGxBA,C;CA2DOC,IAAcA,O8C9KJA,e9C8K+BA,C;EAahCC,IAAYA,OA8H5BA,YAEyBA,QAhIGA,QA8H5BA,WA9HkDA,C;EAE1CC,IAAYA,OAAWA,OAAoBA,C;EAE3CC,IAAUA,eAAiCA,C;CAsCxCC,oBAGmBA,SAASA,UAAMA;AAC3CA,QAAOA,GACTA,C;CAEcC,8BA5nBVA,KAAMA;cAgoBoBA,SAASA,UAAMA;MAE7CA,C;;;;;EA4EMC,GAAoBA,UAATA;uBAASA,SAAIA,C;CAEzBC,mBACUA,MAAUA;IAKnBA,OACFA,UAAMA;GAGJA;AAAJA,UACEA;AACAA,QAKJA,EAHEA,IAAWA;CACXA;AACAA,QACFA,C;;E+C51BIC,MACFA;AACAA,OACEA,QAmBJA;KAlBSA,OACLA,QAiBJA;KAhBSA,UACLA,UACuBA;AACjBA,mBAA2BA,QAarCA;AAZUA,eAAYA,QAYtBA;AAXMA,QAWNA,CATIA,QASJA,MARSA,AAYSA,aAXdA,AAWcA,YAVZA,QAMNA;AAJIA,QAIJA,MAFIA,QAEJA,C;GAESC,IAAcA,sBAAuCA,C;CA4MvDC,IACLA,gBACEA,YAIJA;KAFIA,UAEJA,C;EAEQC,IACFA;AAGJA,SAAsBA,kBA6BxBA;AAxBiBA;AACEA;AAIJA;AAWGA;AAOhBA,6EACFA,C;EAwBkBC,MAChBA;AAGAA,SAAiBA,QAOnBA;AANEA,OAAgBA,QAMlBA;AAFIA,UAEJA,C;EAeIC,MAEFA,sBAEMA,YACRA,C;EAEIC,MACEA;AACJA,iCAEEA,UAgBJA;AAdEA,QAGEA,WACEA,OAAOA,aAUbA,MARSA,UAELA,OAAOA,YAMXA;AAFEA,UAAMA,yCACiCA,YAAWA,iBACpDA,C;CA4BIC,MACFA;OACMA;;AAKAA,WANNA,QAOFA,C;EAEIC,MACFA,OAAeA,UAAMA;AACrBA,OAAOA,YACTA,C;EAEIC,MACFA,mBASFA,C;EAiDSC,IAAeA,gBAAkCA,C;;AA+MlCC;EAAfA,IAAeA,gBAAkCA,C;;;AAWlCC;EAAfA,IAAeA,gBAAqCA,C;;;EhBzoB7CC,MAEdA,UACFA,C;CAiDOC,UAGcA,gBAAiCA;AAEpDA,OnBkPWA,mBACAA,cmBlPbA,C;CA8BKC,QACHA;WAC8BA,QAC5BA,UAAiBA,SAAqBA;KAIdA;AAGRA,MADDA,QAAQA,QAI3BA;AAHIA,2BAGJA,C;CAbKC,2B;CAgBEC,QAGLA,OAAOA,cADUA,UAAiCA,SAEpDA,C;CAJOC,8B;EAqKSC,MACdA;QAAgBA,QAelBA;WAdyBA,YAAaA,QActCA;AAbEA,aAEEA,WAAYA;AAIdA,kBACEA,aAA6BA;AACrBA;AACRA,SAAgBA;AAChBA,KAEFA,QACFA,C;EAkBIC,QACFA;WAE8BA,QAC5BA,UAAiBA,SAAqBA;AnB5VnCA;AmB+VHA,QAWJA,C;EAlBIC,4B;CA0CCC,MAKHA,OAAOA,WACTA,C;EAMIC,MACFA;SAEMA;;AADNA,QAKFA,C;CAGOC,IAAcA,QAAIA,C;EAMjBC,IAGFA;OACgBA,gBAApBA,SAC8BA;AACrBA;AACAA,QAEFA;AACAA;AACPA,kCACFA,C;EAGSC,IAAeA,gBAAqCA,C;EAErDC,IAAUA,eAA4BA,C;;;A7B5X9CC;EAhDgBA,IAAYA,gBAA+BA,IAARA,WAAnBA,UAgDhCA,aAhDoEA,C;EAuB5DC,IAAUA,OAAQA,KAARA,UAAcA,C;CAO9BC,MAAwBA,OAAyBA,iBAAzBA,kBAA6BA,C;CAahDC,IAAcA,sBAAkBA,C;AAMpBC;CAAdA,GAAcA,iBAAkBA,C;EAC/BC,GAAWA,OAAgBA,gBAARA,IAARA,QAAoBA,C;;;;AAqCMC;CAAhCA,MAAiBA,eAAeA,QAAfA,eAAmBA,C;CAEjCC,QACZA,cAAuBA,gBACzBA,C;;;AAuEAC;CAEQA,MAAaA,mBAAmBA,GAFxCA,oCAEgDA,C;;;C0CpIzCC,IAELA,sCADcA,EAIhBA,C;AzC+C0BC;EADlBC,IAAUA,aAAQA,OAAMA,C;CACnBD,MAAaA,2BAAqBA,C;;;;ECpD/BE,IAAYA;OAqS5BA,WAEyBA,QAvSGA,OAqS5BA,aArSiDA,C;;EA0S3CC,GAAoBA,UAATA;uBAASA,SAAIA,C;CAGzBC,GACoBA,gBAAVA,eAAUA;IACnBA,OACFA,UAAMA;GAEJA;AAAJA,UACEA;AACAA,QAKJA,CAHaA,CAAXA;AAEAA,QACFA,C;AA0CAC;EAxBgBA,IAAYA,gBAA+BA,QAAVA,QAAoBA,GAAzCA,UAwB5BA,aAxBwEA,C;EAGhEC,IAAUA,OAAUA,SAAVA,GAAgBA,C;CAOhCC,MAAwBA,iBAAGA,eAA2BA,C;;;CAgBnDC,iBACCA;UACSA,CAAXA,IAAWA,MAAaA;AACxBA,QAIJA,EAFEA;AACAA,QACFA,C;EAEMC,GAAoBA,UAATA;uBAASA,YAAIA,C;AAcJC;EAAlBA,IAAUA,mBAAcA,C;CAC9BC,MAAwBA,iBAAGA,eAAyBA,C;;;C4ChVxCC,QACZA,UAAUA,2CACZA,C;;;;A1C5C6BC;CAAtBA,IAAcA,iBAAyBA,C;CAMhCC,QACZA,MACFA,C;;;EA6DQC,IAAUA,aAAQA,OAAMA,C;GAEpBC,aACCA;AACXA,YAuDKA,kBAtDmBA;aAGxBA,QACFA,C;CAWKC,IAEHA,mBAAwBA,QAE1BA;AADEA,ORk7EKA,IQl7EmBA,oBAC1BA,C;CAEYC,MACLA,cAAkBA,WAGzBA;AADEA,WAAsBA,EAAfA,KADoBA,EAAfA,IAEdA,C;CAEKC,MACUA,2BACEA;OACUA,YAAzBA,QAGEA,MAFQA,KACEA,IAGdA,C;;EAsDMC,GAAoBA,UAATA;uBAASA,SAAIA,C;CAEzBC,iBACCA;OAAUA,KACZA;AACAA,QAKJA,EAHEA,IAA6BA,EAAlBA;CACXA;AACAA,QACFA,C;;;EA6GQC,IAAUA,aAA4BA,C;EAkB9BC,oBAbHA;AACXA,YAhKKC,eAiKmBD;UAGjBA;AAQmBA,OA3I5BA,YAAsEA,QAAtEA,iBA2IqEA,C;CAEhEE,MAEHA,mBAAwBA,QAE1BA;AADEA,OR6tEKA,IQ7tEmBA,oBAC1BA,C;;CR+/BAC,iCAEyDA,IAD3CA;AAEZA,WAAmBA,WAmBrBA;AAlBeA;GACTA;AAAJA;GAGIA;AAAJA;GAGIA;AAAJA;GAGIA;AAAJA;GAGIA;AAAJA;AAIAA,QACFA,C;;CAmNOC,IACLA,gDACFA,C;;CAaOC,+DACDA;AAAJA,WAAqBA,6BAA4BA,EAMnDA;GALMA;AAAJA,WACEA,kBAA0DA,MAI9DA;AAFEA,6BACoDA,MACtDA,C;;CAQOC,cAAcA;QiCptCDA,+BjCotCgDA,C;;CAQ7DC,IAGLA,8BAD6BA,kDAE/BA,C;;;CAyMOC,gBACDA;AAAJA,WAAoBA,QAQtBA;MAL+BA;iCAEnBA;AAEVA,WAAOA,eACTA,C;;;CA+nBOC,IAMcA,UAJDA,6BAEeA;AAEjCA,+CACFA,C;;;;;;;;;CAqBOC,cAEDA;AACJA,WAAkBA,wCAEpBA;AADEA,kBAAmBA,WACrBA,C;;CA6BcC,MAAEA,mBAKhBA;AAJEA,YAA4BA,QAI9BA;AAIyBC,wBAPKD,QAG9BA;AAFEA,WARoBA,4BASMA,MAAiBA,EAC7CA,C;EAGQC,IAENA,gBADsCA,IACDA,SAfjBA,eAgBtBA,C;CAGOC,IAGLA,sBAzBkBA,iCAthEJA,SAgjEgCA,QAChDA,C;;CA+LOC,IAELA,sCADwBA,gCAI1BA,C;;CAOOC,IAAcA,2BAAgBA,EAAQA,C;A0Bv4E7CC;EA9SQC,IAAUA,aAAOA,C;EAITD,GACdA,oBAAOA,UAySTA,UAxSAA,C;GAEgBE,GAHPA;AAIPA,OAAOA,KAqSTF,0BArSoCE,gBAA3BA,UACTA,C;CAEKC,cAEaA;AACdA,WAAqBA,QASzBA;AARIA,QA8OKC,SAtOTD,C;CAmBYE,MACVA;6BACgBA;AACdA,WAAqBA,QAWzBA;GAqMSA;aA9MyCA;AAA9CA,QASJA,MARSA,iDACMA;AACXA,WAAkBA,QAMtBA;GAqMSA;AAvMEA,aAFuCA;AAA9CA,QAIJA,MAFIA,iBAEJA,C;EAEGC,kBACUA;AACXA,WAAkBA,WAMpBA;AA0KaA,GAqBJC;AAnMKD;AACZA,OAAeA,WAGjBA;AADEA,QADyBA,GAClBA,EACTA,C;CAEcE,QACZA;0BACgBA;AAEdA,cADqBA,GAAqBA,mBAErCA,8CACMA;AAEXA,cADkBA,GAAeA,sBAQxBA;AACXA,WAAiCA,GAAfA;AACPA;GA4KJC;AA1KPD,WAC2BA;KAGbA;AACZA,SAC2BA,GACpBA;KAGLA,OADyBA,YAhB/BA,C;CAyDKE,IACHA;IAAIA,OACFA,IAAWA,IAAQA,IAAQA,IAASA;CACpCA;AACAA,OAEJA,C;CAEKC,oBACuBA,MACNA;KACpBA,UAGEA,MAFQA,IACEA;QAEWA,GACnBA,UAAMA;GAEIA,GAEhBA,C;EAEKC,eA8FIA;AA5FPA,WAC6BA;MAEtBA,IAETA,C;EAWKC,OAKHA,OAAkBA,eACpBA,C;EAGkBC,MA6GlBA;IA3GMA,UACFA,IAASA;MAITA,IAFyBA,EAAKA;AAKhCA;AACAA,QACFA,C;EAiCIC,IACFA,OAA4BA,iBAC9BA,C;EAOIC,MACFA;WAAoBA,QAOtBA;GANeA;AACbA,gBAEWA,QADgBA,GAChBA,MAAuBA,QAGpCA;AADEA,QACFA,C;CAEOC,IAAcA,OAAQA,UAAiBA,C;EAwB9CC,GAIcA;;;AAMZA,QACFA,C;;EArRoCC,IAAcA;AAAJA,eAAWA,kBAAIA,C;EAAzBC,gC;;;EAuS5BC,IAAUA,aAAKA,EAAOA,C;EAGdC,IA2BhBA,UA1BqCA,iBAAWA;CA2B9CC,IAAaA;AA3BbD,QACFA,C;;EA8BME,GAAWA,aAAaA,C;CAEzBC,mBACmBA;IAAlBA,MAAuBA,GACzBA,UAAMA;GAEGA;AACXA,aACEA;AACAA,QAMJA,OAJIA,IAAWA;CACXA,IAAaA;AACbA,QAEJA,E;AzBKwBC;EAAPA,IAAOA,WAA0BA,KAAUA,C;;AAErCA;EAAnBA,MAAmBA,WAA6BA,OAAsBA,C;;AAEtDA;EAAhBA,IAAgBA,WAAeA,KAAqBA,C;;AWtXnCC;CAAdA,IAAcA,kBAAgBA,C;EAE9BC,IACQA,4BACEA;OAMUA,iBAAzBA,gBZilBOC;GY/kBQD;AACbA,sBZ8kBKC;GY1kBSD;AAEQA,gBGudTA,OfiHRC;AYjkBPD,6BACFA,C;EAIaE,eApDQA;MAsDZA,GAAmBA,YAAoBA,CAAvCA;MACAA;YAAiCA;CADjCA,SACPA,QACFA,C;EAEaC,GASIA,gBAPXA,uBAQiBA,mBACLA,4BAKEA,qBACDA,kBAGUA;;AAC3BA,WACuBA;GAEPA;AACdA,cAAuBA,IAAgBA;MAARA,KGwSpBA;;;AHrSbA,QACFA,C;;EAsCcC,GAAqBA,WAACA,OAAIA,GAAGA,C;CAY7BC,MAAEA,mBAEhBA;AADEA,8BA1ImBC,YAgIZD,YAAYA,KAAMA,YAAYA,GAWvCA,C;EAGQE,IAAYA,OAAOA,SA9INA,QA8IsBA,OAAIA,OAAGA,C;;CC5G3CC,IACHA,oBAASA,WAAoCA,EAAxBA,MAAsCA,C;GAW3DC,iBACEA;AAAJA,WAAiCA,QAGnCA;AAF+BA,GAeoBA;AAfjDA,QAAOA,SACHA,IAcmBA,0BAEFA,UACDA,WAhBtBA,C;EA6EaC,MACKA;;AAECA;AACjBA,WAAmBA,WAErBA;AADEA,OAsCFA,WArCAA,C;;GA+CQC,aAF4DA;AAErDA,QAFXA,WAGAA,OACmBA,C;CAMNC,MAAiBA,WAFiBA,EAAvBA,GAEkBA,C;;;;EAqD9BC,GAAoBA,UAATA;yBAAuBA,C;CAU7CC,6BACUA;AACbA,WAAoBA,QAyBtBA;GAxBMA;GAAqBA;AAAzBA,YACuBA;;AACrBA,aACEA;AACsBA;IAhFwCA,EAAhEA,YA2EyBA;IA5LkBC,EAAxBA,aAuMXD;;AAAeA,QACEA;AAAjBA,uBACkBA;AAlBTA,uBAqBbA,eAEFA;AACAA,QAMNA,GAFEA,IADAA;AAEAA,QACFA,C;;EG5PSE,IAAeA,WAAUA,C;;;;EA8XzBC,IAAeA,WAAQA,C;;;EA0QxBC,IAAUA,eAAgCA,C;;;CA2BlCC,MACdA,SAAmCA;AACnCA,QAAOA,GACTA,C;CAEcC,QACZA,SAAmCA;MAErCA,C;;;;CAkBcC,QACZA,SAAmCA;MAErCA,C;;;;EA4BSC,IAAeA,WAAWA,C;;;EAsC1BC,IAAeA,WAAWA,C;;;EAsC1BC,IAAeA,WAASA,C;CAEpBC,MACXA,SAAmCA;AACnCA,QAAOA,GACTA,C;;;EAsCSC,IAAeA,WAASA,C;CAEpBC,MACXA,SAAmCA;AACnCA,QAAOA,GACTA,C;;;EAsCSC,IAAeA,WAAQA,C;CAEnBC,MACXA,SAAmCA;AACnCA,QAAOA,GACTA,C;;;EAyCSC,IAAeA,WAAUA,C;CAErBC,MACXA,SAAmCA;AACnCA,QAAOA,GACTA,C;;;EAsCSC,IAAeA,WAAUA,C;CAErBC,MACXA,SAAmCA;AACnCA,QAAOA,GACTA,C;;;EAuCSC,IAAeA,WAAgBA,C;EAEhCC,IAAUA,eAAgCA,C;CAErCC,MACXA,SAAmCA;AACnCA,QAAOA,GACTA,C;;;EAmDSC,IAAeA,WAASA,C;EAEzBC,IAAUA,eAAgCA,C;CAErCC,MACXA,SAAmCA;AACnCA,QAAOA,GACTA,C;;;;;;;AN1kBiBC;CAtZbA,IAEFA,aAiZsB9f,qBAhZxB8f,C;CAKIC,IAA8BA,OAsZjBA,MAXO3b,qBA3YmD2b,C;;AA08BtDC;CAAdA,IAAcA,eAAaA,QAAWA,C;;CAkUtCC,IAAcA,aAAQA,C;;;EQh3CzBC,oBACUA;CACRA;AACCA,MACHA,C;;;EAMOC,IAELA;;MAG4DA;MACxDA;8CACLA,C;;;EASHC,GACEA,WACFA,C;;;EAOAC,GACEA,WACFA,C;;;EAkCFzU,aAgEOA,kBAxDOA,gBACNA,KAPiBA;KASrBA,UAAMA,kCAEVA,C;;EAXI0U,GAGEA,WACFA,C;;;EAmECC,IAEHA;WAAgCA;KAC3BA,GACHA;QAGAA;mBAFeA,KAEfA;KAEAA,QAEJA,C;EAEKC,gBAGDA;OADEA,GACFA;KAEAA,QAEJA,C;AAsEgBC;EAAZA,IAAYA,qBAAgDA,C;;;EAEvCA,MAGvBA,YlBg2CFA,ckB/1CCA,C;;;EA0C0CC,MACzCA,IAAkBA,OACnBA,C;;AGzSsBC;CAAhBA,IAAcA,eAAEA,GAAMA,C;;;;EFhBxBC,MAEHA;;MACKA;KAgSmBA,WAhSEA,UAAUA;WAMRA;AAuB5BA,QApBFA,C;EAZKC,2B;;EA0BAC,cACEA;KAwQmBA,WAxQEA,UAAUA;AACpCA,OACFA,C;;EAyHKC,IAEIA,QApCiBA,WAmCLA,QAErBA;AADEA,WAxCiBA,EAAOA,UAgBiBA,IAwBkBA,GAC7DA,C;EAEYC,gBAEeA,aASkBA,SAtD1BA,EAAOA;AAiDNA,YACPA,YACuCA;KAEvCA;IAMFA;AAAPA,QAeJA,UAdIA,SAFFA,kBAxDwBA,UA6DpBA,UAAMA;AAMRA,UAAMA,uGAXRA,QAgBFA,C;;EAkHKC,QAEHA,OAA0BA;IAC1BA,IACFA,C;EAEUC,mBCkRiBA;QDhREA,IAEbA,wBACAA,SACVA,UAAoBA,4BAQtBA,WAIYA;AArDhBA;;AAyDEA,QA3OFA;AA4OEA,QACFA,C;EAxBUC,+B;EA8BAC,QAjEVA,eAAyBA,GAAzBA;AAmEEA,QA/OFA;AAgPEA,QACFA,C;EA2EKC,QAEHA,OAAwBA;IACxBA,IACFA,C;CASKC,QAGHA,IACYA,UAAkCA;IAC9CA,IAA4BA,EAC9BA,C;EAEKC,kBA9IDA;AAgJFA,UACWA,IAAgBA;CACzBA,UAEAA,iBArCKA;KA7GgBA,YAwJjBA;AACAA,MAURA,CARMA,OC8rCJA,gBD1rCEA,GAAwBA,eAI5BA,C;EAEKC,IACHA;;WAAuBA,MA+BzBA;GAvMIA;AAyKFA,YACuCA;CACrCA;AACAA,eAEiCA;AAC/BA,2BAEgBA;CAETA,WAGTA,iBAvEKA;KA7GgBA,YA0LjBA;AACAA,MAURA,CARMA,OAGUA,CAAZA;ACypCFA,gBDxpCEA,GAAwBA,eAI5BA,C;EAEiBC,aAIYA;AAEpBA,IADPA;AACAA,gBACFA,C;CAEiBC,IACEA;AAEjBA,mCACkCA;CACxBA,KAIVA,QACFA,C;EASKC,IAKHA;;IAEEA,KAAYA,YAQAA,0BATdA;AAaEA;AAKAA,KAAkBA,iBAItBA,C;EA8FKC,IAG0BA;CA7O7BA;CACAA;AA8OAA,SACFA,C;CAEKC,MAG0BA;AA1O7BA,QAAoBA;AA4OpBA,YACFA,C;EAGKC,0BAaOA,MACRA;AACAA,MAGJA,CADEA,UACFA,C;EAqCKC;ACo7BHA,mBDl7BAA,GAAwBA,iBAG1BA,C;EAMKC,IAEOA,kBAERA;AACAA,MAIJA,CADEA,UACFA,C;CAEKC;AC85BHA,mBD15BAA,GAAwBA,mBAG1BA,C;;;EAnS4BC,GACtBA,SAAsBA,OAAMA,GAC7BA,C;;;EAgCuBC,GACtBA,SAAsBA,SAAMA,GAC7BA,C;;;EAuCWC,oBAEVA;;IAEEA,KAAyBA,uBAD3BA;AAEEA;AACAA,SAEHA,C;;;EAAWA,MAEVA,aACDA,C;;;EAMiBA,GAChBA,aAAeA,OAAGA,GACnBA,C;;;EAsE4BC,GAC7BA,WAAqBA,OAAQA,GAC9BA,C;;;EAkGuBC,GACtBA,cAAmBA,GACpBA,C;;;EAsBuBC,GACtBA,aAAeA,OAAOA,GACvBA,C;;;EA8DGC,GAMMA;SAEeA;AAjnBlBA,GA9EUC,EAAOA,OAqBcA,aAyqBhCD;AAEEA;GACIA,OAAsBA,EAja3BA,EAiayCA;;AAAxCA,MACEA,MAAuBA,EAla1BA;KAoa8BA,CAA3BA;CAEFA;AACAA,MAkBJA,wBAjiBmBA,iBACFA;CAkhBXA,IA3aHA;CA4aGA,MAGFA,MAUJA,2BAJyBA;;AACEA,CAAvBA,QAA2CA;CAC3CA,MAEJA,C;;;EAH+CE,IAAOA,aAAcA,C;;;EAKpEC,GACEA;;GACyBA;AA1rBxBA,CA0rBCA,IA7tBSC,EAAOA,OASmBA,OAotBSD,aAD9CA;AAEEA;;AAC2BA,CAA3BA;CACAA,MAEJA,C;;;EAEAE,GACEA;SAC0BA,EAtczBA;;AAucKA,eACAA,EA5tBYC,UA6tBSD,CAAvBA,IAAuBA;CACvBA,gBALJA;AAOEA;KACcA,EA7cfA;;IA6c6BA,QAC1BA;KAE2BA,CAA3BA;CAEFA,MAEJA,C;;;;;;ECqfyBE,GACvBA,SAAoBA,OAAOA,GAClCA,C;;;EAgMIC,IACHA;QACgBA,MAAgBA,IAC5BA;AACAA,MAMNA,CAJIA,gCALFA;AAMEA;AA4DFA,UAzDFA,C;EAuCgBC,IACdA,OAAOA,gBACTA,C;EAwBEC,IACgDA,IAA7BA,MAAUA,GAAYA,aAE3CA;AADEA,OAAOA,sBACTA,C;EAHEC,0B;EAMAC,MACgDA,IAA7BA,MAAUA,GAAYA,cAE3CA;AADEA,OAAOA,wBACTA,C;EAHEC;wB;EAKAC,QACgDA,IAA7BA,MAAUA,GAAYA,gBAE3CA;AADEA,OAAOA,0BACTA,C;EAHEC;4B;EAS4BC,IAE1BA,QAACA,C;EAFyBC;wB;AA7CfC;EAANA,GAAMA,qBAAgBA,GAAEA,C;;Ad5wCjCC;E0CxSgBA,IAAYA,kB1C0SHA,W0C1SGA,Q1CwS5BA,a0CxSiDA,C;CAE/CC,MAAwBA,OAAIA,WAAOA,C;CA2Q7BC,MAAaA,O5CxIrBpO,U4CwI0BoO,Q5CxI1BpO,6B4CwI8CoO,C;EAyDzCC,UAGDA;AACSA,SAAiCA;AAC5CA,gBACMA,aAERA,C;CA0KOC,IAAcA,OAWJA,eAXsBA,C;;;;CrBhgBlCC,MACHA;AAAcA,kBAAdA,UACwBA,mBADxBA;AACkBA;AAAhBA,eAAsBA,UAE1BA,C;EAoEQC,IAAUA;OAAKA,OAAMA,C;CAItBC,IAAcA,iBAAiBA,C;;;EAaxBC;KACHA,OACHA;CAEFA;MACAA;AZ2YWA;;CA2BfnT;AA3BemT;MYxYZA,C;;;CA6ISC,QACZA,UAAMA,uCACRA,C;AAyD+BC;CAAnBA,MAAmBA,oBAASA,C;CAC1BC,QACZA,eACFA,C;EAmBQC,IAAeA,UAALA;cAAWA,C;CAGtBC,IAAcA,kBAAeA,C;;;AwB1DnBC;CArKVA,IAAcA,yBAAiBA,C;CAgJpCC,MACWA;;AACSA;AAEpBA,QAAOA,QACLA,SAAoBA,OAAgBA,MAKxCA,CAJIA,IAEFA,UAAiBA,yBAEnBA,C;;;;CvB1JSC,kBAwHeA;AAvHtBA,WACEA,OAAOA,IA6HFA,SArHTA;KAPSA,sBACLA,WAMJA;KAHyCA,GA6KEA;AA5KvCA,yCAEJA,E;EAEQC,IAAUA,WA4GMA,aAOfA,EFxNSA,GEqGoCA,QAAeA,OAAMA,C;EAKtDC,UAuGGA,UF6FxBnJ,UEtFSmJ;AA7GUA,iBFtGVA,OAySTnJ,UEjMAmJ,CADEA,OA8KFA,cA7KAA,C;CAOSC,QACPA;IA4FsBA,SA3FpBA,CAkGKA;KAjGIA,cACOA;;GAEDA;AACfA,wCAIAA,OAAUA,QAEdA,C;CAkBKC,IACqBA,OA6DFA,SA7DLA,WAoEVA,OAjETA;AADEA,OAqH8CA,yCArH1BA,KACtBA,C;CA6BKC,MACHA;AAAwBA,IA4BFA,SA5BLA,QAmCVA,SAbTA;AArBsBA;AACpBA,WAAyBA,QAAzBA,QACeA;GAIYA,EAiFcA;AAhFvCA,0BACUA,QAAoCA,EA+EPA;CA9ExBA,QAIfA;QAIqBA,GACnBA,UAAMA,SAGZA,C;CAgBaC,aAEEA;AACbA,WACiBA,MAARA,O1BzJ0BA,gB0ByJsBA;AAEzDA,QACFA,C;EAEqBC,GACnBA;IApBsBA,SAoBLA,QAbVA,EAuCTA;AAtBgCA;AACVA;AACpBA,WAAyBA,YAAzBA,QACeA;AACbA,QAAkBA,UAMpBA,SACEA;KAEAA;CAKFA,IAAYA;AAGZA,QAFAA,IAGFA,C;EAEAC,IACEA;AAS8CA,6CAT5BA,MAAiBA,WAGrCA;AAFeA,WAAoCA,EAURA;AATzCA,WAAoBA,OACtBA,C;AAuB0BC;EAAlBA,IAAUA,mBAAcA,C;CAEzBC,MAESA,UADPA;AAAPA,QA9EsBA,gBA+EHA,OACbA,KAAQA,GAChBA,C;EAKqBC,cACZA;IAvFeA,UAwFRA;AAAKA,eACbA;A1BghBRhP,cAEyBA,QAhIGgP,QA8H5BhP,Y0BlhBEgP,QAGFA,C;;EC1LwBC,GACtBA;IACSA;AAAPA,QAGHA,WADCA,WACDA,C;;;EAC+BC,GAC9BA;IACSA;AAAPA,QAGHA,WADCA,WACDA,C;;;ECtEMC,WACLA;AAAiBA,gBAAmCA;AAMfA;AAIrCA,4CAE+BA;AAAlBA;AAGXA,WACMA;AAAJA,UzBqBOA,OAAcA;AACdA,OAAcA;AACRA;AyBlBXA,UAdaA;mBAsBRA;AAATA,oBACcA;AACZA,8EACkBA;AAChBA,SAA0BA;AAeRA,SAdbA,WAELA,wBfgYUA,EAAUA;We3ZPA;AA6BoBA;IAGjCA;AAEAA,UAA4BA,SAKVA,IAHpBA,uBfoXNA;AAOEA;AezXgBA;AfiSE3W;;;Ae9RZ2W,UAGJA,UAAMA,iCAERA,YACeA;;Gf4WWA;Ae3WxBA,QAIEA;KAIgCA;AAChCA,SAEEA,UAAMA;KAERA,M9BmdGlI;CetFPvM,Ke3XMyU,KAGGA,GfqXmCA;AerX1CA,6CAoBJA,CAjBeA;AACbA,QACEA;KAIgBA;AAChBA,SAEEA,UAAMA;AAERA,OAEWA,kCAGbA,SACFA,C;;;;;;CsB3COC,IAAcA,eAAKA,C;;CA0DnBC,IACKA,mBAAuBA;AACjCA,kBACFA,C;EAMQC,QACQA;AACdA,gCACWA,aAISA;AACdA;QAEmCA;AACnCA;QAEmCA;AACnCA;QAEmCA;AACnCA;QAEmCA;AACnCA;QAEoCA;AACpCA;QAEAA,OAAJA,uBrCiRJA;AqC/QMA,OAA4BA;;AAEpBA,OAGZA,WAAoBA,WAGtBA;AAFEA,QAA8BA;UrCwScA;AqCvS5CA,6BACFA,C;;ECvCQC,MA6YyBA,aA1YHA,UA0YqBA;AA1Y5BA,QAEvBA,C;GAsBgBC,GACQA,QAAaA,EAErCA,C;;;;CtB9IUC,IAESA,yBADSA;AAG1BA,SAAiBA,Of0gC8BnkB,iBe1/BjDmkB;AAb4CA;AfugCKnkB;Aeh+BjDmkB;AAtCoBA,mBAShBA;AAEFA,OfigCEC,eAVWD,aADFA,Qet/B+BA,OAC5CA,C;;EAiCKE,iBACHA,MAAQA;;GACAA;;CACAA;QACVA,C;EAWKC,MACHA;sBA0NQA;GApNNA;GAAQA;;;GACAA;;GACAA;;CACAA;;AACRA,QAMJA,MAHIA;AACAA,QAEJA,E;EASIC,QACFA;AAAqCA,4CAGnCA;OA6BIA,MADgCA,YAzBtCA,SACiBA;AAEfA,cACMA;AAAJA,QAAoCA;CAC5BA;YAiLXA;AAhLQA,kBACDA,OAAmCA;AAGLA;AAChBA,UADCA,0BAGdA,kBACDA,OAAmCA;AAEvCA,YAGAA,eACMA;;AAAJA,QAAwCA;CAChCA;;CACAA;sBAGJA;AAAJA,UAAwCA;GAChCA;;GACAA;;CACAA;gBAIdA,QACFA,C;AFlNAC;CEmUOA,IACHA,oBAAaA,IFhURA,eEgU6DA,C;;EFxT/DC,UAEgBA,kCAA2CA;AAChEA,SAAkBA,QAoDpBA;AAhDEA,4BAGMA;AAoB6CA;AAlBnCA,SAENA;AAGRA;AAmC0CA;AAxC5BA,IAgBhBA,eAEmCA;AAA7BA;AACJA,YACEA,MAAqBA,QAuB3BA;AAbUA,yBACFA,QAYRA,EAPkBA;GACCA;AAAjBA,cACmBA;CACjBA;AACAA,UAAMA,WAAkDA,KAE1DA,QACFA,C;EAEOC,UAGLA;aACmBA;AACLA;AAEAA,KADKA,UAASA,QAK9BA;AAHIA,sBAGJA,CADEA,OAAOA,aACTA,C;EE4eOC,UhBlFPA,oCgBqFcA,MACDA,0BAGAA;iBAeDA,GAbVA,UAEEA,6QACuBA;AAMEA;4LAFCA;AACxBA,UhBpLczX;;AgBsLZyX,SAAcA;AACdA,WACKA,cACLA,KACEA,0BhB1LUzX;;AgB+LNyX;QhB/LMzX;OgBqMNyX;AACAA;QhBtMMzX;;CAmHlBA;AgByFYyX,YAIJA;CACAA;AACAA,QA2CVA,CAzEmBA,IAiCbA,SAAcA;AACDA;GAANA,IAIIA;GAANA;AACPA,UAEEA,qBAQIA;MAPWA;GAANA;AACPA,WACYA;;AACVA,MAJGA,IAQPA,UACEA,iBhBtOYzX,OgBuOWyX;YAGHA;OAEtBA,SAAoBA;aAIxBA,WAEEA,MhBlPgBzX;agBqPdyX;CACAA;AACAA,QAMNA,EAHEA;CACAA;GhB3I4CA;AgB4I5CA,6BACFA,C;;EhB6C0BC,MACtBA;sBACEA,IAAsBA;KACjBA,WACLA,IAAsBA;KAQtBA,mBAI6BA,GAJ7BA;AACEA,sBACEA;KACKA,WACLA;KAGMA,QAIbA,C;;AuC/nBkBC;CAAdA,IAAcA,gBAAeA,C;AvC6JKC;EAAzBA,GAAcA,iBAAkCA,C;;CR1IzDC,cACDA;AAAJA,WACEA,2BAAkCA,OAGtCA;AADEA,wBACFA,C;;;GAoFWC,GAAcA,+BAAoBA,YAAwBA,C;GAC1DC,GAAqBA,QAAEA,C;CAE3BC,IAKaA,cAJEA,8BAEGA;AAKFA,KAFhBA,GAAWA,QAKlBA;AADEA,sBAD0BA,KAAaA,QAEzCA,C;;;GAWSC,GAAgBA,WAAMA,EAAYA,C;GA2IhCC,GAAcA,kBAAYA,C;GAC1BC,eAGSA,SACFA;AAChBA,WAEgDA;KAGzCA,WAC0CA;KAC1CA,OACoCA,0CAAQA;KAKXA;AAExCA,QACFA,C;;GAkBQC,GAAgBA,WAAMA,EAAYA,C;GA8D/BC,GAAcA,kBAAYA,C;GAC1BC,UA/DmBA,KAmE1BA,oCAMJA;UAJMA;AAAJA,SACEA,8BAGJA;AADEA,sCACFA,C;;;CAoCOC,IAAcA,oCAAyBA,EAAQA,C;;CAc/CC,IAELA,iCADmBA,EAIrBA,C;;CAoBOC,IAAcA,wBAAaA,EAAQA,C;;CAcnCC,cACDA;AAAJA,WACEA,iDAIJA;AAFEA,mDACaA,WACfA,C;;CAOOC,IAAcA,qBAAeA,C;EAEpBC,GAAcA,WAAIA,C;;;CAO3BC,IAAcA,sBAAgBA,C;EAErBC,GAAcA,WAAIA,C;;;CIrkB3BC,IAGLA,wBAFuBA,EAGzBA,C;;CAkDOC,oCAEkBA,0DAIJA,SACGA;AACtBA,uBACqBA,qBAAkCA;KANnDA;AAMFA,KAIIA;AAAJA,gBACaA,WACAA;AAEXA,eAgENA,CA3DIA,8BACaA;AACXA,WACEA,aACEA;AAEUA;AAzBdA,UA2BOA,WACLA;AACYA;AA7BNA,MAsEDA;GAhCYA;AACrBA,iBACaA;AACXA,mBAKWA;AAHTA,OA3CiBA;AAmDrBA,WAvCuCA;AA2CrCA,WACQA;SAEDA,WACGA;;AA3DSA,UA+DTA;AACFA,OApD6BA,cAwDAA;AAAPA;AApEXA,KAsErBA,WAFeA,oBAEyBA,gBADCA,cAS7CA,MAFIA,iCAF0BA,aAI9BA,C;AuBWyBC;CAAbA,MAAaA,sCAAwBA,C;EAsVzCC,IAGiBA;AACvBA,QAAOA,OACLA;AAEFA,QACFA,C;CA+QEC,MACWA;;AACSA;AAEpBA,QAAOA,QACLA,SAAoBA,OAAgBA,MAKxCA,CAJIA,IAEFA,UAAiBA,yBAEnBA,C;CAgBOC,IAAcA,yBAAqCA,C;AnB3uBhCC;EAAlBA,IAAYA,oCAAcA,C;CwC/C3BC,IAAcA,YAAMA,C;AxC8BIC;CAHjBC,MAAoBA,eAAsBA,C;EAGhDD,IAAYA,iBAA+BA,C;CAG5CE,IAAcA,sBfmaLA,cenaiDA,C;EAQxDC,IAAeA,iBAAgCA,C;;;CyChBjDC,IAAcA,QAAWA,C;;;EzC6cxBC,IAAUA,aAAUA,OAAMA,C;CA4B3BC,cAAuCA;AAAzBA,6BAAmCA,C;;EqB2wBrBC,MACnBA;AACZA,WACEA,UACEA,MAnEMA,UAC8BA,YAkEQA,gBAEzCA,UACKA;AACEA;MAC4BA;AAAxCA,MAxEQA,UAC8BA,cAD9BA,UAC8BA,eA0ExCA,QACDA,C;;;EAaDC,MACEA,UAAMA,mCAA8CA,MACtDA,C;;;EAiEAC,MACEA,UAAMA,mCAA8CA,MACtDA,C;;;EAGAC,MACEA;SACEA;AAEcA,OAAMA;AACtBA,gBACEA;AAEFA,QACFA,C;;;EAsHgBC;aA85CZA;GHzhFc1V;GG06EK2V;;AAmHvBD,mBpCrzEOzL;GoC0xEH0L;IHlgFc3V,YjCwOXiK;AoC8xEP0L,MpC9xEO1L;GoC+xEH0L;AAAJA,WrBh5EeC;IqB46ENF;GACLA;AAAJA,WpC5zEOzL;GoCg0EHyL;AAAJA,WpCh0EOzL;AoCm5BSyL;sC;EAMHG;UAAsBA,SAANA;AAAhBA;;a;GAGgBC;aAqKXA;AApKwBA;AADbA;AT1oC/BA,GS0oC+BA,4B;GA+IpBC,GAAYA,aAASA,C;GAErBC,aACMA;AACfA,WAAkBA,QAKpBA;AAJMA,gBACFA,OAAOA,WAAuBA,UAGlCA;AADEA,QACFA,C;GAEQC,GACUA,UAATA;AAAPA,wBAA6BA,KAC/BA,C;GASWC,aAASA;mBAAYA,C;GAErBC,aAAYA;mBAAeA,C;EA2NlCC,0BAkBcA,mBAOEA,MAMJA,MAq4BSA;AA73BhBA,iBH7iDWpW;GGwjDOoW;AACXA,kBHzjDIA;KGohDdA;AAsCGA,oBACWA;AAiBkCA;AAX1CA;AAWVA,OAAYA,kBAHMA,GAIpBA,C;GA2iBSC,UAAcA,mBA70BAA;AA60BgBA,2BAAHA;AAAbA,QAA8BA,C;GAkT5CC,GAAgBA,mBAAaA,C;GAI7BC,GAAYA,mBAAcA,C;GAE1BC,GAAeA,mBAAiBA,C;CAqGlCC,IAAcA,gBAAKA,C;CA0BZC,MACZA;AADcA,mBAahBA;AAZEA,SAA4BA,QAY9BA;;AAXeA,YACOA,IAAhBA,aACsBA,IAzIHA,mBA0IDA,IAjyCDA,aAkyCjBA,aAAcA,QACdA,aAAcA,QACAA,IAAdA,iBAzIeA;;AA0IGA,sBA/wCMA;AAgxCTA,mBAzIGA;;AA0IGA;AACHA,iBAVtBA,QAWFA,C;;;;;EA5oBEC,gBACEA;MAAaA;CACbA;AAznCUA,QAAgBA,MAA6BA;;aHzzBvC3W,clBkJlBtC;AqBuqBYiZ,QAAgBA,MAA6BA;OA+nCzDA,C;;;EAEwBC,MACtBA;+BACEA;KAGAA,mBACEA,GADFA,OACEA,OADFA,OAIHA,C;;;GAwuCKC,gCACCA;eAOUA;GADAA;AACAA;GACDA;AAChBA,SACeA,gBACwBA;AAIZA,SACCA;AAixC9BC,GAjyCSD,0BAcKA,YACyBA,eAfrCA,QACFA,C;CAqXOE,cAC0CA;AAA7CA,WAACA,sBAA0DA,C;;EAiO/DC,gBACIA;AAAMA;AAANA,QAAkDA,C;;;EAMtDC,QACEA;OAA0BA,YAA1BA,QACaA,uBAGfA,C;;;EAQAC,QACEA;AAAaA,wBAAyBA,gBAAtCA,wBAGFA,C;;;GA0NSC,GAAgBA,eAAcA,C;GAE9BC,GAAWA,qBAAkBA,SAAiBA,EAAUA,C;GACxDC,GAAYA,kBAAcA,EAAcA,C;GACxCC,GAAeA,kBAAiBA,EAAKA,OAAMA,C;GAc3CC,GAAcA,WAnBDA,UAKEA,QAAiBA,EAAKA,OAcEA,C;GAQrCC,GACeA,UAAjBA;AAAPA,mBAAOA,cACTA,C;EAEOC,mBACDA;AAAJA,QAAqBA,QAMvBA;AA9BoBA;AAAmBA,wBAyBxBA,YAKfA;AA7BwCA,6BAyBxBA,aAIhBA;AA/BuCA,wBA4BxBA,YAGfA;AA5B0CA,+BA0BxBA,eAElBA;AADEA,OAAOA,cACTA,C;GAIWC,GACLA,UADkBA,SAAaA;AAAdA,qBACjBA,YACEA,C;GACGC,GACUA,UAAjBA;qBAAiBA,SAA2BA,MAAgBA,C;GACxDC,GACNA;AAAIA,WAASA,OAAWA,KAAMA,WAAeA,MAAgBA,SAI/DA;GA5CoBA;AAAmBA,4BAyCxBA,SAGfA;AA3CwCA,6BAyCxBA,UAEhBA;AADEA,QACFA,C;GAEWC,GAAQA,wBAAeA,OAAYA,GAAYA,C;GAC/CC,GACLA,UADeA,SAAcA;AAAfA,qBACdA,YACEA,C;GACGC,GAC0BA,UAAhCA,SAAiBA;AAAlBA,UAAuBA,uBAAiDA,C;GAyCpDC,GT/lIxBA,OS+/HqBA,QAAcA,GAiGlBA,QAAOA,GAExBA;AADEA,gBAA+CA,KAAiBA,gBAClEA,C;EAwBIC,IAecA,sDAKLA,SACEA,WAAeA,aAOdA,QAAeA;GAQlBA;AAAJA,OACEA,eAA2BA;QHzpIlBjY;GGmqITiY;WAAeA,IAAYA;AACtBA,kBHpqIIA;KG+nIdA;AAsCGA,oBACIA;AAKIA;GAQJA;AACEA,KADoBA;AAIjCA,OAAYA,mBACdA,C;EA4PQC,IAAoCA,UAAxBA;iCAAmBA,KAAaA,C;CAEtCC,MAAEA,mBAGhBA;AAFEA,YAA4BA,QAE9BA;AADEA,OAAaA,cAAUA,KAAQA,MACjCA,C;CAaOC,IAAcA,aAAIA,C;;;AEt3IqBC;EAAPA,IAAOA,mBAAqBA,C;;;EAC9BA,IAInCA,WACEA,OAAOA,UmB7VXA,wBnBiWCA;AADCA,OAAOA,YACRA,C;;;CmB9VMC,IAELA,oDADiBA,2BAEnBA,C;;EC3IGC,uBA6ELA,C;CAnDSC,IAAcA;sBACHA;;OACAA;;OACGA;;OACLA;;OACCA;;OACFA;;OACIA;;OACIA;;OACLA;;OACDA;;QACDA;;QACDA;;QACAA;;QACEA;;QACEA;;QACHA;;QACEA;;QACLA;;QACEA;;QACWA;;QACAA;;QACTA;;QACMA;;QAvBFA,eAwBhBA,C;;EnB/CFC,iCAMLA,C;;EAakBC,IACdA;AACSA,INoXSA,YMpXhBA,kBA6DJA;ANqESA;AM9H4DA;UAElDA,MAAjBA,WAYmBA,6BAZnBA;AACYA;AN2HLA,GMvHgBA;ANuHhBA,GMtHyBA;AAE9BA,uBAGEA,MAAqBA;KAChBA,KACDA,eACAA,WACFA,MAAqBA;KACZA,eACPA,WACFA,MAAqBA,KAK3BA,SAAgBA;AjCoKdA;AiCrIFA,YjC2UFC,WiC3UwBD,iBjCqIpBA,WiCpIJA,C;;EAtDIE,IACEA,YAAeA,aAAOA,MACxBA,C;;;EAoBcC,iBAIKA,EAjDiBA,IAiDCA,EAjDaA;AAkDlDA,SACEA,QAuBHA;GAnBgBA;GAAqBA;GAAhBA,IAAqBA;AACzCA,SACEA,QAiBHA;AAbqBA,UAAgBA;AACpCA,SACEA,QAWHA;GAPqBA,IAAyBA;AAC7CA,SACEA,QAKHA;AADCA,QAAcA,EAAKA,SAAgBA,EAAKA,OACzCA,C;;;EAEqBA,IAAWA,QAAMA,EAAIA,C;;;GAuErCC,GAEaA;WAFKA,aAELA;OACDA;OACIA;OACIA;QACRA;QACWA;QACAA;QACTA;OAGCA;;;AACAA;OADAA;AAEGA;OAFHA;AAGAA;QAHAA;AAIFA;QAJEA;AAKAA;OAGDA;;;AACAA;QADAA;AAEFA;OAGEA;;;AACFA;QADEA;AAEEA;QAFFA;AAGDA;QAHCA;AAIJA;QAJIA;AAKMA;QA9BVA,eA+BbA,C;;;ECtLkBC,eFsErBA;AEpEFA,WAAkBA,QAUnBA;AANUA,OFkIFA;AEhILA,mBAIHA,MAFGA,QAEHA,C;;;EAQCC,GReAC;UQZED;;MACAA;;MACAA;sDACFA,C;;AAMEE;EADQA,IACRA,iBAiCDA,C;EAlCSC,IACRA;mBADQA,cACRA;4BAAkBD,SFsClBA,cErCEA;AACAA;;;Ga8GFE;Ab3GcF;YCiGgBA,KHnBzBA,wBE9ESA;ODvBoBA,WckIlCE;A/C2QFC;WAtMID,gBiCtMyBF,ajCsMzBE;AN8tGFF;AwCz4GgBA,OAAaA,MF4B7BA,mBE3BwBA,MAAeA;YAErBA;ItC8pBAxa,asC5pBOwa,YAAMA;YFyF1BA,CAlELA,wBErB+BA;AACzBA;WAMFA;WACFA,QAAeA;GAEbA;WACFA,QAAeA;GAEbA;WACFA,QAAeA;OAhCTC;AACRA,wBADQA,C;;;EAqDCG;UFoDJxZ,MAlELA;AAwFKwZ;;CAxFLA;AAkEKA,CAlELA;AAkEKA,cE/CSA;AF+CTA,cE9CSA;AANLA;;a;GAUAC;UF0CJzZ,MAlELA;AAkEKyZ,CAlELA;AEwBSA;;a;EAIAC;UFsCJ1Z,MAlELA;AAkEK0Z,CAlELA;AE4BSA;;a;EAWNC,IACUA;;AFgDRA;AtCqxGLA;AsCrxGKA,CAxFLA,qCEuDIA,KAVFA;AFqBG3Z,GAlELA;AAkEK2Z,CAlELA;AAkEKA;AAsBAA;;AAtBAA,CAlELA;AAkEKA;cEEWA;AAEhBA;AAIoBA,SF1EpBA,sCE2EkBA,GAAJA,SAAmBA;AAC/BA,WACEA,MASNA;AAPYA;MACWA;AACnBA;AACAA;AACAA;QAGJA,C;EAaKC,IFjCEA,wBAlELA;AEsGAA,WACEA,MAqCJA;;AF1EOC,GAlELA;AAkEKD,CAlELA;AAkEKA;AAAAE,GAlELA;;AAkEKF;AAAA5Z,GAlELA;AAkEK4Z,CAlELA;gBEqHsBA;AFnDjBA;IEsDDA,Gd7JcG,Oc8JoBH,OADlCA,YlC8KsBA,SAwB5BxT,SAxB2DwT,KAAVA,KAAoBA,GAwBrExT,mBAW0BwT,MkChNtBA,WlCgNaA;WAASA;AgCvQnBA,sBAAA5Z,GAlELA;AAkEK4Z,CAlELA;;AEmIsBA,2FAEfA,GAAyBA;AFnE3BpZ,GAlELA;AAwFKoZ,sBF+vFcA;;AErxFdA;iBE0EPA,C;EAEKI,GAAqBA;CF9IxBA;AAwFKA;AEsDmBA,QAEgBA,C;EAUrCC,QAEHA;AAAkBA,CAAlBA;GACAA;;AACAA;AACAA;GtCsekBA;AsCpelBA,UACEA;AACAA,MAkBJA,CAfEA,iDACEA,OAAuBA,QADzBA;AAMAA,YADiCA,CAbjCA,aAcAA;AACEA,OF3GGA,gBE6GLA;CA6J8BA;AAlP1BA,UF7CCC,iBE8CHD;CF3FFC;AAwFKA,0CE0D8CD;AF3HpBE;AE2HNF,qBAmC3BA,C;EA3BKG,6B;EA8BAC,QAEHA;IAAIA,WACFA,MAgBJA;IPuHoBA,aOnIhBA,QAAsBA;AACtBA,MAWJA,CARoBA;GACcA;;GACPA;AAAzBA,OACgBA;CAGhBA;AACAA,WACFA,C;EAnBKC,6B;EAAAC,4B;EAAAC,6B;EAsBAC,IACHA;CA6H8BA;GA5H1BA;AAAJA;CAEEA,QAEFA,MACFA,C;EAEKC,IACUA;AFhIRA,2BEoIDA,KAFFA;AFlIGA,0BE2IDA,KAFFA;AFzIGA,2BEkJDA,KAFFA;AFhJGA,6BE+ODA,KAxFFA,eA0FJA,C;;EA5RIC,IACEA;AAAUA,SF9CdA,UE+CMA,MAQHA;MFvDHA;AEwbEA,sBPxWKC,CKhFPA,0BA6CKD;IEQCA,WAEHA,C;;;EAmKDE,IACEA,cAAaA,EF3NjBA,UE4NGA,C;;;EAKDA,IACEA,cAAYA,GACbA,C;;;EAKDA,IACEA,cAAaA,EFzOjBA,OE0OGA,C;;;EAKDA,IACEA;AAAUA,SFhPdA,iBEiPMA,MAsFHA;AAjFWA,QFtPdA,gBA6CKA;GE2MMA;;AAALA,WFtLDA,GEuLOA;AAAJA,WFvLHA,IAlELA,wBE2PmCA;AAE3BA,MA0ELA,MAtEiBA,SAAoBA;AACXA,OAASA,sBACzBA,GAAyBA;AFjMjCA,IAlELA,wBFu1FmBA;AIllFXA,MAkELA,KA9DiBA;;GAAmBA;GACLA;AAEpBA,QF5QdA,qBE6QUA;AAAJA,WACEA;MAEAA,YAEaA,QFlRrBA,uBEmRUA;AAAJA,UAyDwBA;MAtDtBA,YAEaA,QFxRrBA,gBEyRMA,MAAYA;SAERA,WACFA;AACAA,MAAaA,EF7RrBA,QE+RMA,MAwCHA,CArCKA;AAAJA,KFhOCA,CEiOCA,GFnSNA;GEwSSA;AAALA,cACiBA;AFvOhBA,CAlELA;GE6SUA;AAAJA,SACEA;KACKA,SACLA,iBAAoBA,MFhT5BA;;AEmTiCA,QFnTjCA;2BA6CKA,uBE+QCA,cAAgBA,EF5TtBA;CE6TMA,UAAqBA,IAAgBA,GAAiBA,WAC7CA;AAAJA;AAIgBA;AAJhBA,YAILA;CACAA,SFtRDA,kBE0RFA,C;;;EAsCHC,IFhUKA,kBEkUJA,C;;;EAKDA,cACMA,EAAMA;AAAVA,YFnTGA,IAlELA,wBEsX6BA;AFzUxBA,mBE4UJA,C;;AA8C4CC;EAA3CA,IAAWA,0CAAgCA,qBAAmBA,C;;;EElenCC,cAC7BA;WJ4HKA,CAlELA;MIzDAA;WJ2HKA,CAlELA,2BIxDDA,C;;AAsDCC;EADqDA,IACrDA,iBAcDA,C;EAfsDC,IACrDA;mBADqDA,cACrDA;4BAAkBD,SJElBA,cAkEKza,MAlELA;;;AAkEKya,CI/DHA;AACAA;MAGoBA;YDyDQA,KHnBzBA,wBItCiBA;;AJ2DjBjb,MAlELA;;AIUAib,MAAaA;AJwDRA,CIvDLA;OAdqDC;AACrDA,wBADqDA,C;;;EC5DvDC,aACMA,SACFA;IL6DFA,UAwFKA;;IAxFLA,uDAwFKA;;IAxFLA,mDKrDFA,C;;;EAIE/B,IACEA,WACDA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;c5CmCQgC,IACTA,0BADSA,A;cCmtCmBC,IAC1BA,IAAeA;0CADWA,A;cAKAC,IAC1BA,IAAeA;0CADWA,A;cAKAC,IAC1BA,IAAeA,WADWA,A;cAKAC,IAC1BA,IAuNaA;8DAQRA,GAhOqBA,A;cAKAC,IAC1BA,IAAeA,aADWA,A;cAKAC,IAC1BA,IA4NaA;kEAQRA,GArOqBA,A;cAKAC,IAC1BA,IAAeA,WADWA,A;cAKAC,IAC1BA,IA+OaA,wDAORA,GAvPqBA,A;cAKAC,IAC1BA,IAAeA,aADWA,A;cAKAC,IAC1BA,IAmPaA,4DAORA,GA3PqBA,A;ckBvyCRC,IAClBA,MADkBA,A;cWkGCC,IAAkBA,UAAlBA,A;cA4BVC,IAAWA,WAKvBA,IALYA,A;cAMAC,IAAmBA,WAK/BA,IALYA,A;cCgYUC,IduXnBA,KAASA,KcvX+CA,kYAArCA,A;cf+IHC,IAAmBA,iCAAnBA,A;cA2FFC,sC;coBvNVC,IpBhgB8BA,MoBggBDA,IAA7BA,A;cCo+GYC,IAAiBA,MAAjBA,A;cI9gITC,IAAYA,WAYxBA,IAZYA,A", + "x_org_dartlang_dart2js": { + "minified_names": { + "global": "A,1010,B,1178,C,181,D,897,E,120,F,831,G,309,H,1230,I,943,J,910,K,134,L,830,M,850,N,907,O,913,P,1235,Q,954,R,1171,S,1080,T,94,U,138,V,247,W,838,X,839,Y,871,Z,896,a,36,a0,948,a1,1158,a2,983,a3,1239,a4,363,a5,104,a6,49,a7,47,a8,46,a9,12,aA,54,aB,118,aC,846,aD,830,aE,856,aF,857,aG,858,aH,859,aI,862,aJ,866,aK,867,aL,886,aM,887,aN,889,aO,895,aP,898,aQ,899,aR,904,aS,915,aT,927,aU,928,aV,929,aW,932,aX,93,aY,934,aZ,940,a_,905,aa,851,ab,891,ac,900,ad,18,ae,917,af,959,ag,830,ah,119,ai,128,aj,1185,ak,1238,al,842,am,843,an,911,ao,916,ap,926,aq,946,ar,960,as,962,at,964,au,994,av,1070,aw,1113,ax,278,ay,111,az,82,b,1202,b0,947,b1,318,b2,978,b3,984,b4,988,b5,1125,b6,1011,b7,1012,b8,1013,b9,1014,bA,860,bB,875,bC,882,bD,885,bE,888,bF,45,bG,530,bH,919,bI,920,bJ,921,bK,922,bL,923,bM,924,bN,925,bO,930,bP,931,bQ,938,bR,939,bS,50,bT,944,bU,317,bV,961,bW,963,bX,316,bY,965,bZ,1223,b_,1156,ba,1015,bb,1023,bc,1027,bd,1041,be,1096,bf,1100,bg,1169,bh,1029,bi,1030,bj,1116,bk,1039,bl,1052,bm,1088,bn,1089,bo,103,bp,246,bq,391,br,829,bs,840,bt,308,bu,830,bv,262,bw,849,bx,854,by,855,bz,319,c,861,c0,977,c1,985,c2,986,c3,987,c4,990,c5,992,c6,1006,c7,1007,c8,1008,c9,1009,cA,892,cB,893,cC,527,cD,901,cE,902,cF,906,cG,914,cH,918,cI,935,cJ,936,cK,1221,cL,945,cM,949,cN,952,cO,955,cP,1228,cQ,966,cR,967,cS,968,cT,969,cU,970,cV,971,cW,972,cX,973,cY,975,cZ,979,c_,976,ca,1016,cb,1017,cc,1022,cd,1024,ce,1025,cf,1168,cg,1028,ch,140,ci,16,cj,1186,ck,39,cl,830,cm,844,cn,845,co,852,cp,853,cq,863,cr,864,cs,1232,ct,320,cu,872,cv,873,cw,874,cx,877,cy,877,cz,878,d,950,d0,981,d1,982,d2,989,d3,991,d4,995,d5,996,d6,997,d7,998,d8,999,d9,999,dA,1037,dB,1211,dC,1038,dD,1040,dE,1040,dF,283,dG,1059,dH,1059,dI,1060,dJ,1061,dK,1062,dL,1075,dM,1076,dN,1079,dO,807,dP,1129,dQ,1135,dR,1143,dS,1165,dT,1187,dU,13,dV,1198,dW,1198,dX,1198,dY,778,dZ,778,d_,980,da,999,db,1000,dc,1001,dd,1002,de,1003,df,1004,dg,1005,dh,1051,di,1018,dj,1019,dk,371,dl,1020,dm,1021,dn,1021,dp,1021,dq,1021,dr,253,ds,1026,dt,131,du,1031,dv,1032,dw,1033,dx,1034,dy,1035,dz,1036,e,909,e0,1201,e1,1223,e2,1204,e3,77,e4,365,e5,1226,e6,1226,e7,827,e8,837,e9,1247,eA,62,eB,33,eC,1,eD,1199,eE,17,eF,0,eG,41,eH,809,eI,1130,eJ,1246,eK,1164,eL,1046,eM,1049,eN,1081,eO,1126,eP,1231,eQ,1179,eR,1212,eS,1147,eT,1207,eU,1090,eV,1173,eW,1222,eX,1077,eY,1225,eZ,1232,e_,1200,ea,1205,eb,1210,ec,894,ed,830,ee,1067,ef,1208,eg,1155,eh,942,ei,1072,ej,1176,ek,830,el,1091,em,1095,en,1097,eo,1083,ep,1068,eq,1106,er,1115,es,1139,et,383,eu,121,ev,158,ew,1086,ex,274,ey,125,ez,1136,f,908,f0,1073,f1,1087,f2,1163,f3,830,f4,1144,f5,1182,f6,1229,f7,830,f8,1123,f9,1224,fA,257,fB,259,fC,258,fD,256,fE,130,fF,148,fG,179,fH,241,fI,165,fJ,157,fK,387,fL,254,fM,275,fN,177,fO,362,fP,270,fQ,88,fR,388,fS,261,fT,1148,fU,1152,fV,116,fW,1189,fX,37,fY,22,fZ,50,f_,830,fa,1234,fb,1159,fc,1045,fd,1157,fe,1160,ff,1194,fg,1223,fh,1240,fi,1092,fj,1093,fk,1098,fl,1099,fm,1153,fn,1066,fo,1069,fp,1085,fq,1111,fr,1114,fs,1120,ft,1140,fu,1141,fv,1220,fw,244,fx,166,fy,168,fz,174,h,115,h0,1227,h1,40,h2,21,h3,1213,h4,1214,h5,1215,h6,1216,h7,1217,h8,1218,h9,1242,hA,1237,hB,868,hC,869,hD,974,hE,879,hF,880,hG,881,hH,1206,hI,1177,hJ,1190,hK,1209,hL,1048,hM,1122,hN,1181,hO,830,hP,1054,hQ,830,hR,1196,hS,1121,hT,1172,hU,1236,hV,1246,hW,1071,hX,1134,hY,956,hZ,957,h_,76,ha,1243,hb,1244,hc,1245,hd,1084,he,1112,hf,1142,hg,1064,hh,1065,hi,1128,hj,828,hk,832,hl,833,hm,834,hn,835,ho,836,hp,841,hq,1170,hr,1203,hs,830,ht,1050,hu,1161,hv,1162,hw,1180,hx,1184,hy,1138,hz,1137,i,23,i0,1124,i1,1078,i2,1131,i3,1132,i4,1133,i5,1044,i6,1191,i7,1192,i8,1193,i9,1195,iA,1110,iB,1117,iC,1118,iD,1119,iE,1127,iF,1053,iG,1103,iH,1167,iI,154,iJ,176,iK,156,iL,260,iM,364,iN,95,iO,372,iP,361,iQ,92,iR,146,iS,141,iT,147,iU,142,iV,386,iW,385,iX,139,iY,135,iZ,122,i_,958,ia,1197,ib,1241,ic,830,id,1183,ie,1042,ig,1055,ih,1056,ii,1057,ij,1058,ik,1094,il,1145,im,1146,io,1174,ip,1175,iq,1043,ir,1047,is,1074,it,1101,iu,1102,iv,1104,iw,1105,ix,1107,iy,1108,iz,1109,j,953,j0,52,j1,152,j2,242,j3,145,j4,169,j5,153,j6,245,j7,173,j8,144,j9,155,jA,124,jB,123,jC,370,jD,370,jE,81,jF,79,jG,80,jH,117,jI,136,jJ,238,jK,71,jL,392,jM,78,jN,1219,jO,389,jP,87,jQ,272,jR,1233,jS,85,jT,89,jU,390,jV,38,jW,847,jX,848,jY,809,jZ,870,j_,1082,ja,323,jb,382,jc,268,jd,282,je,178,jf,267,jg,277,jh,276,ji,271,jj,269,jk,113,jl,112,jm,182,jn,48,jo,35,jp,1149,jq,1150,jr,1151,js,1154,jt,55,ju,83,jv,34,jw,132,jx,51,jy,1188,jz,70,k,937,k0,830,k1,1213,k2,1214,k3,1215,k4,1216,k5,1217,k6,1218,k7,1242,k8,1243,k9,1244,k_,941,ka,1245,kb,1130,kc,1084,kd,1112,ke,1142,kf,1064,kg,1065,kh,1128,ki,159,kj,161,kk,160,kl,162,km,164,kn,163,ko,167,kp,170,kq,172,kr,171,ks,175,kt,827,ku,829,kv,828,kw,69,l,865,m,903,n,883,o,884,p,890,q,239,r,1063,t,1166,u,933,v,993,w,876,x,830,y,912,z,951", + "instance": "A,1342,B,1283,C,1317,D,1348,E,1249,F,1323,G,1347,H,1264,I,1360,J,1374,K,1292,L,1300,M,1271,N,1262,O,1263,P,1344,R,1367,S,1371,T,1287,U,1291,V,1296,W,1267,X,1313,Y,1256,Z,1257,a0,1345,a1,1355,a2,1252,a3,1366,a4,1285,a5,1293,a6,1303,a7,1311,a8,1312,a9,1280,aA,1276,aB,1278,aC,1353,aD,1297,aE,1266,aF,1299,aG,1282,aH,1254,aI,1258,aJ,1259,aK,1261,aL,1320,aM,1324,aN,1326,aO,1327,aP,1328,aQ,1329,aR,1330,aS,1334,aT,1336,aU,1337,aV,1340,aW,1343,aX,1350,aY,1354,aZ,1358,a_,1334,aa,1281,ab,1294,ac,1295,ad,1307,ae,1260,af,1261,ag,1326,ah,1332,ai,1333,aj,1335,ak,1339,al,1341,am,1356,an,1357,ao,1359,ap,1364,aq,1375,ar,1375,au,1272,av,1286,aw,1290,az,1310,b0,1378,b1,1379,b2,1380,b3,1248,b4,1255,b5,1255,b6,1253,b7,1368,b8,1369,b9,1370,bA,1319,bB,1321,bC,1322,bD,1322,bE,1325,bF,1326,bG,1326,bH,1338,bI,1349,bJ,1352,bK,1358,bL,1361,bM,1361,bN,1362,bO,1362,bP,1363,bQ,1364,bR,1377,bS,1255,b_,1377,ba,1373,bb,1376,bc,830,bd,1288,be,1289,bf,1273,bg,1309,bh,1301,bi,1302,bj,1274,bk,1275,bl,1304,bm,1277,bn,1279,bo,1305,bp,1265,bq,1298,br,1268,bs,1269,bt,1270,bu,1306,bv,1308,bw,1314,bx,1315,by,1316,bz,1318,gA,1342,gG,1347,gM,1271,gP,1344,gR,1367,gS,1371,gX,1313,ga0,1345,ga1,1355,ga3,1366,ga7,1311,ga8,1312,gaC,1353,gaM,1324,gaO,1327,gaP,1328,gaQ,1329,gaR,1330,gaV,1340,gaX,1350,gaY,1354,gai,1333,gak,1339,gal,1341,gam,1356,gan,1357,gb0,1378,gb1,1379,gb2,1380,gbB,1321,gbS,1255,gbm,1277,gbn,1279,gby,1316,gbz,1318,gl,1346,gn,1163,gp,1331,gt,1365,h,1376,i,1284,j,1374,k,1250,l,1346,m,1351,n,1163,p,1331,q,1251,sl,1346,t,1365,u,1372,v,1372" + }, + "frames": "4zHA6HeyiDyB;oCAKAAyB;eAKCbG;kBACeDE;gEAIlBAE;KAGOFO;iGAaAvhDAA8CgBCeANKmEuC,A,I;qMATrClEAAmB0BDeAVWmEoC,A,AAUvCk9CkC,A;6QG9HS8DIAsCwB4CyB,A;0FArBxB5CIAqBwB4CyB,A;mDAohBb9GqB;s5EEnkBLttByC;QAEFojByC;sXEsSFpjB2C;QAEFojB2C;eAuqBwBpjBsB;8vBNl7Bbs0BuB;uEA6BL1GG;oQAuJqBtJqC;6gBA8JlB4LiB;cAAAAa;0CAuBQ3CS;gJAYV2CiB;6FAqBLsDAARFzCiB,A;+FAkBWYW;wfAumBoB3XoB;2KAgCnBAwB;gBASAAuB;8DAyCAhaqC;wfAyQZAmR;iZA4MAAW;qfA0DyBAW;0WAkCJAW;eAOpBAkC;6BAIiBgboD;OAChBhbU;0DAOCk0BI;cAIgBl0BwC;2JASjBAU;0EAiCmBAW;sCAGtBAc;4JAsEK8uBQ;oCAEDFK;AACEAK;wKAyDR5uBAWn5D8BAgE,A;keXojE1BAkC;cAEAA0D;y4CAyPEA4D;6sBAqF6BmwBuC;AACHoCmC;yEA4HtBriDAU/9DTCMA3B4By7Cc,A,M;qDVghElB5rBiD;iKAuJXAY;4EC7iFOgyBI;YACcrhDAAsE3BDAFlJAg9CyB,kF,A;QE4E2B/8CAAuEpBk9CE,A;OAtEWmEI;uBAKKphDAAzCJw/CkB,AAAZ4BI,A;6CA+CMAI;YACkBrhDAAyD/BDAFlJAg9CyB,kF,A;QEyF+B/8CAA0DxBk9CE,A;OAzDWmEI;uBAGKphDAApDJw/CkB,AAAZ4BS,A;4EA0EErhDAA+BTDAFlJAg9CyB,kF,A;QEmHS/8CAAgCFk9CE,A;sDAvBEh9CAA2BTHAFvJAg9CsB,A,0BEuJAh9CkF,A;QA3BSGAA4BFg9CE,A;+DAfoCmDqB;UAElCngDAAYTHAFvJAg9CsB,A,0BEuJAh9CkF,A;QAZSGAAaFg9CE,A;gEAMPn9CAF9JAg9CyB,6B;yJE0K2CsDoB;gLAsCjCZmB;0KAaF1/CAF7NRg9CyB,mG;2DE2O2BsE4D;wTA+EX5gDc;ygBapRPIAA9FF8hDqB,A;2IA4OPtTADjBIhgBgD,A;WCiBJ6U0B;AAC+Dqea;AAA7DuBQ;oBACAAI;iBACmBjWQ;AAErBiWQ;w2CE80BuC3PiB;wiBNt6Bd8HG;gBAIjB3BW;AADuC9DAAgK/BwFQ,A;WAtJOtDO;AAFAuDG;gBAGf3BgB;AAD0ClFAAgKlC4GM,A;gBApFCrGAAzBsBoGG,A;oCA2BECG;uCA2JzBEG;sBAgJMjBmB;kEAyEPtFAA/YwBoGG,A;mEAwZbCG;sEAMAAG;sEAMAAG;sEAMWvGG;uDAMkBDAA7WvC0GK,A;aAgXGnHAApWHiHG,A;uBAsWQlHG;6EAQHoBAApWIJO,A;AAqWJGG;sEAMIGAAlVT4FG,A;uBAqViC7GG;6EAU5BGQ;AACDsGQ;uBAGDvGAAzVH2GG,A;gFAgWIzGAAtVJwGG,A;sBA0VULO;uIAeNEkB;yBAGDII;mFAaCJkB;0BAImBFO;AACEAS;AACtBMM;sFAcK7FsB;AAIANK;iBAGQDK;8CAMiB6FAAxRRpsBc,A;AAyRrBorBM;AAEAJM;AAEADK;sHAwCF4BM;yDAaZ9EK;sEAuBFEG;cAIOuIoB;oSAkFkBzImD;uBAKvB+De;uDAeYSI;uBAEN55CQAvZUm5CoB,A;mEAgee53CAE16BtBgzCqB,A;aF06BsBhzCAE16BtBgzCW,A;CF26BK/yCgBAlFlB4zCiB,A;uCAsFciFO;GAELwDoB;OAAwBrJO;wBAOM9yCO;AAA9ByxCG;gBAA8BzxCAAKrCq2CY,A;SAS0BqEW;AADV5f0B;iBAGXjPAAmCTAAAAAAAACMwqBG,A,A,W;SAlC6BoBoB;AAE/Bz3CG;AADOyxCG;gBACPzxCAAfAq2CY,A;sDAuBWr6CQAhiBoBy7Cc,A;mCAwiBtBr3CQAhiBSq3CgB,A;mBAmiBfz7CMA3iB4By7CkB,A;oBAgjBVn5CMA1hBHm5CoB,A;gEA0lBlBl3CAAoiF6B8tC+B,A;6BAjiFzB8DG;qEAcYuFAAr/BY1EAAuKhBwFQ,A,A;AA+0BQrGAAl7BeoGG,A;0KA87BnBvGAA33BJ0GG,A;IA43BMzGiB;AAYdkFU;sEAUC32CQA8BmBkyCAA15BZgGI,A,AA25BMjGI,A;+DArBXgBC;AADPiDK;0CAsCAn2CAAg8E6B8tC0B,A;mEAr7EtBaC;AADPiHK;6BAKWhEAAnhCwBoGQ,A;kEAwhCCvFAAr7BxBwFK,A;eAs7B4B5GAA56B5B4GsB,A;mEAu7BCfc;gDAeNhEI;AADOjBAA18BFgGO,A;mDAo9BFzFG;iBAKVaG;8GAsBOuIoB;YACGpJG;iBAKVaG;wFA0BWHU;+DAYAAU;uCAWTvC0B;qJAuCcpPuB;mBAiBT2Rc;AADSiEAAzwChBvFAAoEmCoGQ,A,AApEPvFAAuKhBwFK,A,A;QAmmCQ5GAAzlCR4GS,A;MA2lCmBfiB;AAD3BhEI;kiDA2NmB2EQ;qBAEDIO;sCAYA9FAAv1CVgGM,A;AAw1CKjGG;qCAMG2FQ;AACFkHkB;AACElHU;gEAOGIO;gBAELEI;+GAaMNQ;6KAgBFIO;AACjBj4CAAo+DwB8tCAAK/B/mCAAGa6qCAA58GwBoGG,A,A,wCAy8GhBp1CAAgBdm5Ca,A,K,A;oDAh/DY1JAAv3CCNO,A;AAw3CeXM;AAEbgBM;AACcyFW;AAEd/FM;AACc+FW;AACNhGM;AACPgGQ;wDASCIQ;yDAUEAQ;iEAYbFM;uBAIIEe;AAEJEI;kGA6BAvGAApjDwBoGG,A;wIA6jDdvFAA19CTwFK,A;cAy+CahGAAp+CbgGG,A;cAs+CSrGAA9kDcoGG,A;uEAulDV3GAA1+Cb4GS,A;mBA++CIxGAAzhDJ0GI,A;GAkiDMzGG;4HAgBOJAAz/Cb2GM,A;AA0/CG1GG;eAODCAAv/CIOG,A;gDA+/CF6NuB;yDAoLPhPAAHK6OG,S;uBAKP7OAALO6OG,I;oCAWDjGO;+DAKOxBI;AACPtDgB;oGAiBO+KM;wBA4BAjGM;aAWHoDS;AADPnDe;oBAGFnEyB;AACHuHW;gCAMS1LG;cAGV+Ea;AAEa0GW;oBAETtHuB;AACHuHW;kCAKS/LG;cAGV+EgB;AAEuBtbAApuDf4dI,A;AAquDKyEW;gCAGXhLAA95D6BoGS,A;AA+5DdjHQ;AAKhB8LW;mBAqCHjHS;AACAOQ;qBAuFeyGW;AADPnDW;oBAGsBnJAAIpBoHAAz3DPpsBsB,A,AA03DH8qBM,AACALM,W;AANG/CAApFA6JC,AAAOpDa,A;qBAiGKmDS;AAFNrNAA/CKhVAAz0DJ4dW,A,A;AAy3DFsBW;oCAGLzGAAnGA6JC,AAAOpDa,A;0CA0GO7HAAzjEgBoGG,A;oEAikEvBNAAn5DPpsBsB,A;AAo5DH8qBM;AACAIK;CACATM;4BAQe6GS;AAFNvNAAzEK9UAA30DJ4dW,A,A;AAq5DFsBW;oCAGLzGAA/HA6JC,AAAOpDa,A;4CAsIO7HAArlEgBoGQ,A;0DA0lEZ3GAA7+DX4GI,A;kEAm/DaxFAA7/DbwFG,A;IA8/DiBrGAAjmEMoGc,A;AAmmEd3GAAt/DT4GI,A;gCA6/DAPAA57DPpsBsB,A;AA67DH8qBM;AACAIK;CACATM;4BAQe6GS;AAFN1NAAhHK3UAA70DJ4dW,A,A;AA87DFsBW;oCAGLzGAAxKA6JC,AAAOpDa,A;wCA+KO7HG;0DAMV+Ce;qCAKG+CAA39DPpsBsB,A;AA49DH8qBM;AACAIK;CACATM;0BAOe6GsB;AADPnDW;oBAIRvJAAKUwHAA7+DPpsBsB,A,AA8+DH8qBO,AACAIM,AACATM,W;AATG/CAAtMA6JC,AAAOpDa,A;8BAqNM5BQ;sCAEIIG;AACC1dAAj/DX4dI,A;kCA0/DMNQ;qCAGmBFO;AACZIwB;AAIPEK;AACK1dAAngEX4dI,A;uCAuhED/IAAVOyIU,mB;AAYD+EG;AADPnDW;oBAIOtJAAKLuHAAziEPpsBsB,A,AA0iEH8qBM,AACAIM,AACAGS,AACgBkBW,AAEdtBI,AAA6BoBK,AAE/B5BM,W;AAdG/CAAlQA6JC,AAAOpDa,A;yCAsSN7HAArvE6BoGY,A;AAsvErBhHAAvqEFiHG,A;AAyqEDLG;AAAgB7GkB;QAEhBhCGAjBLxUAAnjEM4duB,A,A;AAskEKyEG;AADPnDW;oBAIO1JAAKL2HAAtlEPpsBsB,A,AAulEH8qBO,AACAIM,AACAGM,AACAZM,W;AAVG/CAA/SA6JC,AAAOpDa,A;qBAyUDnKoC;AAEMsNC;AADPnDW;oBAIRpJAAKUqHAApnEPpsBsB,A,AAqnEH8qBO,AACAIM,AACAGM,AACAZM,W;AAVG/CAA7UA6JC,AAAOpDa,A;qBAoYDzKAAtCPCiB,AADY1UO,AACZ0UAAKkBmDM,AACcyFW,AAEd/FM,AACc+FW,AACNhGM,AACPgGsB,oF,AAZvBrCY,A;AAyCiBoHG;AADPnDW;oBAIRxJAAKUyHAA/qEPpsBsB,A,AAgrEH8qBO,AACAIM,AACAGM,AACAZM,W;AAVG/CAAxYA6JC,AAAOpDa,A;uBAgaDtKSAPH5UAAlrEI4dwB,A,A;AA2rEKyEC;AADPnDW;sCAGLzGAApaA6JC,AAAOpDa,A;sDA8aQ5BQ;kCAICIQ;AACXrGAAl4EyBoGe,A;uEAm5EvBNAAruEPpsBsB,A;AAsuEH8qBO;AACAIM;AACAGK;CACAZM;4FAqKoB+HM;AACJSU;kBAGTjGkB;4LAcHqFW;cAIAAW;cAIAAO;MACWgCI;AAAkBpGG;AAAqB4DU;cAIlDQO;AACIwBM;AAA2BQG;AAA3BRAAkWSnHU,A;cA9Vb2FO;AAAsBjJM;AAAiBiLW;cAIvChCO;AAAsBlJM;AAAkBkLW;eAIxChCO;AAAsB9IM;AAAe8KW;cAIrC/BAAgFRDQ,AAAYPS,AACevFQ,A;iEArEX8HG;AACRhCO;eAIkBpEG;AAAqB4DU;AAC/BnRK;iBAIA2TG;AACRhCO;eAIkBpEG;AAAqB4DU;AAC/BnRK;iBAIA2TG;AACRhCO;eAIkBpEG;AAAqB4DU;AAC/BnRK;cAIR2RW;AACACAAqCRDQ,AAAYPS,AACevFQ,A;sCA9BnB+FAA6BRDQ,AAAYPS,AACevFQ,A;cA1BnB4CAA2KS5aAAoCEiYY,AAAmBsFI,MACtBuCI,AAAkBpGM,AACPvBY,A,AArC3B2FU,AACAAW,A;eAzKQCAAqBRDQ,AAAYPS,AACevFQ,A;eAlBnB2CAAyKS7BAAqCEbY,AAAmBsFI,MACjBuCI,AAAkBpGM,AACZvBY,A,AAtC3B2FU,AACAAW,A;cAvKYjDAA4KKiEmB,AAGjBhBO,AAAmBrQkB,AACnBqQW,AACACAApKADQ,AAAYPS,AACevFQ,A,M;wCANhBsFU;aACGwCI;AAAkBpGK;sDAWrBjBkB;uCAIXqFU;uEAQWrFkB;0FAIyCuDoB;kBAM7BvOmB;SAKbqSM;AAAkBpGO;AADZGAAhzBD9HAA76DsBoGW,A,AA+6DjBhHAAh2DNiHG,A,UAm2DaxGAA/2Db0GG,A,AAk3DYsEI,+C;AAsyBxBkBO;AAEcjEkB;AAGdiEU;4BAMqBgCiB;AAEZxCQ;sBAGTQO;4BAE4BpEc;AAChB3HAA9uFuBoGY,A;AAgvF/B2FO;YAGmC3RK;cAInC2RO;+BA+BKRa;AAnBYwC2B;uCAwBIxCU;aAIbAU;cAIRQU;WAIJAU;YAKKRU;iBAGIAwB;AAC0BemB;AACbAK;UACc3EM;AACmB7BAA3iFlBpsBc,A;AA4iFforBM;AAEAJM;AAEADK;AACpBsHO;2BASAAO;OAGyBxFY;kFAgCnBgFc;UAERQO;AAAsB/IM;AAAgB+KY;iBAItChCO;AAAsBnJM;AAAcmLY;0EAOnB7HgB;AAAmBsFI;MACtBuCI;AAAkBpGM;AACPvBY;4DAiBKkGK;8FASZrGQ;+BAEAFI;sBAOAEQ;gCAGAFI;wBAOL/FAAj6FsBoGG,A;4BAm6FRhHAAp1FfiHE,A;IAq1FYlHM;AACP8GQ;gBAEDIK;SAIEjHAA51FNiHM,A;AA61FDrGAA56FwBoGQ,A;wFAm7FbtGU;AACPmGQ;QAEDIK;qEAwDDtG8B;AACGiLW;YAET5I8B;AACF6IW;0GA8DL/O0B;sBAEY8DAAljGuBoGG,A;wCAyjGnCxxCAA4ZEorCG,A;0CAtZeqGE;AADHzGAAx7FFwGc,A;YA67FApGAAnkGuBoGsB,A;iCA2kGR3GAA99Ff4GQ,A;0EAu+FM5GAAv+FN4GY,A;wBA2+FMxFAAr/FNwFY,A;qCA6/FIxFAA7/FJwFY,A;qEAghGI5GAAtgGJ4Ga,A;2FAkhGQhGAAvhGRgGY,A;yBAkiGa5GAA7hGb4GS,A;+FAyiGiBhGAA9iGjBgGQ,A;+IAskGI1GM;AACAAM;AACGsGgB;AACAAQ;SAGkBDwB;AACAAwB;oBAGjBKO;AACAAI;kEAOkB3GAApkG1B2GM,A;AAqkGN3GAArkGM2GQ,A;sQAgmGM5FAA1mGN4FQ,A;AA2mGM5FAA3mGN4FU,A;aAgnGsB7GO;AACAAM;AAGdgBM;AAEAAM;AACeyFW;AACAAQ;yBAMf/FM;AAEAAM;AACe+FW;AACAAQ;wCAKAFI;YACbMgB;6BAOaNI;YACbMkB;6BASbNM;YACaMgB;YAMOpGM;AACAAM;AACPgGW;AACAAQ;0BAIFMS;0BAGEAI;2BAIEJM;qCAMcJM;sBAENAM;YACbMkB;+BAQRFM;0DASItGAAvvGH0GM,A;AAwvGG1GAAxvGH0GQ,A;WAswGOvHAAnhDL6OG,I;2CAshDCtHI;YAIMqEI;uBAEH3EQ;AACW1UoBAsLA+Ta,AAAjBgHK,A;+BApLW/FK;wBAITzGQ;gBAOFAW;AACAAQ;8BAWImGQ;2BAUAIO;AACAAU;6CAwCA/FM;AACAAM;AACA2FgB;AACAAQ;aAEF1FAA30GFgGM,A;AA40GEhGAA50GFgGG,A;oCAg1GMFO;AACAAU;iCASPrGAAn7GwBoG+B,A;sCAu7GIvFAAp1G3BwFK,A;eAq1G+B5GAA30G/B4GI,A;uBAu1GiBnK+B;uBAQlB8DAA58GwBoGG,A;qDA+/G1BgF4B;AACEnFQ;oBAEEMI;4CAOgBjBa;AAAjBgHI;grBQ/pHR3NS;4BA2BRjlBU;wBAwGOASApCSulBAAAAvlByB,A,a;uCAmDC0uBE;uMA2DE1uBoB;AAAAurBW;8HAiCP1WM;mLC0PI8SiB;AACIzDG;cAIElK0D;0IAyBN2NkB;AACIzDI;mBAIElK0D;4GAuBb98BgB;uFAuIkBoqCqB;gCAGYnCG;AACxBkKM;sHA+BcIG;2CACDtDK;0CAIbkDM;mDA4EIGG;uLAkBTqDwB;wBAMgB/Ke;AACFqCsB;AACZhGyB;gDAcIgGwB;iBAEVoBiB;AAGAZmB;uQG72BQNU;iBAUqBrqBqB;qCAKrBqqBU;sFAoBkBrqBiB;6IAuD3B9iBW;iBCi5EG8iBqB;OAAAAU;0mDEngE+BAwC;kBAQ9BAuC;6CEjbMAkB;iFAoBNkiBG;icCrCAliBWAwBQiqBAAAANoB,A,A;wGCXuC3pBAbo+BjB8kBoB,A;6zCD92BxBmPgB;wTAgHN7CO;mFAoB8BvHAAL9B2HIb/OwB4CuB,A,A;4SaqX7Bp0BiC;iDA+DYwwBgB;AAEDvEO;0BAGFAO;oBAGEAU;uFAsIoB2DmBFjkBczCK,A;cEwkBnCYkB;oEAKR4GAAtLgBrGwC,A;qYR3bX5CAQyLS8HAf4NXzCiB,A,A;QOnZAnHO;6zB2B6vBC8KmB;8EAqBc10Ba;qBAGpB00B6B;qBAMKxSG;2sBCtqBa4Ne;+DAGACoB;wDAIAC2B;wHCsrBFvEkH;sqBAAAAS;YAAAAI;kYAsOTzrBc;yCAIGyxBiF;UAAAAsEA6dAwCQ,kF;KA7dAxCyD;OAAAA2C;sNAyNCzxBApBtPwB8kBkB,A;uiCoB6XnB9kBApB7XmB8kB4B,A;kmBoB08BvBiPmB;0CAOItmBkC;iMAoCPzNiD;+GAeIAc;2GASXy0BArBxlDJvIO,A;+BqB4lDanD0B;+BAGI/oBc;4CAHJ+oBI;mIAqBG/oBc;AAAJy0BoB;2FAYLvSG;0LA4BQliBc;qBAEgB+zB2B;wDAS3BUArBpqDJvIO,A;+BqBwqDa1D2B;+BAGIxoBc;wDAQJkoByB;oKAYkB6L8B;AACf/zBc;AAAJy0BoB;uFAUiBV4B;AAGtB7RG;gNAeAuG0B;uFAQyBsLkB;wRAoCrBvDa;sFAeAAY;4PA+BExwBwB;wCAuBNkiBG;yNAiCH2G0C;OAIYyFiC;uCAIA0Fa;kEAYFh0BApBvzCuB8kB4B,A;oHoBu0CvB9kBApBv0CuB8kBsB,A;wdoB04CDoD0B;+KAkBpBloBc;AAAJy0Ba;oBAAAACrBv+DZvIY,A;+DqBo/DOhKG;gOAwEQyOAlC92DOHa,A;YkCg3DLAY;mOAsCDA+B;kEAYLAQ;sBAA4CAiB;2lBA0chDpSK;mDAtBgCgPAHjtFdptBW,A;kRGuuFlBoeS;4nBAg1BQgFe;qLA+PwCpjBApB9jGlB8kBwB,A;m+GsBpnBrB9kBAqBktBSAAxC3oCvBAAA9B0B0uBAAAA1uBiC,A,A,yB,A;iOoBuHtByuBqCAWoBrLW,8P;OAXpBqLAAiBWrLoB,gB;ySCxHMGc;AAATwLyC;AACUxLC;AAATwL0C;AAEJxLC;AAATwL2C;AAYC5LK;AADAIC;AADLwLc;0EA2E0D2EoB;AACbCY;2BAGP5EO;AAAOAS;AAASAW;WA2SnCxrCAoBwpBaggC4B,AAATwLkC,A;mBpBvpBnBvL8B;AACUDC;AAAVwLgC;AAEoBvrCAoBmvBS+/BG,AAATwLgC,A;ApBlvBVxLC;AAAVwLsC;kCAE8BgFiB;AACvBxQoB;mBAIc//BAoB2uBQ+/BG,AAATwLgC,A;ApB1uBRxLC;AAAVwL0C;mCADOxLoB;gBAOoCoNAP/BzBHa,A;AOgCoB9sCAoBojBC6/BG,AAATwLsC,A;ApBnjBpBxLC;AAAVwLuC;AACsBnrCAAwEpBDAoB+1E6B4/BG,AAATwLkD,A,A;ApBv6EtBvLwB;AAAsB5/BAAwEqBmrCQ,A;sBAtEpCxLiB;AAGFC+B;kBAOAA2B;gDAYP3/BAA4BwDNAoB8kB5BggCG,AAATwL+B,A,ApB7kBXxLC,AAAVwL+B,AACYjrCAoB4cwBy/BG,AAATwL2D,A,ApB1cfxLC,AAAVwLoC,AACYhrCAoBylBmBw/BG,AAATwL6B,A,ApBxlBpBvL6C,AADFDiB,AAHFAiB,A;sCAlB0CwLe;AAErByBY;gCAMbjNsB;AAESAiB;gCAiB2BmPAPnbrCMO,A;2gBSjDsBzPc;AAATwLkD;AACMxLC;AAATwLqD;AACaxLC;AAATwLmD;+BAOPvLyC;AACDA6B;8BAIFuLS;AAASAM;kBAKSxLyC;iCASHAmC;gCASCAG;AAATwLiD;yBAKiBxLqC;AACRAC;AAATwL0D;OAGiBxLqC;AACPAC;AAATwLkD;0BASkByBqB;OAIIrNK;AAApCII;AAAPwLgB;yDAsBSgFI;AAAAhF+B;AAEKxLyB;2CAQQwLY;WACyBAQ;KAChCxLY;iICtGGwLS;AAASAM;kBAMNxLG;AAATwL6C;2BAcNvL4B;mBAOkBDG;AAApBwLO;AAAOAoC;oWEX0BVmE;yBAkBAA8D;oBEjC5BjrCc;iBAECAAcLV2rCiB,AAAWzLiB,A;gJ9D+TqBqOW;gBAqB5B3CgB;6hBGtLsBjCA4D8FuB/sBiB,A;+B5D9FvB+sBA4D8FuB/sB2B,A;4B5DuC/CitB8B;saAiJOuEIArUwB4Ca,A;2KA6c/BlHsB;yUAsJ4B+De;gBAaFjxBoB;QAAAAW;kJAkD1BktBwC;gc+C1uBWwDa;AACHAY;6gChB2DD6CiC;ofA6PEDiB;+Y7B5VqBtzBmB;6CAAAAa;8XAoKPAiB;4BAAAAoC;uPEpIGAmB;OAAAAa;iNA2UAAmB;iDAAAAa;+pBE9PjBipBkB;oEAkBF4HI;0YAgNsD7HmBAXpDCe,kB;OAWiBjpBqC;6CAKnB6wBI;2nBRuwCqBL+B;gvBA85BC7Ea;AAAeAe;8CAOQAe;8BAOlCjCiC;AACAiIS;gK0Bp+EX3xBmB;uDAAAAU;SAIqBkgBgB;YAAAAAAJrBlgB0B,A;2EAWEwkBAA+PiB6CS,A;oFAhOEAiB;4FAKAAI;gGAUf1BGAgLNyBa,A;2OA/JLiJwCAQWjJI,sF;yLA0EaCI;oFA2BDrnB+B;wfAwHlBAU;sBAAAAAA0BTAAAAAAO,A,A;6dd9UIy0BAG+dFvIAA2BuBkHQ,A,A;0BHtfnBqBAG2dJvIAA2BuBkHc,A,A;oBHhfnBqBO;AAIJAAGidAvIAA2BuBkHO,A,A;iDHreR5HU;+TAiCH+I2D;kHAoDgBnKAAvIIoBO,AAAmBAK,A;AAuIFtGgC;yBAInBsGQ;+HC7FjBlDG;qBAAAA0B;AAAgCMU;AAAYZW;sFAmFlDhoBW;oCAgDOkzBG;QAAAAW;4BAQkBjEK;mNAuElBiEc;SAIItCAA5GEhIe,A;4EA+GVDuB;0pCH1IHx4CiB;iBAAAAAAoZ0By7CqB,A;eA9YDr3CMAsZZq3CqB,A;4aQlbhBpEkB;uaAsKAxnBc;gMCxQQypBW;iEAQZpFQ;2EAgBYoFW;qFA4HPkGW;oBACExDY;AAA6B/GI;8CAazB+GK;kGAQLsDU;mTAsIkB5aW;kGAoBA7UuC;QACPiiBwD;wDASOjiB+B;QACP4zByD;4GAoGbpKG;6CAQiBtFQ;AACL4DY;sBAQd5qCgB;gFAQEssCG;kGAiBiBtFQ;AACL4DY;iCAQd5qCgB;iSAgKFquCW;mCAQAbmB;gGA8DAxtCmB;iGAwBAAmB;6jBAwEyBqyCGAjnBlBpDS,AAAUJa,A;gCAmnBwB5GE;2BACDAQ;mDAOc2CiB;AAC3BRmB;IACqBnCI;+LAkBjBmKC;IAAAAAA1rBxBnDS,AAA+BpCO,A;gIAmsBC5ES;iBAElBuKAA3sBd5FU,A;0DAgtBsB3Ea;6QCssB3BkKU;oe4B1gDwBrvBkB;sBAAAAW;QAAAAa;6CA6QF+sBAclDuB/sBU,A;QdkDvB+sBAclDuB/sB6B,A;sFd6R5BixBe;oTrBlafwDmB;AACAAAZ0YJvIU,A;AYzYIuIe;yPwBGe9BkB;6NvBCf7JG;sBACKgDS;gDAIMpFI;8DAMCoCa;AAAcgDE;AAAa1LG;8BAMvC0IU;AAAiC5IAFtG9BlgBU,A;AEsGiB8rBG;iBAAa5LOFtG9BlgBU,A;QEuGAAc;+BASH8oBS;CACFgDiB;oGA8BEhDS;WAAoBgDO;QAEjBvEyC;sCA+BHuBS;QAAoBgDS;6CAOVpFI;oCAEqBAM;4FAiClB0NgB;kDAMbtLS;QAAoBgDE;wJA6BnBvE6C;+BAC+BbK;8FA4BrBoCgB;yCASAAU;gCAEc9IA1BkZHhgBsB,QAAAAY,A;0d4BpnBb4xBqE;wNAqBmBxRqB;oEAQdpgBc;AAAJy0Ba;mBAAAEAf+XMrGoB,A;8Fe/WSlOQ;+FASvBqUAfiWNvIAA2BuBkHQ,K,A;QexXkBlRG;kmBsBsE1BliBc;+FAQRkiBG;yDCnCqBhHa;UAAAAI;0ItB/GJlbAf4+Ba8kBiB,A;Oez+BV0PAAwCb9PAAG4B1kBAf87BL8kBoB,A,A,c;iCe79BtB/CAfw/BR/Te,qB;iKer8BMoWiC;6UAqCAiEU;yTA6IXroBkB;4BAAAwtBe;0fA6P0BxtBoC;0lBAatB20BAhBxFcrGgB,A;iFgBiGRqGAhBjGQrGgB,A;cgBsGRqGAhBtGQrGgB,A;kBgB6GRqGAhB7GQrGkB,A;AgB8GRqGAhB9GQrGC,AAApBpCY,A;yMgB0IQyIAhB1IYrGO,A;6FgBsJhBqGAhBtJgBrGsB,A;oCgB+JbpMG;8oCxBjMiBrCK;84DQ5aM8Rc;oRqBgvCpBlEsB;uEAKFAwB;AACAAyB;ueAuNgBhGMA85CbkJAHvhFWH2B,A,AG2hFlBvRa,mBAGFwVArBz6EFvIAA2BuBkHY,A,A,AqB+4ErBpHOA/BY2EAHhgFQHY,A,AGkgFpBiEArB74EFvIAA2BuBkHU,A,A,MqBo3EJqBArB/4EnBvIAA2BuBkHQ,A,A,cqBu3ErBqB4B,A,oBA4BAAArB96EFvIAA2BuBkHa,A,A,cqBu5ErBqBArBl7EFvIAA2BuBkHU,A,A,A;qLqBm/ByCtSG;qCAA9D9gBG;mVAwacifG;iBAEI0RAH7iDEHmC,A;qBGujDyBAiB;uHA+jBV1RG;2PA2bjCGmB;IACAoDa;+DAIAjDa;sBACA0BK;mBACA5Ba;0KAvoBe8O2C;AACU2CAHl7DPHc,A;AGm7DlBiEArB9zDJvIS,A;AqB+zDqB8BQ;AAHFAoB;wNAyvCEzJ2FAgBdvkBG,A;0BAhBcukB2B;4fA41BAsLU;AAAc3QiB;mGAc/BiJgC;aACAC6B;cACAHwB;aACAM+B;4OAaAJ+B;UACAC6B;uMAoDGpoBO;AADFofW;2MAgEeuRAHxpIEHgC,A;wCGkqIkBAiB;oZE7kIlCxwBwB;27BC5cOwwBY;mBAIDuDkB;oIAQWAG;iBACSAG;iKAgDdDM;YAAXzCArCoOArxBW,A;iBqCpOW8zBW;yGA3BG7QI;EAAAAG;4rBCpDV8LS;AAASAM;2BAKbxLiD;AAEKAmC;iEAaZ7mBAuBTAq1B2D,A;kYvBoBkBhDc;gCAMERADxBHuCG,A;gBCuBwB3NK;AAAPGwB;QACdiLWDxBHuCmB,AACJOAS0JuBrxBkC,A,AT1Jb8zBgB,aAAAAa,A;AC2BDXO;aAAApEO;AAAOAY;8CAIf4BAtC+pBQHa,A;2BsC5pBAjNC;AAAhBwLO;AAAOAiB;kOAmCMxrCAoB09BWggCM,AAATwL+B,A;ApBz9BnBvLiC;AACAAyC;AACAuLsB;AACUxLC;AAAVwL0B;AACAxLc;SACAAc;4EAIqBhgCAoBg9BOggCM,AAATwL+B,A;ApB/8BTxLC;AAAVwLuC;yEAGuBxrCAoB48BKggCM,AAATwL+B,A;ApB38BTxLC;AAAVwLoC;gFAYWvLgD;AAEb2PO;AAAS3PC;AAATuLqC;mBAgBcxrCAoB66BgBggCG,AAATwL+B,A;ApB76BqBxLC;AAAVwL6B;AAE5BxLiB;AACACqC;AACAAqC;AACUDC;AAAVwL2B;AAGAxLiB;AACAAc;yBAMAwLO;AAAOAS;AAASAsB;uGA0BSxLwB;AAATwLiD;mCASJ3xBAoBgBmBmmBG,AAATwLmC,A;ApBhBWxLC;AAAVwLiC;AADvBxLiB;AAImBlmBAoBguBckmBG,AAATwL2D,A;ApBjuBxBxLiB;AAIAhgCAoBq3B0BggCG,AAATwL+B,A;ApBp3BHxLC;AAAVwLiD;2BAFJxLqB;GAMcoNAd5JIHO,A;mBc6JpBxQSlC6KwBhgBS,aAAAAmB,A;AkC7KxB6UM;WAAAAuB;AACc0OsB;AAGEhgCAoB22BYggCG,AAATwL+B,A;ApB12BLxLC;AAAVwL6I;qHAQOhrCAoBk3BoBw/BG,AAATwL6B,A;ApBj3BlBvLsB;AAAqBtB4C;AAEfqBiB;AACEAiB;yBAKZwLsB;AACAvLwC;0GAiBcgNQ;gJAYAjNgB;MAIhBkPM;AAEAMUAzFkBzPiB,UAEZyLuB,AACAvL0C,A;AAuFNsPIAlCqC3HuD,qB;yFA4CAqFa;kOAiBrCiCS;4DASajP2B;qBAOAA0B;qBAOAA2B;qBAOAA6B;6DA/LCuLU;aAIUAS;AAASAe;AACe7LsBAqYT6QC,AAAAhF0B,A;AApY3BzLmB;AACOAI;2DAsKWyLU;iGAcAAO;gFAOhBAiB;eAMAAgB;AACFzLsB;oBAEoCCG;2CAEtBAI;AAAhBwLO;AAAOAiB;0FASOxLI;AAAhBwLO;AAAOAiB;AAAgB7MQ;+CAQjB6MqB;6CAMOAuB;aAEb0DY;oBAIa1DgB;8CAKaAQ;qBAQvBxLC;GADAwLkC;qBAMcxLC;AAAVwL+B;oEAMqBAsB;AAEHAW;QACQA2B;AAEcAc;AACpCzLuB;gBAMgByLQ;gGAUzBzLkB;gCAwCFAkB;2DAQYCI;AAAhBwLO;AAAOAiB;UACDzLmB;wJEjbYCC;AAAVwLkC;cACcxLC;AAAVwL2B;2LAuDEAc;AACIhrCAkBy/BWw/BM,AAATwL6J,A;AlBr/BPxLC;4CAIgCJK;AAAPGwB;YACnB//BAkBg+BOggCM,AAATwL6C,A;YlB79BNxLC;8HCzELwLU;AACIvLqC;AACNAqC;AACcAI;AAApBuLO;AAAOAgD;AAEKvLsC;AACNAsC;AACcAI;AAApBuLO;AAAOA4C;i9Y3C8wCQkD0G;CAAAAG;6DAUAC8G;CAAAAG;2DAUACuD;CAAAAG;6DAUAC2D;CAAAAG;kJ8BpyBgC5DU;igBKmB/ByBM;" + } +} diff --git a/docs/static-assets/favicon.png b/docs/static-assets/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..43d2ffa079ca147a221437817dbc694d66a2a302 GIT binary patch literal 1767 zcmVr1gM)#AhSs$=eK0WK)CF2vH5m*T78Vv7 zOqGGvxA(cvvG46mUuvh$T1!8DmE**HzxO9;TsuQliJN|J!pK@zgpAc6W;K`ZbSrnoP`wF$fl7_5*8Ivypwf=W;~ z;08%MQORYPC_tGHZSh$O#Av43|^d-UX&HM!T~7!)g1(@JfEf{VV=B< z1V2h$vz|_)(42Iv;nMQ6gnaC=x-iE)V9>bg95MTIge3HB2W~Qqm*!+BpztvG$qKPZI96W} zvtB&GrNG5*kOai6|CR7-+*88m$TiE!O#Aqvg{$I60STah90fcj;bJTAHe50;DvqB` zEg>!%3Dgd1>303*qUn95wS&WE(*hLuC37)V?aQjQ(>?on4V>`^}$4&P2qUwF63p3!p z6R>6i5YrB(Dm-K?OMsE#XJVfc&SVMlTc3)@NKU0J3269ELe@xN0Za64hocS>SoY(& zL%m;r$g#En;{)>X$|7Ng63+K0K^DLzXfDCDx@#YPVSI{DxIP(XJHy#-j`B3b#X_yixgMa&bn3s?yPcssC4`0@Pr z>UDqkrA2oMvH(^Il;ArzoKINx_2)YKwKcf{c=joHgRLFHM+xq^ZVMp3+9h+pM_8DNoMAB-dVobWmYAS9rt1as~o-UgNSX!>_*0eKDx64<-L zsr_Sf&ksWK5X_wO=HsvVW@R@4avN{~b`kO)Q2hp=EFi=-pa;L0N~k1s7QiKN5q3y| z{H02#@|Qmd>8SNrVChicf`ASZgo+R(>{|f;A|&P#WC45@h!O<2gp5n*5WLs|%h5Io z&-zA4k|2tpV}-BR_;rW=0{Hbbr8g2rC_$(INdgxkz-9uI;7AhAx(eXe)2I^YTj5fu z07-%@V%uQ+#@-^?#TPmIvVf-~Xcr}rfKnDf$id05c9_^NzK{etcv%3Kz^)CFfYM7u z0sTc>5&YuI)(f)z1qhX(H3Ggi0-)qG;MpQ%*z;uxJkb6E_~m7Pp-})}1w7y{P|87X zMF?8JdR00$fprxiY?Jv$f)^#)PoTa$P7;P^(nEroXQBYUjX$q968u%Jy_6(e-Iwpz z`wQ&juE(vPtb`I*EA&`h0mZHYjw%V!O;ZVLl+daK6k%2i_w{N+cwBf+b515f%gmO% z0;CNdCA9us9ZyP?@Hi6?I4mR~j0z_-S>8&HnB#ImfGojJKnEEBu4V8D90ETn>T?(4 zMG`tr=$)vA?}qayISJ<{js z)mqSPcf)OyC94E3VQ2vf2>>`6^tPFngqTYhz5-+c150@O0%QqqUjRvn1qp9gfGmM1 zUw{G;1RSy*Qj(CpFloi)@B(OKcajFkv|3YK_es*=t)6!)-Mumr002ov JPDHLkV1ksy9Tflo literal 0 HcmV?d00001 diff --git a/docs/static-assets/github.css b/docs/static-assets/github.css new file mode 100644 index 0000000000..791932b87e --- /dev/null +++ b/docs/static-assets/github.css @@ -0,0 +1,99 @@ +/* + +github.com style (c) Vasily Polovnyov + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + color: #333; + background: #f8f8f8; +} + +.hljs-comment, +.hljs-quote { + color: #998; + font-style: italic; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-subst { + color: #333; + font-weight: bold; +} + +.hljs-number, +.hljs-literal, +.hljs-variable, +.hljs-template-variable, +.hljs-tag .hljs-attr { + color: #008080; +} + +.hljs-string, +.hljs-doctag { + color: #d14; +} + +.hljs-title, +.hljs-section, +.hljs-selector-id { + color: #900; + font-weight: bold; +} + +.hljs-subst { + font-weight: normal; +} + +.hljs-type, +.hljs-class .hljs-title { + color: #458; + font-weight: bold; +} + +.hljs-tag, +.hljs-name, +.hljs-attribute { + color: #000080; + font-weight: normal; +} + +.hljs-regexp, +.hljs-link { + color: #009926; +} + +.hljs-symbol, +.hljs-bullet { + color: #990073; +} + +.hljs-built_in, +.hljs-builtin-name { + color: #0086b3; +} + +.hljs-meta { + color: #999; + font-weight: bold; +} + +.hljs-deletion { + background: #fdd; +} + +.hljs-addition { + background: #dfd; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/docs/static-assets/highlight.pack.js b/docs/static-assets/highlight.pack.js new file mode 100644 index 0000000000..3cf5abcf69 --- /dev/null +++ b/docs/static-assets/highlight.pack.js @@ -0,0 +1,780 @@ +/*! + Highlight.js v11.8.0 (git: d27be507cb) + (c) 2006-2023 Ivan Sagalaev and other contributors + License: BSD-3-Clause + */ +var hljs=function(){"use strict";function e(n){ +return n instanceof Map?n.clear=n.delete=n.set=()=>{ +throw Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=()=>{ +throw Error("set is read-only") +}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach((t=>{ +const a=n[t],i=typeof a;"object"!==i&&"function"!==i||Object.isFrozen(a)||e(a) +})),n}class n{constructor(e){ +void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1} +ignoreMatch(){this.isMatchIgnored=!0}}function t(e){ +return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'") +}function a(e,...n){const t=Object.create(null);for(const n in e)t[n]=e[n] +;return n.forEach((e=>{for(const n in e)t[n]=e[n]})),t}const i=e=>!!e.scope +;class s{constructor(e,n){ +this.buffer="",this.classPrefix=n.classPrefix,e.walk(this)}addText(e){ +this.buffer+=t(e)}openNode(e){if(!i(e))return;const n=((e,{prefix:n})=>{ +if(e.startsWith("language:"))return e.replace("language:","language-") +;if(e.includes(".")){const t=e.split(".") +;return[`${n}${t.shift()}`,...t.map(((e,n)=>`${e}${"_".repeat(n+1)}`))].join(" ") +}return`${n}${e}`})(e.scope,{prefix:this.classPrefix});this.span(n)} +closeNode(e){i(e)&&(this.buffer+="")}value(){return this.buffer}span(e){ +this.buffer+=``}}const r=(e={})=>{const n={children:[]} +;return Object.assign(n,e),n};class o{constructor(){ +this.rootNode=r(),this.stack=[this.rootNode]}get top(){ +return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){ +this.top.children.push(e)}openNode(e){const n=r({scope:e}) +;this.add(n),this.stack.push(n)}closeNode(){ +if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){ +for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)} +walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,n){ +return"string"==typeof n?e.addText(n):n.children&&(e.openNode(n), +n.children.forEach((n=>this._walk(e,n))),e.closeNode(n)),e}static _collapse(e){ +"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{ +o._collapse(e)})))}}class l extends o{constructor(e){super(),this.options=e} +addText(e){""!==e&&this.add(e)}startScope(e){this.openNode(e)}endScope(){ +this.closeNode()}__addSublanguage(e,n){const t=e.root +;n&&(t.scope="language:"+n),this.add(t)}toHTML(){ +return new s(this,this.options).value()}finalize(){ +return this.closeAllNodes(),!0}}function c(e){ +return e?"string"==typeof e?e:e.source:null}function d(e){return b("(?=",e,")")} +function g(e){return b("(?:",e,")*")}function u(e){return b("(?:",e,")?")} +function b(...e){return e.map((e=>c(e))).join("")}function m(...e){const n=(e=>{ +const n=e[e.length-1] +;return"object"==typeof n&&n.constructor===Object?(e.splice(e.length-1,1),n):{} +})(e);return"("+(n.capture?"":"?:")+e.map((e=>c(e))).join("|")+")"} +function p(e){return RegExp(e.toString()+"|").exec("").length-1} +const h=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./ +;function f(e,{joinWith:n}){let t=0;return e.map((e=>{t+=1;const n=t +;let a=c(e),i="";for(;a.length>0;){const e=h.exec(a);if(!e){i+=a;break} +i+=a.substring(0,e.index), +a=a.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?i+="\\"+(Number(e[1])+n):(i+=e[0], +"("===e[0]&&t++)}return i})).map((e=>`(${e})`)).join(n)} +const _="[a-zA-Z]\\w*",E="[a-zA-Z_]\\w*",N="\\b\\d+(\\.\\d+)?",y="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",w="\\b(0b[01]+)",v={ +begin:"\\\\[\\s\\S]",relevance:0},k={scope:"string",begin:"'",end:"'", +illegal:"\\n",contains:[v]},x={scope:"string",begin:'"',end:'"',illegal:"\\n", +contains:[v]},O=(e,n,t={})=>{const i=a({scope:"comment",begin:e,end:n, +contains:[]},t);i.contains.push({scope:"doctag", +begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)", +end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0}) +;const s=m("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/) +;return i.contains.push({begin:b(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i +},S=O("//","$"),A=O("/\\*","\\*/"),M=O("#","$");var C=Object.freeze({ +__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:_,UNDERSCORE_IDENT_RE:E, +NUMBER_RE:N,C_NUMBER_RE:y,BINARY_NUMBER_RE:w, +RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", +SHEBANG:(e={})=>{const n=/^#![ ]*\// +;return e.binary&&(e.begin=b(n,/.*\b/,e.binary,/\b.*/)),a({scope:"meta",begin:n, +end:/$/,relevance:0,"on:begin":(e,n)=>{0!==e.index&&n.ignoreMatch()}},e)}, +BACKSLASH_ESCAPE:v,APOS_STRING_MODE:k,QUOTE_STRING_MODE:x,PHRASAL_WORDS_MODE:{ +begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ +},COMMENT:O,C_LINE_COMMENT_MODE:S,C_BLOCK_COMMENT_MODE:A,HASH_COMMENT_MODE:M, +NUMBER_MODE:{scope:"number",begin:N,relevance:0},C_NUMBER_MODE:{scope:"number", +begin:y,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:w,relevance:0}, +REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//, +end:/\/[gimuy]*/,illegal:/\n/,contains:[v,{begin:/\[/,end:/\]/,relevance:0, +contains:[v]}]}]},TITLE_MODE:{scope:"title",begin:_,relevance:0}, +UNDERSCORE_TITLE_MODE:{scope:"title",begin:E,relevance:0},METHOD_GUARD:{ +begin:"\\.\\s*"+E,relevance:0},END_SAME_AS_BEGIN:e=>Object.assign(e,{ +"on:begin":(e,n)=>{n.data._beginMatch=e[1]},"on:end":(e,n)=>{ +n.data._beginMatch!==e[1]&&n.ignoreMatch()}})});function T(e,n){ +"."===e.input[e.index-1]&&n.ignoreMatch()}function R(e,n){ +void 0!==e.className&&(e.scope=e.className,delete e.className)}function D(e,n){ +n&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)", +e.__beforeBegin=T,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords, +void 0===e.relevance&&(e.relevance=0))}function I(e,n){ +Array.isArray(e.illegal)&&(e.illegal=m(...e.illegal))}function B(e,n){ +if(e.match){ +if(e.begin||e.end)throw Error("begin & end are not supported with match") +;e.begin=e.match,delete e.match}}function L(e,n){ +void 0===e.relevance&&(e.relevance=1)}const $=(e,n)=>{if(!e.beforeMatch)return +;if(e.starts)throw Error("beforeMatch cannot be used with starts") +;const t=Object.assign({},e);Object.keys(e).forEach((n=>{delete e[n] +})),e.keywords=t.keywords,e.begin=b(t.beforeMatch,d(t.begin)),e.starts={ +relevance:0,contains:[Object.assign(t,{endsParent:!0})] +},e.relevance=0,delete t.beforeMatch +},F=["of","and","for","in","not","or","if","then","parent","list","value"],z="keyword" +;function U(e,n,t=z){const a=Object.create(null) +;return"string"==typeof e?i(t,e.split(" ")):Array.isArray(e)?i(t,e):Object.keys(e).forEach((t=>{ +Object.assign(a,U(e[t],n,t))})),a;function i(e,t){ +n&&(t=t.map((e=>e.toLowerCase()))),t.forEach((n=>{const t=n.split("|") +;a[t[0]]=[e,j(t[0],t[1])]}))}}function j(e,n){ +return n?Number(n):(e=>F.includes(e.toLowerCase()))(e)?0:1}const P={},K=e=>{ +console.error(e)},H=(e,...n)=>{console.log("WARN: "+e,...n)},Z=(e,n)=>{ +P[`${e}/${n}`]||(console.log(`Deprecated as of ${e}. ${n}`),P[`${e}/${n}`]=!0) +},G=Error();function q(e,n,{key:t}){let a=0;const i=e[t],s={},r={} +;for(let e=1;e<=n.length;e++)r[e+a]=i[e],s[e+a]=!0,a+=p(n[e-1]) +;e[t]=r,e[t]._emit=s,e[t]._multi=!0}function W(e){(e=>{ +e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope, +delete e.scope)})(e),"string"==typeof e.beginScope&&(e.beginScope={ +_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope +}),(e=>{if(Array.isArray(e.begin)){ +if(e.skip||e.excludeBegin||e.returnBegin)throw K("skip, excludeBegin, returnBegin not compatible with beginScope: {}"), +G +;if("object"!=typeof e.beginScope||null===e.beginScope)throw K("beginScope must be object"), +G;q(e,e.begin,{key:"beginScope"}),e.begin=f(e.begin,{joinWith:""})}})(e),(e=>{ +if(Array.isArray(e.end)){ +if(e.skip||e.excludeEnd||e.returnEnd)throw K("skip, excludeEnd, returnEnd not compatible with endScope: {}"), +G +;if("object"!=typeof e.endScope||null===e.endScope)throw K("endScope must be object"), +G;q(e,e.end,{key:"endScope"}),e.end=f(e.end,{joinWith:""})}})(e)}function X(e){ +function n(n,t){ +return RegExp(c(n),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(t?"g":"")) +}class t{constructor(){ +this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0} +addRule(e,n){ +n.position=this.position++,this.matchIndexes[this.matchAt]=n,this.regexes.push([n,e]), +this.matchAt+=p(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null) +;const e=this.regexes.map((e=>e[1]));this.matcherRe=n(f(e,{joinWith:"|" +}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex +;const n=this.matcherRe.exec(e);if(!n)return null +;const t=n.findIndex(((e,n)=>n>0&&void 0!==e)),a=this.matchIndexes[t] +;return n.splice(0,t),Object.assign(n,a)}}class i{constructor(){ +this.rules=[],this.multiRegexes=[], +this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){ +if(this.multiRegexes[e])return this.multiRegexes[e];const n=new t +;return this.rules.slice(e).forEach((([e,t])=>n.addRule(e,t))), +n.compile(),this.multiRegexes[e]=n,n}resumingScanAtSamePosition(){ +return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,n){ +this.rules.push([e,n]),"begin"===n.type&&this.count++}exec(e){ +const n=this.getMatcher(this.regexIndex);n.lastIndex=this.lastIndex +;let t=n.exec(e) +;if(this.resumingScanAtSamePosition())if(t&&t.index===this.lastIndex);else{ +const n=this.getMatcher(0);n.lastIndex=this.lastIndex+1,t=n.exec(e)} +return t&&(this.regexIndex+=t.position+1, +this.regexIndex===this.count&&this.considerAll()),t}} +if(e.compilerExtensions||(e.compilerExtensions=[]), +e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.") +;return e.classNameAliases=a(e.classNameAliases||{}),function t(s,r){const o=s +;if(s.isCompiled)return o +;[R,B,W,$].forEach((e=>e(s,r))),e.compilerExtensions.forEach((e=>e(s,r))), +s.__beforeBegin=null,[D,I,L].forEach((e=>e(s,r))),s.isCompiled=!0;let l=null +;return"object"==typeof s.keywords&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords), +l=s.keywords.$pattern, +delete s.keywords.$pattern),l=l||/\w+/,s.keywords&&(s.keywords=U(s.keywords,e.case_insensitive)), +o.keywordPatternRe=n(l,!0), +r&&(s.begin||(s.begin=/\B|\b/),o.beginRe=n(o.begin),s.end||s.endsWithParent||(s.end=/\B|\b/), +s.end&&(o.endRe=n(o.end)), +o.terminatorEnd=c(o.end)||"",s.endsWithParent&&r.terminatorEnd&&(o.terminatorEnd+=(s.end?"|":"")+r.terminatorEnd)), +s.illegal&&(o.illegalRe=n(s.illegal)), +s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((n=>a(e,{ +variants:null},n)))),e.cachedVariants?e.cachedVariants:Q(e)?a(e,{ +starts:e.starts?a(e.starts):null +}):Object.isFrozen(e)?a(e):e))("self"===e?s:e)))),s.contains.forEach((e=>{t(e,o) +})),s.starts&&t(s.starts,r),o.matcher=(e=>{const n=new i +;return e.contains.forEach((e=>n.addRule(e.begin,{rule:e,type:"begin" +}))),e.terminatorEnd&&n.addRule(e.terminatorEnd,{type:"end" +}),e.illegal&&n.addRule(e.illegal,{type:"illegal"}),n})(o),o}(e)}function Q(e){ +return!!e&&(e.endsWithParent||Q(e.starts))}class V extends Error{ +constructor(e,n){super(e),this.name="HTMLInjectionError",this.html=n}} +const J=t,Y=a,ee=Symbol("nomatch"),ne=t=>{ +const a=Object.create(null),i=Object.create(null),s=[];let r=!0 +;const o="Could not find the language '{}', did you forget to load/include a language module?",c={ +disableAutodetect:!0,name:"Plain text",contains:[]};let p={ +ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i, +languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-", +cssSelector:"pre code",languages:null,__emitter:l};function h(e){ +return p.noHighlightRe.test(e)}function f(e,n,t){let a="",i="" +;"object"==typeof n?(a=e, +t=n.ignoreIllegals,i=n.language):(Z("10.7.0","highlight(lang, code, ...args) has been deprecated."), +Z("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"), +i=e,a=n),void 0===t&&(t=!0);const s={code:a,language:i};O("before:highlight",s) +;const r=s.result?s.result:_(s.language,s.code,t) +;return r.code=s.code,O("after:highlight",r),r}function _(e,t,i,s){ +const l=Object.create(null);function c(){if(!O.keywords)return void A.addText(M) +;let e=0;O.keywordPatternRe.lastIndex=0;let n=O.keywordPatternRe.exec(M),t="" +;for(;n;){t+=M.substring(e,n.index) +;const i=w.case_insensitive?n[0].toLowerCase():n[0],s=(a=i,O.keywords[a]);if(s){ +const[e,a]=s +;if(A.addText(t),t="",l[i]=(l[i]||0)+1,l[i]<=7&&(C+=a),e.startsWith("_"))t+=n[0];else{ +const t=w.classNameAliases[e]||e;g(n[0],t)}}else t+=n[0] +;e=O.keywordPatternRe.lastIndex,n=O.keywordPatternRe.exec(M)}var a +;t+=M.substring(e),A.addText(t)}function d(){null!=O.subLanguage?(()=>{ +if(""===M)return;let e=null;if("string"==typeof O.subLanguage){ +if(!a[O.subLanguage])return void A.addText(M) +;e=_(O.subLanguage,M,!0,S[O.subLanguage]),S[O.subLanguage]=e._top +}else e=E(M,O.subLanguage.length?O.subLanguage:null) +;O.relevance>0&&(C+=e.relevance),A.__addSublanguage(e._emitter,e.language) +})():c(),M=""}function g(e,n){ +""!==e&&(A.startScope(n),A.addText(e),A.endScope())}function u(e,n){let t=1 +;const a=n.length-1;for(;t<=a;){if(!e._emit[t]){t++;continue} +const a=w.classNameAliases[e[t]]||e[t],i=n[t];a?g(i,a):(M=i,c(),M=""),t++}} +function b(e,n){ +return e.scope&&"string"==typeof e.scope&&A.openNode(w.classNameAliases[e.scope]||e.scope), +e.beginScope&&(e.beginScope._wrap?(g(M,w.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap), +M=""):e.beginScope._multi&&(u(e.beginScope,n),M="")),O=Object.create(e,{parent:{ +value:O}}),O}function m(e,t,a){let i=((e,n)=>{const t=e&&e.exec(n) +;return t&&0===t.index})(e.endRe,a);if(i){if(e["on:end"]){const a=new n(e) +;e["on:end"](t,a),a.isMatchIgnored&&(i=!1)}if(i){ +for(;e.endsParent&&e.parent;)e=e.parent;return e}} +if(e.endsWithParent)return m(e.parent,t,a)}function h(e){ +return 0===O.matcher.regexIndex?(M+=e[0],1):(D=!0,0)}function f(e){ +const n=e[0],a=t.substring(e.index),i=m(O,e,a);if(!i)return ee;const s=O +;O.endScope&&O.endScope._wrap?(d(), +g(n,O.endScope._wrap)):O.endScope&&O.endScope._multi?(d(), +u(O.endScope,e)):s.skip?M+=n:(s.returnEnd||s.excludeEnd||(M+=n), +d(),s.excludeEnd&&(M=n));do{ +O.scope&&A.closeNode(),O.skip||O.subLanguage||(C+=O.relevance),O=O.parent +}while(O!==i.parent);return i.starts&&b(i.starts,e),s.returnEnd?0:n.length} +let N={};function y(a,s){const o=s&&s[0];if(M+=a,null==o)return d(),0 +;if("begin"===N.type&&"end"===s.type&&N.index===s.index&&""===o){ +if(M+=t.slice(s.index,s.index+1),!r){const n=Error(`0 width match regex (${e})`) +;throw n.languageName=e,n.badRule=N.rule,n}return 1} +if(N=s,"begin"===s.type)return(e=>{ +const t=e[0],a=e.rule,i=new n(a),s=[a.__beforeBegin,a["on:begin"]] +;for(const n of s)if(n&&(n(e,i),i.isMatchIgnored))return h(t) +;return a.skip?M+=t:(a.excludeBegin&&(M+=t), +d(),a.returnBegin||a.excludeBegin||(M=t)),b(a,e),a.returnBegin?0:t.length})(s) +;if("illegal"===s.type&&!i){ +const e=Error('Illegal lexeme "'+o+'" for mode "'+(O.scope||"")+'"') +;throw e.mode=O,e}if("end"===s.type){const e=f(s);if(e!==ee)return e} +if("illegal"===s.type&&""===o)return 1 +;if(R>1e5&&R>3*s.index)throw Error("potential infinite loop, way more iterations than matches") +;return M+=o,o.length}const w=v(e) +;if(!w)throw K(o.replace("{}",e)),Error('Unknown language: "'+e+'"') +;const k=X(w);let x="",O=s||k;const S={},A=new p.__emitter(p);(()=>{const e=[] +;for(let n=O;n!==w;n=n.parent)n.scope&&e.unshift(n.scope) +;e.forEach((e=>A.openNode(e)))})();let M="",C=0,T=0,R=0,D=!1;try{ +if(w.__emitTokens)w.__emitTokens(t,A);else{for(O.matcher.considerAll();;){ +R++,D?D=!1:O.matcher.considerAll(),O.matcher.lastIndex=T +;const e=O.matcher.exec(t);if(!e)break;const n=y(t.substring(T,e.index),e) +;T=e.index+n}y(t.substring(T))}return A.finalize(),x=A.toHTML(),{language:e, +value:x,relevance:C,illegal:!1,_emitter:A,_top:O}}catch(n){ +if(n.message&&n.message.includes("Illegal"))return{language:e,value:J(t), +illegal:!0,relevance:0,_illegalBy:{message:n.message,index:T, +context:t.slice(T-100,T+100),mode:n.mode,resultSoFar:x},_emitter:A};if(r)return{ +language:e,value:J(t),illegal:!1,relevance:0,errorRaised:n,_emitter:A,_top:O} +;throw n}}function E(e,n){n=n||p.languages||Object.keys(a);const t=(e=>{ +const n={value:J(e),illegal:!1,relevance:0,_top:c,_emitter:new p.__emitter(p)} +;return n._emitter.addText(e),n})(e),i=n.filter(v).filter(x).map((n=>_(n,e,!1))) +;i.unshift(t);const s=i.sort(((e,n)=>{ +if(e.relevance!==n.relevance)return n.relevance-e.relevance +;if(e.language&&n.language){if(v(e.language).supersetOf===n.language)return 1 +;if(v(n.language).supersetOf===e.language)return-1}return 0})),[r,o]=s,l=r +;return l.secondBest=o,l}function N(e){let n=null;const t=(e=>{ +let n=e.className+" ";n+=e.parentNode?e.parentNode.className:"" +;const t=p.languageDetectRe.exec(n);if(t){const n=v(t[1]) +;return n||(H(o.replace("{}",t[1])), +H("Falling back to no-highlight mode for this block.",e)),n?t[1]:"no-highlight"} +return n.split(/\s+/).find((e=>h(e)||v(e)))})(e);if(h(t))return +;if(O("before:highlightElement",{el:e,language:t +}),e.dataset.highlighted)return void console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e) +;if(e.children.length>0&&(p.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."), +console.warn("https://github.com/highlightjs/highlight.js/wiki/security"), +console.warn("The element with unescaped HTML:"), +console.warn(e)),p.throwUnescapedHTML))throw new V("One of your code blocks includes unescaped HTML.",e.innerHTML) +;n=e;const a=n.textContent,s=t?f(a,{language:t,ignoreIllegals:!0}):E(a) +;e.innerHTML=s.value,e.dataset.highlighted="yes",((e,n,t)=>{const a=n&&i[n]||t +;e.classList.add("hljs"),e.classList.add("language-"+a) +})(e,t,s.language),e.result={language:s.language,re:s.relevance, +relevance:s.relevance},s.secondBest&&(e.secondBest={ +language:s.secondBest.language,relevance:s.secondBest.relevance +}),O("after:highlightElement",{el:e,result:s,text:a})}let y=!1;function w(){ +"loading"!==document.readyState?document.querySelectorAll(p.cssSelector).forEach(N):y=!0 +}function v(e){return e=(e||"").toLowerCase(),a[e]||a[i[e]]} +function k(e,{languageName:n}){"string"==typeof e&&(e=[e]),e.forEach((e=>{ +i[e.toLowerCase()]=n}))}function x(e){const n=v(e) +;return n&&!n.disableAutodetect}function O(e,n){const t=e;s.forEach((e=>{ +e[t]&&e[t](n)}))} +"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{ +y&&w()}),!1),Object.assign(t,{highlight:f,highlightAuto:E,highlightAll:w, +highlightElement:N, +highlightBlock:e=>(Z("10.7.0","highlightBlock will be removed entirely in v12.0"), +Z("10.7.0","Please use highlightElement now."),N(e)),configure:e=>{p=Y(p,e)}, +initHighlighting:()=>{ +w(),Z("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")}, +initHighlightingOnLoad:()=>{ +w(),Z("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.") +},registerLanguage:(e,n)=>{let i=null;try{i=n(t)}catch(n){ +if(K("Language definition for '{}' could not be registered.".replace("{}",e)), +!r)throw n;K(n),i=c} +i.name||(i.name=e),a[e]=i,i.rawDefinition=n.bind(null,t),i.aliases&&k(i.aliases,{ +languageName:e})},unregisterLanguage:e=>{delete a[e] +;for(const n of Object.keys(i))i[n]===e&&delete i[n]}, +listLanguages:()=>Object.keys(a),getLanguage:v,registerAliases:k, +autoDetection:x,inherit:Y,addPlugin:e=>{(e=>{ +e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=n=>{ +e["before:highlightBlock"](Object.assign({block:n.el},n)) +}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=n=>{ +e["after:highlightBlock"](Object.assign({block:n.el},n))})})(e),s.push(e)}, +removePlugin:e=>{const n=s.indexOf(e);-1!==n&&s.splice(n,1)}}),t.debugMode=()=>{ +r=!1},t.safeMode=()=>{r=!0},t.versionString="11.8.0",t.regex={concat:b, +lookahead:d,either:m,optional:u,anyNumberOfTimes:g} +;for(const n in C)"object"==typeof C[n]&&e(C[n]);return Object.assign(t,C),t +},te=ne({});te.newInstance=()=>ne({});var ae=te +;const ie=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],se=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],re=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],oe=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],le=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse() +;var ce="[0-9](_*[0-9])*",de=`\\.(${ce})`,ge="[0-9a-fA-F](_*[0-9a-fA-F])*",ue={ +className:"number",variants:[{ +begin:`(\\b(${ce})((${de})|\\.)?|(${de}))[eE][+-]?(${ce})[fFdD]?\\b`},{ +begin:`\\b(${ce})((${de})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{ +begin:`(${de})[fFdD]?\\b`},{begin:`\\b(${ce})[fFdD]\\b`},{ +begin:`\\b0[xX]((${ge})\\.?|(${ge})?\\.(${ge}))[pP][+-]?(${ce})[fFdD]?\\b`},{ +begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${ge})[lL]?\\b`},{ +begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}], +relevance:0};function be(e,n,t){return-1===t?"":e.replace(n,(a=>be(e,n,t-1)))} +const me="[A-Za-z$_][0-9A-Za-z$_]*",pe=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],he=["true","false","null","undefined","NaN","Infinity"],fe=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],_e=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Ee=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Ne=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],ye=[].concat(Ee,fe,_e),we=e=>b(/\b/,e,/\w$/.test(e)?/\b/:/\B/),ve=["Protocol","Type"].map(we),ke=["init","self"].map(we),xe=["Any","Self"],Oe=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","distributed","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],Se=["false","nil","true"],Ae=["assignment","associativity","higherThan","left","lowerThan","none","right"],Me=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],Ce=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],Te=m(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),Re=m(Te,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),De=b(Te,Re,"*"),Ie=m(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),Be=m(Ie,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Le=b(Ie,Be,"*"),$e=b(/[A-Z]/,Be,"*"),Fe=["autoclosure",b(/convention\(/,m("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",b(/objc\(/,Le,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","testable","UIApplicationMain","unknown","usableFromInline"],ze=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"] +;var Ue=Object.freeze({__proto__:null,grmr_bash:e=>{const n=e.regex,t={},a={ +begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]} +;Object.assign(t,{className:"variable",variants:[{ +begin:n.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},a]});const i={ +className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},s={ +begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/, +end:/(\w+)/,className:"string"})]}},r={className:"string",begin:/"/,end:/"/, +contains:[e.BACKSLASH_ESCAPE,t,i]};i.contains.push(r);const o={begin:/\$?\(\(/, +end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t] +},l=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10 +}),c={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0, +contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{ +name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/, +keyword:["if","then","else","elif","fi","for","while","until","in","do","done","case","esac","function","select"], +literal:["true","false"], +built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"] +},contains:[l,e.SHEBANG(),c,o,e.HASH_COMMENT_MODE,s,{match:/(\/[a-z._-]+)+/},r,{ +className:"",begin:/\\"/},{className:"string",begin:/'/,end:/'/},t]}}, +grmr_c:e=>{const n=e.regex,t=e.COMMENT("//","$",{contains:[{begin:/\\\n/}] +}),a="decltype\\(auto\\)",i="[a-zA-Z_]\\w*::",s="("+a+"|"+n.optional(i)+"[a-zA-Z_]\\w*"+n.optional("<[^<>]+>")+")",r={ +className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{ +match:/\batomic_[a-z]{3,6}\b/}]},o={className:"string",variants:[{ +begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{ +begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", +end:"'",illegal:"."},e.END_SAME_AS_BEGIN({ +begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},l={ +className:"number",variants:[{begin:"\\b(0b[01']+)"},{ +begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)" +},{ +begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" +}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{ +keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include" +},contains:[{begin:/\\\n/,relevance:0},e.inherit(o,{className:"string"}),{ +className:"string",begin:/<.*?>/},t,e.C_BLOCK_COMMENT_MODE]},d={ +className:"title",begin:n.optional(i)+e.IDENT_RE,relevance:0 +},g=n.optional(i)+e.IDENT_RE+"\\s*\\(",u={ +keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"], +type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal128","const","static","complex","bool","imaginary"], +literal:"true false NULL", +built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr" +},b=[c,r,t,e.C_BLOCK_COMMENT_MODE,l,o],m={variants:[{begin:/=/,end:/;/},{ +begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}], +keywords:u,contains:b.concat([{begin:/\(/,end:/\)/,keywords:u, +contains:b.concat(["self"]),relevance:0}]),relevance:0},p={ +begin:"("+s+"[\\*&\\s]+)+"+g,returnBegin:!0,end:/[{;=]/,excludeEnd:!0, +keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:a,keywords:u,relevance:0},{ +begin:g,returnBegin:!0,contains:[e.inherit(d,{className:"title.function"})], +relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/, +keywords:u,relevance:0,contains:[t,e.C_BLOCK_COMMENT_MODE,o,l,r,{begin:/\(/, +end:/\)/,keywords:u,relevance:0,contains:["self",t,e.C_BLOCK_COMMENT_MODE,o,l,r] +}]},r,t,e.C_BLOCK_COMMENT_MODE,c]};return{name:"C",aliases:["h"],keywords:u, +disableAutodetect:!0,illegal:"=]/,contains:[{ +beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:c, +strings:o,keywords:u}}},grmr_css:e=>{const n=e.regex,t=(e=>({IMPORTANT:{ +scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{ +scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/}, +FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/}, +ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$", +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{ +scope:"number", +begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", +relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/} +}))(e),a=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS", +case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"}, +classNameAliases:{keyframePosition:"selector-tag"},contains:[t.BLOCK_COMMENT,{ +begin:/-(webkit|moz|ms|o)-(?=[a-z])/},t.CSS_NUMBER_MODE,{ +className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{ +className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0 +},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{ +begin:":("+re.join("|")+")"},{begin:":(:)?("+oe.join("|")+")"}] +},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+le.join("|")+")\\b"},{ +begin:/:/,end:/[;}{]/, +contains:[t.BLOCK_COMMENT,t.HEXCOLOR,t.IMPORTANT,t.CSS_NUMBER_MODE,...a,{ +begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri" +},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0, +excludeEnd:!0}]},t.FUNCTION_DISPATCH]},{begin:n.lookahead(/@/),end:"[{;]", +relevance:0,illegal:/:/,contains:[{className:"keyword",begin:/@-?\w[\w]*(-\w+)*/ +},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{ +$pattern:/[a-z-]+/,keyword:"and or not only",attribute:se.join(" ")},contains:[{ +begin:/[a-z-]+(?=:)/,className:"attribute"},...a,t.CSS_NUMBER_MODE]}]},{ +className:"selector-tag",begin:"\\b("+ie.join("|")+")\\b"}]}},grmr_xml:e=>{ +const n=e.regex,t=n.concat(/[\p{L}_]/u,n.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),a={ +className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},i={begin:/\s/, +contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}] +},s=e.inherit(i,{begin:/\(/,end:/\)/}),r=e.inherit(e.APOS_STRING_MODE,{ +className:"string"}),o=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),l={ +endsWithParent:!0,illegal:/`]+/}]}]}]};return{ +name:"HTML, XML", +aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"], +case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[i,o,r,s,{begin:/\[/,end:/\]/,contains:[{ +className:"meta",begin://,contains:[i,s,o,r]}]}] +},e.COMMENT(//,{relevance:10}),{begin://, +relevance:10},a,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/, +relevance:10,contains:[o]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag", +begin:/)/,end:/>/,keywords:{name:"style"},contains:[l],starts:{ +end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag", +begin:/)/,end:/>/,keywords:{name:"script"},contains:[l],starts:{ +end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{ +className:"tag",begin:/<>|<\/>/},{className:"tag", +begin:n.concat(//,/>/,/\s/)))), +end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:l}]},{ +className:"tag",begin:n.concat(/<\//,n.lookahead(n.concat(t,/>/))),contains:[{ +className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]} +},grmr_markdown:e=>{const n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml", +relevance:0},t={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{ +begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/, +relevance:2},{ +begin:e.regex.concat(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/), +relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{ +begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/ +},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0, +returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)", +excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[", +end:"\\]",excludeBegin:!0,excludeEnd:!0}]},a={className:"strong",contains:[], +variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}] +},i={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{ +begin:/_(?![_\s])/,end:/_/,relevance:0}]},s=e.inherit(a,{contains:[] +}),r=e.inherit(i,{contains:[]});a.contains.push(r),i.contains.push(s) +;let o=[n,t];return[a,i,s,r].forEach((e=>{e.contains=e.contains.concat(o) +})),o=o.concat(a,i),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{ +className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:o},{ +begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n", +contains:o}]}]},n,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)", +end:"\\s+",excludeEnd:!0},a,i,{className:"quote",begin:"^>\\s+",contains:o, +end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{ +begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{ +begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))", +contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{ +begin:"^[-\\*]{3,}",end:"$"},t,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{ +className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{ +className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}},grmr_dart:e=>{ +const n={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"}]},t={ +className:"subst",variants:[{begin:/\$\{/,end:/\}/}], +keywords:"true false null this is new super"},a={className:"string",variants:[{ +begin:"r'''",end:"'''"},{begin:'r"""',end:'"""'},{begin:"r'",end:"'", +illegal:"\\n"},{begin:'r"',end:'"',illegal:"\\n"},{begin:"'''",end:"'''", +contains:[e.BACKSLASH_ESCAPE,n,t]},{begin:'"""',end:'"""', +contains:[e.BACKSLASH_ESCAPE,n,t]},{begin:"'",end:"'",illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE,n,t]},{begin:'"',end:'"',illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE,n,t]}]};t.contains=[e.C_NUMBER_MODE,a] +;const i=["Comparable","DateTime","Duration","Function","Iterable","Iterator","List","Map","Match","Object","Pattern","RegExp","Set","Stopwatch","String","StringBuffer","StringSink","Symbol","Type","Uri","bool","double","int","num","Element","ElementList"],s=i.map((e=>e+"?")) +;return{name:"Dart",keywords:{ +keyword:["abstract","as","assert","async","await","base","break","case","catch","class","const","continue","covariant","default","deferred","do","dynamic","else","enum","export","extends","extension","external","factory","false","final","finally","for","Function","get","hide","if","implements","import","in","interface","is","late","library","mixin","new","null","on","operator","part","required","rethrow","return","sealed","set","show","static","super","switch","sync","this","throw","true","try","typedef","var","void","when","while","with","yield"], +built_in:i.concat(s).concat(["Never","Null","dynamic","print","document","querySelector","querySelectorAll","window"]), +$pattern:/[A-Za-z][A-Za-z0-9_]*\??/}, +contains:[a,e.COMMENT(/\/\*\*(?!\/)/,/\*\//,{subLanguage:"markdown",relevance:0 +}),e.COMMENT(/\/{3,} ?/,/$/,{contains:[{subLanguage:"markdown",begin:".", +end:"$",relevance:0}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{ +className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0, +contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE] +},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{begin:"=>"}]}}, +grmr_diff:e=>{const n=e.regex;return{name:"Diff",aliases:["patch"],contains:[{ +className:"meta",relevance:10, +match:n.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/) +},{className:"comment",variants:[{ +begin:n.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/), +end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{ +className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/, +end:/$/}]}},grmr_java:e=>{ +const n=e.regex,t="[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*",a=t+be("(?:<"+t+"~~~(?:\\s*,\\s*"+t+"~~~)*>)?",/~~~/g,2),i={ +keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits"], +literal:["false","true","null"], +type:["char","boolean","long","float","int","byte","short","double"], +built_in:["super","this"]},s={className:"meta",begin:"@"+t,contains:[{ +begin:/\(/,end:/\)/,contains:["self"]}]},r={className:"params",begin:/\(/, +end:/\)/,keywords:i,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0} +;return{name:"Java",aliases:["jsp"],keywords:i,illegal:/<\/|#/, +contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/, +relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{ +begin:/import java\.[a-z]+\./,keywords:"import",relevance:2 +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/, +className:"string",contains:[e.BACKSLASH_ESCAPE] +},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{ +match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,t],className:{ +1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{ +begin:[n.concat(/(?!else)/,t),/\s+/,t,/\s+/,/=(?!=)/],className:{1:"type", +3:"variable",5:"operator"}},{begin:[/record/,/\s+/,t],className:{1:"keyword", +3:"title.class"},contains:[r,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{ +beginKeywords:"new throw return else",relevance:0},{ +begin:["(?:"+a+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{ +2:"title.function"},keywords:i,contains:[{className:"params",begin:/\(/, +end:/\)/,keywords:i,relevance:0, +contains:[s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,ue,e.C_BLOCK_COMMENT_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},ue,s]}},grmr_javascript:e=>{ +const n=e.regex,t=me,a={begin:/<[A-Za-z0-9\\._:-]+/, +end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,n)=>{ +const t=e[0].length+e.index,a=e.input[t] +;if("<"===a||","===a)return void n.ignoreMatch();let i +;">"===a&&(((e,{after:n})=>{const t="",S={ +match:[/const|var|let/,/\s+/,t,/\s*/,/=\s*/,/(async\s*)?/,n.lookahead(O)], +keywords:"async",className:{1:"keyword",3:"title.function"},contains:[_]} +;return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{ +PARAMS_CONTAINS:f,CLASS_REFERENCE:N},illegal:/#(?![$_A-z])/, +contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{ +label:"use_strict",className:"meta",relevance:10, +begin:/^\s*['"]use (strict|asm)['"]/ +},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,g,u,b,m,{match:/\$\d+/},l,N,{ +className:"attr",begin:t+n.lookahead(":"),relevance:0},S,{ +begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*", +keywords:"return throw case",relevance:0,contains:[m,e.REGEXP_MODE,{ +className:"function",begin:O,returnBegin:!0,end:"\\s*=>",contains:[{ +className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{ +className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0, +excludeEnd:!0,keywords:i,contains:f}]}]},{begin:/,/,relevance:0},{match:/\s+/, +relevance:0},{variants:[{begin:"<>",end:""},{ +match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:a.begin, +"on:begin":a.isTrulyOpeningTag,end:a.end}],subLanguage:"xml",contains:[{ +begin:a.begin,end:a.end,skip:!0,contains:["self"]}]}]},y,{ +beginKeywords:"while if switch catch for"},{ +begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", +returnBegin:!0,label:"func.def",contains:[_,e.inherit(e.TITLE_MODE,{begin:t, +className:"title.function"})]},{match:/\.\.\./,relevance:0},k,{match:"\\$"+t, +relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"}, +contains:[_]},w,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/, +className:"variable.constant"},E,x,{match:/\$[(.]/}]}},grmr_json:e=>{ +const n=["true","false","null"],t={scope:"literal",beginKeywords:n.join(" ")} +;return{name:"JSON",keywords:{literal:n},contains:[{className:"attr", +begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},{match:/[{}[\],:]/, +className:"punctuation",relevance:0 +},e.QUOTE_STRING_MODE,t,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE], +illegal:"\\S"}},grmr_kotlin:e=>{const n={ +keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual", +built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing", +literal:"true false null"},t={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@" +},a={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},i={ +className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},s={className:"string", +variants:[{begin:'"""',end:'"""(?=[^"])',contains:[i,a]},{begin:"'",end:"'", +illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/, +contains:[e.BACKSLASH_ESCAPE,i,a]}]};a.contains.push(s);const r={ +className:"meta", +begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?" +},o={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/, +end:/\)/,contains:[e.inherit(s,{className:"string"}),"self"]}] +},l=ue,c=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),d={ +variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/, +contains:[]}]},g=d;return g.variants[1].contains=[d],d.variants[1].contains=[g], +{name:"Kotlin",aliases:["kt","kts"],keywords:n, +contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag", +begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,c,{className:"keyword", +begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol", +begin:/@\w+/}]}},t,r,o,{className:"function",beginKeywords:"fun",end:"[(]|$", +returnBegin:!0,excludeEnd:!0,keywords:n,relevance:5,contains:[{ +begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0, +contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin://, +keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/, +endsParent:!0,keywords:n,relevance:0,contains:[{begin:/:/,end:/[=,\/]/, +endsWithParent:!0,contains:[d,e.C_LINE_COMMENT_MODE,c],relevance:0 +},e.C_LINE_COMMENT_MODE,c,r,o,s,e.C_NUMBER_MODE]},c]},{ +begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{ +3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0, +illegal:"extends implements",contains:[{ +beginKeywords:"public protected internal private constructor" +},e.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0, +excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/, +excludeBegin:!0,returnEnd:!0},r,o]},s,{className:"meta",begin:"^#!/usr/bin/env", +end:"$",illegal:"\n"},l]}},grmr_objectivec:e=>{ +const n=/[a-zA-Z@][a-zA-Z0-9_]*/,t={$pattern:n, +keyword:["@interface","@class","@protocol","@implementation"]};return{ +name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"], +keywords:{"variable.language":["this","super"],$pattern:n, +keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"], +literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"], +built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"], +type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"] +},illegal:"/,end:/$/,illegal:"\\n" +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class", +begin:"("+t.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:t, +contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE, +relevance:0}]}},grmr_plaintext:e=>({name:"Plain text",aliases:["text","txt"], +disableAutodetect:!0}),grmr_shell:e=>({name:"Shell Session", +aliases:["console","shellsession"],contains:[{className:"meta.prompt", +begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/, +subLanguage:"bash"}}]}),grmr_swift:e=>{const n={match:/\s+/,relevance:0 +},t=e.COMMENT("/\\*","\\*/",{contains:["self"]}),a=[e.C_LINE_COMMENT_MODE,t],i={ +match:[/\./,m(...ve,...ke)],className:{2:"keyword"}},s={match:b(/\./,m(...Oe)), +relevance:0},r=Oe.filter((e=>"string"==typeof e)).concat(["_|0"]),o={variants:[{ +className:"keyword", +match:m(...Oe.filter((e=>"string"!=typeof e)).concat(xe).map(we),...ke)}]},l={ +$pattern:m(/\b\w+/,/#\w+/),keyword:r.concat(Me),literal:Se},c=[i,s,o],g=[{ +match:b(/\./,m(...Ce)),relevance:0},{className:"built_in", +match:b(/\b/,m(...Ce),/(?=\()/)}],u={match:/->/,relevance:0},p=[u,{ +className:"operator",relevance:0,variants:[{match:De},{match:`\\.(\\.|${Re})+`}] +}],h="([0-9]_*)+",f="([0-9a-fA-F]_*)+",_={className:"number",relevance:0, +variants:[{match:`\\b(${h})(\\.(${h}))?([eE][+-]?(${h}))?\\b`},{ +match:`\\b0x(${f})(\\.(${f}))?([pP][+-]?(${h}))?\\b`},{match:/\b0o([0-7]_*)+\b/ +},{match:/\b0b([01]_*)+\b/}]},E=(e="")=>({className:"subst",variants:[{ +match:b(/\\/,e,/[0\\tnr"']/)},{match:b(/\\/,e,/u\{[0-9a-fA-F]{1,8}\}/)}] +}),N=(e="")=>({className:"subst",match:b(/\\/,e,/[\t ]*(?:[\r\n]|\r\n)/) +}),y=(e="")=>({className:"subst",label:"interpol",begin:b(/\\/,e,/\(/),end:/\)/ +}),w=(e="")=>({begin:b(e,/"""/),end:b(/"""/,e),contains:[E(e),N(e),y(e)] +}),v=(e="")=>({begin:b(e,/"/),end:b(/"/,e),contains:[E(e),y(e)]}),k={ +className:"string", +variants:[w(),w("#"),w("##"),w("###"),v(),v("#"),v("##"),v("###")]},x={ +match:b(/`/,Le,/`/)},O=[x,{className:"variable",match:/\$\d+/},{ +className:"variable",match:`\\$${Be}+`}],S=[{match:/(@|#(un)?)available/, +className:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:ze, +contains:[...p,_,k]}]}},{className:"keyword",match:b(/@/,m(...Fe))},{ +className:"meta",match:b(/@/,Le)}],A={match:d(/\b[A-Z]/),relevance:0,contains:[{ +className:"type", +match:b(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,Be,"+") +},{className:"type",match:$e,relevance:0},{match:/[?!]+/,relevance:0},{ +match:/\.\.\./,relevance:0},{match:b(/\s+&\s+/,d($e)),relevance:0}]},M={ +begin://,keywords:l,contains:[...a,...c,...S,u,A]};A.contains.push(M) +;const C={begin:/\(/,end:/\)/,relevance:0,keywords:l,contains:["self",{ +match:b(Le,/\s*:/),keywords:"_|0",relevance:0 +},...a,...c,...g,...p,_,k,...O,...S,A]},T={begin://,contains:[...a,A] +},R={begin:/\(/,end:/\)/,keywords:l,contains:[{ +begin:m(d(b(Le,/\s*:/)),d(b(Le,/\s+/,Le,/\s*:/))),end:/:/,relevance:0, +contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Le}] +},...a,...c,...p,_,k,...S,A,C],endsParent:!0,illegal:/["']/},D={ +match:[/func/,/\s+/,m(x.match,Le,De)],className:{1:"keyword",3:"title.function" +},contains:[T,R,n],illegal:[/\[/,/%/]},I={ +match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"}, +contains:[T,R,n],illegal:/\[|%/},B={match:[/operator/,/\s+/,De],className:{ +1:"keyword",3:"title"}},L={begin:[/precedencegroup/,/\s+/,$e],className:{ +1:"keyword",3:"title"},contains:[A],keywords:[...Ae,...Se],end:/}/} +;for(const e of k.variants){const n=e.contains.find((e=>"interpol"===e.label)) +;n.keywords=l;const t=[...c,...g,...p,_,k,...O];n.contains=[...t,{begin:/\(/, +end:/\)/,contains:["self",...t]}]}return{name:"Swift",keywords:l, +contains:[...a,D,I,{beginKeywords:"struct protocol class extension enum actor", +end:"\\{",excludeEnd:!0,keywords:l,contains:[e.inherit(e.TITLE_MODE,{ +className:"title.class",begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/}),...c] +},B,L,{beginKeywords:"import",end:/$/,contains:[...a],relevance:0 +},...c,...g,...p,_,k,...O,...S,A,C]}},grmr_ruby:e=>{ +const n=e.regex,t="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",a=n.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),i=n.concat(a,/(::\w+)*/),s={ +"variable.constant":["__FILE__","__LINE__","__ENCODING__"], +"variable.language":["self","super"], +keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield","include","extend","prepend","public","private","protected","raise","throw"], +built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"], +literal:["true","false","nil"]},r={className:"doctag",begin:"@[A-Za-z]+"},o={ +begin:"#<",end:">"},l=[e.COMMENT("#","$",{contains:[r] +}),e.COMMENT("^=begin","^=end",{contains:[r],relevance:10 +}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],c={className:"subst",begin:/#\{/, +end:/\}/,keywords:s},d={className:"string",contains:[e.BACKSLASH_ESCAPE,c], +variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{ +begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{ +begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?/},{begin:/%[qQwWx]?\//, +end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{ +begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{ +begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{ +begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{ +begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{ +begin:n.concat(/<<[-~]?'?/,n.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)), +contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/, +contains:[e.BACKSLASH_ESCAPE,c]})]}]},g="[0-9](_?[0-9])*",u={className:"number", +relevance:0,variants:[{ +begin:`\\b([1-9](_?[0-9])*|0)(\\.(${g}))?([eE][+-]?(${g})|r)?i?\\b`},{ +begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b" +},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{ +begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{ +begin:"\\b0(_?[0-7])+r?i?\\b"}]},b={variants:[{match:/\(\)/},{ +className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0, +keywords:s}]},m=[d,{variants:[{match:[/class\s+/,i,/\s+<\s+/,i]},{ +match:[/\b(class|module)\s+/,i]}],scope:{2:"title.class", +4:"title.class.inherited"},keywords:s},{match:[/(include|extend)\s+/,i],scope:{ +2:"title.class"},keywords:s},{relevance:0,match:[i,/\.new[. (]/],scope:{ +1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/, +className:"variable.constant"},{relevance:0,match:a,scope:"title.class"},{ +match:[/def/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[b]},{ +begin:e.IDENT_RE+"::"},{className:"symbol", +begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol", +begin:":(?!\\s)",contains:[d,{begin:t}],relevance:0},u,{className:"variable", +begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{ +className:"params",begin:/\|/,end:/\|/,excludeBegin:!0,excludeEnd:!0, +relevance:0,keywords:s},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*", +keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,c], +illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{ +begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[", +end:"\\][a-z]*"}]}].concat(o,l),relevance:0}].concat(o,l) +;c.contains=m,b.contains=m;const p=[{begin:/^\s*=>/,starts:{end:"$",contains:m} +},{className:"meta.prompt", +begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])", +starts:{end:"$",keywords:s,contains:m}}];return l.unshift(o),{name:"Ruby", +aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/, +contains:[e.SHEBANG({binary:"ruby"})].concat(p).concat(l).concat(m)}}, +grmr_yaml:e=>{ +const n="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",a={ +className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/ +},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable", +variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},i=e.inherit(a,{ +variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),s={ +end:",",endsWithParent:!0,excludeEnd:!0,keywords:n,relevance:0},r={begin:/\{/, +end:/\}/,contains:[s],illegal:"\\n",relevance:0},o={begin:"\\[",end:"\\]", +contains:[s],illegal:"\\n",relevance:0},l=[{className:"attr",variants:[{ +begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{ +begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},{className:"meta",begin:"^---\\s*$", +relevance:10},{className:"string", +begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{ +begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0, +relevance:0},{className:"type",begin:"!\\w+!"+t},{className:"type", +begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t +},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta", +begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)", +relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},{ +className:"number", +begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b" +},{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},r,o,a],c=[...l] +;return c.pop(),c.push(i),s.contains=c,{name:"YAML",case_insensitive:!0, +aliases:["yml"],contains:l}}});const je=ae;for(const e of Object.keys(Ue)){ +const n=e.replace("grmr_","").replace("_","-");je.registerLanguage(n,Ue[e])} +return je}() +;"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs); diff --git a/docs/static-assets/play_button.svg b/docs/static-assets/play_button.svg new file mode 100644 index 0000000000..c39a2f4a87 --- /dev/null +++ b/docs/static-assets/play_button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/static-assets/readme.md b/docs/static-assets/readme.md new file mode 100644 index 0000000000..62216710a6 --- /dev/null +++ b/docs/static-assets/readme.md @@ -0,0 +1,36 @@ +# Dart documentation generator + +This directory includes static sources used by the Dart documentation generator +through the `dart doc` command. + +To learn more about generating and viewing the generated documentation, +check out the [`dart doc` documentation][]. + +[`dart doc` documentation]: https://dart.dev/tools/dart-doc + +## Third-party resources + +## highlight.js + +Generated from https://highlightjs.org/download/ on 2021-07-13. + +**License:** https://github.com/highlightjs/highlight.js/blob/main/LICENSE + +**Included languages:** + +* bash +* c +* css +* dart +* diff +* html, xml +* java +* javascript +* json +* kotlin +* markdown +* objective-c +* plaintext +* shell +* swift +* yaml diff --git a/docs/static-assets/search.svg b/docs/static-assets/search.svg new file mode 100644 index 0000000000..58f4299fc4 --- /dev/null +++ b/docs/static-assets/search.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/static-assets/styles.css b/docs/static-assets/styles.css new file mode 100644 index 0000000000..b3492baebc --- /dev/null +++ b/docs/static-assets/styles.css @@ -0,0 +1,1315 @@ +.light-theme { + /*background-color body, listdropdown*/ + --main-bg-color: #fff; + /*header id-tittle*/ + --main-header-color: #eeeeee; + /*package-name*/ + --main-sidebar-color: #727272; + /*section-title and section subtitle, desc markdown(body, dd, h3), header a*/ + --main-text-color: #111111; + /*typehead search-box*/ + --main-search-bar: #fff; + /* scrollbar-thumb */ + --main-scrollbar-color: #CCC; + /* footer */ + --main-footer-background: #111111; + /*header text color*/ + --main-h-text: black; + /* hyperlinks*/ + --main-hyperlinks-color: #0175C2; + /*search background*/ + --main-search-background: transparent; + + /*code snippets*/ + --main-code-bg: #f8f8f8; + --main-keyword-color: #333; + --main-tag-color: #000080; + --main-section-color: #900; + --main-comment-color: #998; + --main-var-color: #008080; + --main-string-color: #d14; + + --main-number-filter: invert(0%); + --main-icon-color: black; + + /* alerts */ + --alert-info: #e7f8ff; + --alert-tip: #ecfaf7; + --alert-important: #e2dbff; + --alert-warning: #fcf8e3; + --alert-error: #fde9ee; +} + +.dark-theme { + /*background-color body, listdropdown*/ + --main-bg-color: #10161E; + /*header id-tittle*/ + --main-header-color: #1C2834; + /*package-name*/ + --main-sidebar-color: #fff; + /*section-title and section subtitle, desc markdown(body, dd, h3), header a*/ + --main-text-color: #fff; + /*typehead search-box*/ + --main-search-bar: #454545; + /* scrollbar-thumb */ + --main-scrollbar-color: #5f6368; + /* footer */ + --main-footer-background: #27323a; + /* hyperlinks*/ + --main-hyperlinks-color: #00D2FA; + /*search background*/ + --main-search-background: black; + + /*code snippets*/ + --main-code-bg: #10161E; + --main-keyword-color: white; + --main-tag-color: #00D2FA; + --main-section-color: #FF2D64; + --main-comment-color: #909CC3; + --main-var-color: #55A09B; + --main-string-color: #FF2D64; + + --main-number-filter: invert(100%); + --main-icon-color: white; + + /* alerts */ + --alert-info: #043875; + --alert-tip: #065517; + --alert-important: #4a00b4; + --alert-warning: #7b6909; + --alert-error: #7a0c17; +} + +#theme { + display: none; +} + +#theme-button { + position: absolute; + right: 30px; + height: 24px; +} + +#theme-button .material-symbols-outlined { + color: var(--main-icon-color); + user-select: none; + cursor: pointer; +} + +#theme-button .material-symbols-outlined:hover { + color: var(--main-hyperlinks-color); +} + +li .material-symbols-outlined, dt .material-symbols-outlined { + font-size: 1em; + vertical-align: text-bottom; +} + +dt .material-symbols-outlined { + text-indent: 0; +} + +.light-theme #light-theme-button { + display: none; +} + +.dark-theme #dark-theme-button { + display: none; +} + +/* +Only show images that fit their theme using GitHub's syntax, see: +https://github.blog/changelog/2021-11-24-specify-theme-context-for-images-in-markdown/ +*/ +.dark-theme img[src$="#gh-light-mode-only"] { + display: none; +} + +.light-theme img[src$="#gh-dark-mode-only"] { + display: none; +} + +/* for layout */ +html, +body { + margin: 0; + padding: 0; + height: 100%; + width: 100%; + overflow: hidden; + box-sizing: border-box; +} + +*, *:before, *:after { + box-sizing: inherit; +} + +body { + display: flex; + flex-direction: column; + -webkit-overflow-scrolling: touch; +} + +header { + flex: 0 0 50px; + display: flex; + flex-direction: row; + align-items: center; + padding-left: 30px; + padding-right: 30px; + background-color: var(--main-header-color); +} + +header ol { + list-style: none; + margin: 0; + padding: 0; +} + +header ol li { + display: inline; +} + +header form { + display: flex; + flex: 1; + justify-content: flex-end; +} + +header#header-search-sidebar { + height: 50px; + margin-bottom: 25px; +} + +footer { + flex: 0 0 16px; + text-align: center; + padding: 16px 20px; +} + +main { + flex: 1; + display: flex; + flex-direction: row; + min-height: 0; +} + +.sidebar-offcanvas-left { + flex: 0 1 230px; + order: 1; + overflow-y: scroll; + padding: 20px 0 15px 30px; + margin: 5px 20px 0 0; +} + +::-webkit-scrollbar-button{ display: none; height: 13px; border-radius: 0; background-color: #AAA; } +::-webkit-scrollbar-button:hover{ background-color: #AAA; } +::-webkit-scrollbar-thumb{ background-color: var(--main-scrollbar-color); } +::-webkit-scrollbar-thumb:hover{ background-color: var(--main-scrollbar-color); } +::-webkit-scrollbar{ width: 4px; } + +.main-content::-webkit-scrollbar{ width: 8px; } + +.main-content { + flex: 1; + order: 2; + overflow-y: scroll; + padding: 10px 20px 0 20px; +} + +.sidebar-offcanvas-right { + flex: 0 1 12em; + order: 3; + overflow-y: scroll; + padding: 20px 15px 15px 15px; + margin-top: 5px; + margin-right: 20px; +} +/* end for layout */ + +body { + -webkit-text-size-adjust: 100%; + overflow-x: hidden; + font-family: Roboto, sans-serif; + font-size: 16px; + line-height: 1.42857143; + color: var(--main-text-color); + background-color: var(--main-bg-color); +} + +nav.navbar { + background-color: inherit; + min-height: 50px; + border: 0; +} + +@media (max-width: 840px) { + .hidden-xs { + display: none !important; + } +} + +@media (min-width: 841px) { + .hidden-l { + display: none !important; + } +} + +nav.navbar .row { + padding-top: 8px; +} + +nav .container { + white-space: nowrap; +} + +header { + background-color: var(--main-header-color); + box-shadow: 0 3px 5px rgba(0,0,0,0.1); +} + +.pre { + border: 1px solid #ddd; + font-size: 14px; +} + +.hljs-string, .hljs-doctag { + color: var(--main-string-color); +} + +.hljs-number, .hljs-literal, .hljs-variable, .hljs-template-variable, .hljs-tag .hljs-attr { + color: var(--main-var-color); +} + +.hljs-comment, .hljs-quote { + color: var(--main-comment-color); + font-style: italic; +} + +.hljs-title, .hljs-section, .hljs-selector-id { + color: var(--main-section-color); + font-weight: bold; +} + +.hljs-tag, .hljs-name, .hljs-attribute { + color: var(--main-tag-color); + font-weight: normal; +} + +.hljs-keyword, .hljs-selector-tag, .hljs-subst { + color: var(--main-keyword-color); + font-weight: bold; +} + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + color: var(--main-text-color); + background: var(--main-code-bg); +} + +a { + text-decoration: none; +} + +section { + margin-bottom: 36px; +} + +dl { + margin: 0; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: Roboto, sans-serif; + font-weight: 400; + margin-top: 1.5em; + color: var(--main-text-color); +} + +h1.title { + overflow: hidden; + text-overflow: ellipsis; +} + +h1 { + font-size: 37px; + margin-top: 0; + margin-bottom: 0.67em; +} + +h2 { + font-size: 28px; +} + +h5 { + font-size: 16px; +} + +p { + margin-bottom: 1em; + margin-top: 0; +} + +a { + color: var(--main-hyperlinks-color); +} + +a:hover { + color: #13B9FD; +} + +pre.prettyprint { + font-family: 'Roboto Mono', Menlo, monospace; + color: black; + border-radius: 0; + font-size: 15px; + word-wrap: normal; + line-height: 1.4; + border: 0; + margin: 16px 0 16px 0; + padding: 8px; +} + +pre code { + white-space: pre; + word-wrap: initial; + font-size: 100% +} + +.fixed { + white-space: pre; +} + +pre { + border: 1px solid #ddd; + background-color: #eee; + font-size: 14px; +} + +code { + font-family: 'Roboto Mono', Menlo, monospace; + color: inherit; + padding: 0.2em 0.4em; + font-size: 85%; + background-color: rgba(27,31,35,0.05); + border-radius: 3px; +} + +@media(max-width: 840px) { + nav .container { + width: 100% + } + + h1 { + font-size: 24px; + } + + pre { + margin: 16px 0; + } +} + +header h1 { + font-weight: 400; + margin-bottom: 16px; +} + +header a, +header p, +header li { + color: #0175C2; +} + +header a:hover { + color: #0175C2; +} + +header h1 .kind { + color: #555; +} + +dt { + font-weight: normal; +} + +dd { + color: var(--main-text-color); + margin-bottom: 1em; + margin-left: 0; +} + +dd.callable, dd.constant, dd.property { + margin-bottom: 24px; +} + +dd p { + overflow-x: hidden; + text-overflow: ellipsis; + margin-bottom: 0; +} + +/* Enum values do not have their own pages; their full docs are presented on the + * enum class's page. */ +dt.constant + dd p { + margin-bottom: 1em; +} + +/* indents wrapped lines */ +section.summary dt { + margin-left: 24px; + text-indent: -24px; +} + +.dl-horizontal dd { + margin-left: initial; +} + +dl.dl-horizontal dt { + font-style: normal; + text-align: left; + color: #727272; + margin-right: 20px; + width: initial; +} + +dt .name { + font-weight: 500; +} + +dl dt.callable .name { + float: none; + width: auto; +} + +.type-parameter { + white-space: nowrap; +} + +.multi-line-signature .type-parameter .parameter { + margin-left: 0; + display: unset; +} + +.parameter-list { + display: table-cell; + margin-left: 10px; + list-style-type: none; + padding-inline-start: unset; +} + +.parameter-list.single-line { + display: inline; + margin-left: 0; +} + +.parameter-list.single-line > li { + display: inline; +} + +.parameter-list.single-line > li > .parameter { + display: inline; + margin-left: 0; + text-indent: 0; +} + +.signature { + color: var(--main-text-color); +} + +.signature a { + color: var(--main-hyperlinks-color); +} + +.optional { + font-style: italic; +} + +.undocumented { + font-style: italic; +} + +.is-const { + font-style: italic; +} + +.deprecated { + text-decoration: line-through; +} + +.category.linked { + font-weight: bold; + opacity: 1; +} + +/* Colors for category based on categoryOrder in dartdoc_options.config. */ +.category.cp-0 { + background-color: #54b7c4 +} + +.category.cp-1 { + background-color: #54c47f +} + +.category.cp-2 { + background-color: #c4c254 +} + +.category.cp-3 { + background-color: #c49f54 +} + +.category.cp-4 { + background-color: #c45465 +} + +.category.cp-5 { + background-color: #c454c4 +} + +.category a { + color: white; +} + +.category { + padding: 2px 4px; + font-size: 12px; + border-radius: 4px; + background-color: #999; + text-transform: uppercase; + color: white; + opacity: .5; +} + +h1 .category { + vertical-align: middle; +} + +/* The badge under a declaration for things like "const", "read-only", etc. and for the badges inline like sealed or interface */ +/* See https://github.com/dart-lang/dartdoc/blob/main/lib/src/model/feature.dart */ +.feature { + display: inline-block; + background: var(--main-bg-color); + border: 1px solid var(--main-hyperlinks-color); + border-radius: 20px; + color: var(--main-hyperlinks-color); + + font-size: 12px; + padding: 1px 6px; + margin: 0 8px 0 0; +} + +a.feature:hover { + border-color: #13B9FD; +} + +h1 .feature { + vertical-align: middle; + margin: 0 -2px 0 0; +} + +.source-link { + padding: 18px 4px; + font-size: 18px; + vertical-align: middle; +} + +@media (max-width: 840px) { + .source-link { + padding: 7px 2px; + font-size: 10px; + } +} + +#external-links { + float: right; +} + +.btn-group { + position: relative; + display: inline-flex; + vertical-align: middle; +} + +footer { + color: #fff; + background-color: var(--main-footer-background); + width: 100%; +} + +footer p { + margin: 0; +} + +footer .no-break { + white-space: nowrap; +} + +footer .container { + padding-left: 0; + padding-right: 0; +} + +footer a, footer a:hover { + color: #fff; +} + +.markdown.desc { + margin-bottom: 1em; + max-width: 700px; +} + +.markdown h1 { + font-size: 24px; + margin-bottom: 8px; +} + +.markdown h2 { + font-size: 20px; + margin-top: 24px; + margin-bottom: 8px; +} + +.markdown h3 { + font-size: 18px; + margin-bottom: 8px; + color: var(--main-text-color); +} + +.markdown h4 { + font-size: 16px; + margin-bottom: 0; +} + +.markdown li p { + margin: 0; +} + +table { + margin-bottom: 1em; +} + +table, +th, +td { + border: 1px solid lightgrey; + border-collapse: collapse; +} + +th, +td { + padding: 8px; +} + +.gt-separated { + list-style: none; + padding: 0; + margin: 0; +} + +.gt-separated li { + display: inline-block; +} + +.gt-separated li:before { + background-image: url("data:image/svg+xml;utf8,"); + background-position: center; + content: "\00a0"; + margin: 0 6px 0 4px; + padding: 0 3px 0 0; +} + +.gt-separated.dark li:before { + background-image: url("data:image/svg+xml;utf8,"); +} + +.gt-separated li:first-child:before { + background-image: none; + content: ""; + margin: 0; + padding: 0; +} + +.multi-line-signature { + font-size: 17px; + color: #727272; +} + +.multi-line-signature .parameter { + margin-left: 60px; + display: block; + text-indent: -36px; +} + +.breadcrumbs { + padding: 0; + margin: 8px 0 8px 0; + white-space: nowrap; + line-height: 1; +} + +@media screen and (min-width: 840px) { + nav ol.breadcrumbs { + float: left; + } +} + +@media screen and (max-width: 840px) { + .breadcrumbs { + margin: 0 0 24px 0; + overflow-x: hidden; + } +} + +.breadcrumbs .gt-separated .dark .hidden-xs li+li:before { + color: var(--main-h-text); +} + +ol.breadcrumbs li a { + color: var(--main-hyperlinks-color); +} + +.self-crumb { + color: var(--main-h-text); +} + +.self-name { + color: #555; + display: none; +} + +.annotation-list { + list-style: none; + padding: 0; + display: inline; +} + +.comma-separated { + list-style: none; + padding: 0; + display: inline; +} + +.comma-separated li { + display: inline; +} + +.comma-separated li:after { + content: ", "; +} + +.comma-separated li:last-child:after { + content: ""; +} + +.end-with-period li:last-child:after { + content: "."; +} + +.container > section:first-child { + border: 0; +} + +.constructor-modifier { + font-style: italic; +} + +section.multi-line-signature div.parameters { + margin-left: 24px; +} + +/* sidebar styles */ + +.sidebar ol { + list-style: none; + line-height: 22px; + margin-top: 0; + margin-bottom: 0; + padding: 0 0 15px 0; +} + +.sidebar h5 a, +.sidebar h5 a:hover { + color: var(--main-sidebar-color); +} + +.sidebar h5, +.sidebar ol li { + text-overflow: ellipsis; + overflow: hidden; + padding: 3px 0 3px 3px; +} + +.sidebar h5 { + color: var(--main-sidebar-color); + font-size: 18px; + margin: 0 0 22px 0; + padding-top: 0; +} + +.sidebar ol li.section-title { + font-size: 18px; + font-weight: normal; + text-transform: uppercase; + padding-top: 25px; +} + +.sidebar ol li.section-subtitle a { + color: inherit; +} + +.sidebar ol li.section-subtitle { + font-weight: 400; + text-transform: uppercase; +} + +.sidebar ol li.section-subitem { + margin-left: 12px; +} + +.sidebar ol li:first-child { + padding-top: 3px; + margin-top: 0; +} + +button { + padding: 0; +} + +#sidenav-left-toggle { + display: none; + vertical-align: text-bottom; + padding: 0; + color: var(--main-icon-color); + user-select: none; + cursor: pointer; +} + +#sidenav-left-toggle:hover { + color: var(--main-hyperlinks-color); +} + +/* left-nav disappears, and can transition in from the left */ +@media screen and (max-width:840px) { + #sidenav-left-toggle { + display: inline; + width: 24px; + height: 24px; + border: none; + margin-right: 24px; + margin-left: 24px; + font-size: 24px; + } + + #overlay-under-drawer.active { + opacity: 0.4; + height: 100%; + z-index: 1999; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: black; + display: block; + } + + .sidebar-offcanvas-left { + left: -100%; + position: fixed; + -webkit-transition:all .25s ease-out; + -o-transition:all .25s ease-out; + transition:all .25s ease-out; + z-index: 2000; + top: 0; + width: 280px; /* works all the way down to an iphone 4 */ + height: 90%; + background-color: var(--main-bg-color); + overflow-y: scroll; /* TODO: how to hide scroll bars? */ + padding: 10px; + margin: 10px 10px; + box-shadow: 5px 5px 5px 5px #444444; + } + + ol#sidebar-nav { + font-size: 18px; + white-space: pre-line; + } + + .sidebar-offcanvas-left.active { + left: 0; /* this animates our drawer into the page */ + } + + .self-name { + display: inline-block; + color: var(--main-hyperlinks-color); + } +} + +.sidebar-offcanvas-left h5 { + margin-bottom: 10px; +} + +.sidebar-offcanvas-left h5:last-of-type { + border: 0; + margin-bottom: 25px; +} + +/* the right nav disappears out of view when the window shrinks */ +@media screen and (max-width: 992px) { + .sidebar-offcanvas-right { + display: none; + } +} + +#overlay-under-drawer { + display: none; +} + +/* find-as-you-type search box */ + +.form-control { + border-radius: 0; + border: 0; +} + +@media screen and (max-width: 840px) { + form.search { + display: none; + } +} + +.typeahead { + width: 200px; + padding: 2px 7px 1px 7px; + line-height: 20px; + outline: none; +} + +.tt-wrapper { + position: relative; + display: inline-block; +} + +.tt-input { + position: relative; + vertical-align: top; +} + +.navbar-right .tt-menu { + right: 0; + left: inherit !important; + width: 540px; + max-height: 280px; + overflow-y: scroll; +} + +.navbar-right { + padding-right: 60px; +} + +.tt-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 100; + font-size: 14px; + margin: 0; + background-color: var(--main-bg-color); + border: 1px solid var(--main-header-color); + -webkit-box-shadow: 0 5px 10px rgba(0,0,0,.2); + -moz-box-shadow: 0 5px 10px rgba(0,0,0,.2); + box-shadow: 0 5px 10px rgba(0,0,0,.2); +} + + +.typeahead { + padding: 17px 17px 17px 50px; + width: 422px; + height: 20px; + font-size: 13px; + background-image: url("./search.svg"); + background-repeat: no-repeat; + background-position: 4%; + outline: 0; + background-size: 20px; + filter: var(--main-number-filter); + -webkit-filter: var(--main-number-filter); +} + +.search-summary { + margin-bottom: 10px; +} + +a.tt-container { + font-size: 16px; + color: var(--main-hyperlinks-color); +} + +.enter-search-message { + position: -webkit-sticky; + position: sticky; + top: 0; + background-color: #AAA; + padding: 0; + font-size: 14px; + margin: 0; + clear: both; + text-align: center; + color: black; +} + +.tt-suggestion:hover { + cursor: pointer; + color: #fff; + background-color: #0097cf; +} + +.tt-suggestion:hover .search-from-lib { + color: #ddd; +} + +.tt-suggestion.tt-cursor { + color: #fff; + background-color: #0097cf; +} + +.tt-suggestion.tt-cursor .search-from-lib { + color: #ddd; +} + +.tt-suggestion p { + margin: 0; +} + +.tt-container { + font-size: 14px; + margin-bottom: 0; + margin-top: 15px; +} + +.tt-container-text { + color: var(--main-text-color); +} + + +/* Search results formatting for mini results below search bar. */ + +.tt-search-results .tt-container { + margin-top: 5px; + margin-bottom: 5px; +} + +/* Do not show the container as a section. */ +.tt-search-results .tt-container-text { + display: none +} + +/* An inline style. */ +.tt-search-results .tt-suggestion { + color: var(--main-text-color); + margin-top: 5px; + overflow: hidden; + padding-left: 10px; + padding-right: 10px; + text-overflow: ellipsis; + white-space: nowrap; +} + +.tt-search-results .tt-suggestion-title { + font-size: 14px; + padding-right: 5px; +} + +.tt-search-results .tt-suggestion-container { + color: var(--main-keyword-color); + font-size: 14px; + font-style: italic; + padding-right: 5px; +} + +.tt-search-results .one-line-description { + color: var(--main-keyword-color); + display: inline; + margin-left: 0; +} + + +.tt-search-results .one-line-description::before { + content: open-quote; +} + +.tt-search-results .one-line-description::after { + content: close-quote; +} + +/* Search results formatting for `search.html`. */ + +/* A block style. */ +#dartdoc-main-content .tt-suggestion { + color: var(--main-text-color); + margin-top: 5px; + margin-bottom: 10px; + border-style: solid; + border-color: lightgrey; + border-width: 0.5px; +} + +#dartdoc-main-content .tt-suggestion-title { + display: block; + font-weight: 500; + margin: 4px 10px 0; +} + +#dartdoc-main-content .one-line-description { + display: block; + margin: 2px 10px 3px; +} + +/* Do not show a result's container. */ +#dartdoc-main-content .tt-suggestion-container { + display: none; +} + +@media screen and (max-width: 840px) { + .typeahead { + padding: 17px 17px 17px 33px; + width: 240px; + height: 17px; + border: 1px solid #f5f5f5; + background-position: 3%; + margin: 10px 10px 10px 9px; + } + + header { + padding-left: 0; + } +} + +@media screen and (max-width: 320px) { + #sidenav-left-toggle { + margin-right: 10px; + margin-left: 20px; + } + + .self-name { + margin-right: 10px; + } +} + +::placeholder { + filter: brightness(0.85); +} + +.search-body { + border: 1px solid #7f7f7f; + max-width: 400px; + box-shadow: 3px 3px 5px rgba(0,0,0,0.1); +} + +section#setter { + border-top: 1px solid #ddd; + padding-top: 36px; +} + +li.inherited a { + opacity: 0.65; + font-style: italic; +} + +#instance-methods dt.inherited .name, +#instance-properties dt.inherited .name, +#operators dt.inherited .name { + font-weight: 400; + font-style: italic; +} + +#instance-methods dt.inherited .signature, +#instance-properties dt.inherited .signature, +#operators dt.inherited .signature { + font-weight: 400; +} + +@media print { + .subnav, .sidebar { + display: none; + } + + a[href]:after { + content: "" !important; + } +} + +/* github alert styles */ + +.markdown-alert { + margin-top: 1rem; + margin-bottom: 1rem; + padding: 1.25rem; +} + +.markdown-alert>:last-child { + margin-bottom: 0; +} + +.markdown-alert-title { + display: flex; + align-items: center; + gap: 0.4rem; + margin-bottom: 0.5rem; + + font-weight: bold; + -webkit-font-smoothing: antialiased; +} + +.markdown-alert-title:before { + font: 24px / 1 'Material Symbols Outlined'; +} + +/* note, tip, important, warning, caution */ + +.markdown-alert.markdown-alert-note { + background-color: var(--alert-info); +} + +.markdown-alert-note .markdown-alert-title:before { + content: 'info'; +} + +.markdown-alert.markdown-alert-tip { + background-color: var(--alert-tip); +} + +.markdown-alert-tip .markdown-alert-title:before { + content: 'lightbulb'; +} + +.markdown-alert.markdown-alert-important { + background-color: var(--alert-important); +} + +.markdown-alert-important .markdown-alert-title:before { + content: 'feedback'; +} + +.markdown-alert.markdown-alert-warning { + background-color: var(--alert-warning); +} + +.markdown-alert-warning .markdown-alert-title:before { + content: 'warning'; +} + +.markdown-alert.markdown-alert-caution { + background-color: var(--alert-error); +} + +.markdown-alert-caution .markdown-alert-title:before { + content: 'report'; +} diff --git a/docs/widgets/AutonomyCommandEditor-class-sidebar.html b/docs/widgets/AutonomyCommandEditor-class-sidebar.html new file mode 100644 index 0000000000..00b9a6bb4b --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor-class-sidebar.html @@ -0,0 +1,41 @@ +

    + +
  1. Constructors
  2. +
  3. AutonomyCommandEditor
  4. + + + +
  5. + Properties +
  6. +
  7. dataModel
  8. +
  9. hashCode
  10. +
  11. key
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. createTask
  28. +
  29. debugDescribeChildren
  30. +
  31. debugFillProperties
  32. +
  33. didUpdateWidget
  34. +
  35. noSuchMethod
  36. +
  37. toDiagnosticsNode
  38. +
  39. toString
  40. +
  41. toStringDeep
  42. +
  43. toStringShallow
  44. +
  45. toStringShort
  46. + +
  47. Operators
  48. +
  49. operator ==
  50. + + + + + + +
diff --git a/docs/widgets/AutonomyCommandEditor-class.html b/docs/widgets/AutonomyCommandEditor-class.html new file mode 100644 index 0000000000..e8bd4c335a --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor-class.html @@ -0,0 +1,424 @@ + + + + + + + + AutonomyCommandEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyCommandEditor
+ +
+ +
+
+
+
+
+ +

AutonomyCommandEditor class + +

+ + +
+

A widget to edit an AutonomyCommand.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ AutonomyCommandEditor(AutonomyModel dataModel) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ dataModel + AutonomyModel + + +
+
+ The autonomy view model. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, AutonomyCommandBuilder model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + AutonomyCommandBuilder + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ createTask(BuildContext context, AutonomyCommandBuilder command) + → void + + + +
+
+ Opens a dialog to prompt the user to create an AutonomyCommand and sends it to the rover. + + +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<AutonomyCommandBuilder> oldWidget, AutonomyCommandBuilder model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/AutonomyCommandEditor/AutonomyCommandEditor.html b/docs/widgets/AutonomyCommandEditor/AutonomyCommandEditor.html new file mode 100644 index 0000000000..21d88bffaa --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor/AutonomyCommandEditor.html @@ -0,0 +1,112 @@ + + + + + + + + AutonomyCommandEditor constructor - AutonomyCommandEditor - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
AutonomyCommandEditor
+ +
+ +
+
+
+
+
+ +

AutonomyCommandEditor constructor +

+ +
+ const + AutonomyCommandEditor(
  1. AutonomyModel dataModel
  2. +
) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const AutonomyCommandEditor(this.dataModel);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/AutonomyCommandEditor/build.html b/docs/widgets/AutonomyCommandEditor/build.html new file mode 100644 index 0000000000..f865508429 --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor/build.html @@ -0,0 +1,151 @@ + + + + + + + + build method - AutonomyCommandEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. AutonomyCommandBuilder model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, AutonomyCommandBuilder model) => Row(mainAxisSize: MainAxisSize.min, children: [
+  const SizedBox(width: 4),
+  Text("Autonomy: ", style: context.textTheme.titleLarge),
+  const SizedBox(width: 8),
+  ElevatedButton.icon(
+    icon: const Icon(Icons.add),
+    label: const Text("New Task"),
+    onPressed: () {
+      if (RoverStatus.AUTONOMOUS == models.rover.status.value) {
+        createTask(context, model);
+      } else {
+        models.home.setMessage(
+          severity: Severity.error,
+          text: "You must be in autonomy mode to do that",
+        );
+      }
+    },
+  ),
+  const SizedBox(width: 8),
+  ElevatedButton(
+    style: const ButtonStyle(backgroundColor: WidgetStatePropertyAll(Colors.red)),
+    onPressed: model.abort,
+    child: const Text("ABORT"),
+  ),
+  const Spacer(),
+  if (!dataModel.isPlayingBadApple)
+    Text("${dataModel.data.state.humanName}, ${dataModel.data.task.humanName}", style: context.textTheme.titleLarge),
+  const SizedBox(width: 8),
+],);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/AutonomyCommandEditor/createModel.html b/docs/widgets/AutonomyCommandEditor/createModel.html new file mode 100644 index 0000000000..d13c107df2 --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - AutonomyCommandEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+AutonomyCommandBuilder +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+AutonomyCommandBuilder createModel() => AutonomyCommandBuilder();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/AutonomyCommandEditor/createTask.html b/docs/widgets/AutonomyCommandEditor/createTask.html new file mode 100644 index 0000000000..b4345a4915 --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor/createTask.html @@ -0,0 +1,145 @@ + + + + + + + + createTask method - AutonomyCommandEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createTask
+ +
+ +
+
+
+
+
+ +

createTask method +

+ +
+ +void +createTask(
  1. BuildContext context,
  2. +
  3. AutonomyCommandBuilder command
  4. +
) + + + +
+ +
+

Opens a dialog to prompt the user to create an AutonomyCommand and sends it to the rover.

+
+ + + +
+

Implementation

+
void createTask(BuildContext context, AutonomyCommandBuilder command) => showDialog<void>(
+  context: context,
+  builder: (_) => AlertDialog(
+    title: const Text("Create a new Task"),
+    content: Column(
+      mainAxisSize: MainAxisSize.min,
+      children: [
+        DropdownEditor<AutonomyTask>(
+          name: "Task type",
+          value: command.task,
+          items: [
+            for (final task in AutonomyTask.values)
+              if (task != AutonomyTask.AUTONOMY_TASK_UNDEFINED) task,
+          ],
+          onChanged: command.updateTask,
+          humanName: (task) => task.humanName,
+        ),
+        GpsEditor(command.gps),
+      ],
+    ),
+    actions: [
+      TextButton(child: const Text("Cancel"), onPressed: () => Navigator.of(context).pop()),
+      ElevatedButton(
+        onPressed: command.isLoading ? null : () { command.submit(); Navigator.of(context).pop(); },
+        child: const Text("Submit"),
+      ),
+    ],
+  ),
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/AutonomyCommandEditor/dataModel.html b/docs/widgets/AutonomyCommandEditor/dataModel.html new file mode 100644 index 0000000000..ac9c0d611a --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor/dataModel.html @@ -0,0 +1,115 @@ + + + + + + + + dataModel property - AutonomyCommandEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dataModel
+ +
+ +
+
+
+
+
+ +

dataModel property +

+ + +
+ + AutonomyModel + dataModel +
final
+ +
+ +
+

The autonomy view model.

+
+ + +
+

Implementation

+
final AutonomyModel dataModel;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/BuildContextUtils-extension-sidebar.html b/docs/widgets/BuildContextUtils-extension-sidebar.html new file mode 100644 index 0000000000..3a339c474d --- /dev/null +++ b/docs/widgets/BuildContextUtils-extension-sidebar.html @@ -0,0 +1,17 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. colorScheme
  4. +
  5. textTheme
  6. + + + + + + +
diff --git a/docs/widgets/BuildContextUtils.html b/docs/widgets/BuildContextUtils.html new file mode 100644 index 0000000000..b6119c3fba --- /dev/null +++ b/docs/widgets/BuildContextUtils.html @@ -0,0 +1,151 @@ + + + + + + + + BuildContextUtils extension - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
BuildContextUtils
+ +
+ +
+
+
+
+
+ +

BuildContextUtils extension + +

+ + +
+

Convenience functions on BuildContext.

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ colorScheme + ColorScheme + + +
+
+ Gets the color scheme of the app. +
no setter
+ +
+ +
+ textTheme + TextTheme + + +
+
+ Gets the text theme of the app. +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + + + diff --git a/docs/widgets/BuildContextUtils/colorScheme.html b/docs/widgets/BuildContextUtils/colorScheme.html new file mode 100644 index 0000000000..12beafc95f --- /dev/null +++ b/docs/widgets/BuildContextUtils/colorScheme.html @@ -0,0 +1,121 @@ + + + + + + + + colorScheme property - BuildContextUtils extension - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
colorScheme
+ +
+ +
+
+
+
+
+ +

colorScheme property +

+ + + + + +
+
+ + ColorScheme + get + colorScheme + + +
+ +
+

Gets the color scheme of the app.

+
+ + +
+

Implementation

+
ColorScheme get colorScheme => Theme.of(this).colorScheme;
+
+ +
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/BuildContextUtils/textTheme.html b/docs/widgets/BuildContextUtils/textTheme.html new file mode 100644 index 0000000000..ce91221282 --- /dev/null +++ b/docs/widgets/BuildContextUtils/textTheme.html @@ -0,0 +1,121 @@ + + + + + + + + textTheme property - BuildContextUtils extension - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
textTheme
+ +
+ +
+
+
+
+
+ +

textTheme property +

+ + + + + +
+
+ + TextTheme + get + textTheme + + +
+ +
+

Gets the text theme of the app.

+
+ + +
+

Implementation

+
TextTheme get textTheme => Theme.of(this).textTheme;
+
+ +
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/CameraDetailsEditor-class-sidebar.html b/docs/widgets/CameraDetailsEditor-class-sidebar.html new file mode 100644 index 0000000000..27d2f70247 --- /dev/null +++ b/docs/widgets/CameraDetailsEditor-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. CameraDetailsEditor
  4. + + + +
  5. + Properties +
  6. +
  7. data
  8. +
  9. hashCode
  10. +
  11. key
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/widgets/CameraDetailsEditor-class.html b/docs/widgets/CameraDetailsEditor-class.html new file mode 100644 index 0000000000..563980a297 --- /dev/null +++ b/docs/widgets/CameraDetailsEditor-class.html @@ -0,0 +1,411 @@ + + + + + + + + CameraDetailsEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraDetailsEditor
+ +
+ +
+
+
+
+
+ +

CameraDetailsEditor class + +

+ + +
+

A widget to modify CameraDetails for a given camera, backed by a CameraDetailsBuilder.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ CameraDetailsEditor(VideoData data) +
+
+ Creates a widget to modify a CameraDetails. +
const
+
+
+
+ +
+

Properties

+
+
+ data + VideoData + + +
+
+ The data for the camera being modified. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, CameraDetailsBuilder model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + CameraDetailsBuilder + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<CameraDetailsBuilder> oldWidget, CameraDetailsBuilder model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/CameraDetailsEditor/CameraDetailsEditor.html b/docs/widgets/CameraDetailsEditor/CameraDetailsEditor.html new file mode 100644 index 0000000000..e33e61f115 --- /dev/null +++ b/docs/widgets/CameraDetailsEditor/CameraDetailsEditor.html @@ -0,0 +1,112 @@ + + + + + + + + CameraDetailsEditor constructor - CameraDetailsEditor - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
CameraDetailsEditor
+ +
+ +
+
+
+
+
+ +

CameraDetailsEditor constructor +

+ +
+ const + CameraDetailsEditor(
  1. VideoData data
  2. +
) +
+ +
+

Creates a widget to modify a CameraDetails.

+
+ + + +
+

Implementation

+
const CameraDetailsEditor(this.data);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/CameraDetailsEditor/build.html b/docs/widgets/CameraDetailsEditor/build.html new file mode 100644 index 0000000000..6d9e8f0b3e --- /dev/null +++ b/docs/widgets/CameraDetailsEditor/build.html @@ -0,0 +1,177 @@ + + + + + + + + build method - CameraDetailsEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. CameraDetailsBuilder model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, CameraDetailsBuilder model) => AlertDialog(
+    title: const Text("Modify camera"),
+    actions: [
+      TextButton(
+        onPressed: () => Navigator.of(context).pop(),
+        child: const Text("Cancel"),
+      ),
+      ElevatedButton(
+        onPressed: !model.isValid ? null : () async {
+          final result = await model.saveSettings(data.id);
+          if (result && context.mounted) Navigator.of(context).pop();
+        },
+        child: const Text("Save"),
+      ),
+    ],
+    content: SingleChildScrollView(
+      child: Column(
+        children: [
+          Padding(
+            padding: const EdgeInsets.symmetric(horizontal: 16),
+            child: DropdownEditor<CameraStatus>(
+              name: "Status",
+              humanName: (value) => value.humanName,
+              value: model.status,
+              onChanged: model.updateStatus,
+              items: CameraDetailsBuilder.okStatuses,
+            ),
+          ),
+          NumberEditor(
+            name: "Resolution height",
+            model: model.resolutionHeight,
+            titleFlex: 2,
+          ),
+          NumberEditor(
+            name: "Resolution width",
+            model: model.resolutionWidth,
+            titleFlex: 2,
+          ),
+          NumberEditor(
+            name: "Quality (0-100)",
+            model: model.quality,
+            titleFlex: 2,
+          ),
+          NumberEditor(
+            name: "Frames per second",
+            model: model.fps,
+            titleFlex: 2,
+          ),
+          const SizedBox(height: 24),
+          if (model.isLoading) const Text("Loading..."),
+          if (model.error != null) Text(model.error!, style: const TextStyle(color: Colors.red)),
+        ],
+      ),
+    ),
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/CameraDetailsEditor/createModel.html b/docs/widgets/CameraDetailsEditor/createModel.html new file mode 100644 index 0000000000..325ead67cc --- /dev/null +++ b/docs/widgets/CameraDetailsEditor/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - CameraDetailsEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+CameraDetailsBuilder +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+CameraDetailsBuilder createModel() => CameraDetailsBuilder(data.details);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/CameraDetailsEditor/data.html b/docs/widgets/CameraDetailsEditor/data.html new file mode 100644 index 0000000000..64293dcd55 --- /dev/null +++ b/docs/widgets/CameraDetailsEditor/data.html @@ -0,0 +1,116 @@ + + + + + + + + data property - CameraDetailsEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
data
+ +
+ +
+
+
+
+
+ +

data property +

+ + +
+ + VideoData + data +
final
+ +
+ +
+

The data for the camera being modified.

+

This must be a VideoData and not a CameraDetails to get the camera's ID.

+
+ + +
+

Implementation

+
final VideoData data;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ColorEditor-class-sidebar.html b/docs/widgets/ColorEditor-class-sidebar.html new file mode 100644 index 0000000000..3703245990 --- /dev/null +++ b/docs/widgets/ColorEditor-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. ColorEditor
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/widgets/ColorEditor-class.html b/docs/widgets/ColorEditor-class.html new file mode 100644 index 0000000000..39a87ec0fb --- /dev/null +++ b/docs/widgets/ColorEditor-class.html @@ -0,0 +1,411 @@ + + + + + + + + ColorEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ColorEditor
+ +
+ +
+
+
+
+
+ +

ColorEditor class + +

+ + +
+

A widget to edit a color, backed by ColorBuilder.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ColorEditor(ColorBuilder model) +
+
+ A widget that modifies the given view model's color. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + ColorBuilder + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, ColorBuilder model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + ColorBuilder + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<ColorBuilder> oldWidget, ColorBuilder model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ColorEditor/ColorEditor.html b/docs/widgets/ColorEditor/ColorEditor.html new file mode 100644 index 0000000000..3504908770 --- /dev/null +++ b/docs/widgets/ColorEditor/ColorEditor.html @@ -0,0 +1,112 @@ + + + + + + + + ColorEditor constructor - ColorEditor - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ColorEditor
+ +
+ +
+
+
+
+
+ +

ColorEditor constructor +

+ +
+ const + ColorEditor(
  1. ColorBuilder model
  2. +
) +
+ +
+

A widget that modifies the given view model's color.

+
+ + + +
+

Implementation

+
const ColorEditor(super.model);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ColorEditor/build.html b/docs/widgets/ColorEditor/build.html new file mode 100644 index 0000000000..d84dabf7ac --- /dev/null +++ b/docs/widgets/ColorEditor/build.html @@ -0,0 +1,169 @@ + + + + + + + + build method - ColorEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. ColorBuilder model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, ColorBuilder model) => AlertDialog(
+    title: const Text("Pick a color"),
+    actions: [
+      TextButton(child: const Text("Cancel"), onPressed: () => Navigator.of(context).pop()),
+      ElevatedButton(
+        onPressed: () async {
+          final result = await model.setColor();
+          if (result && context.mounted) Navigator.of(context).pop();
+        },
+        child: const Text("Save"),
+      ),
+    ],
+    content: Column(
+      mainAxisSize: MainAxisSize.min,
+      children: [
+        SegmentedButton(
+          style: SegmentedButton.styleFrom(selectedBackgroundColor: Colors.transparent),
+          onSelectionChanged: model.updateColor,
+          emptySelectionAllowed: true,
+          selected: {model.color},
+          segments: [
+            ButtonSegment(
+              value: ProtoColor.RED,
+              icon: Container(height: 48, width: 48, margin: const EdgeInsets.all(8), color: Colors.red),
+              label: const Text("Red"),
+            ),
+            ButtonSegment(
+              value: ProtoColor.GREEN,
+              icon: Container(height: 48, width: 48, margin: const EdgeInsets.all(8), color: Colors.green),
+              label: const Text("Green"),
+            ),
+            ButtonSegment(
+              value: ProtoColor.BLUE,
+              icon: Container(height: 48, width: 48, margin: const EdgeInsets.all(8), color: Colors.blue),
+              label: const Text("Blue"),
+            ),
+          ],
+        ),
+        const SizedBox(height: 16),
+        CheckboxListTile(
+          value: model.blink,
+          onChanged: model.updateBlink,
+          title: const Text("Blink"),
+        ),
+      ],
+    ),
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ControlsDisplay-class-sidebar.html b/docs/widgets/ControlsDisplay-class-sidebar.html new file mode 100644 index 0000000000..8a5fd17f26 --- /dev/null +++ b/docs/widgets/ControlsDisplay-class-sidebar.html @@ -0,0 +1,41 @@ +
    + +
  1. Constructors
  2. +
  3. ControlsDisplay
  4. + + + +
  5. + Properties +
  6. +
  7. gamepadNum
  8. +
  9. hashCode
  10. +
  11. key
  12. +
  13. model
  14. +
  15. runtimeType
  16. +
  17. shouldDispose
  18. + +
  19. Methods
  20. +
  21. build
  22. +
  23. createElement
  24. +
  25. createModel
  26. +
  27. createState
  28. +
  29. debugDescribeChildren
  30. +
  31. debugFillProperties
  32. +
  33. didUpdateWidget
  34. +
  35. noSuchMethod
  36. +
  37. toDiagnosticsNode
  38. +
  39. toString
  40. +
  41. toStringDeep
  42. +
  43. toStringShallow
  44. +
  45. toStringShort
  46. + +
  47. Operators
  48. +
  49. operator ==
  50. + + + + + + +
diff --git a/docs/widgets/ControlsDisplay-class.html b/docs/widgets/ControlsDisplay-class.html new file mode 100644 index 0000000000..9580a14dbe --- /dev/null +++ b/docs/widgets/ControlsDisplay-class.html @@ -0,0 +1,423 @@ + + + + + + + + ControlsDisplay class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ControlsDisplay
+ +
+ +
+
+
+
+
+ +

ControlsDisplay class + +

+ + +
+

Displays controls for the given Controller.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ControlsDisplay({required Controller controller, required int gamepadNum}) +
+
+ A const constructor for this widget. +
const
+
+
+
+ +
+

Properties

+
+
+ gamepadNum + → int + + +
+
+ The number gamepad being used. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + Controller + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, Controller model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + Controller + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<Controller> oldWidget, Controller model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ControlsDisplay/ControlsDisplay.html b/docs/widgets/ControlsDisplay/ControlsDisplay.html new file mode 100644 index 0000000000..7853cce49d --- /dev/null +++ b/docs/widgets/ControlsDisplay/ControlsDisplay.html @@ -0,0 +1,116 @@ + + + + + + + + ControlsDisplay constructor - ControlsDisplay - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ControlsDisplay
+ +
+ +
+
+
+
+
+ +

ControlsDisplay constructor +

+ +
+ const + ControlsDisplay({
  1. required Controller controller,
  2. +
  3. required int gamepadNum,
  4. +
}) +
+ +
+

A const constructor for this widget.

+
+ + + +
+

Implementation

+
const ControlsDisplay({
+  required Controller controller,
+  required this.gamepadNum,
+}) : super(controller);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ControlsDisplay/build.html b/docs/widgets/ControlsDisplay/build.html new file mode 100644 index 0000000000..fccbead5cd --- /dev/null +++ b/docs/widgets/ControlsDisplay/build.html @@ -0,0 +1,144 @@ + + + + + + + + build method - ControlsDisplay class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. Controller model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, Controller model) => ExpansionTile(
+  expandedCrossAxisAlignment: CrossAxisAlignment.start,
+  expandedAlignment: Alignment.centerLeft,
+  childrenPadding: const EdgeInsets.symmetric(
+    horizontal: 16,
+    vertical: 8,
+  ),
+  title: Text(
+    model.controls.mode.name,
+    style: Theme.of(context).textTheme.titleLarge,
+    textAlign: TextAlign.start,
+  ),
+  children: [
+    for (final entry in model.controls.buttonMapping.entries) ...[
+      Text(entry.key, style: Theme.of(context).textTheme.labelLarge),
+      Text(
+        "  ${entry.value}",
+        style: Theme.of(context).textTheme.titleMedium,
+      ),
+    ],
+  ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ControlsDisplay/gamepadNum.html b/docs/widgets/ControlsDisplay/gamepadNum.html new file mode 100644 index 0000000000..03887168d3 --- /dev/null +++ b/docs/widgets/ControlsDisplay/gamepadNum.html @@ -0,0 +1,115 @@ + + + + + + + + gamepadNum property - ControlsDisplay class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
gamepadNum
+ +
+ +
+
+
+
+
+ +

gamepadNum property +

+ + +
+ + int + gamepadNum +
final
+ +
+ +
+

The number gamepad being used.

+
+ + +
+

Implementation

+
final int gamepadNum;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/DropdownEditor-class-sidebar.html b/docs/widgets/DropdownEditor-class-sidebar.html new file mode 100644 index 0000000000..20f43ac46e --- /dev/null +++ b/docs/widgets/DropdownEditor-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. DropdownEditor
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. humanName
  10. +
  11. items
  12. +
  13. key
  14. +
  15. name
  16. +
  17. onChanged
  18. +
  19. runtimeType
  20. +
  21. value
  22. + +
  23. Methods
  24. +
  25. build
  26. +
  27. createElement
  28. +
  29. debugDescribeChildren
  30. +
  31. debugFillProperties
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/widgets/DropdownEditor-class.html b/docs/widgets/DropdownEditor-class.html new file mode 100644 index 0000000000..ac5a129485 --- /dev/null +++ b/docs/widgets/DropdownEditor-class.html @@ -0,0 +1,406 @@ + + + + + + + + DropdownEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DropdownEditor
+ +
+ +
+
+
+
+
+ +

DropdownEditor<T> class + +

+ + +
+

A widget to choose a single value from a dropdown.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+ +
+ Creates a DropdownButton list to choose between items. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ humanName + → String Function(T) + + +
+
+ Converts a T item to a user-friendly string. +
final
+ +
+ +
+ items + → List<T> + + +
+
+ A list of items to choose from. +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ name + → String + + +
+
+ The name to show when editing these settings. +
final
+ +
+ +
+ onChanged + ValueChanged<T> + + +
+
+ A callback for when a new value is selected. Is not called when the user cancels. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → T + + +
+
+ The chosen value in the dropdown. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/DropdownEditor/DropdownEditor.html b/docs/widgets/DropdownEditor/DropdownEditor.html new file mode 100644 index 0000000000..56670d6360 --- /dev/null +++ b/docs/widgets/DropdownEditor/DropdownEditor.html @@ -0,0 +1,123 @@ + + + + + + + + DropdownEditor constructor - DropdownEditor - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
DropdownEditor
+ +
+ +
+
+
+
+
+ +

DropdownEditor<T> constructor +

+ +
+ const + DropdownEditor<T>({
  1. required String name,
  2. +
  3. required T value,
  4. +
  5. required ValueChanged<T> onChanged,
  6. +
  7. required List<T> items,
  8. +
  9. required String humanName(
    1. T
    2. +
    ),
  10. +
}) +
+ +
+

Creates a DropdownButton list to choose between items.

+
+ + + +
+

Implementation

+
const DropdownEditor({
+	required this.name,
+	required this.value,
+	required this.onChanged,
+	required this.items,
+	required this.humanName,
+});
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/DropdownEditor/build.html b/docs/widgets/DropdownEditor/build.html new file mode 100644 index 0000000000..3b543c8298 --- /dev/null +++ b/docs/widgets/DropdownEditor/build.html @@ -0,0 +1,173 @@ + + + + + + + + build method - DropdownEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Row(
+	children: [
+		Text(name),
+		const SizedBox(width: 12),
+		DropdownButton<T>(
+			focusNode: FocusNode(),
+			value: value,
+			onChanged: (input) {
+				if (input == null) return;
+				onChanged(input);
+			},
+			items: [
+				for (final other in items) DropdownMenuItem<T>(
+					value: other,
+					child: Text(humanName(other)),
+				),
+			],
+		),
+	],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/DropdownEditor/humanName.html b/docs/widgets/DropdownEditor/humanName.html new file mode 100644 index 0000000000..fbbc6eeac3 --- /dev/null +++ b/docs/widgets/DropdownEditor/humanName.html @@ -0,0 +1,115 @@ + + + + + + + + humanName property - DropdownEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
humanName
+ +
+ +
+
+
+
+
+ +

humanName property +

+ + +
+ + String Function(T) + humanName +
final
+ +
+ +
+

Converts a T item to a user-friendly string.

+
+ + +
+

Implementation

+
final String Function(T) humanName;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/DropdownEditor/items.html b/docs/widgets/DropdownEditor/items.html new file mode 100644 index 0000000000..5a7829a058 --- /dev/null +++ b/docs/widgets/DropdownEditor/items.html @@ -0,0 +1,115 @@ + + + + + + + + items property - DropdownEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
items
+ +
+ +
+
+
+
+
+ +

items property +

+ + +
+ + List<T> + items +
final
+ +
+ +
+

A list of items to choose from.

+
+ + +
+

Implementation

+
final List<T> items;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/DropdownEditor/name.html b/docs/widgets/DropdownEditor/name.html new file mode 100644 index 0000000000..09b3cad559 --- /dev/null +++ b/docs/widgets/DropdownEditor/name.html @@ -0,0 +1,115 @@ + + + + + + + + name property - DropdownEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + +
+ + String + name +
final
+ +
+ +
+

The name to show when editing these settings.

+
+ + +
+

Implementation

+
final String name;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/DropdownEditor/onChanged.html b/docs/widgets/DropdownEditor/onChanged.html new file mode 100644 index 0000000000..11024160a5 --- /dev/null +++ b/docs/widgets/DropdownEditor/onChanged.html @@ -0,0 +1,115 @@ + + + + + + + + onChanged property - DropdownEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onChanged
+ +
+ +
+
+
+
+
+ +

onChanged property +

+ + +
+ + ValueChanged<T> + onChanged +
final
+ +
+ +
+

A callback for when a new value is selected. Is not called when the user cancels.

+
+ + +
+

Implementation

+
final ValueChanged<T> onChanged;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/DropdownEditor/value.html b/docs/widgets/DropdownEditor/value.html new file mode 100644 index 0000000000..5ad6b6a4fe --- /dev/null +++ b/docs/widgets/DropdownEditor/value.html @@ -0,0 +1,115 @@ + + + + + + + + value property - DropdownEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + +
+ + T + value +
final
+ +
+ +
+

The chosen value in the dropdown.

+
+ + +
+

Implementation

+
final T value;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/Footer-class-sidebar.html b/docs/widgets/Footer-class-sidebar.html new file mode 100644 index 0000000000..9df14f09f2 --- /dev/null +++ b/docs/widgets/Footer-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. Footer
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. +
  13. showLogs
  14. + +
  15. Methods
  16. +
  17. build
  18. +
  19. createElement
  20. +
  21. debugDescribeChildren
  22. +
  23. debugFillProperties
  24. +
  25. noSuchMethod
  26. +
  27. toDiagnosticsNode
  28. +
  29. toString
  30. +
  31. toStringDeep
  32. +
  33. toStringShallow
  34. +
  35. toStringShort
  36. + +
  37. Operators
  38. +
  39. operator ==
  40. + + + + + + +
diff --git a/docs/widgets/Footer-class.html b/docs/widgets/Footer-class.html new file mode 100644 index 0000000000..34a681485c --- /dev/null +++ b/docs/widgets/Footer-class.html @@ -0,0 +1,358 @@ + + + + + + + + Footer class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Footer
+ +
+ +
+
+
+
+
+ +

Footer class + +

+ + +
+

The footer, responsible for showing vitals and logs.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+ +
+ Creates the footer. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ showLogs + → bool + + +
+
+ Whether to show logs. Disable this when on the logs page. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/Footer/Footer.html b/docs/widgets/Footer/Footer.html new file mode 100644 index 0000000000..a3f26ed4c6 --- /dev/null +++ b/docs/widgets/Footer/Footer.html @@ -0,0 +1,112 @@ + + + + + + + + Footer constructor - Footer - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Footer
+ +
+ +
+
+
+
+
+ +

Footer constructor +

+ +
+ const + Footer({
  1. bool showLogs = true,
  2. +
}) +
+ +
+

Creates the footer.

+
+ + + +
+

Implementation

+
const Footer({this.showLogs = true});
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/Footer/build.html b/docs/widgets/Footer/build.html new file mode 100644 index 0000000000..36a9d921d5 --- /dev/null +++ b/docs/widgets/Footer/build.html @@ -0,0 +1,174 @@ + + + + + + + + build method - Footer class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => ColoredBox(
+	color: Theme.of(context).colorScheme.secondary,
+    child: Wrap(
+      alignment: WrapAlignment.spaceBetween,
+      children: [
+        MessageDisplay(showLogs: showLogs),
+        Wrap(  // Groups these elements together even when wrapping
+          children: [
+            GamepadButton(models.rover.controller1),
+            const SizedBox(width: 8),
+            GamepadButton(models.rover.controller2),
+            const SizedBox(width: 8),
+            GamepadButton(models.rover.controller3),
+            SerialButton(),
+            const SizedBox(width: 4),
+            const StatusIcons(),
+          ],
+        ),
+      ],
+    ),
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/Footer/showLogs.html b/docs/widgets/Footer/showLogs.html new file mode 100644 index 0000000000..20a8bb36aa --- /dev/null +++ b/docs/widgets/Footer/showLogs.html @@ -0,0 +1,115 @@ + + + + + + + + showLogs property - Footer class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
showLogs
+ +
+ +
+
+
+
+
+ +

showLogs property +

+ + +
+ + bool + showLogs +
final
+ +
+ +
+

Whether to show logs. Disable this when on the logs page.

+
+ + +
+

Implementation

+
final bool showLogs;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/GamepadButton-class-sidebar.html b/docs/widgets/GamepadButton-class-sidebar.html new file mode 100644 index 0000000000..22115c1e3f --- /dev/null +++ b/docs/widgets/GamepadButton-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. GamepadButton
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. getColor
  34. +
  35. isDisabled
  36. +
  37. noSuchMethod
  38. +
  39. toDiagnosticsNode
  40. +
  41. toString
  42. +
  43. toStringDeep
  44. +
  45. toStringShallow
  46. +
  47. toStringShort
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/widgets/GamepadButton-class.html b/docs/widgets/GamepadButton-class.html new file mode 100644 index 0000000000..f60dfa206b --- /dev/null +++ b/docs/widgets/GamepadButton-class.html @@ -0,0 +1,442 @@ + + + + + + + + GamepadButton class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GamepadButton
+ +
+ +
+
+
+
+
+ +

GamepadButton class + +

+ + +
+

A widget to show the gamepad state and allow the user to switch its mode.

+
    +
  • Clicking on the icon connects to the gamepad
  • +
  • The icon shows the battery level/connection of the gamepad
  • +
  • The dropdown menu allows the user to switch OperatingModes
  • +
+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ GamepadButton(Controller model) +
+
+ A const constructor for this widget. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + Controller + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, Controller model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + Controller + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<Controller> oldWidget, Controller model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ getColor(GamepadBatteryLevel battery) + Color + + + +
+
+ Returns a color representing the gamepad's battery level. + + +
+ +
+ isDisabled(RoverStatus status) + → bool + + + +
+
+ Whether the gamepad should be disabled in this mode. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/GamepadButton/GamepadButton.html b/docs/widgets/GamepadButton/GamepadButton.html new file mode 100644 index 0000000000..bceed5e533 --- /dev/null +++ b/docs/widgets/GamepadButton/GamepadButton.html @@ -0,0 +1,112 @@ + + + + + + + + GamepadButton constructor - GamepadButton - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GamepadButton
+ +
+ +
+
+
+
+
+ +

GamepadButton constructor +

+ +
+ const + GamepadButton(
  1. Controller model
  2. +
) +
+ +
+

A const constructor for this widget.

+
+ + + +
+

Implementation

+
const GamepadButton(super.model);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/GamepadButton/build.html b/docs/widgets/GamepadButton/build.html new file mode 100644 index 0000000000..d6aab606e8 --- /dev/null +++ b/docs/widgets/GamepadButton/build.html @@ -0,0 +1,158 @@ + + + + + + + + build method - GamepadButton class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. Controller model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, Controller model) => ValueListenableBuilder(
+    valueListenable: models.rover.status,
+    builder: (context, status, _) => Row(
+      mainAxisSize: MainAxisSize.min,
+      children: [
+        IconButton(
+          icon: Stack(
+            children: [
+              const Icon(Icons.sports_esports),
+              Positioned(
+                bottom: -2,
+                right: -2,
+                child: Text("${model.index + 1}", style: const TextStyle(fontSize: 12, color: Colors.white)),
+              ),
+            ],
+          ),
+          color: isDisabled(status) ? Colors.grey : model.isConnected
+            ? getColor(model.gamepad.batteryLevel)
+            : Colors.black,
+          constraints: const BoxConstraints(maxWidth: 36),
+          onPressed: model.connect,
+        ),
+        DropdownButton<OperatingMode>(
+          iconEnabledColor: Colors.black,
+          value: model.mode,
+          onChanged: isDisabled(status) ? null : model.setMode,
+          items: [
+            for (final mode in OperatingMode.values) DropdownMenuItem(
+              value: mode,
+              child: Text(mode.name),
+            ),
+          ],
+        ),
+      ],
+    ),
+  );
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/GamepadButton/getColor.html b/docs/widgets/GamepadButton/getColor.html new file mode 100644 index 0000000000..a3587981a6 --- /dev/null +++ b/docs/widgets/GamepadButton/getColor.html @@ -0,0 +1,123 @@ + + + + + + + + getColor method - GamepadButton class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getColor
+ +
+ +
+
+
+
+
+ +

getColor method +

+ +
+ +Color +getColor(
  1. GamepadBatteryLevel battery
  2. +
) + + + +
+ +
+

Returns a color representing the gamepad's battery level.

+
+ + + +
+

Implementation

+
Color getColor(GamepadBatteryLevel battery) {
+	switch (battery) {
+		case GamepadBatteryLevel.low: return Colors.red;
+		case GamepadBatteryLevel.medium: return Colors.orange;
+		case GamepadBatteryLevel.full: return Colors.green;
+		case GamepadBatteryLevel.unknown: return Colors.black;
+	}
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/GamepadButton/isDisabled.html b/docs/widgets/GamepadButton/isDisabled.html new file mode 100644 index 0000000000..b2a36a7eea --- /dev/null +++ b/docs/widgets/GamepadButton/isDisabled.html @@ -0,0 +1,116 @@ + + + + + + + + isDisabled method - GamepadButton class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isDisabled
+ +
+ +
+
+
+
+
+ +

isDisabled method +

+ +
+ +bool +isDisabled(
  1. RoverStatus status
  2. +
) + + + +
+ +
+

Whether the gamepad should be disabled in this mode.

+
+ + + +
+

Implementation

+
bool isDisabled(RoverStatus status) => status == RoverStatus.AUTONOMOUS || status == RoverStatus.IDLE;
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/GpsEditor-class-sidebar.html b/docs/widgets/GpsEditor-class-sidebar.html new file mode 100644 index 0000000000..434ccad2e8 --- /dev/null +++ b/docs/widgets/GpsEditor-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. GpsEditor
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/widgets/GpsEditor-class.html b/docs/widgets/GpsEditor-class.html new file mode 100644 index 0000000000..0bef5bb115 --- /dev/null +++ b/docs/widgets/GpsEditor-class.html @@ -0,0 +1,411 @@ + + + + + + + + GpsEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GpsEditor
+ +
+ +
+
+
+
+
+ +

GpsEditor class + +

+ + +
+

A widget to edit a GPS coordinate in degree/minute/seconds or decimal format.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ GpsEditor(GpsBuilder model) +
+
+ Listens to model to rebuild the UI. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + GpsBuilder + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, GpsBuilder model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + GpsBuilder + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<GpsBuilder> oldWidget, GpsBuilder model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/GpsEditor/GpsEditor.html b/docs/widgets/GpsEditor/GpsEditor.html new file mode 100644 index 0000000000..cd1645e825 --- /dev/null +++ b/docs/widgets/GpsEditor/GpsEditor.html @@ -0,0 +1,112 @@ + + + + + + + + GpsEditor constructor - GpsEditor - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
GpsEditor
+ +
+ +
+
+
+
+
+ +

GpsEditor constructor +

+ +
+ const + GpsEditor(
  1. GpsBuilder model
  2. +
) +
+ +
+

Listens to model to rebuild the UI.

+
+ + + +
+

Implementation

+
const GpsEditor(super.model);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/GpsEditor/build.html b/docs/widgets/GpsEditor/build.html new file mode 100644 index 0000000000..0532ee1935 --- /dev/null +++ b/docs/widgets/GpsEditor/build.html @@ -0,0 +1,148 @@ + + + + + + + + build method - GpsEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. GpsBuilder model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, GpsBuilder model) => Column(
+    crossAxisAlignment: CrossAxisAlignment.start,
+    children: [
+      DropdownEditor(
+        name: "Type",
+        value: model.type,
+        onChanged: model.updateType,
+        items: GpsType.values,
+        humanName: (type) => type.humanName,
+      ),
+      const SizedBox(width: 12),
+      if (model.type == GpsType.degrees) ...[
+        const Text("Longitude:"),
+        SizedBox(width: 200, child: NumberEditor(name: "Degrees", width: 12, titleFlex: 1, model: model.longDegrees)),
+        SizedBox(width: 200, child: NumberEditor(name: "Minutes", width: 12, titleFlex: 1, model: model.longMinutes)),
+        SizedBox(width: 200, child: NumberEditor(name: "Seconds", width: 12, titleFlex: 1, model: model.longSeconds)),
+        const Text("Latitude:"),
+        SizedBox(width: 200, child: NumberEditor(name: "Degrees", width: 12, titleFlex: 1, model: model.latDegrees)),
+        SizedBox(width: 200, child: NumberEditor(name: "Minutes", width: 12, titleFlex: 1, model: model.latMinutes)),
+        SizedBox(width: 200, child: NumberEditor(name: "Seconds", width: 12, titleFlex: 1, model: model.latSeconds)),
+      ] else ...[
+        SizedBox(width: 225, child: NumberEditor(name: "Longitude", width: 0, titleFlex: 1, model: model.longDecimal)),
+        SizedBox(width: 200, child: NumberEditor(name: "Latitude", width: 0, titleFlex: 1, model: model.latDecimal)),
+      ],
+    ],
+  );
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader-class-sidebar.html b/docs/widgets/ImageLoader-class-sidebar.html new file mode 100644 index 0000000000..6f6198d399 --- /dev/null +++ b/docs/widgets/ImageLoader-class-sidebar.html @@ -0,0 +1,32 @@ +
    + +
  1. Constructors
  2. +
  3. ImageLoader
  4. + + + +
  5. + Properties +
  6. +
  7. codec
  8. +
  9. hashCode
  10. +
  11. hasImage
  12. +
  13. image
  14. +
  15. isLoading
  16. +
  17. runtimeType
  18. + +
  19. Methods
  20. +
  21. dispose
  22. +
  23. load
  24. +
  25. noSuchMethod
  26. +
  27. toString
  28. + +
  29. Operators
  30. +
  31. operator ==
  32. + + + + + + +
diff --git a/docs/widgets/ImageLoader-class.html b/docs/widgets/ImageLoader-class.html new file mode 100644 index 0000000000..e308bb14b2 --- /dev/null +++ b/docs/widgets/ImageLoader-class.html @@ -0,0 +1,285 @@ + + + + + + + + ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ImageLoader
+ +
+ +
+
+
+
+
+ +

ImageLoader class + +

+ + +
+

A helper class to load and manage resources used by a ui.Image.

+

To use:

+
    +
  • Call load with your image data
  • +
  • Pass image to a RawImage widget, if it isn't null
  • +
  • Call dispose to release all resources used by the image.
  • +
+

It is safe to call load or dispose multiple times, and calling load +will automatically call dispose on the existing resources.

+
+ + + + +
+

Constructors

+
+
+ ImageLoader() +
+
+ +
+
+
+ +
+

Properties

+
+
+ codec + ↔ Codec? + + +
+
+ The codec used by image. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasImage + → bool + + +
+
+ Whether this loader has been initialized. +
no setter
+ +
+ +
+ image + ↔ Image? + + +
+
+ The dart:ui instance of the current frame. +
getter/setter pair
+ +
+ +
+ isLoading + ↔ bool + + +
+
+ Whether an image is currently loading. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ dispose() + → void + + + +
+
+ Disposes all the resources associated with the current frame. + + +
+ +
+ load(List<int> bytes) + → Future<void> + + + +
+
+ Processes the next frame and stores the result in image. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/ImageLoader.html b/docs/widgets/ImageLoader/ImageLoader.html new file mode 100644 index 0000000000..030b5df550 --- /dev/null +++ b/docs/widgets/ImageLoader/ImageLoader.html @@ -0,0 +1,104 @@ + + + + + + + + ImageLoader constructor - ImageLoader - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ImageLoader
+ +
+ +
+
+
+
+
+ +

ImageLoader constructor +

+ +
+ + ImageLoader() +
+ + + + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/codec.html b/docs/widgets/ImageLoader/codec.html new file mode 100644 index 0000000000..7765fccfd4 --- /dev/null +++ b/docs/widgets/ImageLoader/codec.html @@ -0,0 +1,115 @@ + + + + + + + + codec property - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
codec
+ +
+ +
+
+
+
+
+ +

codec property +

+ + +
+ + Codec? + codec +
getter/setter pair
+ +
+ +
+

The codec used by image.

+
+ + +
+

Implementation

+
ui.Codec? codec;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/dispose.html b/docs/widgets/ImageLoader/dispose.html new file mode 100644 index 0000000000..74e903115d --- /dev/null +++ b/docs/widgets/ImageLoader/dispose.html @@ -0,0 +1,119 @@ + + + + + + + + dispose method - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +void +dispose() + + + +
+ +
+

Disposes all the resources associated with the current frame.

+
+ + + +
+

Implementation

+
void dispose() {
+	codec?.dispose();
+	image?.dispose();
+	image = null;
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/hasImage.html b/docs/widgets/ImageLoader/hasImage.html new file mode 100644 index 0000000000..0fc8df04ef --- /dev/null +++ b/docs/widgets/ImageLoader/hasImage.html @@ -0,0 +1,121 @@ + + + + + + + + hasImage property - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hasImage
+ +
+ +
+
+
+
+
+ +

hasImage property +

+ + + + + +
+
+ + bool + get + hasImage + + +
+ +
+

Whether this loader has been initialized.

+
+ + +
+

Implementation

+
bool get hasImage => image != null;
+
+ +
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/hashCode.html b/docs/widgets/ImageLoader/hashCode.html new file mode 100644 index 0000000000..2127152547 --- /dev/null +++ b/docs/widgets/ImageLoader/hashCode.html @@ -0,0 +1,145 @@ + + + + + + + + hashCode property - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
hashCode
+ +
+ +
+
+
+
+
+

hashCode property +

+ + + + + +
+
+ + int + get + hashCode +
inherited
+ +
+ +
+

The hash code for this object.

+

A hash code is a single integer which represents the state of the object +that affects operator == comparisons.

+

All objects have hash codes. +The default hash code implemented by Object +represents only the identity of the object, +the same way as the default operator == implementation only considers objects +equal if they are identical (see identityHashCode).

+

If operator == is overridden to use the object state instead, +the hash code must also be changed to represent that state, +otherwise the object cannot be used in hash based data structures +like the default Set and Map implementations.

+

Hash codes must be the same for objects that are equal to each other +according to operator ==. +The hash code of an object should only change if the object changes +in a way that affects equality. +There are no further requirements for the hash codes. +They need not be consistent between executions of the same program +and there are no distribution guarantees.

+

Objects that are not equal are allowed to have the same hash code. +It is even technically allowed that all instances have the same hash code, +but if clashes happen too often, +it may reduce the efficiency of hash-based data structures +like HashSet or HashMap.

+

If a subclass overrides hashCode, it should override the +operator == operator as well to maintain consistency.

+
+ + +
+

Implementation

+
external int get hashCode;
+
+ +
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/image.html b/docs/widgets/ImageLoader/image.html new file mode 100644 index 0000000000..1fe69b63bc --- /dev/null +++ b/docs/widgets/ImageLoader/image.html @@ -0,0 +1,115 @@ + + + + + + + + image property - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
image
+ +
+ +
+
+
+
+
+ +

image property +

+ + +
+ + Image? + image +
getter/setter pair
+ +
+ +
+

The dart:ui instance of the current frame.

+
+ + +
+

Implementation

+
ui.Image? image;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/isLoading.html b/docs/widgets/ImageLoader/isLoading.html new file mode 100644 index 0000000000..8d1505029c --- /dev/null +++ b/docs/widgets/ImageLoader/isLoading.html @@ -0,0 +1,115 @@ + + + + + + + + isLoading property - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isLoading
+ +
+ +
+
+
+
+
+ +

isLoading property +

+ + +
+ + bool + isLoading +
getter/setter pair
+ +
+ +
+

Whether an image is currently loading.

+
+ + +
+

Implementation

+
bool isLoading = false;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/load.html b/docs/widgets/ImageLoader/load.html new file mode 100644 index 0000000000..82e12da2da --- /dev/null +++ b/docs/widgets/ImageLoader/load.html @@ -0,0 +1,123 @@ + + + + + + + + load method - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
load
+ +
+ +
+
+
+
+
+ +

load method +

+ +
+ +Future<void> +load(
  1. List<int> bytes
  2. +
) + + + +
+ +
+

Processes the next frame and stores the result in image.

+
+ + + +
+

Implementation

+
Future<void> load(List<int> bytes) async {
+	isLoading = true;
+	final buffer = Uint8List.fromList(bytes.toList());
+	codec = await ui.instantiateImageCodec(buffer);
+	final frame = await codec!.getNextFrame();
+	image = frame.image;
+	isLoading = false;
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/noSuchMethod.html b/docs/widgets/ImageLoader/noSuchMethod.html new file mode 100644 index 0000000000..76f1d307f8 --- /dev/null +++ b/docs/widgets/ImageLoader/noSuchMethod.html @@ -0,0 +1,151 @@ + + + + + + + + noSuchMethod method - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
noSuchMethod
+ +
+ +
+
+
+
+
+

noSuchMethod method +

+ +
+ +dynamic +noSuchMethod(
  1. Invocation invocation
  2. +
) + +
inherited
+ +
+ +
+

Invoked when a nonexistent method or property is accessed.

+

A dynamic member invocation can attempt to call a member which +doesn't exist on the receiving object. Example:

+
dynamic object = 1;
+object.add(42); // Statically allowed, run-time error
+
+

This invalid code will invoke the noSuchMethod method +of the integer 1 with an Invocation representing the +.add(42) call and arguments (which then throws).

+

Classes can override noSuchMethod to provide custom behavior +for such invalid dynamic invocations.

+

A class with a non-default noSuchMethod invocation can also +omit implementations for members of its interface. +Example:

+
class MockList<T> implements List<T> {
+  noSuchMethod(Invocation invocation) {
+    log(invocation);
+    super.noSuchMethod(invocation); // Will throw.
+  }
+}
+void main() {
+  MockList().add(42);
+}
+
+

This code has no compile-time warnings or errors even though +the MockList class has no concrete implementation of +any of the List interface methods. +Calls to List methods are forwarded to noSuchMethod, +so this code will log an invocation similar to +Invocation.method(#add, [42]) and then throw.

+

If a value is returned from noSuchMethod, +it becomes the result of the original invocation. +If the value is not of a type that can be returned by the original +invocation, a type error occurs at the invocation.

+

The default behavior is to throw a NoSuchMethodError.

+
+ + + +
+

Implementation

+
@pragma("vm:entry-point")
+@pragma("wasm:entry-point")
+external dynamic noSuchMethod(Invocation invocation);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/operator_equals.html b/docs/widgets/ImageLoader/operator_equals.html new file mode 100644 index 0000000000..9c3820f1fd --- /dev/null +++ b/docs/widgets/ImageLoader/operator_equals.html @@ -0,0 +1,141 @@ + + + + + + + + operator == method - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
operator ==
+ +
+ +
+
+
+
+
+

operator == method +

+ +
+ +bool +operator ==(
  1. Object other
  2. +
) + +
inherited
+ +
+ +
+

The equality operator.

+

The default behavior for all Objects is to return true if and +only if this object and other are the same object.

+

Override this method to specify a different equality relation on +a class. The overriding method must still be an equivalence relation. +That is, it must be:

+
    +
  • +

    Total: It must return a boolean for all arguments. It should never throw.

    +
  • +
  • +

    Reflexive: For all objects o, o == o must be true.

    +
  • +
  • +

    Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must +either both be true, or both be false.

    +
  • +
  • +

    Transitive: For all objects o1, o2, and o3, if o1 == o2 and +o2 == o3 are true, then o1 == o3 must be true.

    +
  • +
+

The method should also be consistent over time, +so whether two objects are equal should only change +if at least one of the objects was modified.

+

If a subclass overrides the equality operator, it should override +the hashCode method as well to maintain consistency.

+
+ + + +
+

Implementation

+
external bool operator ==(Object other);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/runtimeType.html b/docs/widgets/ImageLoader/runtimeType.html new file mode 100644 index 0000000000..7347bd71ef --- /dev/null +++ b/docs/widgets/ImageLoader/runtimeType.html @@ -0,0 +1,120 @@ + + + + + + + + runtimeType property - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
runtimeType
+ +
+ +
+
+
+
+
+

runtimeType property +

+ + + + + +
+
+ + Type + get + runtimeType +
inherited
+ +
+ +
+

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ImageLoader/toString.html b/docs/widgets/ImageLoader/toString.html new file mode 100644 index 0000000000..a2a8acfeb9 --- /dev/null +++ b/docs/widgets/ImageLoader/toString.html @@ -0,0 +1,123 @@ + + + + + + + + toString method - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toString
+ +
+ +
+
+
+
+
+

toString method +

+ +
+ +String +toString() + +
inherited
+ +
+ +
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string representation.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+

Implementation

+
external String toString();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MessageDisplay-class-sidebar.html b/docs/widgets/MessageDisplay-class-sidebar.html new file mode 100644 index 0000000000..79aeaf3c84 --- /dev/null +++ b/docs/widgets/MessageDisplay-class-sidebar.html @@ -0,0 +1,43 @@ +
    + +
  1. Constructors
  2. +
  3. MessageDisplay
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. +
  17. showLogs
  18. + +
  19. Methods
  20. +
  21. build
  22. +
  23. createElement
  24. +
  25. createModel
  26. +
  27. createState
  28. +
  29. debugDescribeChildren
  30. +
  31. debugFillProperties
  32. +
  33. didUpdateWidget
  34. +
  35. getColor
  36. +
  37. getIcon
  38. +
  39. noSuchMethod
  40. +
  41. toDiagnosticsNode
  42. +
  43. toString
  44. +
  45. toStringDeep
  46. +
  47. toStringShallow
  48. +
  49. toStringShort
  50. + +
  51. Operators
  52. +
  53. operator ==
  54. + + + + + + +
diff --git a/docs/widgets/MessageDisplay-class.html b/docs/widgets/MessageDisplay-class.html new file mode 100644 index 0000000000..7227e6a939 --- /dev/null +++ b/docs/widgets/MessageDisplay-class.html @@ -0,0 +1,448 @@ + + + + + + + + MessageDisplay class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MessageDisplay
+ +
+ +
+
+
+
+
+ +

MessageDisplay class + +

+ + +
+

Displays the latest TaskbarMessage from HomeModel.message.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ MessageDisplay({required bool showLogs}) +
+
+ Provides a const constructor for this widget. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + HomeModel + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+ showLogs + → bool + + +
+
+ Whether to show an option to open the logs page. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, HomeModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + HomeModel + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<HomeModel> oldWidget, HomeModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ getColor(Severity? severity) + Color + + + +
+
+ Gets the appropriate color for the given severity. + + +
+ +
+ getIcon(Severity? severity) + IconData + + + +
+
+ Gets the appropriate icon for the given severity. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MessageDisplay/MessageDisplay.html b/docs/widgets/MessageDisplay/MessageDisplay.html new file mode 100644 index 0000000000..bf25263f58 --- /dev/null +++ b/docs/widgets/MessageDisplay/MessageDisplay.html @@ -0,0 +1,112 @@ + + + + + + + + MessageDisplay constructor - MessageDisplay - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MessageDisplay
+ +
+ +
+
+
+
+
+ +

MessageDisplay constructor +

+ +
+ + MessageDisplay({
  1. required bool showLogs,
  2. +
}) +
+ +
+

Provides a const constructor for this widget.

+
+ + + +
+

Implementation

+
MessageDisplay({required this.showLogs}) : super(models.home);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MessageDisplay/build.html b/docs/widgets/MessageDisplay/build.html new file mode 100644 index 0000000000..48d9f2dd81 --- /dev/null +++ b/docs/widgets/MessageDisplay/build.html @@ -0,0 +1,155 @@ + + + + + + + + build method - MessageDisplay class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. HomeModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, HomeModel model) => SizedBox(
+    height: 48,
+    child: InkWell(
+      onTap: () => Navigator.of(context).push(MaterialPageRoute<void>(builder: (context) => LogsPage())),
+      child: Card(
+        shadowColor: Colors.transparent,
+        color: getColor(model.message?.severity),
+        shape: ContinuousRectangleBorder(
+          borderRadius: BorderRadius.circular(12),
+        ),
+        child: (model.message == null && !showLogs) ? const SizedBox() : Row(
+          mainAxisSize: MainAxisSize.min,
+          children: [
+            const SizedBox(width: 4),
+            Icon(getIcon(model.message?.severity), color: Colors.white),
+            const SizedBox(width: 4),
+            if (model.message == null) const Text("Open logs", style: TextStyle(color: Colors.white))
+            else Tooltip(
+              message: "Click to open logs",
+              child: models.settings.easterEggs.enableClippy
+                ? Row(children: [
+                  Image.asset("assets/clippy.webp", width: 36, height: 36),
+                  const Text(" -- "),
+                  Text(model.message!.text, style: const TextStyle(color: Colors.white)),
+                ],)
+                : Text(model.message!.text, style: const TextStyle(color: Colors.white)),
+            ),
+            const SizedBox(width: 8),
+          ],
+        ),
+      ),
+    ),
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MessageDisplay/getColor.html b/docs/widgets/MessageDisplay/getColor.html new file mode 100644 index 0000000000..a2b41c7034 --- /dev/null +++ b/docs/widgets/MessageDisplay/getColor.html @@ -0,0 +1,124 @@ + + + + + + + + getColor method - MessageDisplay class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getColor
+ +
+ +
+
+
+
+
+ +

getColor method +

+ +
+ +Color +getColor(
  1. Severity? severity
  2. +
) + + + +
+ +
+

Gets the appropriate color for the given severity.

+
+ + + +
+

Implementation

+
Color getColor(Severity? severity) {
+	switch (severity) {
+		case null: return Colors.transparent;
+		case Severity.info: return Colors.transparent;
+		case Severity.warning: return Colors.orange;
+		case Severity.error: return Colors.red;
+		case Severity.critical: return Colors.red.shade900;
+	}
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MessageDisplay/getIcon.html b/docs/widgets/MessageDisplay/getIcon.html new file mode 100644 index 0000000000..c038e6ef87 --- /dev/null +++ b/docs/widgets/MessageDisplay/getIcon.html @@ -0,0 +1,124 @@ + + + + + + + + getIcon method - MessageDisplay class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getIcon
+ +
+ +
+
+
+
+
+ +

getIcon method +

+ +
+ +IconData +getIcon(
  1. Severity? severity
  2. +
) + + + +
+ +
+

Gets the appropriate icon for the given severity.

+
+ + + +
+

Implementation

+
IconData getIcon(Severity? severity) {
+	switch (severity) {
+		case Severity.info: return Icons.info;
+		case Severity.warning: return Icons.warning;
+		case Severity.error: return Icons.error;
+		case Severity.critical: return Icons.dangerous;
+      case null: return Icons.receipt_long;
+	}
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MessageDisplay/showLogs.html b/docs/widgets/MessageDisplay/showLogs.html new file mode 100644 index 0000000000..e2af5463ae --- /dev/null +++ b/docs/widgets/MessageDisplay/showLogs.html @@ -0,0 +1,115 @@ + + + + + + + + showLogs property - MessageDisplay class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
showLogs
+ +
+ +
+
+
+
+
+ +

showLogs property +

+ + +
+ + bool + showLogs +
final
+ +
+ +
+

Whether to show an option to open the logs page.

+
+ + +
+

Implementation

+
final bool showLogs;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MetricsList-class-sidebar.html b/docs/widgets/MetricsList-class-sidebar.html new file mode 100644 index 0000000000..cb6ca7d8b4 --- /dev/null +++ b/docs/widgets/MetricsList-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. MetricsList
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/widgets/MetricsList-class.html b/docs/widgets/MetricsList-class.html new file mode 100644 index 0000000000..0cdbdfc642 --- /dev/null +++ b/docs/widgets/MetricsList-class.html @@ -0,0 +1,411 @@ + + + + + + + + MetricsList class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MetricsList
+ +
+ +
+
+
+
+
+ +

MetricsList class + +

+ + +
+

Displays metrics of all sorts in a collapsible list.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ MetricsList(Metrics<Message> model) +
+
+ A const constructor for this widget. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + Metrics<Message> + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, Metrics<Message> model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + Metrics<Message> + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<Metrics<Message>> oldWidget, Metrics<Message> model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MetricsList/MetricsList.html b/docs/widgets/MetricsList/MetricsList.html new file mode 100644 index 0000000000..eb629c39d6 --- /dev/null +++ b/docs/widgets/MetricsList/MetricsList.html @@ -0,0 +1,112 @@ + + + + + + + + MetricsList constructor - MetricsList - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MetricsList
+ +
+ +
+
+
+
+
+ +

MetricsList constructor +

+ +
+ const + MetricsList(
  1. Metrics<Message> model
  2. +
) +
+ +
+

A const constructor for this widget.

+
+ + + +
+

Implementation

+
const MetricsList(super.model);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MetricsList/build.html b/docs/widgets/MetricsList/build.html new file mode 100644 index 0000000000..b3dd91aafe --- /dev/null +++ b/docs/widgets/MetricsList/build.html @@ -0,0 +1,139 @@ + + + + + + + + build method - MetricsList class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. Metrics<Message> model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, Metrics model) => ExpansionTile(
+  expandedCrossAxisAlignment: CrossAxisAlignment.start,
+  expandedAlignment: Alignment.centerLeft,
+  childrenPadding: const EdgeInsets.symmetric(horizontal: 16),
+  title: Text(
+    model.name,
+    style: Theme.of(context).textTheme.headlineSmall
+      ?.copyWith(color: model.overallSeverity?.color),
+  ),
+  children: [
+    for (final MetricLine metric in model.allMetrics) Text(
+      metric.text,
+      style: TextStyle(color: metric.severity?.color),
+    ),
+    const SizedBox(height: 4),
+  ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MobileControls-class-sidebar.html b/docs/widgets/MobileControls-class-sidebar.html new file mode 100644 index 0000000000..515c9f6da2 --- /dev/null +++ b/docs/widgets/MobileControls-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. MobileControls
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. +
  13. shouldDispose
  14. + +
  15. Methods
  16. +
  17. build
  18. +
  19. createElement
  20. +
  21. createModel
  22. +
  23. createState
  24. +
  25. debugDescribeChildren
  26. +
  27. debugFillProperties
  28. +
  29. didUpdateWidget
  30. +
  31. noSuchMethod
  32. +
  33. toDiagnosticsNode
  34. +
  35. toString
  36. +
  37. toStringDeep
  38. +
  39. toStringShallow
  40. +
  41. toStringShort
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/widgets/MobileControls-class.html b/docs/widgets/MobileControls-class.html new file mode 100644 index 0000000000..26e5632498 --- /dev/null +++ b/docs/widgets/MobileControls-class.html @@ -0,0 +1,398 @@ + + + + + + + + MobileControls class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MobileControls
+ +
+ +
+
+
+
+
+ +

MobileControls class + +

+ + +
+

Drive controls for mobile devices where gamepads aren't feasible.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ MobileControls() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, MobileControlsModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + MobileControlsModel + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<MobileControlsModel> oldWidget, MobileControlsModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MobileControls/MobileControls.html b/docs/widgets/MobileControls/MobileControls.html new file mode 100644 index 0000000000..115d112975 --- /dev/null +++ b/docs/widgets/MobileControls/MobileControls.html @@ -0,0 +1,104 @@ + + + + + + + + MobileControls constructor - MobileControls - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MobileControls
+ +
+ +
+
+
+
+
+ +

MobileControls constructor +

+ +
+ + MobileControls() +
+ + + + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MobileControls/build.html b/docs/widgets/MobileControls/build.html new file mode 100644 index 0000000000..bd5df6313b --- /dev/null +++ b/docs/widgets/MobileControls/build.html @@ -0,0 +1,161 @@ + + + + + + + + build method - MobileControls class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. MobileControlsModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, MobileControlsModel model) => Row(
+  children: [
+    const SizedBox(width: 24),
+    RotatedBox(
+      quarterTurns: 3,
+      child: SliderTheme(
+        data: const SliderThemeData(
+          trackHeight: 48,
+          thumbShape: RoundSliderThumbShape(enabledThumbRadius: 36),
+        ),
+        child: Slider(
+          onChanged: model.updateLeft,
+          onChangeEnd: (_) => model.updateLeft(0),
+          value: model.left,
+          min: -1,
+          label: model.left.toString(),
+        ),
+      ),
+    ),
+    const Spacer(),
+    RotatedBox(
+      quarterTurns: 3,
+      child: SliderTheme(
+        data: const SliderThemeData(
+          trackHeight: 48,
+          thumbShape: RoundSliderThumbShape(enabledThumbRadius: 36),
+        ),
+        child: Slider(
+          onChanged: model.updateRight,
+          onChangeEnd: (_) => model.updateRight(0),
+          value: model.right,
+          min: -1,
+          label: model.right.toString(),
+        ),
+      ),
+    ),
+    const SizedBox(width: 24),
+  ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MobileControls/createModel.html b/docs/widgets/MobileControls/createModel.html new file mode 100644 index 0000000000..1e10ce26b6 --- /dev/null +++ b/docs/widgets/MobileControls/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - MobileControls class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+MobileControlsModel +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+MobileControlsModel createModel() => MobileControlsModel();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MobileControlsModel-class-sidebar.html b/docs/widgets/MobileControlsModel-class-sidebar.html new file mode 100644 index 0000000000..4864051cd8 --- /dev/null +++ b/docs/widgets/MobileControlsModel-class-sidebar.html @@ -0,0 +1,35 @@ +
    + +
  1. Constructors
  2. +
  3. MobileControlsModel
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. left
  12. +
  13. right
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. addListener
  20. +
  21. dispose
  22. +
  23. noSuchMethod
  24. +
  25. notifyListeners
  26. +
  27. removeListener
  28. +
  29. toString
  30. +
  31. updateLeft
  32. +
  33. updateRight
  34. + +
  35. Operators
  36. +
  37. operator ==
  38. + + + + + + +
diff --git a/docs/widgets/MobileControlsModel-class.html b/docs/widgets/MobileControlsModel-class.html new file mode 100644 index 0000000000..0b86d121de --- /dev/null +++ b/docs/widgets/MobileControlsModel-class.html @@ -0,0 +1,340 @@ + + + + + + + + MobileControlsModel class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MobileControlsModel
+ +
+ +
+
+
+
+
+ +

MobileControlsModel class + +

+ + +
+

Drive controls for mobile devices where gamepads aren't feasible.

+
+ + +
+
+ + + + +
Mixed-in types
+
+ +
+ + + + + + +
+
+ + +
+

Constructors

+
+
+ MobileControlsModel() +
+
+ Starts sending messages to the rover. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ hasListeners + → bool + + +
+
+ Whether any listeners are currently registered. +
no setterinherited
+ +
+ +
+ left + ↔ double + + +
+
+ The speed of the left wheels. +
getter/setter pair
+ +
+ + +
+ The speed of the right wheels. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. +
inherited
+ +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateLeft(double value) + → void + + + +
+
+ Updates the left speed. + + +
+ +
+ updateRight(double value) + → void + + + +
+
+ Updates the right speed. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MobileControlsModel/MobileControlsModel.html b/docs/widgets/MobileControlsModel/MobileControlsModel.html new file mode 100644 index 0000000000..6a498952bc --- /dev/null +++ b/docs/widgets/MobileControlsModel/MobileControlsModel.html @@ -0,0 +1,113 @@ + + + + + + + + MobileControlsModel constructor - MobileControlsModel - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
MobileControlsModel
+ +
+ +
+
+
+
+
+ +

MobileControlsModel constructor +

+ +
+ + MobileControlsModel() +
+ +
+

Starts sending messages to the rover.

+
+ + + +
+

Implementation

+
MobileControlsModel() {
+  _timer = Timer.periodic(const Duration(milliseconds: 10), _sendSpeeds);
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MobileControlsModel/dispose.html b/docs/widgets/MobileControlsModel/dispose.html new file mode 100644 index 0000000000..e7d3a4de95 --- /dev/null +++ b/docs/widgets/MobileControlsModel/dispose.html @@ -0,0 +1,130 @@ + + + + + + + + dispose method - MobileControlsModel class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+

This method does not notify listeners, and clears the listener list once +it is called. Consumers of this class must decide on whether to notify +listeners or not immediately before disposal.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+  _timer.cancel();
+  super.dispose();
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MobileControlsModel/left.html b/docs/widgets/MobileControlsModel/left.html new file mode 100644 index 0000000000..05e4f04ee1 --- /dev/null +++ b/docs/widgets/MobileControlsModel/left.html @@ -0,0 +1,115 @@ + + + + + + + + left property - MobileControlsModel class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
left
+ +
+ +
+
+
+
+
+ +

left property +

+ + +
+ + double + left +
getter/setter pair
+ +
+ +
+

The speed of the left wheels.

+
+ + +
+

Implementation

+
double left = 0;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MobileControlsModel/right.html b/docs/widgets/MobileControlsModel/right.html new file mode 100644 index 0000000000..9c8b89f17b --- /dev/null +++ b/docs/widgets/MobileControlsModel/right.html @@ -0,0 +1,115 @@ + + + + + + + + right property - MobileControlsModel class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
right
+ +
+ +
+
+
+
+
+ +

right property +

+ + +
+ + double + right +
getter/setter pair
+ +
+ +
+

The speed of the right wheels.

+
+ + +
+

Implementation

+
double right = 0;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MobileControlsModel/updateLeft.html b/docs/widgets/MobileControlsModel/updateLeft.html new file mode 100644 index 0000000000..7983376ede --- /dev/null +++ b/docs/widgets/MobileControlsModel/updateLeft.html @@ -0,0 +1,119 @@ + + + + + + + + updateLeft method - MobileControlsModel class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateLeft
+ +
+ +
+
+
+
+
+ +

updateLeft method +

+ +
+ +void +updateLeft(
  1. double value
  2. +
) + + + +
+ +
+

Updates the left speed.

+
+ + + +
+

Implementation

+
void updateLeft(double value) {
+  left = value;
+  notifyListeners();
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/MobileControlsModel/updateRight.html b/docs/widgets/MobileControlsModel/updateRight.html new file mode 100644 index 0000000000..b3cbbec46b --- /dev/null +++ b/docs/widgets/MobileControlsModel/updateRight.html @@ -0,0 +1,119 @@ + + + + + + + + updateRight method - MobileControlsModel class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateRight
+ +
+ +
+
+
+
+
+ +

updateRight method +

+ +
+ +void +updateRight(
  1. double value
  2. +
) + + + +
+ +
+

Updates the right speed.

+
+ + + +
+

Implementation

+
void updateRight(double value) {
+  right = value;
+  notifyListeners();
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NetworkStatusIcon-class-sidebar.html b/docs/widgets/NetworkStatusIcon-class-sidebar.html new file mode 100644 index 0000000000..ffe388c431 --- /dev/null +++ b/docs/widgets/NetworkStatusIcon-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  1. Constructors
  2. +
  3. NetworkStatusIcon
  4. + + + +
  5. + Properties +
  6. +
  7. device
  8. +
  9. hashCode
  10. +
  11. key
  12. +
  13. onPressed
  14. +
  15. runtimeType
  16. +
  17. tooltip
  18. + +
  19. Methods
  20. +
  21. build
  22. +
  23. createElement
  24. +
  25. debugDescribeChildren
  26. +
  27. debugFillProperties
  28. +
  29. noSuchMethod
  30. +
  31. toDiagnosticsNode
  32. +
  33. toString
  34. +
  35. toStringDeep
  36. +
  37. toStringShallow
  38. +
  39. toStringShort
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/widgets/NetworkStatusIcon-class.html b/docs/widgets/NetworkStatusIcon-class.html new file mode 100644 index 0000000000..cb188ff438 --- /dev/null +++ b/docs/widgets/NetworkStatusIcon-class.html @@ -0,0 +1,382 @@ + + + + + + + + NetworkStatusIcon class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NetworkStatusIcon
+ +
+ +
+
+
+
+
+ +

NetworkStatusIcon class + +

+ + +
+

A network status icon for the given device.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ NetworkStatusIcon({required Device device, required VoidCallback? onPressed, required String tooltip}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ device + Device + + +
+
+ The device to monitor. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ onPressed + VoidCallback? + + +
+
+ What to do when the button is pressed. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ tooltip + → String + + +
+
+ What to show as the tooltip. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NetworkStatusIcon/NetworkStatusIcon.html b/docs/widgets/NetworkStatusIcon/NetworkStatusIcon.html new file mode 100644 index 0000000000..ec6707642d --- /dev/null +++ b/docs/widgets/NetworkStatusIcon/NetworkStatusIcon.html @@ -0,0 +1,118 @@ + + + + + + + + NetworkStatusIcon constructor - NetworkStatusIcon - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NetworkStatusIcon
+ +
+ +
+
+
+
+
+ +

NetworkStatusIcon constructor +

+ +
+ const + NetworkStatusIcon({
  1. required Device device,
  2. +
  3. required VoidCallback? onPressed,
  4. +
  5. required String tooltip,
  6. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const NetworkStatusIcon({
+  required this.device,
+  required this.onPressed,
+  required this.tooltip,
+});
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NetworkStatusIcon/build.html b/docs/widgets/NetworkStatusIcon/build.html new file mode 100644 index 0000000000..cccb1d8da0 --- /dev/null +++ b/docs/widgets/NetworkStatusIcon/build.html @@ -0,0 +1,164 @@ + + + + + + + + build method - NetworkStatusIcon class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => ValueListenableBuilder<double>(  // network strength
+  valueListenable: models.sockets.socketForDevice(device)!.connectionStrength,
+  builder: (context, value, child) => IconButton(
+    tooltip: tooltip,
+    icon: Icon(
+      _getNetworkIcon(value),
+      color: StatusIcons.getColor(value),
+    ),
+    onPressed: onPressed,
+  ),
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NetworkStatusIcon/device.html b/docs/widgets/NetworkStatusIcon/device.html new file mode 100644 index 0000000000..8d6ba3933e --- /dev/null +++ b/docs/widgets/NetworkStatusIcon/device.html @@ -0,0 +1,115 @@ + + + + + + + + device property - NetworkStatusIcon class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
device
+ +
+ +
+
+
+
+
+ +

device property +

+ + +
+ + Device + device +
final
+ +
+ +
+

The device to monitor.

+
+ + +
+

Implementation

+
final Device device;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NetworkStatusIcon/onPressed.html b/docs/widgets/NetworkStatusIcon/onPressed.html new file mode 100644 index 0000000000..eae3fa2659 --- /dev/null +++ b/docs/widgets/NetworkStatusIcon/onPressed.html @@ -0,0 +1,115 @@ + + + + + + + + onPressed property - NetworkStatusIcon class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onPressed
+ +
+ +
+
+
+
+
+ +

onPressed property +

+ + +
+ + VoidCallback? + onPressed +
final
+ +
+ +
+

What to do when the button is pressed.

+
+ + +
+

Implementation

+
final VoidCallback? onPressed;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NetworkStatusIcon/tooltip.html b/docs/widgets/NetworkStatusIcon/tooltip.html new file mode 100644 index 0000000000..e2335a47af --- /dev/null +++ b/docs/widgets/NetworkStatusIcon/tooltip.html @@ -0,0 +1,115 @@ + + + + + + + + tooltip property - NetworkStatusIcon class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
tooltip
+ +
+ +
+
+
+
+
+ +

tooltip property +

+ + +
+ + String + tooltip +
final
+ +
+ +
+

What to show as the tooltip.

+
+ + +
+

Implementation

+
final String tooltip;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NumberEditor-class-sidebar.html b/docs/widgets/NumberEditor-class-sidebar.html new file mode 100644 index 0000000000..738b30a9c5 --- /dev/null +++ b/docs/widgets/NumberEditor-class-sidebar.html @@ -0,0 +1,44 @@ +
    + +
  1. Constructors
  2. +
  3. NumberEditor
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. name
  14. +
  15. runtimeType
  16. +
  17. shouldDispose
  18. +
  19. subtitle
  20. +
  21. titleFlex
  22. +
  23. width
  24. + +
  25. Methods
  26. +
  27. build
  28. +
  29. createElement
  30. +
  31. createModel
  32. +
  33. createState
  34. +
  35. debugDescribeChildren
  36. +
  37. debugFillProperties
  38. +
  39. didUpdateWidget
  40. +
  41. noSuchMethod
  42. +
  43. toDiagnosticsNode
  44. +
  45. toString
  46. +
  47. toStringDeep
  48. +
  49. toStringShallow
  50. +
  51. toStringShort
  52. + +
  53. Operators
  54. +
  55. operator ==
  56. + + + + + + +
diff --git a/docs/widgets/NumberEditor-class.html b/docs/widgets/NumberEditor-class.html new file mode 100644 index 0000000000..5dd84525c0 --- /dev/null +++ b/docs/widgets/NumberEditor-class.html @@ -0,0 +1,459 @@ + + + + + + + + NumberEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NumberEditor
+ +
+ +
+
+
+
+
+ +

NumberEditor class + +

+ + +
+

A widget to edit a number, backed by NumberBuilder.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ NumberEditor({required NumberBuilder<num> model, required String name, String? subtitle, int titleFlex = 4, double? width}) +
+
+ Creates a widget to modify a number. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + NumberBuilder<num> + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ name + → String + + +
+
+ The value this number represents. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+ subtitle + → String? + + +
+
+ Shows extra details. +
final
+ +
+ +
+ titleFlex + → int + + +
+
+ The amount of space to allocate to the title. +
final
+ +
+ +
+ width + → double? + + +
+
+ How much space to allocate in between the label and text field. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, NumberBuilder<num> model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + NumberBuilder<num> + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<NumberBuilder<num>> oldWidget, NumberBuilder<num> model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NumberEditor/NumberEditor.html b/docs/widgets/NumberEditor/NumberEditor.html new file mode 100644 index 0000000000..e91a7a3f43 --- /dev/null +++ b/docs/widgets/NumberEditor/NumberEditor.html @@ -0,0 +1,122 @@ + + + + + + + + NumberEditor constructor - NumberEditor - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
NumberEditor
+ +
+ +
+
+
+
+
+ +

NumberEditor constructor +

+ +
+ const + NumberEditor({
  1. required NumberBuilder<num> model,
  2. +
  3. required String name,
  4. +
  5. String? subtitle,
  6. +
  7. int titleFlex = 4,
  8. +
  9. double? width,
  10. +
}) +
+ +
+

Creates a widget to modify a number.

+
+ + + +
+

Implementation

+
const NumberEditor({
+    required NumberBuilder model,
+	required this.name,
+	this.subtitle,
+	this.titleFlex = 4,
+	this.width,
+}) : super(model);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NumberEditor/build.html b/docs/widgets/NumberEditor/build.html new file mode 100644 index 0000000000..c40408b84f --- /dev/null +++ b/docs/widgets/NumberEditor/build.html @@ -0,0 +1,142 @@ + + + + + + + + build method - NumberEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. NumberBuilder<num> model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, NumberBuilder model) => Row(
+    mainAxisSize: MainAxisSize.min,
+    children: [
+      Expanded(
+        flex: titleFlex,
+        child: subtitle == null ? ListTile(title: Text(name)) : ListTile(
+          title: Text(name),
+          subtitle: Text(subtitle!),
+        ),
+      ),
+      if (width == null) const Spacer()
+      else SizedBox(width: width),
+      Expanded(child: TextField(
+        onChanged: model.update,
+        decoration: InputDecoration(errorText: model.error),
+        controller: model.controller,
+        inputFormatters: [FilteringTextInputFormatter.allow(RegExp(r"\d|\.|-"))],
+      ),),
+    ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NumberEditor/name.html b/docs/widgets/NumberEditor/name.html new file mode 100644 index 0000000000..6ca827a080 --- /dev/null +++ b/docs/widgets/NumberEditor/name.html @@ -0,0 +1,115 @@ + + + + + + + + name property - NumberEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + +
+ + String + name +
final
+ +
+ +
+

The value this number represents.

+
+ + +
+

Implementation

+
final String name;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NumberEditor/subtitle.html b/docs/widgets/NumberEditor/subtitle.html new file mode 100644 index 0000000000..5f0de81078 --- /dev/null +++ b/docs/widgets/NumberEditor/subtitle.html @@ -0,0 +1,115 @@ + + + + + + + + subtitle property - NumberEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
subtitle
+ +
+ +
+
+
+
+
+ +

subtitle property +

+ + +
+ + String? + subtitle +
final
+ +
+ +
+

Shows extra details.

+
+ + +
+

Implementation

+
final String? subtitle;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NumberEditor/titleFlex.html b/docs/widgets/NumberEditor/titleFlex.html new file mode 100644 index 0000000000..6d64b0c51b --- /dev/null +++ b/docs/widgets/NumberEditor/titleFlex.html @@ -0,0 +1,115 @@ + + + + + + + + titleFlex property - NumberEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
titleFlex
+ +
+ +
+
+
+
+
+ +

titleFlex property +

+ + +
+ + int + titleFlex +
final
+ +
+ +
+

The amount of space to allocate to the title.

+
+ + +
+

Implementation

+
final int titleFlex;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/NumberEditor/width.html b/docs/widgets/NumberEditor/width.html new file mode 100644 index 0000000000..715b2760ff --- /dev/null +++ b/docs/widgets/NumberEditor/width.html @@ -0,0 +1,115 @@ + + + + + + + + width property - NumberEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
width
+ +
+ +
+
+
+
+
+ +

width property +

+ + +
+ + double? + width +
final
+ +
+ +
+

How much space to allocate in between the label and text field.

+
+ + +
+

Implementation

+
final double? width;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidget-class-sidebar.html b/docs/widgets/ReactiveWidget-class-sidebar.html new file mode 100644 index 0000000000..4e0657098c --- /dev/null +++ b/docs/widgets/ReactiveWidget-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. ReactiveWidget
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. +
  13. shouldDispose
  14. + +
  15. Methods
  16. +
  17. build
  18. +
  19. createElement
  20. +
  21. createModel
  22. +
  23. createState
  24. +
  25. debugDescribeChildren
  26. +
  27. debugFillProperties
  28. +
  29. didUpdateWidget
  30. +
  31. noSuchMethod
  32. +
  33. toDiagnosticsNode
  34. +
  35. toString
  36. +
  37. toStringDeep
  38. +
  39. toStringShallow
  40. +
  41. toStringShort
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/widgets/ReactiveWidget-class.html b/docs/widgets/ReactiveWidget-class.html new file mode 100644 index 0000000000..d20871f105 --- /dev/null +++ b/docs/widgets/ReactiveWidget-class.html @@ -0,0 +1,415 @@ + + + + + + + + ReactiveWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ReactiveWidget
+ +
+ +
+
+
+
+
+ +

ReactiveWidget<T extends ChangeNotifier> class + abstract + +

+ + +
+

A widget that listens to a ChangeNotifier and rebuilds when the model updates.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + +
Implementers
+
+ + + + + +
+
+ + +
+

Constructors

+
+
+ ReactiveWidget({Key? key}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, T model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
inherited
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + → T + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<T> oldWidget, T model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidget/ReactiveWidget.html b/docs/widgets/ReactiveWidget/ReactiveWidget.html new file mode 100644 index 0000000000..8d16e7f7d3 --- /dev/null +++ b/docs/widgets/ReactiveWidget/ReactiveWidget.html @@ -0,0 +1,112 @@ + + + + + + + + ReactiveWidget constructor - ReactiveWidget - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ReactiveWidget
+ +
+ +
+
+
+
+
+ +

ReactiveWidget<T extends ChangeNotifier> constructor +

+ +
+ const + ReactiveWidget<T extends ChangeNotifier>({
  1. Key? key,
  2. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const ReactiveWidget({super.key});
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidget/createModel.html b/docs/widgets/ReactiveWidget/createModel.html new file mode 100644 index 0000000000..553746ab75 --- /dev/null +++ b/docs/widgets/ReactiveWidget/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - ReactiveWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel abstract method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+T +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+T createModel();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidget/shouldDispose.html b/docs/widgets/ReactiveWidget/shouldDispose.html new file mode 100644 index 0000000000..8cff5d1097 --- /dev/null +++ b/docs/widgets/ReactiveWidget/shouldDispose.html @@ -0,0 +1,131 @@ + + + + + + + + shouldDispose property - ReactiveWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
shouldDispose
+ +
+ +
+
+
+
+
+ +

shouldDispose property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + shouldDispose +
override
+ +
+ +
+

Whether this widget should dispose the model after it's destroyed.

+

Normally, we want the widget to clean up after itself and dispose its view model. But it's +also common for one view model to create and depend on another model. In this case, if we +are listening to the sub-model, we don't want to dispose it while the parent model is still +using it.

+
+ + +
+

Implementation

+
@override
+bool get shouldDispose => true;
+
+ +
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface-class-sidebar.html b/docs/widgets/ReactiveWidgetInterface-class-sidebar.html new file mode 100644 index 0000000000..6ac8755045 --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. ReactiveWidgetInterface
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. +
  13. shouldDispose
  14. + +
  15. Methods
  16. +
  17. build
  18. +
  19. createElement
  20. +
  21. createModel
  22. +
  23. createState
  24. +
  25. debugDescribeChildren
  26. +
  27. debugFillProperties
  28. +
  29. didUpdateWidget
  30. +
  31. noSuchMethod
  32. +
  33. toDiagnosticsNode
  34. +
  35. toString
  36. +
  37. toStringDeep
  38. +
  39. toStringShallow
  40. +
  41. toStringShort
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/widgets/ReactiveWidgetInterface-class.html b/docs/widgets/ReactiveWidgetInterface-class.html new file mode 100644 index 0000000000..eaf9feeecb --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface-class.html @@ -0,0 +1,407 @@ + + + + + + + + ReactiveWidgetInterface class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ReactiveWidgetInterface
+ +
+ +
+
+
+
+
+ +

ReactiveWidgetInterface<T extends ChangeNotifier> class + abstract + +

+ + +
+

A widget that listens to a ChangeNotifier (called the view model) and updates when it does.

+ +
+ + +
+
+ +
Inheritance
+
+ +
+ + + + +
Implementers
+
+ + + + + +
+
+ + +
+

Constructors

+
+
+ ReactiveWidgetInterface({Key? key}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, T model) + Widget + + + +
+
+ Builds the UI according to the state in model. + + +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + → T + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. + + +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
override
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<T> oldWidget, T model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/ReactiveWidgetInterface.html b/docs/widgets/ReactiveWidgetInterface/ReactiveWidgetInterface.html new file mode 100644 index 0000000000..b244d5e2aa --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/ReactiveWidgetInterface.html @@ -0,0 +1,112 @@ + + + + + + + + ReactiveWidgetInterface constructor - ReactiveWidgetInterface - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ReactiveWidgetInterface
+ +
+ +
+
+
+
+
+ +

ReactiveWidgetInterface<T extends ChangeNotifier> constructor +

+ +
+ const + ReactiveWidgetInterface<T extends ChangeNotifier>({
  1. Key? key,
  2. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const ReactiveWidgetInterface({super.key});
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/build.html b/docs/widgets/ReactiveWidgetInterface/build.html new file mode 100644 index 0000000000..674d4ed841 --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/build.html @@ -0,0 +1,117 @@ + + + + + + + + build method - ReactiveWidgetInterface class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build abstract method +

+ +
+ +Widget +build(
  1. BuildContext context,
  2. +
  3. T model
  4. +
) + + + +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
Widget build(BuildContext context, T model);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/createModel.html b/docs/widgets/ReactiveWidgetInterface/createModel.html new file mode 100644 index 0000000000..4da49d9e18 --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/createModel.html @@ -0,0 +1,115 @@ + + + + + + + + createModel method - ReactiveWidgetInterface class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel abstract method +

+ +
+ +T +createModel() + + + +
+ +
+

Creates the view model. This is only called once in the widget's lifetime.

+
+ + + +
+

Implementation

+
T createModel();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/createState.html b/docs/widgets/ReactiveWidgetInterface/createState.html new file mode 100644 index 0000000000..0d0b547cc0 --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/createState.html @@ -0,0 +1,133 @@ + + + + + + + + createState method - ReactiveWidgetInterface class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createState
+ +
+ +
+
+
+
+
+ +

createState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ReactiveWidgetState<ChangeNotifier> +createState() + +
override
+ +
+ +
+

Creates the mutable state for this widget at a given location in the tree.

+

Subclasses should override this method to return a newly created +instance of their associated State subclass:

+
@override
+State<SomeWidget> createState() => _SomeWidgetState();
+
+

The framework can call this method multiple times over the lifetime of +a StatefulWidget. For example, if the widget is inserted into the tree +in multiple locations, the framework will create a separate State object +for each location. Similarly, if the widget is removed from the tree and +later inserted into the tree again, the framework will call createState +again to create a fresh State object, simplifying the lifecycle of +State objects.

+
+ + + +
+

Implementation

+
@override
+ReactiveWidgetState createState() => ReactiveWidgetState<T>();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/didUpdateWidget.html b/docs/widgets/ReactiveWidgetInterface/didUpdateWidget.html new file mode 100644 index 0000000000..f8b439691c --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/didUpdateWidget.html @@ -0,0 +1,124 @@ + + + + + + + + didUpdateWidget method - ReactiveWidgetInterface class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
didUpdateWidget
+ +
+ +
+
+
+
+
+ +

didUpdateWidget method +

+ +
+ +
+
    +
  1. @mustCallSuper
  2. +
+
+void +didUpdateWidget(
  1. covariant ReactiveWidgetInterface<T> oldWidget,
  2. +
  3. T model
  4. +
) + + + +
+ +
+

This function gives you an opportunity to update the view model when the widget updates.

+

For more details, see State.didUpdateWidget.

+
+ + + +
+

Implementation

+
@mustCallSuper
+void didUpdateWidget(covariant ReactiveWidgetInterface<T> oldWidget, T model) { }
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/shouldDispose.html b/docs/widgets/ReactiveWidgetInterface/shouldDispose.html new file mode 100644 index 0000000000..48730d9717 --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/shouldDispose.html @@ -0,0 +1,125 @@ + + + + + + + + shouldDispose property - ReactiveWidgetInterface class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
shouldDispose
+ +
+ +
+
+
+
+
+ +

shouldDispose property +

+ + + + + +
+
+ + bool + get + shouldDispose + + +
+ +
+

Whether this widget should dispose the model after it's destroyed.

+

Normally, we want the widget to clean up after itself and dispose its view model. But it's +also common for one view model to create and depend on another model. In this case, if we +are listening to the sub-model, we don't want to dispose it while the parent model is still +using it.

+
+ + +
+

Implementation

+
bool get shouldDispose;
+
+ +
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState-class-sidebar.html b/docs/widgets/ReactiveWidgetState-class-sidebar.html new file mode 100644 index 0000000000..56225e103d --- /dev/null +++ b/docs/widgets/ReactiveWidgetState-class-sidebar.html @@ -0,0 +1,43 @@ +
    + +
  1. Constructors
  2. +
  3. ReactiveWidgetState
  4. + + + +
  5. + Properties +
  6. +
  7. context
  8. +
  9. hashCode
  10. +
  11. model
  12. +
  13. mounted
  14. +
  15. runtimeType
  16. +
  17. widget
  18. + +
  19. Methods
  20. +
  21. activate
  22. +
  23. build
  24. +
  25. deactivate
  26. +
  27. debugFillProperties
  28. +
  29. didChangeDependencies
  30. +
  31. didUpdateWidget
  32. +
  33. dispose
  34. +
  35. initState
  36. +
  37. listener
  38. +
  39. noSuchMethod
  40. +
  41. reassemble
  42. +
  43. setState
  44. +
  45. toDiagnosticsNode
  46. +
  47. toString
  48. +
  49. toStringShort
  50. + +
  51. Operators
  52. +
  53. operator ==
  54. + + + + + + +
diff --git a/docs/widgets/ReactiveWidgetState-class.html b/docs/widgets/ReactiveWidgetState-class.html new file mode 100644 index 0000000000..93f3783401 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState-class.html @@ -0,0 +1,446 @@ + + + + + + + + ReactiveWidgetState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ReactiveWidgetState
+ +
+ +
+
+
+
+
+ +

ReactiveWidgetState<T extends ChangeNotifier> class + +

+ + +
+

A state for ReactiveWidget that manages the model.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ReactiveWidgetState() +
+
+ +
+
+
+ +
+

Properties

+
+
+ context + BuildContext + + +
+
+ The location in the tree where this widget builds. +
no setterinherited
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ model + ↔ T + + +
+
+ The model to listen to. +
latefinal
+ +
+ +
+ mounted + → bool + + +
+
+ Whether this State object is currently in a tree. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ widget + ReactiveWidgetInterface<T> + + +
+
+ The current configuration. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ activate() + → void + + + +
+
+ Called when this object is reinserted into the tree after having been +removed via deactivate. +
inherited
+ +
+ +
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ deactivate() + → void + + + +
+
+ Called when this object is removed from the tree. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didChangeDependencies() + → void + + + +
+
+ Called when a dependency of this State object changes. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<T> oldWidget) + → void + + + +
+
+ Called whenever the widget configuration changes. +
override
+ +
+ +
+ dispose() + → void + + + +
+
+ Called when this object is removed from the tree permanently. +
override
+ +
+ +
+ initState() + → void + + + +
+
+ Called when this object is inserted into the tree. +
override
+ +
+ +
+ listener() + → void + + + +
+
+ Updates the UI when model updates. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ reassemble() + → void + + + +
+
+ Called whenever the application is reassembled during debugging, for +example during hot reload. +
inherited
+ +
+ +
+ setState(VoidCallback fn) + → void + + + +
+
+ Notify the framework that the internal state of this object has changed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A brief description of this object, usually just the runtimeType and the +hashCode. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/ReactiveWidgetState.html b/docs/widgets/ReactiveWidgetState/ReactiveWidgetState.html new file mode 100644 index 0000000000..006206affb --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/ReactiveWidgetState.html @@ -0,0 +1,104 @@ + + + + + + + + ReactiveWidgetState constructor - ReactiveWidgetState - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ReactiveWidgetState
+ +
+ +
+
+
+
+
+ +

ReactiveWidgetState<T extends ChangeNotifier> constructor +

+ +
+ + ReactiveWidgetState<T extends ChangeNotifier>() +
+ + + + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/build.html b/docs/widgets/ReactiveWidgetState/build.html new file mode 100644 index 0000000000..441f94dda8 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/build.html @@ -0,0 +1,221 @@ + + + + + + + + build method - ReactiveWidgetState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method in a number of different situations. For +example:

+ +

This method can potentially be called in every frame and should not have +any side effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor, the +given BuildContext, and the internal state of this State object.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. The +BuildContext argument is always the same as the context property of +this State object and will remain the same for the lifetime of this +object. The BuildContext argument is provided redundantly here so that +this method matches the signature for a WidgetBuilder.

+

Design discussion

+

Why is the build method on State, and not StatefulWidget?

+

Putting a Widget build(BuildContext context) method on State rather +than putting a Widget build(BuildContext context, State state) method +on StatefulWidget gives developers more flexibility when subclassing +StatefulWidget.

+

For example, AnimatedWidget is a subclass of StatefulWidget that +introduces an abstract Widget build(BuildContext context) method for its +subclasses to implement. If StatefulWidget already had a build method +that took a State argument, AnimatedWidget would be forced to provide +its State object to subclasses even though its State object is an +internal implementation detail of AnimatedWidget.

+

Conceptually, StatelessWidget could also be implemented as a subclass of +StatefulWidget in a similar manner. If the build method were on +StatefulWidget rather than State, that would not be possible anymore.

+

Putting the build function on State rather than StatefulWidget also +helps avoid a category of bugs related to closures implicitly capturing +this. If you defined a closure in a build function on a +StatefulWidget, that closure would implicitly capture this, which is +the current widget instance, and would have the (immutable) fields of that +instance in scope:

+
// (this is not valid Flutter code)
+class MyButton extends StatefulWidgetX {
+  MyButton({super.key, required this.color});
+
+  final Color color;
+
+  @override
+  Widget build(BuildContext context, State state) {
+    return SpecialWidget(
+      handler: () { print('color: $color'); },
+    );
+  }
+}
+
+

For example, suppose the parent builds MyButton with color being blue, +the $color in the print function refers to blue, as expected. Now, +suppose the parent rebuilds MyButton with green. The closure created by +the first build still implicitly refers to the original widget and the +$color still prints blue even through the widget has been updated to +green; should that closure outlive its widget, it would print outdated +information.

+

In contrast, with the build function on the State object, closures +created during build implicitly capture the State instance instead of +the widget instance:

+
class MyButton extends StatefulWidget {
+  const MyButton({super.key, this.color = Colors.teal});
+
+  final Color color;
+  // ...
+}
+
+class MyButtonState extends State<MyButton> {
+  // ...
+  @override
+  Widget build(BuildContext context) {
+    return SpecialWidget(
+      handler: () { print('color: ${widget.color}'); },
+    );
+  }
+}
+
+

Now when the parent rebuilds MyButton with green, the closure created by +the first build still refers to State object, which is preserved across +rebuilds, but the framework has updated that State object's widget +property to refer to the new MyButton instance and ${widget.color} +prints green, as expected.

+

See also:

+
    +
  • StatefulWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => widget.build(context, model);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/didUpdateWidget.html b/docs/widgets/ReactiveWidgetState/didUpdateWidget.html new file mode 100644 index 0000000000..b3127ab164 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/didUpdateWidget.html @@ -0,0 +1,150 @@ + + + + + + + + didUpdateWidget method - ReactiveWidgetState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
didUpdateWidget
+ +
+ +
+
+
+
+
+ +

didUpdateWidget method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +didUpdateWidget(
  1. covariant ReactiveWidgetInterface<T> oldWidget
  2. +
) + +
override
+ +
+ +
+

Called whenever the widget configuration changes.

+

If the parent widget rebuilds and requests that this location in the tree +update to display a new widget with the same runtimeType and +Widget.key, the framework will update the widget property of this +State object to refer to the new widget and then call this method +with the previous widget as an argument.

+

Override this method to respond when the widget changes (e.g., to start +implicit animations).

+

The framework always calls build after calling didUpdateWidget, which +means any calls to setState in didUpdateWidget are redundant.

+

If a State's build method depends on an object that can itself +change state, for example a ChangeNotifier or Stream, or some +other object to which one can subscribe to receive notifications, then +be sure to subscribe and unsubscribe properly in initState, +didUpdateWidget, and dispose:

+
    +
  • In initState, subscribe to the object.
  • +
  • In didUpdateWidget unsubscribe from the old object and subscribe +to the new one if the updated widget configuration requires +replacing the object.
  • +
  • In dispose, unsubscribe from the object.
  • +
+

Implementations of this method should start with a call to the inherited +method, as in super.didUpdateWidget(oldWidget).

+

See the discussion at Element.rebuild for more information on when this +method is called.

+
+ + + +
+

Implementation

+
@override
+void didUpdateWidget(covariant ReactiveWidgetInterface<T> oldWidget) {
+  widget.didUpdateWidget(oldWidget, model);
+  super.didUpdateWidget(oldWidget);
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/dispose.html b/docs/widgets/ReactiveWidgetState/dispose.html new file mode 100644 index 0000000000..387cc79afe --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/dispose.html @@ -0,0 +1,174 @@ + + + + + + + + dispose method - ReactiveWidgetState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Called when this object is removed from the tree permanently.

+

The framework calls this method when this State object will never +build again. After the framework calls dispose, the State object is +considered unmounted and the mounted property is false. It is an error +to call setState at this point. This stage of the lifecycle is terminal: +there is no way to remount a State object that has been disposed.

+

Subclasses should override this method to release any resources retained +by this object (e.g., stop any active animations).

+

If a State's build method depends on an object that can itself +change state, for example a ChangeNotifier or Stream, or some +other object to which one can subscribe to receive notifications, then +be sure to subscribe and unsubscribe properly in initState, +didUpdateWidget, and dispose:

+
    +
  • In initState, subscribe to the object.
  • +
  • In didUpdateWidget unsubscribe from the old object and subscribe +to the new one if the updated widget configuration requires +replacing the object.
  • +
  • In dispose, unsubscribe from the object.
  • +
+

Implementations of this method should end with a call to the inherited +method, as in super.dispose().

+

Caveats

+

This method is not invoked at times where a developer might otherwise +expect it, such as application shutdown or dismissal via platform +native methods.

+

Application shutdown

+

There is no way to predict when application shutdown will happen. For +example, a user's battery could catch fire, or the user could drop the +device into a swimming pool, or the operating system could unilaterally +terminate the application process due to memory pressure.

+

Applications are responsible for ensuring that they are well-behaved +even in the face of a rapid unscheduled termination.

+

To artificially cause the entire widget tree to be disposed, consider +calling runApp with a widget such as SizedBox.shrink.

+

To listen for platform shutdown messages (and other lifecycle changes), +consider the AppLifecycleListener API.

+

Dismissing Flutter UI via platform native methods

+

An application may have both Flutter and non-Flutter UI in it. If the +application calls non-Flutter methods to remove Flutter based UI such as +platform native API to manipulate the platform native navigation stack, +the framework does not know if the developer intends to eagerly free +resources or not. The widget tree remains mounted and ready to render +as soon as it is displayed again.

+

See the method used to bootstrap the app (e.g. runApp or runWidget) +for suggestions on how to release resources more eagerly.

+

See also:

+ +
+ + + +
+

Implementation

+
@override
+void dispose() {
+	model.removeListener(listener);
+    if (widget.shouldDispose) model.dispose();
+	super.dispose();
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/initState.html b/docs/widgets/ReactiveWidgetState/initState.html new file mode 100644 index 0000000000..26ab5f4d43 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/initState.html @@ -0,0 +1,148 @@ + + + + + + + + initState method - ReactiveWidgetState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
initState
+ +
+ +
+
+
+
+
+ +

initState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +initState() + +
override
+ +
+ +
+

Called when this object is inserted into the tree.

+

The framework will call this method exactly once for each State object +it creates.

+

Override this method to perform initialization that depends on the +location at which this object was inserted into the tree (i.e., context) +or on the widget used to configure this object (i.e., widget).

+

If a State's build method depends on an object that can itself +change state, for example a ChangeNotifier or Stream, or some +other object to which one can subscribe to receive notifications, then +be sure to subscribe and unsubscribe properly in initState, +didUpdateWidget, and dispose:

+
    +
  • In initState, subscribe to the object.
  • +
  • In didUpdateWidget unsubscribe from the old object and subscribe +to the new one if the updated widget configuration requires +replacing the object.
  • +
  • In dispose, unsubscribe from the object.
  • +
+

You should not use BuildContext.dependOnInheritedWidgetOfExactType from this +method. However, didChangeDependencies will be called immediately +following this method, and BuildContext.dependOnInheritedWidgetOfExactType can +be used there.

+

Implementations of this method should start with a call to the inherited +method, as in super.initState().

+
+ + + +
+

Implementation

+
@override
+void initState() {
+	super.initState();
+	model = widget.createModel();
+	model.addListener(listener);
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/listener.html b/docs/widgets/ReactiveWidgetState/listener.html new file mode 100644 index 0000000000..35b75c3fb4 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/listener.html @@ -0,0 +1,115 @@ + + + + + + + + listener method - ReactiveWidgetState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
listener
+ +
+ +
+
+
+
+
+ +

listener method +

+ +
+ +void +listener() + + + +
+ +
+

Updates the UI when model updates.

+
+ + + +
+

Implementation

+
void listener() => setState(() {});
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/model.html b/docs/widgets/ReactiveWidgetState/model.html new file mode 100644 index 0000000000..fd01305856 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/model.html @@ -0,0 +1,115 @@ + + + + + + + + model property - ReactiveWidgetState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
model
+ +
+ +
+
+
+
+
+ +

model property +

+ + +
+ + T + model +
latefinal
+ +
+ +
+

The model to listen to.

+
+ + +
+

Implementation

+
late final T model;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReusableReactiveWidget-class-sidebar.html b/docs/widgets/ReusableReactiveWidget-class-sidebar.html new file mode 100644 index 0000000000..ad9084fb78 --- /dev/null +++ b/docs/widgets/ReusableReactiveWidget-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. ReusableReactiveWidget
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/widgets/ReusableReactiveWidget-class.html b/docs/widgets/ReusableReactiveWidget-class.html new file mode 100644 index 0000000000..a59307790f --- /dev/null +++ b/docs/widgets/ReusableReactiveWidget-class.html @@ -0,0 +1,432 @@ + + + + + + + + ReusableReactiveWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ReusableReactiveWidget
+ +
+ +
+
+
+
+
+ +

ReusableReactiveWidget<T extends ChangeNotifier> class + abstract + +

+ + +
+

A ReactiveWidgetInterface that "borrows" a view model and does not dispose of it.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + +
Implementers
+
+ + + + + +
+
+ + +
+

Constructors

+
+
+ ReusableReactiveWidget(T model) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + → T + + +
+
+ The model to borrow. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setteroverride
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, T model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
inherited
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + → T + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<T> oldWidget, T model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReusableReactiveWidget/ReusableReactiveWidget.html b/docs/widgets/ReusableReactiveWidget/ReusableReactiveWidget.html new file mode 100644 index 0000000000..5ed6405741 --- /dev/null +++ b/docs/widgets/ReusableReactiveWidget/ReusableReactiveWidget.html @@ -0,0 +1,112 @@ + + + + + + + + ReusableReactiveWidget constructor - ReusableReactiveWidget - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ReusableReactiveWidget
+ +
+ +
+
+
+
+
+ +

ReusableReactiveWidget<T extends ChangeNotifier> constructor +

+ +
+ const + ReusableReactiveWidget<T extends ChangeNotifier>(
  1. T model
  2. +
) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const ReusableReactiveWidget(this.model);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReusableReactiveWidget/createModel.html b/docs/widgets/ReusableReactiveWidget/createModel.html new file mode 100644 index 0000000000..e761d88f58 --- /dev/null +++ b/docs/widgets/ReusableReactiveWidget/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - ReusableReactiveWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+T +createModel() + +
override
+ +
+ +
+

Creates the view model. This is only called once in the widget's lifetime.

+
+ + + +
+

Implementation

+
@override
+T createModel() => model;
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReusableReactiveWidget/model.html b/docs/widgets/ReusableReactiveWidget/model.html new file mode 100644 index 0000000000..54b5ccb4dc --- /dev/null +++ b/docs/widgets/ReusableReactiveWidget/model.html @@ -0,0 +1,115 @@ + + + + + + + + model property - ReusableReactiveWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
model
+ +
+ +
+
+
+
+
+ +

model property +

+ + +
+ + T + model +
final
+ +
+ +
+

The model to borrow.

+
+ + +
+

Implementation

+
final T model;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ReusableReactiveWidget/shouldDispose.html b/docs/widgets/ReusableReactiveWidget/shouldDispose.html new file mode 100644 index 0000000000..b07b19c89a --- /dev/null +++ b/docs/widgets/ReusableReactiveWidget/shouldDispose.html @@ -0,0 +1,131 @@ + + + + + + + + shouldDispose property - ReusableReactiveWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
shouldDispose
+ +
+ +
+
+
+
+
+ +

shouldDispose property +

+ + + + + +
+
+ +
+
    +
  1. @override
  2. +
+
+ bool + get + shouldDispose +
override
+ +
+ +
+

Whether this widget should dispose the model after it's destroyed.

+

Normally, we want the widget to clean up after itself and dispose its view model. But it's +also common for one view model to create and depend on another model. In this case, if we +are listening to the sub-model, we don't want to dispose it while the parent model is still +using it.

+
+ + +
+

Implementation

+
@override
+bool get shouldDispose => false;
+
+ +
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ScienceCommandEditor-class-sidebar.html b/docs/widgets/ScienceCommandEditor-class-sidebar.html new file mode 100644 index 0000000000..f6f24ff50d --- /dev/null +++ b/docs/widgets/ScienceCommandEditor-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceCommandEditor
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. +
  13. shouldDispose
  14. + +
  15. Methods
  16. +
  17. build
  18. +
  19. createElement
  20. +
  21. createModel
  22. +
  23. createState
  24. +
  25. debugDescribeChildren
  26. +
  27. debugFillProperties
  28. +
  29. didUpdateWidget
  30. +
  31. noSuchMethod
  32. +
  33. toDiagnosticsNode
  34. +
  35. toString
  36. +
  37. toStringDeep
  38. +
  39. toStringShallow
  40. +
  41. toStringShort
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/widgets/ScienceCommandEditor-class.html b/docs/widgets/ScienceCommandEditor-class.html new file mode 100644 index 0000000000..03e07f93d5 --- /dev/null +++ b/docs/widgets/ScienceCommandEditor-class.html @@ -0,0 +1,398 @@ + + + + + + + + ScienceCommandEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceCommandEditor
+ +
+ +
+
+
+
+
+ +

ScienceCommandEditor class + +

+ + +
+

A widget to create and send a ScienceCommand.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ScienceCommandEditor() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, ScienceCommandBuilder model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + ScienceCommandBuilder + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<ScienceCommandBuilder> oldWidget, ScienceCommandBuilder model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ScienceCommandEditor/ScienceCommandEditor.html b/docs/widgets/ScienceCommandEditor/ScienceCommandEditor.html new file mode 100644 index 0000000000..12f97b2946 --- /dev/null +++ b/docs/widgets/ScienceCommandEditor/ScienceCommandEditor.html @@ -0,0 +1,104 @@ + + + + + + + + ScienceCommandEditor constructor - ScienceCommandEditor - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ScienceCommandEditor
+ +
+ +
+
+
+
+
+ +

ScienceCommandEditor constructor +

+ +
+ + ScienceCommandEditor() +
+ + + + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ScienceCommandEditor/build.html b/docs/widgets/ScienceCommandEditor/build.html new file mode 100644 index 0000000000..3107cef811 --- /dev/null +++ b/docs/widgets/ScienceCommandEditor/build.html @@ -0,0 +1,153 @@ + + + + + + + + build method - ScienceCommandEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. ScienceCommandBuilder model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, ScienceCommandBuilder model) => Container(
+  color: context.colorScheme.surface,
+  height: 48,
+  child: Row(
+    mainAxisSize: MainAxisSize.min,
+    children: [
+      const SizedBox(width: 8),
+      Text("Status", style: context.textTheme.titleLarge),
+      const SizedBox(width: 12),
+      Text("Sample: ${models.rover.metrics.science.data.sample + 1}", style: context.textTheme.titleMedium),
+      const SizedBox(width: 12),
+      Text("State: ${models.rover.metrics.science.data.state.humanName}", style: context.textTheme.titleMedium),
+      const Spacer(),
+      Text("Command", style: context.textTheme.titleLarge),
+      SizedBox(width: 125, child: NumberEditor(width: 4, name: "Sample: ", model: model.sample)),
+      SizedBox(child: DropdownEditor(
+        name: "State: ",
+        value: model.state,
+        onChanged: model.updateState,
+        items: const [ScienceState.STOP_COLLECTING, ScienceState.COLLECT_DATA],
+        humanName: (state) => state.humanName,
+      ),),
+      const SizedBox(width: 12),
+      ElevatedButton(
+        onPressed: model.isValid ? model.send : null,
+        child: const Text("Send"),
+      ),
+      const SizedBox(width: 12),
+    ],
+  ),
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ScienceCommandEditor/createModel.html b/docs/widgets/ScienceCommandEditor/createModel.html new file mode 100644 index 0000000000..7e2b959794 --- /dev/null +++ b/docs/widgets/ScienceCommandEditor/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - ScienceCommandEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ScienceCommandBuilder +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+ScienceCommandBuilder createModel() => ScienceCommandBuilder();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SerialButton-class-sidebar.html b/docs/widgets/SerialButton-class-sidebar.html new file mode 100644 index 0000000000..30d77c20e7 --- /dev/null +++ b/docs/widgets/SerialButton-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. SerialButton
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/widgets/SerialButton-class.html b/docs/widgets/SerialButton-class.html new file mode 100644 index 0000000000..a001b8c888 --- /dev/null +++ b/docs/widgets/SerialButton-class.html @@ -0,0 +1,411 @@ + + + + + + + + SerialButton class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialButton
+ +
+ +
+
+
+
+
+ +

SerialButton class + +

+ + +
+

Allows the user to connect to the firmware directly, over Serial.

+

See SerialModel for an implementation.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SerialButton() +
+
+ Provides a const constructor. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + SerialModel + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, SerialModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + SerialModel + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<SerialModel> oldWidget, SerialModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SerialButton/SerialButton.html b/docs/widgets/SerialButton/SerialButton.html new file mode 100644 index 0000000000..4ff9f4cea2 --- /dev/null +++ b/docs/widgets/SerialButton/SerialButton.html @@ -0,0 +1,111 @@ + + + + + + + + SerialButton constructor - SerialButton - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SerialButton
+ +
+ +
+
+
+
+
+ +

SerialButton constructor +

+ +
+ + SerialButton() +
+ +
+

Provides a const constructor.

+
+ + + +
+

Implementation

+
SerialButton() : super(models.serial);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SerialButton/build.html b/docs/widgets/SerialButton/build.html new file mode 100644 index 0000000000..a95f47e92d --- /dev/null +++ b/docs/widgets/SerialButton/build.html @@ -0,0 +1,139 @@ + + + + + + + + build method - SerialButton class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. SerialModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, SerialModel model) => PopupMenuButton(
+    icon: Icon(
+      Icons.usb,
+      color: model.hasDevice ? Colors.green : context.colorScheme.onSecondary,
+    ),
+    tooltip: "Select device",
+    onSelected: model.toggle,
+    itemBuilder: (_) => [
+      for (final String port in SerialDevice.availablePorts) PopupMenuItem(
+        value: port,
+        child: ListTile(
+          title: Text(port),
+          leading: model.isConnected(port) ? const Icon(Icons.check) : null,
+        ),
+      ),
+    ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SeverityUtil-extension-sidebar.html b/docs/widgets/SeverityUtil-extension-sidebar.html new file mode 100644 index 0000000000..d0209d4591 --- /dev/null +++ b/docs/widgets/SeverityUtil-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. color
  4. + + + + + + +
diff --git a/docs/widgets/SeverityUtil.html b/docs/widgets/SeverityUtil.html new file mode 100644 index 0000000000..ae9bc1aa06 --- /dev/null +++ b/docs/widgets/SeverityUtil.html @@ -0,0 +1,139 @@ + + + + + + + + SeverityUtil extension - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SeverityUtil
+ +
+ +
+
+
+
+
+ +

SeverityUtil extension + +

+ + +
+

Extension for COlors on Severity

+
+ +
+
+
on
+
+ +
+
+ + + +
+ +
+

Properties

+
+
+ color + Color? + + +
+
+ Fetch the color based on the severity +
no setter
+ +
+ +
+
+ + + + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + + + diff --git a/docs/widgets/SeverityUtil/color.html b/docs/widgets/SeverityUtil/color.html new file mode 100644 index 0000000000..07b40a2d7e --- /dev/null +++ b/docs/widgets/SeverityUtil/color.html @@ -0,0 +1,126 @@ + + + + + + + + color property - SeverityUtil extension - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
color
+ +
+ +
+
+
+
+
+ +

color property +

+ + + + + +
+
+ + Color? + get + color + + +
+ +
+

Fetch the color based on the severity

+
+ + +
+

Implementation

+
Color? get color => switch (this) {
+  Severity.info => Colors.blueGrey,
+  Severity.warning => Colors.orange,
+  Severity.error => Colors.red,
+  Severity.critical => Colors.red.shade900,
+};
+
+ +
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/Sidebar-class-sidebar.html b/docs/widgets/Sidebar-class-sidebar.html new file mode 100644 index 0000000000..d7adba7781 --- /dev/null +++ b/docs/widgets/Sidebar-class-sidebar.html @@ -0,0 +1,35 @@ +
    + +
  1. Constructors
  2. +
  3. Sidebar
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. + +
  13. Methods
  14. +
  15. build
  16. +
  17. createElement
  18. +
  19. debugDescribeChildren
  20. +
  21. debugFillProperties
  22. +
  23. noSuchMethod
  24. +
  25. toDiagnosticsNode
  26. +
  27. toString
  28. +
  29. toStringDeep
  30. +
  31. toStringShallow
  32. +
  33. toStringShort
  34. + +
  35. Operators
  36. +
  37. operator ==
  38. + + + + + + +
diff --git a/docs/widgets/Sidebar-class.html b/docs/widgets/Sidebar-class.html new file mode 100644 index 0000000000..671d81ed40 --- /dev/null +++ b/docs/widgets/Sidebar-class.html @@ -0,0 +1,346 @@ + + + + + + + + Sidebar class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Sidebar
+ +
+ +
+
+
+
+
+ +

Sidebar class + +

+ + +
+

A widget to display metrics and controls off to the side.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+ +
+ A const constructor for this widget. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/Sidebar/Sidebar.html b/docs/widgets/Sidebar/Sidebar.html new file mode 100644 index 0000000000..bfb50e1fef --- /dev/null +++ b/docs/widgets/Sidebar/Sidebar.html @@ -0,0 +1,111 @@ + + + + + + + + Sidebar constructor - Sidebar - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
Sidebar
+ +
+ +
+
+
+
+
+ +

Sidebar constructor +

+ +
+ const + Sidebar() +
+ +
+

A const constructor for this widget.

+
+ + + +
+

Implementation

+
const Sidebar();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/Sidebar/build.html b/docs/widgets/Sidebar/build.html new file mode 100644 index 0000000000..7f6761bd9f --- /dev/null +++ b/docs/widgets/Sidebar/build.html @@ -0,0 +1,226 @@ + + + + + + + + build method - Sidebar class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Material(
+  elevation: 20,
+  child: Container(
+    width: 310,
+    color: Theme.of(context).colorScheme.surface,
+    child: DefaultTabController(
+      length: 2,
+      child: Column(
+        children: [
+          TabBar(
+            tabs: [
+              Tab(child: Text("Metrics & Controls", style: TextStyle(color: context.colorScheme.onSurface)),),
+              Tab(child: Text("Views", style: TextStyle(color: context.colorScheme.onSurface))),
+            ],
+          ),
+          Expanded(
+            child: TabBarView(
+              children: [
+                ListView(
+                  padding: const EdgeInsets.symmetric(horizontal: 4),
+                  children: [
+                    Text(
+                      "Metrics",
+                      style: context.textTheme.displaySmall,
+                      textAlign: TextAlign.center,
+                    ),
+                    for (final metrics in models.rover.metrics.allMetrics)
+                      MetricsList(metrics),
+                    const Divider(),
+                    Text(
+                      "Controls",
+                      style: context.textTheme.displaySmall,
+                      textAlign: TextAlign.center,
+                    ),
+                    const SizedBox(height: 4),
+                    ControlsDisplay(
+                      controller: models.rover.controller1,
+                      gamepadNum: 1,
+                    ),
+                    ControlsDisplay(
+                      controller: models.rover.controller2,
+                      gamepadNum: 2,
+                    ),
+                    ControlsDisplay(
+                      controller: models.rover.controller3,
+                      gamepadNum: 3,
+                    ),
+                  ],
+                ),
+                Column(
+                  children: [
+                    Row(
+                      mainAxisAlignment: MainAxisAlignment.spaceEvenly,
+                      children: [
+                        ViewsCounter(),
+                        IconButton(
+                          icon: const Icon(Icons.aspect_ratio),
+                          tooltip: "Reset View Sizes",
+                          onPressed: models.views.resetSizes,
+                        ),
+                      ],
+                    ),
+                    Expanded(child: ViewsList()),
+                  ],
+                ),
+              ],
+            ),
+          ),
+        ],
+      ),
+    ),
+  ),
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SliderSettings-class-sidebar.html b/docs/widgets/SliderSettings-class-sidebar.html new file mode 100644 index 0000000000..ce88e7913a --- /dev/null +++ b/docs/widgets/SliderSettings-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. SliderSettings
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. label
  12. +
  13. max
  14. +
  15. min
  16. +
  17. onChanged
  18. +
  19. runtimeType
  20. +
  21. value
  22. + +
  23. Methods
  24. +
  25. build
  26. +
  27. createElement
  28. +
  29. debugDescribeChildren
  30. +
  31. debugFillProperties
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/widgets/SliderSettings-class.html b/docs/widgets/SliderSettings-class.html new file mode 100644 index 0000000000..f42824fe61 --- /dev/null +++ b/docs/widgets/SliderSettings-class.html @@ -0,0 +1,406 @@ + + + + + + + + SliderSettings class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SliderSettings
+ +
+ +
+
+
+
+
+ +

SliderSettings class + +

+ + +
+

Class that defines a slider for camera controls

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SliderSettings({required String label, required double value, required ValueChanged<double> onChanged, double min = 0, double max = 100}) +
+
+ Constructor for SliderSettings +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ label + → String + + +
+
+ Name of the slider +
final
+ +
+ +
+ max + → double + + +
+
+ The max value on this slider. +
final
+ +
+ +
+ min + → double + + +
+
+ The min value on this slider. +
final
+ +
+ +
+ onChanged + ValueChanged<double> + + +
+
+ Value to change the position of the slider +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ value + → double + + +
+
+ Value corresponding to the slider +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SliderSettings/SliderSettings.html b/docs/widgets/SliderSettings/SliderSettings.html new file mode 100644 index 0000000000..43287a0b9f --- /dev/null +++ b/docs/widgets/SliderSettings/SliderSettings.html @@ -0,0 +1,122 @@ + + + + + + + + SliderSettings constructor - SliderSettings - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SliderSettings
+ +
+ +
+
+
+
+
+ +

SliderSettings constructor +

+ +
+ const + SliderSettings({
  1. required String label,
  2. +
  3. required double value,
  4. +
  5. required ValueChanged<double> onChanged,
  6. +
  7. double min = 0,
  8. +
  9. double max = 100,
  10. +
}) +
+ +
+

Constructor for SliderSettings

+
+ + + +
+

Implementation

+
const SliderSettings({
+  required this.label,
+  required this.value,
+  required this.onChanged,
+  this.min = 0,
+  this.max = 100,
+});
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SliderSettings/build.html b/docs/widgets/SliderSettings/build.html new file mode 100644 index 0000000000..92e61f0a83 --- /dev/null +++ b/docs/widgets/SliderSettings/build.html @@ -0,0 +1,164 @@ + + + + + + + + build method - SliderSettings class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Column(
+  children: <Widget>[
+    Text("$label: ${value.floor()}"),
+    Slider(
+      value: value,
+      onChanged: onChanged,
+      max: max,
+      min: min,
+    ),
+  ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SliderSettings/label.html b/docs/widgets/SliderSettings/label.html new file mode 100644 index 0000000000..9914359bc8 --- /dev/null +++ b/docs/widgets/SliderSettings/label.html @@ -0,0 +1,115 @@ + + + + + + + + label property - SliderSettings class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
label
+ +
+ +
+
+
+
+
+ +

label property +

+ + +
+ + String + label +
final
+ +
+ +
+

Name of the slider

+
+ + +
+

Implementation

+
final String label;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SliderSettings/max.html b/docs/widgets/SliderSettings/max.html new file mode 100644 index 0000000000..081a27356f --- /dev/null +++ b/docs/widgets/SliderSettings/max.html @@ -0,0 +1,115 @@ + + + + + + + + max property - SliderSettings class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
max
+ +
+ +
+
+
+
+
+ +

max property +

+ + +
+ + double + max +
final
+ +
+ +
+

The max value on this slider.

+
+ + +
+

Implementation

+
final double max;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SliderSettings/min.html b/docs/widgets/SliderSettings/min.html new file mode 100644 index 0000000000..8ebd455314 --- /dev/null +++ b/docs/widgets/SliderSettings/min.html @@ -0,0 +1,115 @@ + + + + + + + + min property - SliderSettings class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
min
+ +
+ +
+
+
+
+
+ +

min property +

+ + +
+ + double + min +
final
+ +
+ +
+

The min value on this slider.

+
+ + +
+

Implementation

+
final double min;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SliderSettings/onChanged.html b/docs/widgets/SliderSettings/onChanged.html new file mode 100644 index 0000000000..83879b211b --- /dev/null +++ b/docs/widgets/SliderSettings/onChanged.html @@ -0,0 +1,115 @@ + + + + + + + + onChanged property - SliderSettings class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
onChanged
+ +
+ +
+
+
+
+
+ +

onChanged property +

+ + +
+ + ValueChanged<double> + onChanged +
final
+ +
+ +
+

Value to change the position of the slider

+
+ + +
+

Implementation

+
final ValueChanged<double> onChanged;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SliderSettings/value.html b/docs/widgets/SliderSettings/value.html new file mode 100644 index 0000000000..336459bcd4 --- /dev/null +++ b/docs/widgets/SliderSettings/value.html @@ -0,0 +1,115 @@ + + + + + + + + value property - SliderSettings class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
value
+ +
+ +
+
+
+
+
+ +

value property +

+ + +
+ + double + value +
final
+ +
+ +
+

Value corresponding to the slider

+
+ + +
+

Implementation

+
final double value;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SocketEditor-class-sidebar.html b/docs/widgets/SocketEditor-class-sidebar.html new file mode 100644 index 0000000000..56a7171c1c --- /dev/null +++ b/docs/widgets/SocketEditor-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. SocketEditor
  4. + + + +
  5. + Properties +
  6. +
  7. editPort
  8. +
  9. hashCode
  10. +
  11. key
  12. +
  13. model
  14. +
  15. name
  16. +
  17. runtimeType
  18. +
  19. shouldDispose
  20. + +
  21. Methods
  22. +
  23. build
  24. +
  25. createElement
  26. +
  27. createModel
  28. +
  29. createState
  30. +
  31. debugDescribeChildren
  32. +
  33. debugFillProperties
  34. +
  35. didUpdateWidget
  36. +
  37. noSuchMethod
  38. +
  39. toDiagnosticsNode
  40. +
  41. toString
  42. +
  43. toStringDeep
  44. +
  45. toStringShallow
  46. +
  47. toStringShort
  48. + +
  49. Operators
  50. +
  51. operator ==
  52. + + + + + + +
diff --git a/docs/widgets/SocketEditor-class.html b/docs/widgets/SocketEditor-class.html new file mode 100644 index 0000000000..1d235a751b --- /dev/null +++ b/docs/widgets/SocketEditor-class.html @@ -0,0 +1,435 @@ + + + + + + + + SocketEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SocketEditor
+ +
+ +
+
+
+
+
+ +

SocketEditor class + +

+ + +
+

Creates a widget to edit a SocketInfo, backed by SocketBuilder.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ SocketEditor({required String name, required SocketBuilder model, bool editPort = true}) +
+
+ Creates a widget to edit host and port data for a socket. +
const
+
+
+
+ +
+

Properties

+
+
+ editPort + → bool + + +
+
+ Whether to edit the port as well. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + SocketBuilder + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ name + → String + + +
+
+ The name of the socket being edited. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, SocketBuilder model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + SocketBuilder + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<SocketBuilder> oldWidget, SocketBuilder model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SocketEditor/SocketEditor.html b/docs/widgets/SocketEditor/SocketEditor.html new file mode 100644 index 0000000000..be11706f6d --- /dev/null +++ b/docs/widgets/SocketEditor/SocketEditor.html @@ -0,0 +1,118 @@ + + + + + + + + SocketEditor constructor - SocketEditor - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
SocketEditor
+ +
+ +
+
+
+
+
+ +

SocketEditor constructor +

+ +
+ const + SocketEditor({
  1. required String name,
  2. +
  3. required SocketBuilder model,
  4. +
  5. bool editPort = true,
  6. +
}) +
+ +
+

Creates a widget to edit host and port data for a socket.

+
+ + + +
+

Implementation

+
const SocketEditor({
+	required this.name,
+	required SocketBuilder model,
+	this.editPort = true,
+}) : super(model);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SocketEditor/build.html b/docs/widgets/SocketEditor/build.html new file mode 100644 index 0000000000..a35b86ab9d --- /dev/null +++ b/docs/widgets/SocketEditor/build.html @@ -0,0 +1,144 @@ + + + + + + + + build method - SocketEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. SocketBuilder model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, SocketBuilder model) => Row(
+    children: [
+      const SizedBox(width: 16),
+      Expanded(flex: 5, child: Text(name)),
+      const Spacer(),
+      Expanded(child: TextField(
+        onChanged: model.address.update,
+        controller: model.address.controller,
+        decoration: InputDecoration(errorText: model.address.error),
+        inputFormatters: [FilteringTextInputFormatter.allow(RegExp(r"\d|\."))],
+      ),),
+      const SizedBox(width: 12),
+      if (editPort) ...[
+        Expanded(child: TextField(
+          onChanged: model.port.update,
+          controller: model.port.controller,
+          decoration: InputDecoration(errorText: model.port.error),
+          inputFormatters: [FilteringTextInputFormatter.allow(RegExp(r"\d"))],
+        ),),
+      ] else const Spacer(),
+    ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SocketEditor/editPort.html b/docs/widgets/SocketEditor/editPort.html new file mode 100644 index 0000000000..a41f5c087c --- /dev/null +++ b/docs/widgets/SocketEditor/editPort.html @@ -0,0 +1,115 @@ + + + + + + + + editPort property - SocketEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
editPort
+ +
+ +
+
+
+
+
+ +

editPort property +

+ + +
+ + bool + editPort +
final
+ +
+ +
+

Whether to edit the port as well.

+
+ + +
+

Implementation

+
final bool editPort;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/SocketEditor/name.html b/docs/widgets/SocketEditor/name.html new file mode 100644 index 0000000000..0855043501 --- /dev/null +++ b/docs/widgets/SocketEditor/name.html @@ -0,0 +1,115 @@ + + + + + + + + name property - SocketEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + +
+ + String + name +
final
+ +
+ +
+

The name of the socket being edited.

+
+ + +
+

Implementation

+
final String name;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/StatusIcons-class-sidebar.html b/docs/widgets/StatusIcons-class-sidebar.html new file mode 100644 index 0000000000..1a83bd8d36 --- /dev/null +++ b/docs/widgets/StatusIcons-class-sidebar.html @@ -0,0 +1,41 @@ +
    + +
  1. Constructors
  2. +
  3. StatusIcons
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. + +
  13. Methods
  14. +
  15. build
  16. +
  17. createElement
  18. +
  19. debugDescribeChildren
  20. +
  21. debugFillProperties
  22. +
  23. getBatteryIcon
  24. +
  25. getLedColor
  26. +
  27. getStatusColor
  28. +
  29. getStatusIcon
  30. +
  31. noSuchMethod
  32. +
  33. toDiagnosticsNode
  34. +
  35. toString
  36. +
  37. toStringDeep
  38. +
  39. toStringShallow
  40. +
  41. toStringShort
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + +
  47. Static methods
  48. +
  49. getColor
  50. + +
diff --git a/docs/widgets/StatusIcons-class.html b/docs/widgets/StatusIcons-class.html new file mode 100644 index 0000000000..77549230f5 --- /dev/null +++ b/docs/widgets/StatusIcons-class.html @@ -0,0 +1,416 @@ + + + + + + + + StatusIcons class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
StatusIcons
+ +
+ +
+
+
+
+
+ +

StatusIcons class + +

+ + +
+

A few icons displaying the rover's current status.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ StatusIcons() +
+
+ Provides a const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ getBatteryIcon(double percentage) + IconData + + + +
+
+ An appropriate battery icon in increments of 1/8 battery level. + + +
+ +
+ getLedColor(ProtoColor color) + Color + + + +
+
+ Gets the Flutter color for the given Protobuf color. + + +
+ +
+ getStatusColor(RoverStatus status) + Color + + + +
+
+ The color of the rover's status icon. + + +
+ +
+ getStatusIcon(RoverStatus status) + IconData + + + +
+
+ An appropriate battery icon representing the rover's current status. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + +
+

Static Methods

+
+
+ getColor(double percentage) + Color + + + +
+
+ A color representing a meter's fill. + + +
+ +
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/StatusIcons/StatusIcons.html b/docs/widgets/StatusIcons/StatusIcons.html new file mode 100644 index 0000000000..83be5a81fe --- /dev/null +++ b/docs/widgets/StatusIcons/StatusIcons.html @@ -0,0 +1,111 @@ + + + + + + + + StatusIcons constructor - StatusIcons - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
StatusIcons
+ +
+ +
+
+
+
+
+ +

StatusIcons constructor +

+ +
+ const + StatusIcons() +
+ +
+

Provides a const constructor.

+
+ + + +
+

Implementation

+
const StatusIcons();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/StatusIcons/build.html b/docs/widgets/StatusIcons/build.html new file mode 100644 index 0000000000..01f39ecdd9 --- /dev/null +++ b/docs/widgets/StatusIcons/build.html @@ -0,0 +1,230 @@ + + + + + + + + build method - StatusIcons class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Row(
+    mainAxisSize: MainAxisSize.min,
+	children: [
+		AnimatedBuilder(  // battery level
+			animation: Listenable.merge([models.rover.metrics.drive, models.rover.status]),
+			builder: (context, _) => Tooltip(
+				message: "Battery: ${models.rover.metrics.drive.batteryVoltage.toStringAsFixed(2)} "
+            "(${(models.rover.metrics.drive.batteryPercentage * 100).toStringAsFixed(0)}%)",
+				child: Icon(
+					models.rover.isConnected
+						? getBatteryIcon(models.rover.metrics.drive.batteryPercentage)
+						: Icons.battery_unknown,
+					color: models.rover.isConnected
+              ? getColor(models.rover.metrics.drive.batteryPercentage)
+              : Colors.black,
+				),
+			),
+		),
+		NetworkStatusIcon(
+        device: Device.SUBSYSTEMS,
+        tooltip: "${models.sockets.connectionSummary}\nClick to reset",
+        onPressed: () async {
+          await models.sockets.reset();
+          models.home.setMessage(severity: Severity.info, text: "Network reset");
+        },
+      ),
+		ValueListenableBuilder<RoverStatus>(  // status
+			valueListenable: models.rover.status,
+			builder: (context, value, child) => PopupMenuButton(
+				tooltip: "Change mode",
+				onSelected: (value) async {
+            if (value == RoverStatus.POWER_OFF) {
+              await showDialog<void>(
+                context: context,
+                builder: (ctx) => AlertDialog(
+                  title: const Text("Are you sure?"),
+                  content: const Text("This will turn off the rover and you must physically turn it back on again"),
+                  actions: [
+                    TextButton(child: const Text("Cancel"), onPressed: () => Navigator.of(context).pop()),
+                    ElevatedButton(
+                      onPressed: () { models.rover.settings.setStatus(value); Navigator.of(context).pop(); },
+                      child: const Text("Continue"),
+                    ),
+                  ],
+                ),
+              );
+            } else {
+              await models.rover.settings.setStatus(value);
+            }
+          },
+          icon: Icon(
+					getStatusIcon(value),
+					color: getStatusColor(value),
+				),
+				itemBuilder: (_) => [
+					for (final value in RoverStatus.values)
+						if (value != RoverStatus.DISCONNECTED)  // can't select this!
+							PopupMenuItem(value: value, child: Text(value.humanName)),
+				],
+			),
+		),
+      ListenableBuilder(  // LED color
+			listenable: Listenable.merge([models.rover.metrics.drive, models.rover.status]),
+			builder: (context, child) => IconButton(
+          icon: Icon(
+            Icons.circle,
+            color: models.rover.isConnected
+              ? getLedColor(models.rover.metrics.drive.data.color)
+              : Colors.black,
+            ),
+          onPressed: () => showDialog<void>(context: context, builder: (_) => ColorEditor(ColorBuilder())),
+          tooltip: "Change LED strip",
+        ),
+      ),
+		const SizedBox(width: 4),
+	],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/StatusIcons/getBatteryIcon.html b/docs/widgets/StatusIcons/getBatteryIcon.html new file mode 100644 index 0000000000..0f8657bd54 --- /dev/null +++ b/docs/widgets/StatusIcons/getBatteryIcon.html @@ -0,0 +1,125 @@ + + + + + + + + getBatteryIcon method - StatusIcons class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getBatteryIcon
+ +
+ +
+
+
+
+
+ +

getBatteryIcon method +

+ +
+ +IconData +getBatteryIcon(
  1. double percentage
  2. +
) + + + +
+ +
+

An appropriate battery icon in increments of 1/8 battery level.

+
+ + + +
+

Implementation

+
IconData getBatteryIcon(double percentage) {
+	if (percentage >= 0.84) { return Icons.battery_full; }  // 80-100
+	else if (percentage >= 0.72) { return Icons.battery_6_bar; }  // 60-80
+	else if (percentage >= 0.60) { return Icons.battery_5_bar; }  // 60-80
+	else if (percentage >= 0.48) { return Icons.battery_4_bar; }  // 60-80
+	else if (percentage >= 0.36) { return Icons.battery_3_bar; }  // 60-80
+	else if (percentage >= 0.24) { return Icons.battery_2_bar; }  // 40-60
+	else if (percentage >= 0.12) { return Icons.battery_1_bar; }  // 20-40
+	else { return Icons.battery_0_bar; }  // 0-20
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/StatusIcons/getColor.html b/docs/widgets/StatusIcons/getColor.html new file mode 100644 index 0000000000..468d3a4b18 --- /dev/null +++ b/docs/widgets/StatusIcons/getColor.html @@ -0,0 +1,121 @@ + + + + + + + + getColor method - StatusIcons class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getColor
+ +
+ +
+
+
+
+
+ +

getColor static method +

+ +
+ +Color +getColor(
  1. double percentage
  2. +
) + + + +
+ +
+

A color representing a meter's fill.

+
+ + + +
+

Implementation

+
static Color getColor(double percentage) {
+		if (percentage > 0.45) { return Colors.green; }
+		else if (percentage > 0.2) { return Colors.orange; }
+		else if (percentage > 0.0) { return Colors.red; }
+		else { return Colors.black; }
+	}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/StatusIcons/getLedColor.html b/docs/widgets/StatusIcons/getLedColor.html new file mode 100644 index 0000000000..732e7029fc --- /dev/null +++ b/docs/widgets/StatusIcons/getLedColor.html @@ -0,0 +1,122 @@ + + + + + + + + getLedColor method - StatusIcons class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getLedColor
+ +
+ +
+
+
+
+
+ +

getLedColor method +

+ +
+ +Color +getLedColor(
  1. ProtoColor color
  2. +
) + + + +
+ +
+

Gets the Flutter color for the given Protobuf color.

+
+ + + +
+

Implementation

+
Color getLedColor(ProtoColor color) => switch (color) {
+  ProtoColor.BLUE => Colors.blue,
+  ProtoColor.RED => Colors.red,
+  ProtoColor.GREEN => Colors.green,
+  ProtoColor.UNLIT => Colors.grey,
+  _ => Colors.grey,
+};
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/StatusIcons/getStatusColor.html b/docs/widgets/StatusIcons/getStatusColor.html new file mode 100644 index 0000000000..f3144cd0ff --- /dev/null +++ b/docs/widgets/StatusIcons/getStatusColor.html @@ -0,0 +1,126 @@ + + + + + + + + getStatusColor method - StatusIcons class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getStatusColor
+ +
+ +
+
+
+
+
+ +

getStatusColor method +

+ +
+ +Color +getStatusColor(
  1. RoverStatus status
  2. +
) + + + +
+ +
+

The color of the rover's status icon.

+
+ + + +
+

Implementation

+
Color getStatusColor(RoverStatus status) {
+	switch(status) {
+		case RoverStatus.DISCONNECTED: return Colors.black;
+		case RoverStatus.IDLE: return Colors.yellow;
+		case RoverStatus.MANUAL: return Colors.green;
+		case RoverStatus.AUTONOMOUS: return Colors.blueGrey;
+		case RoverStatus.POWER_OFF: return Colors.red;
+		case RoverStatus.RESTART: return Colors.yellow;
+	}
+	throw ArgumentError("Unrecognized rover status: $status");
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/StatusIcons/getStatusIcon.html b/docs/widgets/StatusIcons/getStatusIcon.html new file mode 100644 index 0000000000..0969dba542 --- /dev/null +++ b/docs/widgets/StatusIcons/getStatusIcon.html @@ -0,0 +1,126 @@ + + + + + + + + getStatusIcon method - StatusIcons class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getStatusIcon
+ +
+ +
+
+
+
+
+ +

getStatusIcon method +

+ +
+ +IconData +getStatusIcon(
  1. RoverStatus status
  2. +
) + + + +
+ +
+

An appropriate battery icon representing the rover's current status.

+
+ + + +
+

Implementation

+
IconData getStatusIcon(RoverStatus status) {
+	switch (status) {
+		case RoverStatus.DISCONNECTED: return Icons.power_off;
+		case RoverStatus.POWER_OFF: return Icons.power_off;
+		case RoverStatus.IDLE: return Icons.pause_circle;
+		case RoverStatus.MANUAL: return Icons.play_circle;
+		case RoverStatus.AUTONOMOUS: return Icons.smart_toy;
+		case RoverStatus.RESTART: return Icons.restart_alt;
+	}
+	throw ArgumentError("Unrecognized rover status: $status");
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ThrottleEditor-class-sidebar.html b/docs/widgets/ThrottleEditor-class-sidebar.html new file mode 100644 index 0000000000..4c0a3ddacc --- /dev/null +++ b/docs/widgets/ThrottleEditor-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. ThrottleEditor
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. +
  13. shouldDispose
  14. + +
  15. Methods
  16. +
  17. build
  18. +
  19. createElement
  20. +
  21. createModel
  22. +
  23. createState
  24. +
  25. debugDescribeChildren
  26. +
  27. debugFillProperties
  28. +
  29. didUpdateWidget
  30. +
  31. noSuchMethod
  32. +
  33. toDiagnosticsNode
  34. +
  35. toString
  36. +
  37. toStringDeep
  38. +
  39. toStringShallow
  40. +
  41. toStringShort
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/widgets/ThrottleEditor-class.html b/docs/widgets/ThrottleEditor-class.html new file mode 100644 index 0000000000..6047c79ad5 --- /dev/null +++ b/docs/widgets/ThrottleEditor-class.html @@ -0,0 +1,398 @@ + + + + + + + + ThrottleEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ThrottleEditor
+ +
+ +
+
+
+
+
+ +

ThrottleEditor class + +

+ + +
+

An AlertDialog to prompt the user for a throttle value and send it to the rover.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ThrottleEditor() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, ThrottleBuilder model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + ThrottleBuilder + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<ThrottleBuilder> oldWidget, ThrottleBuilder model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ThrottleEditor/ThrottleEditor.html b/docs/widgets/ThrottleEditor/ThrottleEditor.html new file mode 100644 index 0000000000..e77cce315b --- /dev/null +++ b/docs/widgets/ThrottleEditor/ThrottleEditor.html @@ -0,0 +1,104 @@ + + + + + + + + ThrottleEditor constructor - ThrottleEditor - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ThrottleEditor
+ +
+ +
+
+
+
+
+ +

ThrottleEditor constructor +

+ +
+ + ThrottleEditor() +
+ + + + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ThrottleEditor/build.html b/docs/widgets/ThrottleEditor/build.html new file mode 100644 index 0000000000..3c4369bf85 --- /dev/null +++ b/docs/widgets/ThrottleEditor/build.html @@ -0,0 +1,151 @@ + + + + + + + + build method - ThrottleEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. ThrottleBuilder model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, ThrottleBuilder model) => AlertDialog(
+  title: const Text("Adjust throttle"),
+  content: Column(
+    crossAxisAlignment: CrossAxisAlignment.start,
+    mainAxisSize: MainAxisSize.min,
+    children: [
+      NumberEditor(name: "Throttle", model: model.controller),
+      const SizedBox(height: 12),
+      if (model.errorText != null) Text(
+        model.errorText!,
+        style: const TextStyle(color: Colors.red),
+      ),
+    ],
+  ),
+  actions: [
+    ElevatedButton(
+      onPressed: !model.isValid || model.isLoading ? null : () async {
+        await model.save();
+        if (!context.mounted) return;
+        Navigator.of(context).pop();
+       },
+      child: const Text("Save"),
+    ),
+    TextButton(
+      onPressed: () => Navigator.of(context).pop(),
+      child: const Text("Cancel"),
+    ),
+  ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ThrottleEditor/createModel.html b/docs/widgets/ThrottleEditor/createModel.html new file mode 100644 index 0000000000..55e8467f47 --- /dev/null +++ b/docs/widgets/ThrottleEditor/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - ThrottleEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ThrottleBuilder +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+ThrottleBuilder createModel() => ThrottleBuilder();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/TimerEditor-class-sidebar.html b/docs/widgets/TimerEditor-class-sidebar.html new file mode 100644 index 0000000000..63840ed51a --- /dev/null +++ b/docs/widgets/TimerEditor-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. TimerEditor
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. +
  13. shouldDispose
  14. + +
  15. Methods
  16. +
  17. build
  18. +
  19. createElement
  20. +
  21. createModel
  22. +
  23. createState
  24. +
  25. debugDescribeChildren
  26. +
  27. debugFillProperties
  28. +
  29. didUpdateWidget
  30. +
  31. noSuchMethod
  32. +
  33. toDiagnosticsNode
  34. +
  35. toString
  36. +
  37. toStringDeep
  38. +
  39. toStringShallow
  40. +
  41. toStringShort
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/widgets/TimerEditor-class.html b/docs/widgets/TimerEditor-class.html new file mode 100644 index 0000000000..e1604318ff --- /dev/null +++ b/docs/widgets/TimerEditor-class.html @@ -0,0 +1,398 @@ + + + + + + + + TimerEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TimerEditor
+ +
+ +
+
+
+
+
+ +

TimerEditor class + +

+ + +
+

A widget to edit a color, backed by TimerBuilder.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ TimerEditor() +
+
+ +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, TimerBuilder model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + TimerBuilder + + + +
+
+ A function to create or find the model. This function will only be called once. +
override
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<TimerBuilder> oldWidget, TimerBuilder model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/TimerEditor/TimerEditor.html b/docs/widgets/TimerEditor/TimerEditor.html new file mode 100644 index 0000000000..ea69c75794 --- /dev/null +++ b/docs/widgets/TimerEditor/TimerEditor.html @@ -0,0 +1,104 @@ + + + + + + + + TimerEditor constructor - TimerEditor - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TimerEditor
+ +
+ +
+
+
+
+
+ +

TimerEditor constructor +

+ +
+ + TimerEditor() +
+ + + + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/TimerEditor/build.html b/docs/widgets/TimerEditor/build.html new file mode 100644 index 0000000000..fbacb331e6 --- /dev/null +++ b/docs/widgets/TimerEditor/build.html @@ -0,0 +1,155 @@ + + + + + + + + build method - TimerEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. TimerBuilder model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, TimerBuilder model) => AlertDialog(
+    title: const Text("Start a timer"),
+    content: Column(
+      mainAxisSize: MainAxisSize.min,
+      children: [
+        SizedBox(
+          height: 50,
+          width: double.infinity,
+          child: TextField(
+            controller: model.nameController,
+            onChanged: model.update,
+            decoration: const InputDecoration(hintText: "Timer Name"),
+          ),
+        ),
+        SizedBox(
+          height: 50,
+          width: double.infinity,
+          child: TextField(
+            onChanged: model.duration.update,
+            decoration: const InputDecoration(hintText: "Number of Minutes"),
+            inputFormatters: [FilteringTextInputFormatter.allow(RegExp(r"\d"))],
+          ),
+        ),
+      ],
+    ),
+    actions: [
+      TextButton(child: const Text("Cancel"), onPressed: () => Navigator.of(context).pop()),
+      ElevatedButton(
+        onPressed: model.isValid ? () { model.start(); Navigator.of(context).pop(); } : null,
+        child: const Text("Save"),
+      ),
+    ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/TimerEditor/createModel.html b/docs/widgets/TimerEditor/createModel.html new file mode 100644 index 0000000000..07ba5b0d59 --- /dev/null +++ b/docs/widgets/TimerEditor/createModel.html @@ -0,0 +1,121 @@ + + + + + + + + createModel method - TimerEditor class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createModel
+ +
+ +
+
+
+
+
+ +

createModel method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+TimerBuilder +createModel() + +
override
+ +
+ +
+

A function to create or find the model. This function will only be called once.

+
+ + + +
+

Implementation

+
@override
+TimerBuilder createModel() => TimerBuilder();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/TimerWidget-class-sidebar.html b/docs/widgets/TimerWidget-class-sidebar.html new file mode 100644 index 0000000000..64b31c1036 --- /dev/null +++ b/docs/widgets/TimerWidget-class-sidebar.html @@ -0,0 +1,41 @@ +
    + +
  1. Constructors
  2. +
  3. TimerWidget
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. getStyle
  34. +
  35. noSuchMethod
  36. +
  37. toDiagnosticsNode
  38. +
  39. toString
  40. +
  41. toStringDeep
  42. +
  43. toStringShallow
  44. +
  45. toStringShort
  46. + +
  47. Operators
  48. +
  49. operator ==
  50. + + + + + + +
diff --git a/docs/widgets/TimerWidget-class.html b/docs/widgets/TimerWidget-class.html new file mode 100644 index 0000000000..1fcef1093c --- /dev/null +++ b/docs/widgets/TimerWidget-class.html @@ -0,0 +1,424 @@ + + + + + + + + TimerWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TimerWidget
+ +
+ +
+
+
+
+
+ +

TimerWidget class + +

+ + +
+

A widget to view timer +Can also stop and start timer

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ TimerWidget() +
+
+ Creates a new Timer widget +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + MissionTimer + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, MissionTimer model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + MissionTimer + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<MissionTimer> oldWidget, MissionTimer model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ getStyle(BuildContext context, MissionTimer model) + TextStyle + + + +
+
+ Gets the text style for the timer. + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/TimerWidget/TimerWidget.html b/docs/widgets/TimerWidget/TimerWidget.html new file mode 100644 index 0000000000..5605fa83a1 --- /dev/null +++ b/docs/widgets/TimerWidget/TimerWidget.html @@ -0,0 +1,111 @@ + + + + + + + + TimerWidget constructor - TimerWidget - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
TimerWidget
+ +
+ +
+
+
+
+
+ +

TimerWidget constructor +

+ +
+ + TimerWidget() +
+ +
+

Creates a new Timer widget

+
+ + + +
+

Implementation

+
TimerWidget() : super(models.home.mission);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/TimerWidget/build.html b/docs/widgets/TimerWidget/build.html new file mode 100644 index 0000000000..356809b37b --- /dev/null +++ b/docs/widgets/TimerWidget/build.html @@ -0,0 +1,151 @@ + + + + + + + + build method - TimerWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. MissionTimer model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, MissionTimer model) => model.title == null
+    ? Container()
+    : Row(
+      mainAxisAlignment: MainAxisAlignment.center,
+      children: [
+        Text("${model.title}: ",
+          style: context.textTheme.headlineSmall!.copyWith(color: context.colorScheme.onPrimary),
+        ),
+        const SizedBox(width: 4),
+        AnimatedScale(
+          scale: (model.underMin) && (model.timeLeft.inSeconds.isEven) ? 1.2 : 1,
+          duration: const Duration(milliseconds: 750),
+          child: Text(
+            model.timeLeft.toString().split(".").first.padLeft(8, "0"),
+            style: getStyle(context, model),
+          ),
+        ),
+        const SizedBox(width: 8),
+        ElevatedButton(
+          onPressed: model.isPaused ? model.resume : model.pause,
+          child: model.isPaused ? const Text("Resume") : const Text("Pause"),
+        ),
+        const SizedBox(width: 8),
+        ElevatedButton(
+          onPressed: model.cancel,
+          child: const Text("Cancel"),
+        ),
+      ],
+    );
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/TimerWidget/getStyle.html b/docs/widgets/TimerWidget/getStyle.html new file mode 100644 index 0000000000..fba47e2d6b --- /dev/null +++ b/docs/widgets/TimerWidget/getStyle.html @@ -0,0 +1,122 @@ + + + + + + + + getStyle method - TimerWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
getStyle
+ +
+ +
+
+
+
+
+ +

getStyle method +

+ +
+ +TextStyle +getStyle(
  1. BuildContext context,
  2. +
  3. MissionTimer model
  4. +
) + + + +
+ +
+

Gets the text style for the timer.

+
+ + + +
+

Implementation

+
TextStyle getStyle(BuildContext context, MissionTimer model) => model.underMin
+  ? context.textTheme.headlineSmall!.copyWith(
+    color: context.colorScheme.error,
+    fontWeight: FontWeight.bold,
+  )
+  : context.textTheme.headlineSmall!.copyWith(color: context.colorScheme.onPrimary);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeed-class-sidebar.html b/docs/widgets/VideoFeed-class-sidebar.html new file mode 100644 index 0000000000..3ace917a99 --- /dev/null +++ b/docs/widgets/VideoFeed-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. VideoFeed
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. index
  10. +
  11. key
  12. +
  13. name
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. createElement
  20. +
  21. createState
  22. +
  23. debugDescribeChildren
  24. +
  25. debugFillProperties
  26. +
  27. noSuchMethod
  28. +
  29. toDiagnosticsNode
  30. +
  31. toString
  32. +
  33. toStringDeep
  34. +
  35. toStringShallow
  36. +
  37. toStringShort
  38. + +
  39. Operators
  40. +
  41. operator ==
  42. + + + + + + +
diff --git a/docs/widgets/VideoFeed-class.html b/docs/widgets/VideoFeed-class.html new file mode 100644 index 0000000000..0729858291 --- /dev/null +++ b/docs/widgets/VideoFeed-class.html @@ -0,0 +1,370 @@ + + + + + + + + VideoFeed class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoFeed
+ +
+ +
+
+
+
+
+ +

VideoFeed class + +

+ + +
+

Displays frames of a video feed.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ VideoFeed({required CameraName name, required int index}) +
+
+ Displays a video feed for the given camera. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ The index of this view. +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ name + CameraName + + +
+
+ The feed to show in this widget. +
final
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createState() + VideoFeedState + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
override
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeed/VideoFeed.html b/docs/widgets/VideoFeed/VideoFeed.html new file mode 100644 index 0000000000..130916cc2c --- /dev/null +++ b/docs/widgets/VideoFeed/VideoFeed.html @@ -0,0 +1,113 @@ + + + + + + + + VideoFeed constructor - VideoFeed - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoFeed
+ +
+ +
+
+
+
+
+ +

VideoFeed constructor +

+ +
+ const + VideoFeed({
  1. required CameraName name,
  2. +
  3. required int index,
  4. +
}) +
+ +
+

Displays a video feed for the given camera.

+
+ + + +
+

Implementation

+
const VideoFeed({required this.name, required this.index});
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeed/createState.html b/docs/widgets/VideoFeed/createState.html new file mode 100644 index 0000000000..cac8a7e217 --- /dev/null +++ b/docs/widgets/VideoFeed/createState.html @@ -0,0 +1,133 @@ + + + + + + + + createState method - VideoFeed class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createState
+ +
+ +
+
+
+
+
+ +

createState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+VideoFeedState +createState() + +
override
+ +
+ +
+

Creates the mutable state for this widget at a given location in the tree.

+

Subclasses should override this method to return a newly created +instance of their associated State subclass:

+
@override
+State<SomeWidget> createState() => _SomeWidgetState();
+
+

The framework can call this method multiple times over the lifetime of +a StatefulWidget. For example, if the widget is inserted into the tree +in multiple locations, the framework will create a separate State object +for each location. Similarly, if the widget is removed from the tree and +later inserted into the tree again, the framework will call createState +again to create a fresh State object, simplifying the lifecycle of +State objects.

+
+ + + +
+

Implementation

+
@override
+VideoFeedState createState() => VideoFeedState();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeed/index.html b/docs/widgets/VideoFeed/index.html new file mode 100644 index 0000000000..3af2bcb1cd --- /dev/null +++ b/docs/widgets/VideoFeed/index.html @@ -0,0 +1,115 @@ + + + + + + + + index property - VideoFeed class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+ +

index property +

+ + +
+ + int + index +
final
+ +
+ +
+

The index of this view.

+
+ + +
+

Implementation

+
final int index;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeed/name.html b/docs/widgets/VideoFeed/name.html new file mode 100644 index 0000000000..9d3adc143a --- /dev/null +++ b/docs/widgets/VideoFeed/name.html @@ -0,0 +1,115 @@ + + + + + + + + name property - VideoFeed class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
name
+ +
+ +
+
+
+
+
+ +

name property +

+ + +
+ + CameraName + name +
final
+ +
+ +
+

The feed to show in this widget.

+
+ + +
+

Implementation

+
final CameraName name;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState-class-sidebar.html b/docs/widgets/VideoFeedState-class-sidebar.html new file mode 100644 index 0000000000..037c076f9f --- /dev/null +++ b/docs/widgets/VideoFeedState-class-sidebar.html @@ -0,0 +1,53 @@ +
    + +
  1. Constructors
  2. +
  3. VideoFeedState
  4. + + + +
  5. + Properties +
  6. +
  7. brightness
  8. +
  9. context
  10. +
  11. data
  12. +
  13. errorMessage
  14. +
  15. focus
  16. +
  17. hashCode
  18. +
  19. imageLoader
  20. +
  21. isOpened
  22. +
  23. isReady
  24. +
  25. mounted
  26. +
  27. pan
  28. +
  29. runtimeType
  30. +
  31. widget
  32. +
  33. zoom
  34. + +
  35. Methods
  36. +
  37. activate
  38. +
  39. build
  40. +
  41. buildChild
  42. +
  43. deactivate
  44. +
  45. debugFillProperties
  46. +
  47. didChangeDependencies
  48. +
  49. didUpdateWidget
  50. +
  51. dispose
  52. +
  53. initState
  54. +
  55. noSuchMethod
  56. +
  57. reassemble
  58. +
  59. setState
  60. +
  61. toDiagnosticsNode
  62. +
  63. toggleSettings
  64. +
  65. toString
  66. +
  67. toStringShort
  68. +
  69. updateImage
  70. + +
  71. Operators
  72. +
  73. operator ==
  74. + + + + + + +
diff --git a/docs/widgets/VideoFeedState-class.html b/docs/widgets/VideoFeedState-class.html new file mode 100644 index 0000000000..7f6006e36c --- /dev/null +++ b/docs/widgets/VideoFeedState-class.html @@ -0,0 +1,573 @@ + + + + + + + + VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoFeedState
+ +
+ +
+
+
+
+
+ +

VideoFeedState class + +

+ + +
+

The logic for updating a VideoFeed.

+

This widget listens to VideoModel.frameUpdater to sync its framerate with other VideoFeeds. +On every update, this widget grabs the frame from VideoData.frame, decodes it, renders it, +then replaces the old frame. The key is that all the image processing logic is done off-screen +while the old frame remains on-screen. When the frame is processed, it quickly replaces the old +frame. That way, the user sees one continuous video instead of a flickering image.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ VideoFeedState() +
+
+ +
+
+
+ +
+

Properties

+
+
+ brightness + ↔ double + + +
+
+ Value for brightness +
getter/setter pair
+ +
+ +
+ context + BuildContext + + +
+
+ The location in the tree where this widget builds. +
no setterinherited
+ +
+ +
+ data + VideoData + + +
+
+ The data being streamed. +
getter/setter pair
+ +
+ +
+ errorMessage + → String + + +
+
+ Displays an error message describing why image == null. +
no setter
+ +
+ +
+ focus + ↔ double + + +
+
+ Value for focus +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ imageLoader + ImageLoader + + +
+
+ A helper class responsible for managing and loading an image. +
final
+ +
+ +
+ isOpened + ↔ bool + + +
+
+ Checks if the current slider for video camera is open +
getter/setter pair
+ +
+ +
+ isReady + → bool + + +
+
+ Whether there is a frame ready to display. +
no setter
+ +
+ +
+ mounted + → bool + + +
+
+ Whether this State object is currently in a tree. +
no setterinherited
+ +
+ +
+ pan + ↔ double + + +
+
+ Value for pan +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ widget + VideoFeed + + +
+
+ The current configuration. +
no setterinherited
+ +
+ +
+ zoom + ↔ double + + +
+
+ Value for zoom +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ activate() + → void + + + +
+
+ Called when this object is reinserted into the tree after having been +removed via deactivate. +
inherited
+ +
+ +
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ buildChild(BuildContext context) + Widget + + + +
+
+ Builds the inside of the video feed. Either a video frame or an error message. + + +
+ +
+ deactivate() + → void + + + +
+
+ Called when this object is removed from the tree. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didChangeDependencies() + → void + + + +
+
+ Called when a dependency of this State object changes. +
inherited
+ +
+ +
+ didUpdateWidget(covariant VideoFeed oldWidget) + → void + + + +
+
+ Called whenever the widget configuration changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Called when this object is removed from the tree permanently. +
override
+ +
+ +
+ initState() + → void + + + +
+
+ Called when this object is inserted into the tree. +
override
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ reassemble() + → void + + + +
+
+ Called whenever the application is reassembled during debugging, for +example during hot reload. +
inherited
+ +
+ +
+ setState(VoidCallback fn) + → void + + + +
+
+ Notify the framework that the internal state of this object has changed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toggleSettings() + → void + + + +
+
+ Opens or closes the settings panel. + + +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A brief description of this object, usually just the runtimeType and the +hashCode. +
inherited
+ +
+ +
+ updateImage() + → Future<void> + + + +
+
+ Grabs the new frame, renders it, and replaces the old frame. + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/VideoFeedState.html b/docs/widgets/VideoFeedState/VideoFeedState.html new file mode 100644 index 0000000000..98c1ec1af5 --- /dev/null +++ b/docs/widgets/VideoFeedState/VideoFeedState.html @@ -0,0 +1,104 @@ + + + + + + + + VideoFeedState constructor - VideoFeedState - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoFeedState
+ +
+ +
+
+
+
+
+ +

VideoFeedState constructor +

+ +
+ + VideoFeedState() +
+ + + + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/brightness.html b/docs/widgets/VideoFeedState/brightness.html new file mode 100644 index 0000000000..986189860c --- /dev/null +++ b/docs/widgets/VideoFeedState/brightness.html @@ -0,0 +1,115 @@ + + + + + + + + brightness property - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
brightness
+ +
+ +
+
+
+
+
+ +

brightness property +

+ + +
+ + double + brightness +
getter/setter pair
+ +
+ +
+

Value for brightness

+
+ + +
+

Implementation

+
double brightness = 0;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/build.html b/docs/widgets/VideoFeedState/build.html new file mode 100644 index 0000000000..0b8b408e92 --- /dev/null +++ b/docs/widgets/VideoFeedState/build.html @@ -0,0 +1,254 @@ + + + + + + + + build method - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method in a number of different situations. For +example:

+ +

This method can potentially be called in every frame and should not have +any side effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor, the +given BuildContext, and the internal state of this State object.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. The +BuildContext argument is always the same as the context property of +this State object and will remain the same for the lifetime of this +object. The BuildContext argument is provided redundantly here so that +this method matches the signature for a WidgetBuilder.

+

Design discussion

+

Why is the build method on State, and not StatefulWidget?

+

Putting a Widget build(BuildContext context) method on State rather +than putting a Widget build(BuildContext context, State state) method +on StatefulWidget gives developers more flexibility when subclassing +StatefulWidget.

+

For example, AnimatedWidget is a subclass of StatefulWidget that +introduces an abstract Widget build(BuildContext context) method for its +subclasses to implement. If StatefulWidget already had a build method +that took a State argument, AnimatedWidget would be forced to provide +its State object to subclasses even though its State object is an +internal implementation detail of AnimatedWidget.

+

Conceptually, StatelessWidget could also be implemented as a subclass of +StatefulWidget in a similar manner. If the build method were on +StatefulWidget rather than State, that would not be possible anymore.

+

Putting the build function on State rather than StatefulWidget also +helps avoid a category of bugs related to closures implicitly capturing +this. If you defined a closure in a build function on a +StatefulWidget, that closure would implicitly capture this, which is +the current widget instance, and would have the (immutable) fields of that +instance in scope:

+
// (this is not valid Flutter code)
+class MyButton extends StatefulWidgetX {
+  MyButton({super.key, required this.color});
+
+  final Color color;
+
+  @override
+  Widget build(BuildContext context, State state) {
+    return SpecialWidget(
+      handler: () { print('color: $color'); },
+    );
+  }
+}
+
+

For example, suppose the parent builds MyButton with color being blue, +the $color in the print function refers to blue, as expected. Now, +suppose the parent rebuilds MyButton with green. The closure created by +the first build still implicitly refers to the original widget and the +$color still prints blue even through the widget has been updated to +green; should that closure outlive its widget, it would print outdated +information.

+

In contrast, with the build function on the State object, closures +created during build implicitly capture the State instance instead of +the widget instance:

+
class MyButton extends StatefulWidget {
+  const MyButton({super.key, this.color = Colors.teal});
+
+  final Color color;
+  // ...
+}
+
+class MyButtonState extends State<MyButton> {
+  // ...
+  @override
+  Widget build(BuildContext context) {
+    return SpecialWidget(
+      handler: () { print('color: ${widget.color}'); },
+    );
+  }
+}
+
+

Now when the parent rebuilds MyButton with green, the closure created by +the first build still refers to State object, which is preserved across +rebuilds, but the framework has updated that State object's widget +property to refer to the new MyButton instance and ${widget.color} +prints green, as expected.

+

See also:

+
    +
  • StatefulWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => Container(
+  color: context.colorScheme.brightness == Brightness.light
+    ? Colors.blueGrey
+    : Colors.blueGrey[700],
+  child: Column(
+    children: [
+      Row(
+        children: [
+          IconButton(
+            onPressed: toggleSettings,
+            icon: const Icon(Icons.tune),
+          ),
+          Text(data.details.name.humanName),
+          const Spacer(),
+          Text("${models.video.networkFps[data.details.name]!} FPS"),
+          if (data.hasFrame())
+            IconButton(
+              icon: const Icon(Icons.add_a_photo),
+              onPressed: () => models.video.saveFrame(widget.name),
+            ),
+          IconButton(
+            icon: const Icon(Icons.settings),
+            onPressed: () async => showDialog(
+              context: context,
+              builder: (_) => CameraDetailsEditor(data),
+            ),
+          ),
+          ViewsSelector(index: widget.index),
+        ],
+      ),
+      Expanded(child: buildChild(context)),
+    ],
+  ),
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/buildChild.html b/docs/widgets/VideoFeedState/buildChild.html new file mode 100644 index 0000000000..f7d789bafd --- /dev/null +++ b/docs/widgets/VideoFeedState/buildChild.html @@ -0,0 +1,131 @@ + + + + + + + + buildChild method - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
buildChild
+ +
+ +
+
+
+
+
+ +

buildChild method +

+ +
+ +Widget +buildChild(
  1. BuildContext context
  2. +
) + + + +
+ +
+

Builds the inside of the video feed. Either a video frame or an error message.

+
+ + + +
+

Implementation

+
Widget buildChild(BuildContext context) => isReady
+  ? Row(
+    children: [
+      AnimatedContainer(
+        duration: const Duration(milliseconds: 250),
+        height: double.infinity,
+        width: isOpened ? 200 : 0,
+        child: VideoSettingsWidget(
+          id: data.id,
+          details: data.details,
+        ),
+      ),
+      Expanded(child: RawImage(image: imageLoader.image, fit: BoxFit.contain)),
+    ],
+  )
+  : Center(child: Text(errorMessage, textAlign: TextAlign.center));
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/data.html b/docs/widgets/VideoFeedState/data.html new file mode 100644 index 0000000000..986cef48e5 --- /dev/null +++ b/docs/widgets/VideoFeedState/data.html @@ -0,0 +1,115 @@ + + + + + + + + data property - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
data
+ +
+ +
+
+
+
+
+ +

data property +

+ + +
+ + VideoData + data +
getter/setter pair
+ +
+ +
+

The data being streamed.

+
+ + +
+

Implementation

+
late VideoData data;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/dispose.html b/docs/widgets/VideoFeedState/dispose.html new file mode 100644 index 0000000000..63bfc6f759 --- /dev/null +++ b/docs/widgets/VideoFeedState/dispose.html @@ -0,0 +1,174 @@ + + + + + + + + dispose method - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
dispose
+ +
+ +
+
+
+
+
+ +

dispose method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +dispose() + +
override
+ +
+ +
+

Called when this object is removed from the tree permanently.

+

The framework calls this method when this State object will never +build again. After the framework calls dispose, the State object is +considered unmounted and the mounted property is false. It is an error +to call setState at this point. This stage of the lifecycle is terminal: +there is no way to remount a State object that has been disposed.

+

Subclasses should override this method to release any resources retained +by this object (e.g., stop any active animations).

+

If a State's build method depends on an object that can itself +change state, for example a ChangeNotifier or Stream, or some +other object to which one can subscribe to receive notifications, then +be sure to subscribe and unsubscribe properly in initState, +didUpdateWidget, and dispose:

+
    +
  • In initState, subscribe to the object.
  • +
  • In didUpdateWidget unsubscribe from the old object and subscribe +to the new one if the updated widget configuration requires +replacing the object.
  • +
  • In dispose, unsubscribe from the object.
  • +
+

Implementations of this method should end with a call to the inherited +method, as in super.dispose().

+

Caveats

+

This method is not invoked at times where a developer might otherwise +expect it, such as application shutdown or dismissal via platform +native methods.

+

Application shutdown

+

There is no way to predict when application shutdown will happen. For +example, a user's battery could catch fire, or the user could drop the +device into a swimming pool, or the operating system could unilaterally +terminate the application process due to memory pressure.

+

Applications are responsible for ensuring that they are well-behaved +even in the face of a rapid unscheduled termination.

+

To artificially cause the entire widget tree to be disposed, consider +calling runApp with a widget such as SizedBox.shrink.

+

To listen for platform shutdown messages (and other lifecycle changes), +consider the AppLifecycleListener API.

+

Dismissing Flutter UI via platform native methods

+

An application may have both Flutter and non-Flutter UI in it. If the +application calls non-Flutter methods to remove Flutter based UI such as +platform native API to manipulate the platform native navigation stack, +the framework does not know if the developer intends to eagerly free +resources or not. The widget tree remains mounted and ready to render +as soon as it is displayed again.

+

See the method used to bootstrap the app (e.g. runApp or runWidget) +for suggestions on how to release resources more eagerly.

+

See also:

+ +
+ + + +
+

Implementation

+
@override
+void dispose() {
+	models.video.removeListener(updateImage);
+	imageLoader.dispose();
+	super.dispose();
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/errorMessage.html b/docs/widgets/VideoFeedState/errorMessage.html new file mode 100644 index 0000000000..0d27a573b5 --- /dev/null +++ b/docs/widgets/VideoFeedState/errorMessage.html @@ -0,0 +1,146 @@ + + + + + + + + errorMessage property - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
errorMessage
+ +
+ +
+
+
+
+
+ +

errorMessage property +

+ + + + + +
+
+ + String + get + errorMessage + + +
+ +
+

Displays an error message describing why image == null.

+
+ + +
+

Implementation

+
String get errorMessage {
+  if (!models.sockets.video.isConnected) return "The video program is not connected";
+  switch (data.details.status) {
+    case CameraStatus.CAMERA_LOADING:
+      return "Camera is loading...";
+    case CameraStatus.CAMERA_STATUS_UNDEFINED:
+      return "Unknown error";
+    case CameraStatus.CAMERA_DISCONNECTED:
+      return "Camera is not connected";
+    case CameraStatus.CAMERA_DISABLED:
+      return "Camera is disabled.\nClick the settings icon to enabled it.";
+    case CameraStatus.CAMERA_NOT_RESPONDING:
+      return "Camera is not responding";
+    case CameraStatus.FRAME_TOO_LARGE:
+      return "Camera is reading too much detail\nReduce the quality or resolution";
+    case CameraStatus.CAMERA_HAS_NO_NAME:
+      return "Camera has no name\nChange lib/constants.py on the video Pi";
+    case CameraStatus.CAMERA_ENABLED:
+      if (data.hasFrame()) {
+        return "Loading feed...";
+      } else {
+        return "Starting camera...";
+      }
+  }
+  return "Unknown error";
+}
+
+ +
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/focus.html b/docs/widgets/VideoFeedState/focus.html new file mode 100644 index 0000000000..51b57c6e44 --- /dev/null +++ b/docs/widgets/VideoFeedState/focus.html @@ -0,0 +1,115 @@ + + + + + + + + focus property - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
focus
+ +
+ +
+
+
+
+
+ +

focus property +

+ + +
+ + double + focus +
getter/setter pair
+ +
+ +
+

Value for focus

+
+ + +
+

Implementation

+
double focus = 0;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/imageLoader.html b/docs/widgets/VideoFeedState/imageLoader.html new file mode 100644 index 0000000000..595128ced5 --- /dev/null +++ b/docs/widgets/VideoFeedState/imageLoader.html @@ -0,0 +1,115 @@ + + + + + + + + imageLoader property - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
imageLoader
+ +
+ +
+
+
+
+
+ +

imageLoader property +

+ + +
+ + ImageLoader + imageLoader +
final
+ +
+ +
+

A helper class responsible for managing and loading an image.

+
+ + +
+

Implementation

+
final imageLoader = ImageLoader();
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/initState.html b/docs/widgets/VideoFeedState/initState.html new file mode 100644 index 0000000000..a75927aedf --- /dev/null +++ b/docs/widgets/VideoFeedState/initState.html @@ -0,0 +1,148 @@ + + + + + + + + initState method - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
initState
+ +
+ +
+
+
+
+
+ +

initState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+void +initState() + +
override
+ +
+ +
+

Called when this object is inserted into the tree.

+

The framework will call this method exactly once for each State object +it creates.

+

Override this method to perform initialization that depends on the +location at which this object was inserted into the tree (i.e., context) +or on the widget used to configure this object (i.e., widget).

+

If a State's build method depends on an object that can itself +change state, for example a ChangeNotifier or Stream, or some +other object to which one can subscribe to receive notifications, then +be sure to subscribe and unsubscribe properly in initState, +didUpdateWidget, and dispose:

+
    +
  • In initState, subscribe to the object.
  • +
  • In didUpdateWidget unsubscribe from the old object and subscribe +to the new one if the updated widget configuration requires +replacing the object.
  • +
  • In dispose, unsubscribe from the object.
  • +
+

You should not use BuildContext.dependOnInheritedWidgetOfExactType from this +method. However, didChangeDependencies will be called immediately +following this method, and BuildContext.dependOnInheritedWidgetOfExactType can +be used there.

+

Implementations of this method should start with a call to the inherited +method, as in super.initState().

+
+ + + +
+

Implementation

+
@override
+void initState() {
+	super.initState();
+	data = models.video.feeds[widget.name]!;
+	models.video.addListener(updateImage);
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/isOpened.html b/docs/widgets/VideoFeedState/isOpened.html new file mode 100644 index 0000000000..b514d17ccf --- /dev/null +++ b/docs/widgets/VideoFeedState/isOpened.html @@ -0,0 +1,115 @@ + + + + + + + + isOpened property - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isOpened
+ +
+ +
+
+
+
+
+ +

isOpened property +

+ + +
+ + bool + isOpened +
getter/setter pair
+ +
+ +
+

Checks if the current slider for video camera is open

+
+ + +
+

Implementation

+
bool isOpened = false;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/isReady.html b/docs/widgets/VideoFeedState/isReady.html new file mode 100644 index 0000000000..c636c70e60 --- /dev/null +++ b/docs/widgets/VideoFeedState/isReady.html @@ -0,0 +1,123 @@ + + + + + + + + isReady property - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isReady
+ +
+ +
+
+
+
+
+ +

isReady property +

+ + + + + +
+
+ + bool + get + isReady + + +
+ +
+

Whether there is a frame ready to display.

+
+ + +
+

Implementation

+
bool get isReady => models.sockets.video.isConnected
+  && imageLoader.hasImage
+  && data.details.status == CameraStatus.CAMERA_ENABLED;
+
+ +
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/pan.html b/docs/widgets/VideoFeedState/pan.html new file mode 100644 index 0000000000..2911ff6d5e --- /dev/null +++ b/docs/widgets/VideoFeedState/pan.html @@ -0,0 +1,115 @@ + + + + + + + + pan property - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pan
+ +
+ +
+
+
+
+
+ +

pan property +

+ + +
+ + double + pan +
getter/setter pair
+ +
+ +
+

Value for pan

+
+ + +
+

Implementation

+
double pan = 0;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/toggleSettings.html b/docs/widgets/VideoFeedState/toggleSettings.html new file mode 100644 index 0000000000..0ae4b0b812 --- /dev/null +++ b/docs/widgets/VideoFeedState/toggleSettings.html @@ -0,0 +1,115 @@ + + + + + + + + toggleSettings method - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
toggleSettings
+ +
+ +
+
+
+
+
+ +

toggleSettings method +

+ +
+ +void +toggleSettings() + + + +
+ +
+

Opens or closes the settings panel.

+
+ + + +
+

Implementation

+
void toggleSettings() => setState(() => isOpened = !isOpened);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/updateImage.html b/docs/widgets/VideoFeedState/updateImage.html new file mode 100644 index 0000000000..392b9b97ac --- /dev/null +++ b/docs/widgets/VideoFeedState/updateImage.html @@ -0,0 +1,124 @@ + + + + + + + + updateImage method - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
updateImage
+ +
+ +
+
+
+
+
+ +

updateImage method +

+ +
+ +Future<void> +updateImage() + + + +
+ +
+

Grabs the new frame, renders it, and replaces the old frame.

+
+ + + +
+

Implementation

+
Future<void> updateImage() async {
+	data = models.video.feeds[widget.name]!;
+	if (data.details.status != CameraStatus.CAMERA_ENABLED) {
+	setState(() => imageLoader.image = null);
+	}
+	setState(() {});
+	if (!data.hasFrame() || imageLoader.isLoading) return;
+	await imageLoader.load(data.frame);
+	if (mounted) setState(() {});
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoFeedState/zoom.html b/docs/widgets/VideoFeedState/zoom.html new file mode 100644 index 0000000000..469664da58 --- /dev/null +++ b/docs/widgets/VideoFeedState/zoom.html @@ -0,0 +1,115 @@ + + + + + + + + zoom property - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
zoom
+ +
+ +
+
+
+
+
+ +

zoom property +

+ + +
+ + double + zoom +
getter/setter pair
+ +
+ +
+

Value for zoom

+
+ + +
+

Implementation

+
double zoom = 0;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsState-class-sidebar.html b/docs/widgets/VideoSettingsState-class-sidebar.html new file mode 100644 index 0000000000..5142dbd60c --- /dev/null +++ b/docs/widgets/VideoSettingsState-class-sidebar.html @@ -0,0 +1,46 @@ +
    + +
  1. Constructors
  2. +
  3. VideoSettingsState
  4. + + + +
  5. + Properties +
  6. +
  7. autofocus
  8. +
  9. context
  10. +
  11. focus
  12. +
  13. hashCode
  14. +
  15. mounted
  16. +
  17. pan
  18. +
  19. runtimeType
  20. +
  21. tilt
  22. +
  23. widget
  24. +
  25. zoom
  26. + +
  27. Methods
  28. +
  29. activate
  30. +
  31. build
  32. +
  33. deactivate
  34. +
  35. debugFillProperties
  36. +
  37. didChangeDependencies
  38. +
  39. didUpdateWidget
  40. +
  41. dispose
  42. +
  43. initState
  44. +
  45. noSuchMethod
  46. +
  47. reassemble
  48. +
  49. setState
  50. +
  51. toDiagnosticsNode
  52. +
  53. toString
  54. +
  55. toStringShort
  56. + +
  57. Operators
  58. +
  59. operator ==
  60. + + + + + + +
diff --git a/docs/widgets/VideoSettingsState-class.html b/docs/widgets/VideoSettingsState-class.html new file mode 100644 index 0000000000..c557bbd1b4 --- /dev/null +++ b/docs/widgets/VideoSettingsState-class.html @@ -0,0 +1,481 @@ + + + + + + + + VideoSettingsState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoSettingsState
+ +
+ +
+
+
+
+
+ +

VideoSettingsState class + +

+ + +
+

A state for VideoSettingsWidget.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ VideoSettingsState() +
+
+ +
+
+
+ +
+

Properties

+
+
+ autofocus + ↔ bool + + +
+
+ Whether the camera should autofocus. +
getter/setter pair
+ +
+ +
+ context + BuildContext + + +
+
+ The location in the tree where this widget builds. +
no setterinherited
+ +
+ +
+ focus + ↔ double + + +
+
+ The focus level, if autofocus is disabled. +
getter/setter pair
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ mounted + → bool + + +
+
+ Whether this State object is currently in a tree. +
no setterinherited
+ +
+ +
+ pan + ↔ double + + +
+
+ The pan level, when zoomed in. +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ tilt + ↔ double + + +
+
+ The tilt level, when zoomed in. +
getter/setter pair
+ +
+ +
+ widget + VideoSettingsWidget + + +
+
+ The current configuration. +
no setterinherited
+ +
+ +
+ zoom + ↔ double + + +
+
+ The zoom level. Camera-specific. +
getter/setter pair
+ +
+ +
+
+ +
+

Methods

+
+
+ activate() + → void + + + +
+
+ Called when this object is reinserted into the tree after having been +removed via deactivate. +
inherited
+ +
+ +
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ deactivate() + → void + + + +
+
+ Called when this object is removed from the tree. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didChangeDependencies() + → void + + + +
+
+ Called when a dependency of this State object changes. +
inherited
+ +
+ +
+ didUpdateWidget(covariant VideoSettingsWidget oldWidget) + → void + + + +
+
+ Called whenever the widget configuration changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Called when this object is removed from the tree permanently. +
inherited
+ +
+ +
+ initState() + → void + + + +
+
+ Called when this object is inserted into the tree. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ reassemble() + → void + + + +
+
+ Called whenever the application is reassembled during debugging, for +example during hot reload. +
inherited
+ +
+ +
+ setState(VoidCallback fn) + → void + + + +
+
+ Notify the framework that the internal state of this object has changed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A brief description of this object, usually just the runtimeType and the +hashCode. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsState/VideoSettingsState.html b/docs/widgets/VideoSettingsState/VideoSettingsState.html new file mode 100644 index 0000000000..71a361f120 --- /dev/null +++ b/docs/widgets/VideoSettingsState/VideoSettingsState.html @@ -0,0 +1,104 @@ + + + + + + + + VideoSettingsState constructor - VideoSettingsState - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoSettingsState
+ +
+ +
+
+
+
+
+ +

VideoSettingsState constructor +

+ +
+ + VideoSettingsState() +
+ + + + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsState/autofocus.html b/docs/widgets/VideoSettingsState/autofocus.html new file mode 100644 index 0000000000..e39c95c3a0 --- /dev/null +++ b/docs/widgets/VideoSettingsState/autofocus.html @@ -0,0 +1,115 @@ + + + + + + + + autofocus property - VideoSettingsState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
autofocus
+ +
+ +
+
+
+
+
+ +

autofocus property +

+ + +
+ + bool + autofocus +
getter/setter pair
+ +
+ +
+

Whether the camera should autofocus.

+
+ + +
+

Implementation

+
bool autofocus = true;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsState/build.html b/docs/widgets/VideoSettingsState/build.html new file mode 100644 index 0000000000..c40005464c --- /dev/null +++ b/docs/widgets/VideoSettingsState/build.html @@ -0,0 +1,292 @@ + + + + + + + + build method - VideoSettingsState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method in a number of different situations. For +example:

+ +

This method can potentially be called in every frame and should not have +any side effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor, the +given BuildContext, and the internal state of this State object.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. The +BuildContext argument is always the same as the context property of +this State object and will remain the same for the lifetime of this +object. The BuildContext argument is provided redundantly here so that +this method matches the signature for a WidgetBuilder.

+

Design discussion

+

Why is the build method on State, and not StatefulWidget?

+

Putting a Widget build(BuildContext context) method on State rather +than putting a Widget build(BuildContext context, State state) method +on StatefulWidget gives developers more flexibility when subclassing +StatefulWidget.

+

For example, AnimatedWidget is a subclass of StatefulWidget that +introduces an abstract Widget build(BuildContext context) method for its +subclasses to implement. If StatefulWidget already had a build method +that took a State argument, AnimatedWidget would be forced to provide +its State object to subclasses even though its State object is an +internal implementation detail of AnimatedWidget.

+

Conceptually, StatelessWidget could also be implemented as a subclass of +StatefulWidget in a similar manner. If the build method were on +StatefulWidget rather than State, that would not be possible anymore.

+

Putting the build function on State rather than StatefulWidget also +helps avoid a category of bugs related to closures implicitly capturing +this. If you defined a closure in a build function on a +StatefulWidget, that closure would implicitly capture this, which is +the current widget instance, and would have the (immutable) fields of that +instance in scope:

+
// (this is not valid Flutter code)
+class MyButton extends StatefulWidgetX {
+  MyButton({super.key, required this.color});
+
+  final Color color;
+
+  @override
+  Widget build(BuildContext context, State state) {
+    return SpecialWidget(
+      handler: () { print('color: $color'); },
+    );
+  }
+}
+
+

For example, suppose the parent builds MyButton with color being blue, +the $color in the print function refers to blue, as expected. Now, +suppose the parent rebuilds MyButton with green. The closure created by +the first build still implicitly refers to the original widget and the +$color still prints blue even through the widget has been updated to +green; should that closure outlive its widget, it would print outdated +information.

+

In contrast, with the build function on the State object, closures +created during build implicitly capture the State instance instead of +the widget instance:

+
class MyButton extends StatefulWidget {
+  const MyButton({super.key, this.color = Colors.teal});
+
+  final Color color;
+  // ...
+}
+
+class MyButtonState extends State<MyButton> {
+  // ...
+  @override
+  Widget build(BuildContext context) {
+    return SpecialWidget(
+      handler: () { print('color: ${widget.color}'); },
+    );
+  }
+}
+
+

Now when the parent rebuilds MyButton with green, the closure created by +the first build still refers to State object, which is preserved across +rebuilds, but the framework has updated that State object's widget +property to refer to the new MyButton instance and ${widget.color} +prints green, as expected.

+

See also:

+
    +
  • StatefulWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => ListView(
+    children: [
+		SliderSettings(
+			label: "Zoom",
+			value: zoom,
+			min: 100,
+			max: 800,
+			onChanged: (val) async {
+				setState(() => zoom = val);
+				await models.video.updateCamera(
+            verify: false,
+            widget.id,
+            CameraDetails(name: widget.details.name, zoom: val.round()),
+				);
+			},
+      ),
+		SliderSettings(
+			label: "Pan",
+			value: pan,
+			min: -180,
+			max: 180,
+			onChanged: (val) async {
+				setState(() => pan = val);
+				await models.video.updateCamera(
+            verify: false,
+				widget.id,
+				CameraDetails(name: widget.details.name, pan: val.round()),
+				);
+			},
+      ),
+		SliderSettings(
+			label: "Tilt",
+			value: tilt,
+			min: -180,
+			max: 180,
+			onChanged: (val) async {
+				setState(() => tilt = val);
+				await models.video.updateCamera(
+            verify: false,
+				widget.id,
+				CameraDetails(name: widget.details.name, tilt: val.round()),
+				);
+			},
+      ),
+		SliderSettings(
+			label: "Focus",
+			value: focus,
+			max: 255,
+			onChanged: (val) async {
+				setState(() => focus = val);
+				await models.video.updateCamera(
+            verify: false,
+				widget.id,
+				CameraDetails(name: widget.details.name, focus: val.round()),
+				);
+			},
+      ),
+		// Need to debug bool conversion to 1.0 and 2.0
+		SwitchListTile(
+        title: const Text("Autofocus"),
+			value: autofocus,
+			onChanged: (bool value) async {
+				setState(() => autofocus = value);
+				await models.video.updateCamera(
+            verify: false,
+            widget.id,
+            CameraDetails(name: widget.details.name, autofocus: autofocus),
+          );
+        },
+      ),
+    ],
+  );
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsState/focus.html b/docs/widgets/VideoSettingsState/focus.html new file mode 100644 index 0000000000..35bd91935b --- /dev/null +++ b/docs/widgets/VideoSettingsState/focus.html @@ -0,0 +1,115 @@ + + + + + + + + focus property - VideoSettingsState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
focus
+ +
+ +
+
+
+
+
+ +

focus property +

+ + +
+ + double + focus +
getter/setter pair
+ +
+ +
+

The focus level, if autofocus is disabled.

+
+ + +
+

Implementation

+
double focus = 0;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsState/pan.html b/docs/widgets/VideoSettingsState/pan.html new file mode 100644 index 0000000000..58925446d9 --- /dev/null +++ b/docs/widgets/VideoSettingsState/pan.html @@ -0,0 +1,115 @@ + + + + + + + + pan property - VideoSettingsState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
pan
+ +
+ +
+
+
+
+
+ +

pan property +

+ + +
+ + double + pan +
getter/setter pair
+ +
+ +
+

The pan level, when zoomed in.

+
+ + +
+

Implementation

+
double pan = 0;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsState/tilt.html b/docs/widgets/VideoSettingsState/tilt.html new file mode 100644 index 0000000000..707bb183a1 --- /dev/null +++ b/docs/widgets/VideoSettingsState/tilt.html @@ -0,0 +1,115 @@ + + + + + + + + tilt property - VideoSettingsState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
tilt
+ +
+ +
+
+
+
+
+ +

tilt property +

+ + +
+ + double + tilt +
getter/setter pair
+ +
+ +
+

The tilt level, when zoomed in.

+
+ + +
+

Implementation

+
double tilt = 0;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsState/zoom.html b/docs/widgets/VideoSettingsState/zoom.html new file mode 100644 index 0000000000..48d66332b5 --- /dev/null +++ b/docs/widgets/VideoSettingsState/zoom.html @@ -0,0 +1,115 @@ + + + + + + + + zoom property - VideoSettingsState class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
zoom
+ +
+ +
+
+
+
+
+ +

zoom property +

+ + +
+ + double + zoom +
getter/setter pair
+ +
+ +
+

The zoom level. Camera-specific.

+
+ + +
+

Implementation

+
double zoom = 100;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsWidget-class-sidebar.html b/docs/widgets/VideoSettingsWidget-class-sidebar.html new file mode 100644 index 0000000000..961febfa6c --- /dev/null +++ b/docs/widgets/VideoSettingsWidget-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. VideoSettingsWidget
  4. + + + +
  5. + Properties +
  6. +
  7. details
  8. +
  9. hashCode
  10. +
  11. id
  12. +
  13. key
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. createElement
  20. +
  21. createState
  22. +
  23. debugDescribeChildren
  24. +
  25. debugFillProperties
  26. +
  27. noSuchMethod
  28. +
  29. toDiagnosticsNode
  30. +
  31. toString
  32. +
  33. toStringDeep
  34. +
  35. toStringShallow
  36. +
  37. toStringShort
  38. + +
  39. Operators
  40. +
  41. operator ==
  42. + + + + + + +
diff --git a/docs/widgets/VideoSettingsWidget-class.html b/docs/widgets/VideoSettingsWidget-class.html new file mode 100644 index 0000000000..18ca9455de --- /dev/null +++ b/docs/widgets/VideoSettingsWidget-class.html @@ -0,0 +1,370 @@ + + + + + + + + VideoSettingsWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoSettingsWidget
+ +
+ +
+
+
+
+
+ +

VideoSettingsWidget class + +

+ + +
+

A widget to edit camera settings.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ VideoSettingsWidget({required CameraDetails details, required String id}) +
+
+ Creates the video settings widget. +
const
+
+
+
+ +
+

Properties

+
+
+ details + CameraDetails + + +
+
+ The details being sent to the camera. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ id + → String + + +
+
+ The ID of the camera being edited. +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createState() + VideoSettingsState + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
override
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsWidget/VideoSettingsWidget.html b/docs/widgets/VideoSettingsWidget/VideoSettingsWidget.html new file mode 100644 index 0000000000..efa4471e3e --- /dev/null +++ b/docs/widgets/VideoSettingsWidget/VideoSettingsWidget.html @@ -0,0 +1,116 @@ + + + + + + + + VideoSettingsWidget constructor - VideoSettingsWidget - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VideoSettingsWidget
+ +
+ +
+
+
+
+
+ +

VideoSettingsWidget constructor +

+ +
+ const + VideoSettingsWidget({
  1. required CameraDetails details,
  2. +
  3. required String id,
  4. +
}) +
+ +
+

Creates the video settings widget.

+
+ + + +
+

Implementation

+
const VideoSettingsWidget({
+  required this.details,
+  required this.id,
+});
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsWidget/createState.html b/docs/widgets/VideoSettingsWidget/createState.html new file mode 100644 index 0000000000..222b45f34c --- /dev/null +++ b/docs/widgets/VideoSettingsWidget/createState.html @@ -0,0 +1,133 @@ + + + + + + + + createState method - VideoSettingsWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
createState
+ +
+ +
+
+
+
+
+ +

createState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+VideoSettingsState +createState() + +
override
+ +
+ +
+

Creates the mutable state for this widget at a given location in the tree.

+

Subclasses should override this method to return a newly created +instance of their associated State subclass:

+
@override
+State<SomeWidget> createState() => _SomeWidgetState();
+
+

The framework can call this method multiple times over the lifetime of +a StatefulWidget. For example, if the widget is inserted into the tree +in multiple locations, the framework will create a separate State object +for each location. Similarly, if the widget is removed from the tree and +later inserted into the tree again, the framework will call createState +again to create a fresh State object, simplifying the lifecycle of +State objects.

+
+ + + +
+

Implementation

+
@override
+VideoSettingsState createState() => VideoSettingsState();
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsWidget/details.html b/docs/widgets/VideoSettingsWidget/details.html new file mode 100644 index 0000000000..bf61afb06d --- /dev/null +++ b/docs/widgets/VideoSettingsWidget/details.html @@ -0,0 +1,115 @@ + + + + + + + + details property - VideoSettingsWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
details
+ +
+ +
+
+
+
+
+ +

details property +

+ + +
+ + CameraDetails + details +
final
+ +
+ +
+

The details being sent to the camera.

+
+ + +
+

Implementation

+
final CameraDetails details;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/VideoSettingsWidget/id.html b/docs/widgets/VideoSettingsWidget/id.html new file mode 100644 index 0000000000..a3eeccc4ca --- /dev/null +++ b/docs/widgets/VideoSettingsWidget/id.html @@ -0,0 +1,115 @@ + + + + + + + + id property - VideoSettingsWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
id
+ +
+ +
+
+
+
+
+ +

id property +

+ + +
+ + String + id +
final
+ +
+ +
+

The ID of the camera being edited.

+
+ + +
+

Implementation

+
final String id;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsCounter-class-sidebar.html b/docs/widgets/ViewsCounter-class-sidebar.html new file mode 100644 index 0000000000..264ea581ec --- /dev/null +++ b/docs/widgets/ViewsCounter-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. ViewsCounter
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/widgets/ViewsCounter-class.html b/docs/widgets/ViewsCounter-class.html new file mode 100644 index 0000000000..a9ca26df43 --- /dev/null +++ b/docs/widgets/ViewsCounter-class.html @@ -0,0 +1,410 @@ + + + + + + + + ViewsCounter class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ViewsCounter
+ +
+ +
+
+
+
+
+ +

ViewsCounter class + +

+ + +
+

A dropdown to select more or less views.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ViewsCounter() +
+
+ Provides a const constructor for this widget. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + ViewsModel + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, ViewsModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + ViewsModel + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<ViewsModel> oldWidget, ViewsModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsCounter/ViewsCounter.html b/docs/widgets/ViewsCounter/ViewsCounter.html new file mode 100644 index 0000000000..9446e79897 --- /dev/null +++ b/docs/widgets/ViewsCounter/ViewsCounter.html @@ -0,0 +1,111 @@ + + + + + + + + ViewsCounter constructor - ViewsCounter - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ViewsCounter
+ +
+ +
+
+
+
+
+ +

ViewsCounter constructor +

+ +
+ + ViewsCounter() +
+ +
+

Provides a const constructor for this widget.

+
+ + + +
+

Implementation

+
ViewsCounter() : super(models.views);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsCounter/build.html b/docs/widgets/ViewsCounter/build.html new file mode 100644 index 0000000000..5ba69a025a --- /dev/null +++ b/docs/widgets/ViewsCounter/build.html @@ -0,0 +1,139 @@ + + + + + + + + build method - ViewsCounter class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. ViewsModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, ViewsModel model) => Row(
+    mainAxisSize: MainAxisSize.min,
+    children: [
+      const Text("Views:"),
+      const SizedBox(width: 4),
+      DropdownButton<int>(
+        value: model.views.length,
+        onChanged: model.setNumViews,
+        items: [
+          for (final option in [1, 2, 3, 4, 8]) DropdownMenuItem(
+            value: option,
+            child: Center(child: Text(option.toString())),
+          ),
+        ],
+      ),
+    ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsList-class-sidebar.html b/docs/widgets/ViewsList-class-sidebar.html new file mode 100644 index 0000000000..dc6937e6bc --- /dev/null +++ b/docs/widgets/ViewsList-class-sidebar.html @@ -0,0 +1,42 @@ +
    + +
  1. Constructors
  2. +
  3. ViewsList
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
  49. Constants
  50. +
  51. draggingIconSize
  52. +
diff --git a/docs/widgets/ViewsList-class.html b/docs/widgets/ViewsList-class.html new file mode 100644 index 0000000000..3111122b94 --- /dev/null +++ b/docs/widgets/ViewsList-class.html @@ -0,0 +1,427 @@ + + + + + + + + ViewsList class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ViewsList
+ +
+ +
+
+
+
+
+ +

ViewsList class + +

+ + +
+

A list of views for the user to drag into their desired view area

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ViewsList() +
+
+ A const constructor +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + Sockets + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, Sockets model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + Sockets + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<Sockets> oldWidget, Sockets model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+

Constants

+
+
+ draggingIconSize + → const double + + +
+
+ The size of the icon to appear under the mouse pointer when dragging + + +
+ +
+
+
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsList/ViewsList.html b/docs/widgets/ViewsList/ViewsList.html new file mode 100644 index 0000000000..147785e829 --- /dev/null +++ b/docs/widgets/ViewsList/ViewsList.html @@ -0,0 +1,111 @@ + + + + + + + + ViewsList constructor - ViewsList - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ViewsList
+ +
+ +
+
+
+
+
+ +

ViewsList constructor +

+ +
+ + ViewsList() +
+ +
+

A const constructor

+
+ + + +
+

Implementation

+
ViewsList() : super(models.sockets);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsList/build.html b/docs/widgets/ViewsList/build.html new file mode 100644 index 0000000000..79218a6009 --- /dev/null +++ b/docs/widgets/ViewsList/build.html @@ -0,0 +1,141 @@ + + + + + + + + build method - ViewsList class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. Sockets model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, Sockets model) => ListView(
+  children: [
+    ExpansionTile(
+      title: const Text("Cameras"),
+      children: [
+        for (final view in DashboardView.cameraViews)
+          _buildDraggable(view, dragIcon: const Icon(Icons.camera_alt)),
+      ],
+    ),
+    ExpansionTile(
+      title: const Text("Controls"),
+      children: [
+        for (final view in DashboardView.uiViews)
+          _buildDraggable(view),
+      ],
+    ),
+    _buildDraggable(DashboardView.blank),
+  ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsList/draggingIconSize-constant.html b/docs/widgets/ViewsList/draggingIconSize-constant.html new file mode 100644 index 0000000000..15a827267e --- /dev/null +++ b/docs/widgets/ViewsList/draggingIconSize-constant.html @@ -0,0 +1,115 @@ + + + + + + + + draggingIconSize constant - ViewsList class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
draggingIconSize
+ +
+ +
+
+
+
+
+ +

draggingIconSize constant +

+ + +
+ + double + const draggingIconSize + + +
+ +
+

The size of the icon to appear under the mouse pointer when dragging

+
+ + +
+

Implementation

+
static const double draggingIconSize = 100;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsSelector-class-sidebar.html b/docs/widgets/ViewsSelector-class-sidebar.html new file mode 100644 index 0000000000..a89e60e0e1 --- /dev/null +++ b/docs/widgets/ViewsSelector-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. ViewsSelector
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. index
  10. +
  11. key
  12. +
  13. runtimeType
  14. + +
  15. Methods
  16. +
  17. build
  18. +
  19. createElement
  20. +
  21. debugDescribeChildren
  22. +
  23. debugFillProperties
  24. +
  25. noSuchMethod
  26. +
  27. toDiagnosticsNode
  28. +
  29. toString
  30. +
  31. toStringDeep
  32. +
  33. toStringShallow
  34. +
  35. toStringShort
  36. + +
  37. Operators
  38. +
  39. operator ==
  40. + + + + + + +
diff --git a/docs/widgets/ViewsSelector-class.html b/docs/widgets/ViewsSelector-class.html new file mode 100644 index 0000000000..b81502c6b7 --- /dev/null +++ b/docs/widgets/ViewsSelector-class.html @@ -0,0 +1,358 @@ + + + + + + + + ViewsSelector class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ViewsSelector
+ +
+ +
+
+
+
+
+ +

ViewsSelector class + +

+ + +
+

A button for the user to select a new view.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ViewsSelector({required int index}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ index + → int + + +
+
+ The index of this view. +
final
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsSelector/ViewsSelector.html b/docs/widgets/ViewsSelector/ViewsSelector.html new file mode 100644 index 0000000000..367c001248 --- /dev/null +++ b/docs/widgets/ViewsSelector/ViewsSelector.html @@ -0,0 +1,112 @@ + + + + + + + + ViewsSelector constructor - ViewsSelector - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ViewsSelector
+ +
+ +
+
+
+
+
+ +

ViewsSelector constructor +

+ +
+ const + ViewsSelector({
  1. required int index,
  2. +
}) +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
const ViewsSelector({required this.index});
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsSelector/build.html b/docs/widgets/ViewsSelector/build.html new file mode 100644 index 0000000000..1cd079a470 --- /dev/null +++ b/docs/widgets/ViewsSelector/build.html @@ -0,0 +1,167 @@ + + + + + + + + build method - ViewsSelector class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) => PopupMenuButton<DashboardView>(
+  tooltip: "Select a feed",
+  icon: const Icon(Icons.expand_more),
+  onSelected: (view) => models.views.replaceView(index, view),
+  itemBuilder: (_) => [
+    const PopupMenuItem(enabled: false, child: Text("Cameras")),
+    for (final view in DashboardView.cameraViews)
+      _buildItem(view),
+    const PopupMenuDivider(),
+    const PopupMenuItem(enabled: false, child: Text("Controls")),
+    for (final view in DashboardView.uiViews)
+      _buildItem(view),
+  ],
+);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsSelector/index.html b/docs/widgets/ViewsSelector/index.html new file mode 100644 index 0000000000..d992db2837 --- /dev/null +++ b/docs/widgets/ViewsSelector/index.html @@ -0,0 +1,115 @@ + + + + + + + + index property - ViewsSelector class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
index
+ +
+ +
+
+
+
+
+ +

index property +

+ + +
+ + int + index +
final
+ +
+ +
+

The index of this view.

+
+ + +
+

Implementation

+
final int index;
+
+ + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsWidget-class-sidebar.html b/docs/widgets/ViewsWidget-class-sidebar.html new file mode 100644 index 0000000000..35fb4e63ce --- /dev/null +++ b/docs/widgets/ViewsWidget-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. ViewsWidget
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. model
  12. +
  13. runtimeType
  14. +
  15. shouldDispose
  16. + +
  17. Methods
  18. +
  19. build
  20. +
  21. createElement
  22. +
  23. createModel
  24. +
  25. createState
  26. +
  27. debugDescribeChildren
  28. +
  29. debugFillProperties
  30. +
  31. didUpdateWidget
  32. +
  33. noSuchMethod
  34. +
  35. toDiagnosticsNode
  36. +
  37. toString
  38. +
  39. toStringDeep
  40. +
  41. toStringShallow
  42. +
  43. toStringShort
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/widgets/ViewsWidget-class.html b/docs/widgets/ViewsWidget-class.html new file mode 100644 index 0000000000..49602017a4 --- /dev/null +++ b/docs/widgets/ViewsWidget-class.html @@ -0,0 +1,410 @@ + + + + + + + + ViewsWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ViewsWidget
+ +
+ +
+
+
+
+
+ +

ViewsWidget class + +

+ + +
+

A widget to render all the views the user selected.

+
+ + +
+
+ +
Inheritance
+
+ +
+ + + + + + + + + +
+
+ + +
+

Constructors

+
+
+ ViewsWidget() +
+
+ A const constructor. +
+
+
+ +
+

Properties

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ key + Key? + + +
+
+ Controls how one widget replaces another widget in the tree. +
finalinherited
+ +
+ +
+ model + ViewsModel + + +
+
+ The model to borrow. +
finalinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ shouldDispose + → bool + + +
+
+ Whether this widget should dispose the model after it's destroyed. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ build(BuildContext context, ViewsModel model) + Widget + + + +
+
+ Builds the UI according to the state in model. +
override
+ +
+ +
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createModel() + ViewsModel + + + +
+
+ Creates the view model. This is only called once in the widget's lifetime. +
inherited
+ +
+ +
+ createState() + ReactiveWidgetState<ChangeNotifier> + + + +
+
+ Creates the mutable state for this widget at a given location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + → List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ didUpdateWidget(covariant ReactiveWidgetInterface<ViewsModel> oldWidget, ViewsModel model) + → void + + + +
+
+ This function gives you an opportunity to update the view model when the widget updates. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + → String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + → String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + → bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsWidget/ViewsWidget.html b/docs/widgets/ViewsWidget/ViewsWidget.html new file mode 100644 index 0000000000..1cbdcf790b --- /dev/null +++ b/docs/widgets/ViewsWidget/ViewsWidget.html @@ -0,0 +1,111 @@ + + + + + + + + ViewsWidget constructor - ViewsWidget - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
ViewsWidget
+ +
+ +
+
+
+
+
+ +

ViewsWidget constructor +

+ +
+ + ViewsWidget() +
+ +
+

A const constructor.

+
+ + + +
+

Implementation

+
ViewsWidget() : super(models.views);
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/ViewsWidget/build.html b/docs/widgets/ViewsWidget/build.html new file mode 100644 index 0000000000..787940c996 --- /dev/null +++ b/docs/widgets/ViewsWidget/build.html @@ -0,0 +1,260 @@ + + + + + + + + build method - ViewsWidget class - widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
build
+ +
+ +
+
+
+
+
+ +

build method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+Widget +build(
  1. BuildContext context,
  2. +
  3. ViewsModel model
  4. +
) + +
override
+ +
+ +
+

Builds the UI according to the state in model.

+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context, ViewsModel model) {
+  final childData = List<ResizableChildData>.generate(
+    (model.views.length > 1) ? model.views.length : 0,
+    (index) => ResizableChildData(
+      minSize: 100,
+      startingRatio: 0.5,
+      child: _ViewArea(model: model, index: index),
+    ),
+  );
+
+  return switch (model.views.length) {
+    1 => Column(
+        children: [
+          Expanded(child: _ViewArea(model: model, index: 0)),
+        ],
+      ),
+    2 => ResizableContainer(
+        direction: switch (models.settings.dashboard.splitMode) {
+          SplitMode.horizontal => Axis.vertical,
+          SplitMode.vertical => Axis.horizontal,
+        },
+        dividerWidth: 8,
+        controller: switch (models.settings.dashboard.splitMode) {
+          SplitMode.horizontal => model.verticalController,
+          SplitMode.vertical => model.horizontalController1,
+        },
+        dividerColor: Colors.black,
+        children: childData.sublist(0, 2),
+      ),
+    3 || 4 => ResizableContainer(
+        controller: model.verticalController,
+        direction: Axis.vertical,
+        dividerWidth: 8,
+        dividerColor: Colors.black,
+        children: [
+          ResizableChildData(
+            minSize: 100,
+            startingRatio: 0.5,
+            child: ResizableContainer(
+              controller: model.horizontalController1,
+              direction: Axis.horizontal,
+              dividerWidth: 8,
+              dividerColor: Colors.black,
+              children: childData.sublist(0, 2),
+            ),
+          ),
+          if (model.views.length == 3)
+            childData[2]
+          else
+            ResizableChildData(
+              minSize: 100,
+              startingRatio: 0.5,
+              child: ResizableContainer(
+                controller: model.horizontalController2,
+                direction: Axis.horizontal,
+                dividerWidth: 8,
+                dividerColor: Colors.black,
+                children: childData.sublist(2, 4),
+              ),
+            ),
+        ],
+      ),
+    8 => Row(
+        children: [
+          Expanded(
+            child: ResizableContainer(
+              controller: model.verticalController,
+              direction: Axis.vertical,
+              dividerWidth: 8,
+              dividerColor: Colors.black,
+              children: [
+                ResizableChildData(
+                  minSize: 100,
+                  startingRatio: 0.5,
+                  child: ResizableContainer(
+                    controller: model.horizontalController1,
+                    direction: Axis.horizontal,
+                    dividerWidth: 8,
+                    dividerColor: Colors.black,
+                    children: childData.sublist(0, 2),
+                  ),
+                ),
+                ResizableChildData(
+                  minSize: 100,
+                  startingRatio: 0.5,
+                  child: ResizableContainer(
+                    controller: model.horizontalController2,
+                    direction: Axis.horizontal,
+                    dividerWidth: 8,
+                    dividerColor: Colors.black,
+                    children: childData.sublist(2, 4),
+                  ),
+                ),
+              ],
+            ),
+          ),
+          const VerticalDivider(
+            width: 8,
+            color: Colors.black,
+            thickness: 8,
+          ),
+          Expanded(
+            child: ResizableContainer(
+              controller: model.verticalController2,
+              direction: Axis.vertical,
+              dividerWidth: 8,
+              dividerColor: Colors.black,
+              children: [
+                ResizableChildData(
+                  minSize: 100,
+                  startingRatio: 0.5,
+                  child: ResizableContainer(
+                    controller: model.horizontalController3,
+                    direction: Axis.horizontal,
+                    dividerWidth: 8,
+                    dividerColor: Colors.black,
+                    children: childData.sublist(4, 6),
+                  ),
+                ),
+                ResizableChildData(
+                  minSize: 100,
+                  startingRatio: 0.5,
+                  child: ResizableContainer(
+                    controller: model.horizontalController4,
+                    direction: Axis.horizontal,
+                    dividerWidth: 8,
+                    dividerColor: Colors.black,
+                    children: childData.sublist(6, 8),
+                  ),
+                ),
+              ],
+            ),
+          ),
+        ],
+      ),
+    _ => throw StateError("Too many views: ${model.views.length}"),
+  };
+}
+
+ + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + + diff --git a/docs/widgets/widgets-library-sidebar.html b/docs/widgets/widgets-library-sidebar.html new file mode 100644 index 0000000000..9e3de8eee5 --- /dev/null +++ b/docs/widgets/widgets-library-sidebar.html @@ -0,0 +1,51 @@ +
    +
  1. Classes
  2. +
  3. AutonomyCommandEditor
  4. +
  5. CameraDetailsEditor
  6. +
  7. ColorEditor
  8. +
  9. ControlsDisplay
  10. +
  11. DropdownEditor
  12. +
  13. Footer
  14. +
  15. GamepadButton
  16. +
  17. GpsEditor
  18. +
  19. ImageLoader
  20. +
  21. MessageDisplay
  22. +
  23. MetricsList
  24. +
  25. MobileControls
  26. +
  27. MobileControlsModel
  28. +
  29. NetworkStatusIcon
  30. +
  31. NumberEditor
  32. +
  33. ReactiveWidget
  34. +
  35. ReactiveWidgetInterface
  36. +
  37. ReactiveWidgetState
  38. +
  39. ReusableReactiveWidget
  40. +
  41. ScienceCommandEditor
  42. +
  43. SerialButton
  44. +
  45. Sidebar
  46. +
  47. SliderSettings
  48. +
  49. SocketEditor
  50. +
  51. StatusIcons
  52. +
  53. ThrottleEditor
  54. +
  55. TimerEditor
  56. +
  57. TimerWidget
  58. +
  59. VideoFeed
  60. +
  61. VideoFeedState
  62. +
  63. VideoSettingsState
  64. +
  65. VideoSettingsWidget
  66. +
  67. ViewsCounter
  68. +
  69. ViewsList
  70. +
  71. ViewsSelector
  72. +
  73. ViewsWidget
  74. + + + + + + + + + +
  75. Extensions
  76. +
  77. BuildContextUtils
  78. +
  79. SeverityUtil
  80. +
diff --git a/docs/widgets/widgets-library.html b/docs/widgets/widgets-library.html new file mode 100644 index 0000000000..0e8015580b --- /dev/null +++ b/docs/widgets/widgets-library.html @@ -0,0 +1,457 @@ + + + + + + + + widgets library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
widgets
+ +
+ +
+
+
+
+ +
+ + + +

+ widgets + library + + +

+
+ + +
+

Contains complex or reusable widgets.

+

If a widget is becoming too large or needs to be reused, separate it into its own file and put +it here. Although "everything is a widget"™ in Flutter, this library is reserved for widgets +that are contained to a small, logical section of the general UI. Groups of widgets spanning +multiple loosely-related purposes should be considered "pages" and put in the pages library.

+

This library is broken out into several directories:

+
    +
  • The atomic directory represent singular pieces of data, such as metric readouts.
  • +
  • The generic directory contains random pieces of UI that are reused in many locations.
  • +
  • The navigation directory is for global pieces of UI that handle navigation.
  • +
  • The utils directory contains widgets or other frontend code used by other widgets.
  • +
  • Other folders named after pages contain complex widgets used in that page.
  • +
+

This library may depend on the data, services, and models library.

+
+ + +
+

Classes

+
+
+ AutonomyCommandEditor + +
+
+ A widget to edit an AutonomyCommand. +
+ +
+ CameraDetailsEditor + +
+
+ A widget to modify CameraDetails for a given camera, backed by a CameraDetailsBuilder. +
+ +
+ ColorEditor + +
+
+ A widget to edit a color, backed by ColorBuilder. +
+ +
+ ControlsDisplay + +
+
+ Displays controls for the given Controller. +
+ + +
+ A widget to choose a single value from a dropdown. +
+ + +
+ The footer, responsible for showing vitals and logs. +
+ +
+ GamepadButton + +
+
+ A widget to show the gamepad state and allow the user to switch its mode. +
+ +
+ GpsEditor + +
+
+ A widget to edit a GPS coordinate in degree/minute/seconds or decimal format. +
+ +
+ ImageLoader + +
+
+ A helper class to load and manage resources used by a ui.Image. +
+ +
+ MessageDisplay + +
+
+ Displays the latest TaskbarMessage from HomeModel.message. +
+ +
+ MetricsList + +
+
+ Displays metrics of all sorts in a collapsible list. +
+ +
+ MobileControls + +
+
+ Drive controls for mobile devices where gamepads aren't feasible. +
+ +
+ MobileControlsModel + +
+
+ Drive controls for mobile devices where gamepads aren't feasible. +
+ +
+ NetworkStatusIcon + +
+
+ A network status icon for the given device. +
+ +
+ NumberEditor + +
+
+ A widget to edit a number, backed by NumberBuilder. +
+ +
+ ReactiveWidget<T extends ChangeNotifier> + +
+
+ A widget that listens to a ChangeNotifier and rebuilds when the model updates. +
+ +
+ ReactiveWidgetInterface<T extends ChangeNotifier> + +
+
+ A widget that listens to a ChangeNotifier (called the view model) and updates when it does. +
+ +
+ ReactiveWidgetState<T extends ChangeNotifier> + +
+
+ A state for ReactiveWidget that manages the model. +
+ +
+ ReusableReactiveWidget<T extends ChangeNotifier> + +
+
+ A ReactiveWidgetInterface that "borrows" a view model and does not dispose of it. +
+ +
+ ScienceCommandEditor + +
+
+ A widget to create and send a ScienceCommand. +
+ +
+ SerialButton + +
+
+ Allows the user to connect to the firmware directly, over Serial. +
+ + +
+ A widget to display metrics and controls off to the side. +
+ +
+ SliderSettings + +
+
+ Class that defines a slider for camera controls +
+ +
+ SocketEditor + +
+
+ Creates a widget to edit a SocketInfo, backed by SocketBuilder. +
+ +
+ StatusIcons + +
+
+ A few icons displaying the rover's current status. +
+ +
+ ThrottleEditor + +
+
+ An AlertDialog to prompt the user for a throttle value and send it to the rover. +
+ +
+ TimerEditor + +
+
+ A widget to edit a color, backed by TimerBuilder. +
+ +
+ TimerWidget + +
+
+ A widget to view timer +Can also stop and start timer +
+ +
+ VideoFeed + +
+
+ Displays frames of a video feed. +
+ +
+ VideoFeedState + +
+
+ The logic for updating a VideoFeed. +
+ +
+ VideoSettingsState + +
+
+ A state for VideoSettingsWidget. +
+ +
+ VideoSettingsWidget + +
+
+ A widget to edit camera settings. +
+ +
+ ViewsCounter + +
+
+ A dropdown to select more or less views. +
+ +
+ ViewsList + +
+
+ A list of views for the user to drag into their desired view area +
+ +
+ ViewsSelector + +
+
+ A button for the user to select a new view. +
+ +
+ ViewsWidget + +
+
+ A widget to render all the views the user selected. +
+ +
+
+ + + + +
+

Extensions

+
+
+ BuildContextUtils + on BuildContext + + +
+
+ Convenience functions on BuildContext. +
+ +
+ SeverityUtil + on Severity + + +
+
+ Extension for COlors on Severity +
+ +
+
+ + + + + +
+ + +
+
+ + rover_dashboard + 2024.9.18+11 + + +
+ + + + + + + +