From 00403f36f19a18f50429e706465b197123cff638 Mon Sep 17 00:00:00 2001 From: GitHub Actions Bot <> Date: Fri, 3 May 2024 07:44:04 +0000 Subject: [PATCH] Generated documentation --- docs/__404error.html | 118 + .../RoverControlDashboard-class-sidebar.html | 40 + docs/app/RoverControlDashboard-class.html | 428 ++ .../RoverControlDashboard.html | 128 + docs/app/RoverControlDashboard/build.html | 168 + docs/app/app-library-sidebar.html | 15 + docs/app/app-library.html | 177 + docs/app/binghamtonGreen-constant.html | 129 + docs/categories.json | 1 + docs/data/ArmCommand-class-sidebar.html | 107 + docs/data/ArmCommand-class.html | 1269 +++++ .../ArmCommand/ArmCommand.fromBuffer.html | 126 + docs/data/ArmCommand/ArmCommand.fromJson.html | 126 + docs/data/ArmCommand/ArmCommand.html | 178 + docs/data/ArmCommand/calibrate.html | 165 + docs/data/ArmCommand/clearCalibrate.html | 134 + docs/data/ArmCommand/clearElbow.html | 134 + docs/data/ArmCommand/clearGripperLift.html | 134 + docs/data/ArmCommand/clearIkX.html | 134 + docs/data/ArmCommand/clearIkY.html | 134 + docs/data/ArmCommand/clearIkZ.html | 134 + docs/data/ArmCommand/clearJab.html | 134 + docs/data/ArmCommand/clearShoulder.html | 134 + docs/data/ArmCommand/clearStop.html | 134 + docs/data/ArmCommand/clearSwivel.html | 134 + docs/data/ArmCommand/clone.html | 141 + docs/data/ArmCommand/copyWith.html | 144 + docs/data/ArmCommand/create.html | 129 + docs/data/ArmCommand/createEmptyInstance.html | 136 + docs/data/ArmCommand/createRepeated.html | 128 + docs/data/ArmCommand/elbow.html | 165 + docs/data/ArmCommand/ensureElbow.html | 134 + docs/data/ArmCommand/ensureGripperLift.html | 134 + docs/data/ArmCommand/ensureShoulder.html | 134 + docs/data/ArmCommand/ensureSwivel.html | 134 + docs/data/ArmCommand/getDefault.html | 129 + docs/data/ArmCommand/gripperLift.html | 169 + docs/data/ArmCommand/hasCalibrate.html | 134 + docs/data/ArmCommand/hasElbow.html | 134 + docs/data/ArmCommand/hasGripperLift.html | 134 + docs/data/ArmCommand/hasIkX.html | 134 + docs/data/ArmCommand/hasIkY.html | 134 + docs/data/ArmCommand/hasIkZ.html | 134 + docs/data/ArmCommand/hasJab.html | 134 + docs/data/ArmCommand/hasShoulder.html | 134 + docs/data/ArmCommand/hasStop.html | 134 + docs/data/ArmCommand/hasSwivel.html | 134 + docs/data/ArmCommand/ikX.html | 165 + docs/data/ArmCommand/ikY.html | 165 + docs/data/ArmCommand/ikZ.html | 165 + docs/data/ArmCommand/info_.html | 132 + docs/data/ArmCommand/jab.html | 168 + docs/data/ArmCommand/shoulder.html | 165 + docs/data/ArmCommand/stop.html | 168 + docs/data/ArmCommand/swivel.html | 168 + docs/data/ArmData-class-sidebar.html | 93 + docs/data/ArmData-class.html | 1091 ++++ docs/data/ArmData/ArmData.fromBuffer.html | 126 + docs/data/ArmData/ArmData.fromJson.html | 126 + docs/data/ArmData/ArmData.html | 153 + docs/data/ArmData/base.html | 165 + docs/data/ArmData/clearBase.html | 134 + docs/data/ArmData/clearCurrentPosition.html | 134 + docs/data/ArmData/clearElbow.html | 134 + docs/data/ArmData/clearShoulder.html | 134 + docs/data/ArmData/clearTargetPosition.html | 134 + docs/data/ArmData/clone.html | 141 + docs/data/ArmData/copyWith.html | 144 + docs/data/ArmData/create.html | 129 + docs/data/ArmData/createEmptyInstance.html | 136 + docs/data/ArmData/createRepeated.html | 128 + docs/data/ArmData/currentPosition.html | 165 + docs/data/ArmData/elbow.html | 165 + docs/data/ArmData/ensureBase.html | 134 + docs/data/ArmData/ensureCurrentPosition.html | 134 + docs/data/ArmData/ensureElbow.html | 134 + docs/data/ArmData/ensureShoulder.html | 134 + docs/data/ArmData/ensureTargetPosition.html | 134 + docs/data/ArmData/getDefault.html | 129 + docs/data/ArmData/hasBase.html | 134 + docs/data/ArmData/hasCurrentPosition.html | 134 + docs/data/ArmData/hasElbow.html | 134 + docs/data/ArmData/hasShoulder.html | 134 + docs/data/ArmData/hasTargetPosition.html | 134 + docs/data/ArmData/info_.html | 132 + docs/data/ArmData/shoulder.html | 165 + docs/data/ArmData/targetPosition.html | 165 + docs/data/ArmMetrics-class-sidebar.html | 37 + docs/data/ArmMetrics-class.html | 384 ++ docs/data/ArmMetrics/ArmMetrics.html | 128 + docs/data/ArmMetrics/allMetrics.html | 157 + docs/data/ArmMetrics/getMotorData.html | 139 + docs/data/ArmMetrics/name.html | 142 + docs/data/ArmSettings-class-sidebar.html | 36 + docs/data/ArmSettings-class.html | 337 ++ .../ArmSettings/ArmSettings.fromJson.html | 137 + docs/data/ArmSettings/ArmSettings.html | 145 + docs/data/ArmSettings/elbow.html | 129 + docs/data/ArmSettings/hashCode.html | 160 + docs/data/ArmSettings/ikIncrement.html | 129 + docs/data/ArmSettings/lift.html | 129 + docs/data/ArmSettings/noSuchMethod.html | 168 + docs/data/ArmSettings/operator_equals.html | 158 + docs/data/ArmSettings/pinch.html | 129 + docs/data/ArmSettings/rotate.html | 129 + docs/data/ArmSettings/runtimeType.html | 135 + docs/data/ArmSettings/shoulder.html | 129 + docs/data/ArmSettings/swivel.html | 129 + docs/data/ArmSettings/toJson.html | 141 + docs/data/ArmSettings/toString.html | 140 + docs/data/ArmSettings/useIK.html | 129 + docs/data/AutonomyCommand-class-sidebar.html | 86 + docs/data/AutonomyCommand-class.html | 1001 ++++ .../AutonomyCommand.fromBuffer.html | 126 + .../AutonomyCommand.fromJson.html | 126 + .../data/AutonomyCommand/AutonomyCommand.html | 148 + docs/data/AutonomyCommand/abort.html | 165 + docs/data/AutonomyCommand/arucoId.html | 165 + docs/data/AutonomyCommand/clearAbort.html | 134 + docs/data/AutonomyCommand/clearArucoId.html | 134 + .../AutonomyCommand/clearDestination.html | 134 + docs/data/AutonomyCommand/clearTask.html | 134 + docs/data/AutonomyCommand/clone.html | 141 + docs/data/AutonomyCommand/copyWith.html | 144 + docs/data/AutonomyCommand/create.html | 129 + .../AutonomyCommand/createEmptyInstance.html | 136 + docs/data/AutonomyCommand/createRepeated.html | 128 + docs/data/AutonomyCommand/destination.html | 165 + .../AutonomyCommand/ensureDestination.html | 134 + docs/data/AutonomyCommand/getDefault.html | 129 + docs/data/AutonomyCommand/hasAbort.html | 134 + docs/data/AutonomyCommand/hasArucoId.html | 134 + docs/data/AutonomyCommand/hasDestination.html | 134 + docs/data/AutonomyCommand/hasTask.html | 134 + docs/data/AutonomyCommand/info_.html | 132 + docs/data/AutonomyCommand/task.html | 165 + docs/data/AutonomyData-class-sidebar.html | 88 + docs/data/AutonomyData-class.html | 1025 ++++ .../AutonomyData/AutonomyData.fromBuffer.html | 126 + .../AutonomyData/AutonomyData.fromJson.html | 126 + docs/data/AutonomyData/AutonomyData.html | 158 + docs/data/AutonomyData/clearCrash.html | 134 + docs/data/AutonomyData/clearDestination.html | 134 + docs/data/AutonomyData/clearState.html | 134 + docs/data/AutonomyData/clearTask.html | 134 + docs/data/AutonomyData/clone.html | 141 + docs/data/AutonomyData/copyWith.html | 144 + docs/data/AutonomyData/crash.html | 165 + docs/data/AutonomyData/create.html | 129 + .../AutonomyData/createEmptyInstance.html | 136 + docs/data/AutonomyData/createRepeated.html | 128 + docs/data/AutonomyData/destination.html | 165 + docs/data/AutonomyData/ensureDestination.html | 134 + docs/data/AutonomyData/getDefault.html | 129 + docs/data/AutonomyData/hasCrash.html | 134 + docs/data/AutonomyData/hasDestination.html | 134 + docs/data/AutonomyData/hasState.html | 134 + docs/data/AutonomyData/hasTask.html | 134 + docs/data/AutonomyData/info_.html | 132 + docs/data/AutonomyData/obstacles.html | 138 + docs/data/AutonomyData/path.html | 138 + docs/data/AutonomyData/state.html | 165 + docs/data/AutonomyData/task.html | 165 + docs/data/AutonomyState-class-sidebar.html | 38 + docs/data/AutonomyState-class.html | 387 ++ .../data/AutonomyState/ABORTING-constant.html | 125 + .../AutonomyState/APPROACHING-constant.html | 125 + .../AT_DESTINATION-constant.html | 125 + .../AUTONOMY_STATE_UNDEFINED-constant.html | 125 + docs/data/AutonomyState/DRIVING-constant.html | 125 + .../AutonomyState/NO_SOLUTION-constant.html | 125 + docs/data/AutonomyState/PATHING-constant.html | 125 + .../AutonomyState/SEARCHING-constant.html | 125 + docs/data/AutonomyState/valueOf.html | 129 + docs/data/AutonomyState/values-constant.html | 134 + .../AutonomyStateUtils-extension-sidebar.html | 16 + docs/data/AutonomyStateUtils.html | 156 + docs/data/AutonomyStateUtils/humanName.html | 149 + docs/data/AutonomyTask-class-sidebar.html | 34 + docs/data/AutonomyTask-class.html | 339 ++ .../AUTONOMY_TASK_UNDEFINED-constant.html | 125 + .../AutonomyTask/BETWEEN_GATES-constant.html | 125 + docs/data/AutonomyTask/GPS_ONLY-constant.html | 125 + .../AutonomyTask/VISUAL_MARKER-constant.html | 125 + docs/data/AutonomyTask/valueOf.html | 129 + docs/data/AutonomyTask/values-constant.html | 130 + .../AutonomyTaskUtils-extension-sidebar.html | 16 + docs/data/AutonomyTaskUtils.html | 156 + docs/data/AutonomyTaskUtils/humanName.html | 145 + docs/data/BurtLog-class-sidebar.html | 85 + docs/data/BurtLog-class.html | 989 ++++ docs/data/BurtLog/BurtLog.fromBuffer.html | 126 + docs/data/BurtLog/BurtLog.fromJson.html | 126 + docs/data/BurtLog/BurtLog.html | 148 + docs/data/BurtLog/body.html | 165 + docs/data/BurtLog/clearBody.html | 134 + docs/data/BurtLog/clearDevice.html | 134 + docs/data/BurtLog/clearLevel.html | 134 + docs/data/BurtLog/clearTitle.html | 134 + docs/data/BurtLog/clone.html | 141 + docs/data/BurtLog/copyWith.html | 144 + docs/data/BurtLog/create.html | 129 + docs/data/BurtLog/createEmptyInstance.html | 136 + docs/data/BurtLog/createRepeated.html | 128 + docs/data/BurtLog/device.html | 165 + docs/data/BurtLog/getDefault.html | 129 + docs/data/BurtLog/hasBody.html | 134 + docs/data/BurtLog/hasDevice.html | 134 + docs/data/BurtLog/hasLevel.html | 134 + docs/data/BurtLog/hasTitle.html | 134 + docs/data/BurtLog/info_.html | 132 + docs/data/BurtLog/level.html | 165 + docs/data/BurtLog/title.html | 165 + docs/data/BurtLogLevel-class-sidebar.html | 37 + docs/data/BurtLogLevel-class.html | 375 ++ .../BURT_LOG_LEVEL_UNDEFINED-constant.html | 125 + docs/data/BurtLogLevel/critical-constant.html | 125 + docs/data/BurtLogLevel/debug-constant.html | 125 + docs/data/BurtLogLevel/error-constant.html | 125 + docs/data/BurtLogLevel/info-constant.html | 125 + docs/data/BurtLogLevel/trace-constant.html | 125 + docs/data/BurtLogLevel/valueOf.html | 129 + docs/data/BurtLogLevel/values-constant.html | 133 + docs/data/BurtLogLevel/warning-constant.html | 125 + docs/data/CameraDetails-class-sidebar.html | 106 + docs/data/CameraDetails-class.html | 1257 +++++ .../CameraDetails.fromBuffer.html | 126 + .../CameraDetails/CameraDetails.fromJson.html | 126 + docs/data/CameraDetails/CameraDetails.html | 183 + docs/data/CameraDetails/autofocus.html | 165 + docs/data/CameraDetails/clearAutofocus.html | 134 + docs/data/CameraDetails/clearFocus.html | 134 + docs/data/CameraDetails/clearFps.html | 134 + docs/data/CameraDetails/clearName.html | 134 + docs/data/CameraDetails/clearPan.html | 134 + docs/data/CameraDetails/clearQuality.html | 134 + .../CameraDetails/clearResolutionHeight.html | 134 + .../CameraDetails/clearResolutionWidth.html | 134 + docs/data/CameraDetails/clearStatus.html | 134 + docs/data/CameraDetails/clearTilt.html | 134 + docs/data/CameraDetails/clearZoom.html | 134 + docs/data/CameraDetails/clone.html | 141 + docs/data/CameraDetails/copyWith.html | 144 + docs/data/CameraDetails/create.html | 129 + .../CameraDetails/createEmptyInstance.html | 136 + docs/data/CameraDetails/createRepeated.html | 128 + docs/data/CameraDetails/focus.html | 165 + docs/data/CameraDetails/fps.html | 168 + docs/data/CameraDetails/getDefault.html | 129 + docs/data/CameraDetails/hasAutofocus.html | 134 + docs/data/CameraDetails/hasFocus.html | 134 + docs/data/CameraDetails/hasFps.html | 134 + docs/data/CameraDetails/hasName.html | 134 + docs/data/CameraDetails/hasPan.html | 134 + docs/data/CameraDetails/hasQuality.html | 134 + .../CameraDetails/hasResolutionHeight.html | 134 + .../CameraDetails/hasResolutionWidth.html | 134 + docs/data/CameraDetails/hasStatus.html | 134 + docs/data/CameraDetails/hasTilt.html | 134 + docs/data/CameraDetails/hasZoom.html | 134 + docs/data/CameraDetails/info_.html | 132 + docs/data/CameraDetails/name.html | 168 + docs/data/CameraDetails/pan.html | 165 + docs/data/CameraDetails/quality.html | 168 + docs/data/CameraDetails/resolutionHeight.html | 165 + docs/data/CameraDetails/resolutionWidth.html | 168 + docs/data/CameraDetails/status.html | 168 + docs/data/CameraDetails/tilt.html | 165 + docs/data/CameraDetails/zoom.html | 165 + docs/data/CameraName-class-sidebar.html | 37 + docs/data/CameraName-class.html | 375 ++ .../CameraName/AUTONOMY_DEPTH-constant.html | 125 + .../CAMERA_NAME_UNDEFINED-constant.html | 125 + .../data/CameraName/ROVER_FRONT-constant.html | 125 + docs/data/CameraName/ROVER_REAR-constant.html | 125 + docs/data/CameraName/SUBSYSTEM1-constant.html | 125 + docs/data/CameraName/SUBSYSTEM2-constant.html | 125 + docs/data/CameraName/SUBSYSTEM3-constant.html | 125 + docs/data/CameraName/valueOf.html | 129 + docs/data/CameraName/values-constant.html | 133 + .../CameraNameUtils-extension-sidebar.html | 16 + docs/data/CameraNameUtils.html | 156 + docs/data/CameraNameUtils/humanName.html | 148 + docs/data/CameraStatus-class-sidebar.html | 38 + docs/data/CameraStatus-class.html | 387 ++ .../CAMERA_DISABLED-constant.html | 125 + .../CAMERA_DISCONNECTED-constant.html | 125 + .../CameraStatus/CAMERA_ENABLED-constant.html | 125 + .../CAMERA_HAS_NO_NAME-constant.html | 125 + .../CameraStatus/CAMERA_LOADING-constant.html | 125 + .../CAMERA_NOT_RESPONDING-constant.html | 125 + .../CAMERA_STATUS_UNDEFINED-constant.html | 125 + .../FRAME_TOO_LARGE-constant.html | 125 + docs/data/CameraStatus/valueOf.html | 129 + docs/data/CameraStatus/values-constant.html | 134 + .../CameraStatusUtils-extension-sidebar.html | 16 + docs/data/CameraStatusUtils.html | 156 + docs/data/CameraStatusUtils/humanName.html | 149 + docs/data/Connect-class-sidebar.html | 79 + docs/data/Connect-class.html | 915 ++++ docs/data/Connect/Connect.fromBuffer.html | 126 + docs/data/Connect/Connect.fromJson.html | 126 + docs/data/Connect/Connect.html | 138 + docs/data/Connect/clearReceiver.html | 134 + docs/data/Connect/clearSender.html | 134 + docs/data/Connect/clone.html | 141 + docs/data/Connect/copyWith.html | 144 + docs/data/Connect/create.html | 129 + docs/data/Connect/createEmptyInstance.html | 136 + docs/data/Connect/createRepeated.html | 128 + docs/data/Connect/getDefault.html | 129 + docs/data/Connect/hasReceiver.html | 134 + docs/data/Connect/hasSender.html | 134 + docs/data/Connect/info_.html | 132 + docs/data/Connect/receiver.html | 165 + docs/data/Connect/sender.html | 165 + docs/data/Coordinates-class-sidebar.html | 82 + docs/data/Coordinates-class.html | 951 ++++ .../Coordinates/Coordinates.fromBuffer.html | 126 + .../Coordinates/Coordinates.fromJson.html | 126 + docs/data/Coordinates/Coordinates.html | 143 + docs/data/Coordinates/clearX.html | 134 + docs/data/Coordinates/clearY.html | 134 + docs/data/Coordinates/clearZ.html | 134 + docs/data/Coordinates/clone.html | 141 + docs/data/Coordinates/copyWith.html | 144 + docs/data/Coordinates/create.html | 129 + .../data/Coordinates/createEmptyInstance.html | 136 + docs/data/Coordinates/createRepeated.html | 128 + docs/data/Coordinates/getDefault.html | 129 + docs/data/Coordinates/hasX.html | 134 + docs/data/Coordinates/hasY.html | 134 + docs/data/Coordinates/hasZ.html | 134 + docs/data/Coordinates/info_.html | 132 + docs/data/Coordinates/x.html | 165 + docs/data/Coordinates/y.html | 165 + docs/data/Coordinates/z.html | 165 + .../CoordinatesUtils-extension-sidebar.html | 18 + docs/data/CoordinatesUtils.html | 176 + docs/data/CoordinatesUtils/operator_plus.html | 134 + docs/data/CoordinatesUtils/prettyPrint.html | 136 + .../data/DashboardSettings-class-sidebar.html | 32 + docs/data/DashboardSettings-class.html | 289 + .../DashboardSettings.fromJson.html | 133 + .../DashboardSettings/DashboardSettings.html | 137 + docs/data/DashboardSettings/hashCode.html | 160 + docs/data/DashboardSettings/mapBlockSize.html | 133 + docs/data/DashboardSettings/maxFps.html | 130 + docs/data/DashboardSettings/noSuchMethod.html | 168 + .../DashboardSettings/operator_equals.html | 158 + docs/data/DashboardSettings/runtimeType.html | 135 + docs/data/DashboardSettings/splitMode.html | 129 + docs/data/DashboardSettings/themeMode.html | 129 + docs/data/DashboardSettings/toJson.html | 137 + docs/data/DashboardSettings/toString.html | 140 + .../DateTimeTimestamp-extension-sidebar.html | 16 + docs/data/DateTimeTimestamp.html | 156 + docs/data/DateTimeTimestamp/timeStamp.html | 136 + docs/data/Device-class-sidebar.html | 40 + docs/data/Device-class.html | 411 ++ docs/data/Device/ARM-constant.html | 125 + docs/data/Device/AUTONOMY-constant.html | 125 + docs/data/Device/DASHBOARD-constant.html | 125 + .../Device/DEVICE_UNDEFINED-constant.html | 125 + docs/data/Device/DRIVE-constant.html | 125 + docs/data/Device/FIRMWARE-constant.html | 125 + docs/data/Device/GRIPPER-constant.html | 125 + docs/data/Device/SCIENCE-constant.html | 125 + docs/data/Device/SUBSYSTEMS-constant.html | 125 + docs/data/Device/VIDEO-constant.html | 125 + docs/data/Device/valueOf.html | 129 + docs/data/Device/values-constant.html | 136 + docs/data/DeviceUtils-extension-sidebar.html | 16 + docs/data/DeviceUtils.html | 156 + docs/data/DeviceUtils/humanName.html | 151 + docs/data/DirtReleaseState-class-sidebar.html | 33 + docs/data/DirtReleaseState-class.html | 323 ++ .../DirtReleaseState/CLOSE_DIRT-constant.html | 125 + ...DIRT_RELEASE_STATE_UNDEFINED-constant.html | 125 + .../DirtReleaseState/OPEN_DIRT-constant.html | 125 + docs/data/DirtReleaseState/valueOf.html | 129 + .../DirtReleaseState/values-constant.html | 129 + docs/data/Disconnect-class-sidebar.html | 76 + docs/data/Disconnect-class.html | 877 +++ .../Disconnect/Disconnect.fromBuffer.html | 126 + docs/data/Disconnect/Disconnect.fromJson.html | 126 + docs/data/Disconnect/Disconnect.html | 133 + docs/data/Disconnect/clearSender.html | 134 + docs/data/Disconnect/clone.html | 141 + docs/data/Disconnect/copyWith.html | 144 + docs/data/Disconnect/create.html | 129 + docs/data/Disconnect/createEmptyInstance.html | 136 + docs/data/Disconnect/createRepeated.html | 128 + docs/data/Disconnect/getDefault.html | 129 + docs/data/Disconnect/hasSender.html | 134 + docs/data/Disconnect/info_.html | 132 + docs/data/Disconnect/sender.html | 165 + docs/data/DriveCommand-class-sidebar.html | 106 + docs/data/DriveCommand-class.html | 1254 +++++ .../DriveCommand/DriveCommand.fromBuffer.html | 126 + .../DriveCommand/DriveCommand.fromJson.html | 126 + docs/data/DriveCommand/DriveCommand.html | 183 + docs/data/DriveCommand/clearFrontSwivel.html | 134 + docs/data/DriveCommand/clearFrontTilt.html | 134 + docs/data/DriveCommand/clearLeft.html | 134 + docs/data/DriveCommand/clearRearSwivel.html | 134 + docs/data/DriveCommand/clearRearTilt.html | 134 + docs/data/DriveCommand/clearRight.html | 134 + docs/data/DriveCommand/clearSetLeft.html | 134 + docs/data/DriveCommand/clearSetRight.html | 134 + docs/data/DriveCommand/clearSetThrottle.html | 134 + docs/data/DriveCommand/clearStatus.html | 134 + docs/data/DriveCommand/clearThrottle.html | 134 + docs/data/DriveCommand/clone.html | 141 + docs/data/DriveCommand/copyWith.html | 144 + docs/data/DriveCommand/create.html | 129 + .../DriveCommand/createEmptyInstance.html | 136 + docs/data/DriveCommand/createRepeated.html | 128 + docs/data/DriveCommand/frontSwivel.html | 165 + docs/data/DriveCommand/frontTilt.html | 165 + docs/data/DriveCommand/getDefault.html | 129 + docs/data/DriveCommand/hasFrontSwivel.html | 134 + docs/data/DriveCommand/hasFrontTilt.html | 134 + docs/data/DriveCommand/hasLeft.html | 134 + docs/data/DriveCommand/hasRearSwivel.html | 134 + docs/data/DriveCommand/hasRearTilt.html | 134 + docs/data/DriveCommand/hasRight.html | 134 + docs/data/DriveCommand/hasSetLeft.html | 134 + docs/data/DriveCommand/hasSetRight.html | 134 + docs/data/DriveCommand/hasSetThrottle.html | 134 + docs/data/DriveCommand/hasStatus.html | 134 + docs/data/DriveCommand/hasThrottle.html | 134 + docs/data/DriveCommand/info_.html | 132 + docs/data/DriveCommand/left.html | 168 + docs/data/DriveCommand/rearSwivel.html | 165 + docs/data/DriveCommand/rearTilt.html | 165 + docs/data/DriveCommand/right.html | 168 + docs/data/DriveCommand/setLeft.html | 168 + docs/data/DriveCommand/setRight.html | 168 + docs/data/DriveCommand/setThrottle.html | 168 + docs/data/DriveCommand/status.html | 165 + docs/data/DriveCommand/throttle.html | 168 + docs/data/DriveData-class-sidebar.html | 112 + docs/data/DriveData-class.html | 1330 +++++ docs/data/DriveData/DriveData.fromBuffer.html | 126 + docs/data/DriveData/DriveData.fromJson.html | 126 + docs/data/DriveData/DriveData.html | 193 + docs/data/DriveData/batteryCurrent.html | 165 + docs/data/DriveData/batteryTemperature.html | 165 + docs/data/DriveData/batteryVoltage.html | 168 + docs/data/DriveData/clearBatteryCurrent.html | 134 + .../DriveData/clearBatteryTemperature.html | 134 + docs/data/DriveData/clearBatteryVoltage.html | 134 + docs/data/DriveData/clearFrontSwivel.html | 134 + docs/data/DriveData/clearFrontTilt.html | 134 + docs/data/DriveData/clearLeft.html | 134 + docs/data/DriveData/clearRearSwivel.html | 134 + docs/data/DriveData/clearRearTilt.html | 134 + docs/data/DriveData/clearRight.html | 134 + docs/data/DriveData/clearSetLeft.html | 134 + docs/data/DriveData/clearSetRight.html | 134 + docs/data/DriveData/clearSetThrottle.html | 134 + docs/data/DriveData/clearThrottle.html | 134 + docs/data/DriveData/clone.html | 141 + docs/data/DriveData/copyWith.html | 144 + docs/data/DriveData/create.html | 129 + docs/data/DriveData/createEmptyInstance.html | 136 + docs/data/DriveData/createRepeated.html | 128 + docs/data/DriveData/frontSwivel.html | 165 + docs/data/DriveData/frontTilt.html | 165 + docs/data/DriveData/getDefault.html | 129 + docs/data/DriveData/hasBatteryCurrent.html | 134 + .../data/DriveData/hasBatteryTemperature.html | 134 + docs/data/DriveData/hasBatteryVoltage.html | 134 + docs/data/DriveData/hasFrontSwivel.html | 134 + docs/data/DriveData/hasFrontTilt.html | 134 + docs/data/DriveData/hasLeft.html | 134 + docs/data/DriveData/hasRearSwivel.html | 134 + docs/data/DriveData/hasRearTilt.html | 134 + docs/data/DriveData/hasRight.html | 134 + docs/data/DriveData/hasSetLeft.html | 134 + docs/data/DriveData/hasSetRight.html | 134 + docs/data/DriveData/hasSetThrottle.html | 134 + docs/data/DriveData/hasThrottle.html | 134 + docs/data/DriveData/info_.html | 132 + docs/data/DriveData/left.html | 168 + docs/data/DriveData/rearSwivel.html | 165 + docs/data/DriveData/rearTilt.html | 165 + docs/data/DriveData/right.html | 168 + docs/data/DriveData/setLeft.html | 168 + docs/data/DriveData/setRight.html | 168 + docs/data/DriveData/setThrottle.html | 168 + docs/data/DriveData/throttle.html | 168 + docs/data/DriveMetrics-class-sidebar.html | 40 + docs/data/DriveMetrics-class.html | 423 ++ docs/data/DriveMetrics/DriveMetrics.html | 128 + docs/data/DriveMetrics/allMetrics.html | 149 + docs/data/DriveMetrics/batteryPercentage.html | 136 + docs/data/DriveMetrics/batteryVoltage.html | 136 + .../data/DriveMetrics/electricalSeverity.html | 145 + docs/data/DriveMetrics/name.html | 142 + docs/data/DriveMetrics/throttleSeverity.html | 146 + docs/data/DriveMetrics/update.html | 148 + .../EasterEggsSettings-class-sidebar.html | 32 + docs/data/EasterEggsSettings-class.html | 290 + .../EasterEggsSettings.fromJson.html | 133 + .../EasterEggsSettings.html | 137 + docs/data/EasterEggsSettings/badApple.html | 129 + .../data/EasterEggsSettings/enableClippy.html | 129 + docs/data/EasterEggsSettings/hashCode.html | 160 + .../data/EasterEggsSettings/noSuchMethod.html | 168 + .../EasterEggsSettings/operator_equals.html | 158 + docs/data/EasterEggsSettings/runtimeType.html | 135 + docs/data/EasterEggsSettings/segaIntro.html | 129 + docs/data/EasterEggsSettings/segaSound.html | 129 + docs/data/EasterEggsSettings/toJson.html | 137 + docs/data/EasterEggsSettings/toString.html | 140 + docs/data/GpsCoordinates-class-sidebar.html | 82 + docs/data/GpsCoordinates-class.html | 951 ++++ .../GpsCoordinates.fromBuffer.html | 126 + .../GpsCoordinates.fromJson.html | 126 + docs/data/GpsCoordinates/GpsCoordinates.html | 143 + docs/data/GpsCoordinates/altitude.html | 165 + docs/data/GpsCoordinates/clearAltitude.html | 134 + docs/data/GpsCoordinates/clearLatitude.html | 134 + docs/data/GpsCoordinates/clearLongitude.html | 134 + docs/data/GpsCoordinates/clone.html | 141 + docs/data/GpsCoordinates/copyWith.html | 144 + docs/data/GpsCoordinates/create.html | 129 + .../GpsCoordinates/createEmptyInstance.html | 136 + docs/data/GpsCoordinates/createRepeated.html | 128 + docs/data/GpsCoordinates/getDefault.html | 129 + docs/data/GpsCoordinates/hasAltitude.html | 134 + docs/data/GpsCoordinates/hasLatitude.html | 134 + docs/data/GpsCoordinates/hasLongitude.html | 134 + docs/data/GpsCoordinates/info_.html | 132 + docs/data/GpsCoordinates/latitude.html | 165 + docs/data/GpsCoordinates/longitude.html | 165 + docs/data/GpsUtils-extension-sidebar.html | 16 + docs/data/GpsUtils.html | 157 + docs/data/GpsUtils/distanceTo.html | 144 + docs/data/GripperCommand-class-sidebar.html | 100 + docs/data/GripperCommand-class.html | 1179 ++++ .../GripperCommand.fromBuffer.html | 126 + .../GripperCommand.fromJson.html | 126 + docs/data/GripperCommand/GripperCommand.html | 168 + docs/data/GripperCommand/calibrate.html | 165 + docs/data/GripperCommand/clearCalibrate.html | 134 + docs/data/GripperCommand/clearClose.html | 134 + docs/data/GripperCommand/clearLift.html | 134 + docs/data/GripperCommand/clearOpen.html | 134 + docs/data/GripperCommand/clearPinch.html | 134 + docs/data/GripperCommand/clearRotate.html | 134 + docs/data/GripperCommand/clearSpin.html | 134 + docs/data/GripperCommand/clearStop.html | 134 + docs/data/GripperCommand/clone.html | 141 + docs/data/GripperCommand/close.html | 165 + docs/data/GripperCommand/copyWith.html | 144 + docs/data/GripperCommand/create.html | 129 + .../GripperCommand/createEmptyInstance.html | 136 + docs/data/GripperCommand/createRepeated.html | 128 + docs/data/GripperCommand/ensureLift.html | 134 + docs/data/GripperCommand/ensurePinch.html | 134 + docs/data/GripperCommand/ensureRotate.html | 134 + docs/data/GripperCommand/getDefault.html | 129 + docs/data/GripperCommand/hasCalibrate.html | 134 + docs/data/GripperCommand/hasClose.html | 134 + docs/data/GripperCommand/hasLift.html | 134 + docs/data/GripperCommand/hasOpen.html | 134 + docs/data/GripperCommand/hasPinch.html | 134 + docs/data/GripperCommand/hasRotate.html | 134 + docs/data/GripperCommand/hasSpin.html | 134 + docs/data/GripperCommand/hasStop.html | 134 + docs/data/GripperCommand/info_.html | 132 + docs/data/GripperCommand/lift.html | 168 + docs/data/GripperCommand/open.html | 168 + docs/data/GripperCommand/pinch.html | 165 + docs/data/GripperCommand/rotate.html | 165 + docs/data/GripperCommand/spin.html | 165 + docs/data/GripperCommand/stop.html | 168 + docs/data/GripperData-class-sidebar.html | 85 + docs/data/GripperData-class.html | 989 ++++ .../GripperData/GripperData.fromBuffer.html | 126 + .../GripperData/GripperData.fromJson.html | 126 + docs/data/GripperData/GripperData.html | 143 + docs/data/GripperData/clearLift.html | 134 + docs/data/GripperData/clearPinch.html | 134 + docs/data/GripperData/clearRotate.html | 134 + docs/data/GripperData/clone.html | 141 + docs/data/GripperData/copyWith.html | 144 + docs/data/GripperData/create.html | 129 + .../data/GripperData/createEmptyInstance.html | 136 + docs/data/GripperData/createRepeated.html | 128 + docs/data/GripperData/ensureLift.html | 134 + docs/data/GripperData/ensurePinch.html | 134 + docs/data/GripperData/ensureRotate.html | 134 + docs/data/GripperData/getDefault.html | 129 + docs/data/GripperData/hasLift.html | 134 + docs/data/GripperData/hasPinch.html | 134 + docs/data/GripperData/hasRotate.html | 134 + docs/data/GripperData/info_.html | 132 + docs/data/GripperData/lift.html | 165 + docs/data/GripperData/pinch.html | 165 + docs/data/GripperData/rotate.html | 165 + docs/data/GripperMetrics-class-sidebar.html | 37 + docs/data/GripperMetrics-class.html | 384 ++ docs/data/GripperMetrics/GripperMetrics.html | 128 + docs/data/GripperMetrics/allMetrics.html | 153 + docs/data/GripperMetrics/getMotorData.html | 139 + docs/data/GripperMetrics/name.html | 142 + docs/data/Json.html | 128 + docs/data/LimitedList-extension-sidebar.html | 16 + docs/data/LimitedList.html | 157 + docs/data/LimitedList/pushWithLimit.html | 137 + docs/data/LogFormat-extension-sidebar.html | 16 + docs/data/LogFormat.html | 157 + docs/data/LogFormat/format.html | 141 + .../data/LogLevelUtils-extension-sidebar.html | 17 + docs/data/LogLevelUtils.html | 168 + docs/data/LogLevelUtils/humanName.html | 144 + docs/data/LogLevelUtils/label.html | 144 + docs/data/MapRecords-extension-sidebar.html | 16 + docs/data/MapRecords.html | 156 + docs/data/MapRecords/records.html | 140 + docs/data/MarsCommand-class-sidebar.html | 87 + docs/data/MarsCommand-class.html | 1014 ++++ .../MarsCommand/MarsCommand.fromBuffer.html | 126 + .../MarsCommand/MarsCommand.fromJson.html | 126 + docs/data/MarsCommand/MarsCommand.html | 148 + .../data/MarsCommand/baseStationOverride.html | 165 + .../MarsCommand/clearBaseStationOverride.html | 134 + docs/data/MarsCommand/clearRover.html | 134 + docs/data/MarsCommand/clearSwivel.html | 134 + docs/data/MarsCommand/clearTilt.html | 134 + docs/data/MarsCommand/clone.html | 141 + docs/data/MarsCommand/copyWith.html | 144 + docs/data/MarsCommand/create.html | 129 + .../data/MarsCommand/createEmptyInstance.html | 136 + docs/data/MarsCommand/createRepeated.html | 128 + .../ensureBaseStationOverride.html | 134 + docs/data/MarsCommand/ensureRover.html | 134 + docs/data/MarsCommand/getDefault.html | 129 + .../MarsCommand/hasBaseStationOverride.html | 134 + docs/data/MarsCommand/hasRover.html | 134 + docs/data/MarsCommand/hasSwivel.html | 134 + docs/data/MarsCommand/hasTilt.html | 134 + docs/data/MarsCommand/info_.html | 132 + docs/data/MarsCommand/rover.html | 168 + docs/data/MarsCommand/swivel.html | 168 + docs/data/MarsCommand/tilt.html | 165 + docs/data/MarsData-class-sidebar.html | 86 + docs/data/MarsData-class.html | 1001 ++++ docs/data/MarsData/MarsData.fromBuffer.html | 126 + docs/data/MarsData/MarsData.fromJson.html | 126 + docs/data/MarsData/MarsData.html | 148 + docs/data/MarsData/clearCoordinates.html | 134 + docs/data/MarsData/clearStatus.html | 134 + docs/data/MarsData/clearSwivel.html | 134 + docs/data/MarsData/clearTilt.html | 134 + docs/data/MarsData/clone.html | 141 + docs/data/MarsData/coordinates.html | 165 + docs/data/MarsData/copyWith.html | 144 + docs/data/MarsData/create.html | 129 + docs/data/MarsData/createEmptyInstance.html | 136 + docs/data/MarsData/createRepeated.html | 128 + docs/data/MarsData/ensureCoordinates.html | 134 + docs/data/MarsData/getDefault.html | 129 + docs/data/MarsData/hasCoordinates.html | 134 + docs/data/MarsData/hasStatus.html | 134 + docs/data/MarsData/hasSwivel.html | 134 + docs/data/MarsData/hasTilt.html | 134 + docs/data/MarsData/info_.html | 132 + docs/data/MarsData/status.html | 165 + docs/data/MarsData/swivel.html | 165 + docs/data/MarsData/tilt.html | 165 + docs/data/MarsStatus-class-sidebar.html | 35 + docs/data/MarsStatus-class.html | 351 ++ .../MarsStatus/FAILED_HANDSHAKE-constant.html | 125 + .../MARS_STATUS_UNDEFINED-constant.html | 125 + .../MarsStatus/PORT_NOT_FOUND-constant.html | 125 + .../MarsStatus/TEENSY_CONNECTED-constant.html | 125 + .../TEENSY_UNRESPONSIVE-constant.html | 125 + docs/data/MarsStatus/valueOf.html | 129 + docs/data/MarsStatus/values-constant.html | 131 + .../MarsStatusUtils-extension-sidebar.html | 16 + docs/data/MarsStatusUtils.html | 156 + docs/data/MarsStatusUtils/humanName.html | 146 + docs/data/Message.html | 128 + docs/data/MessageDecoder.html | 128 + docs/data/MessageHandler.html | 127 + docs/data/MessageUtils-extension-sidebar.html | 18 + docs/data/MessageUtils.html | 175 + docs/data/MessageUtils/messageName.html | 135 + docs/data/MessageUtils/wrap.html | 136 + docs/data/MetricLine-class-sidebar.html | 28 + docs/data/MetricLine-class.html | 245 + docs/data/MetricLine/MetricLine.html | 130 + docs/data/MetricLine/hashCode.html | 160 + docs/data/MetricLine/noSuchMethod.html | 168 + docs/data/MetricLine/operator_equals.html | 158 + docs/data/MetricLine/runtimeType.html | 135 + docs/data/MetricLine/severity.html | 129 + docs/data/MetricLine/text.html | 129 + docs/data/MetricLine/toString.html | 140 + docs/data/Metrics-class-sidebar.html | 36 + docs/data/Metrics-class.html | 382 ++ docs/data/Metrics/Metrics.html | 129 + docs/data/Metrics/allMetrics.html | 138 + docs/data/Metrics/data.html | 129 + docs/data/Metrics/name.html | 136 + docs/data/Metrics/overallSeverity.html | 141 + docs/data/Metrics/update.html | 137 + docs/data/MotorCommand-class-sidebar.html | 79 + docs/data/MotorCommand-class.html | 912 ++++ .../MotorCommand/MotorCommand.fromBuffer.html | 126 + .../MotorCommand/MotorCommand.fromJson.html | 126 + docs/data/MotorCommand/MotorCommand.html | 138 + docs/data/MotorCommand/clearMoveRadians.html | 134 + docs/data/MotorCommand/clearMoveSteps.html | 134 + docs/data/MotorCommand/clone.html | 141 + docs/data/MotorCommand/copyWith.html | 144 + docs/data/MotorCommand/create.html | 129 + .../MotorCommand/createEmptyInstance.html | 136 + docs/data/MotorCommand/createRepeated.html | 128 + docs/data/MotorCommand/getDefault.html | 129 + docs/data/MotorCommand/hasMoveRadians.html | 134 + docs/data/MotorCommand/hasMoveSteps.html | 134 + docs/data/MotorCommand/info_.html | 132 + docs/data/MotorCommand/moveRadians.html | 168 + docs/data/MotorCommand/moveSteps.html | 168 + docs/data/MotorData-class-sidebar.html | 91 + docs/data/MotorData-class.html | 1064 ++++ docs/data/MotorData/MotorData.fromBuffer.html | 126 + docs/data/MotorData/MotorData.fromJson.html | 126 + docs/data/MotorData/MotorData.html | 158 + docs/data/MotorData/angle.html | 165 + docs/data/MotorData/clearAngle.html | 134 + docs/data/MotorData/clearCurrentStep.html | 134 + docs/data/MotorData/clearDirection.html | 134 + .../MotorData/clearIsLimitSwitchPressed.html | 134 + docs/data/MotorData/clearIsMoving.html | 134 + docs/data/MotorData/clearTargetStep.html | 134 + docs/data/MotorData/clone.html | 141 + docs/data/MotorData/copyWith.html | 144 + docs/data/MotorData/create.html | 129 + docs/data/MotorData/createEmptyInstance.html | 136 + docs/data/MotorData/createRepeated.html | 128 + docs/data/MotorData/currentStep.html | 165 + docs/data/MotorData/direction.html | 165 + docs/data/MotorData/getDefault.html | 129 + docs/data/MotorData/hasAngle.html | 134 + docs/data/MotorData/hasCurrentStep.html | 134 + docs/data/MotorData/hasDirection.html | 134 + .../MotorData/hasIsLimitSwitchPressed.html | 134 + docs/data/MotorData/hasIsMoving.html | 134 + docs/data/MotorData/hasTargetStep.html | 134 + docs/data/MotorData/info_.html | 132 + docs/data/MotorData/isLimitSwitchPressed.html | 165 + docs/data/MotorData/isMoving.html | 165 + docs/data/MotorData/targetStep.html | 165 + docs/data/MotorDirection-class-sidebar.html | 40 + docs/data/MotorDirection-class.html | 411 ++ .../MotorDirection/CLOCKWISE-constant.html | 125 + .../data/MotorDirection/CLOSING-constant.html | 125 + .../COUNTER_CLOCKWISE-constant.html | 125 + docs/data/MotorDirection/DOWN-constant.html | 125 + docs/data/MotorDirection/LEFT-constant.html | 125 + .../MOTOR_DIRECTION_UNDEFINED-constant.html | 125 + .../MotorDirection/NOT_MOVING-constant.html | 125 + .../data/MotorDirection/OPENING-constant.html | 125 + docs/data/MotorDirection/RIGHT-constant.html | 125 + docs/data/MotorDirection/UP-constant.html | 125 + docs/data/MotorDirection/valueOf.html | 129 + docs/data/MotorDirection/values-constant.html | 136 + ...MotorDirectionUtils-extension-sidebar.html | 16 + docs/data/MotorDirectionUtils.html | 156 + docs/data/MotorDirectionUtils/humanName.html | 151 + docs/data/NetworkSettings-class-sidebar.html | 33 + docs/data/NetworkSettings-class.html | 302 ++ .../NetworkSettings.fromJson.html | 134 + .../data/NetworkSettings/NetworkSettings.html | 139 + docs/data/NetworkSettings/autonomySocket.html | 129 + .../NetworkSettings/connectionTimeout.html | 131 + docs/data/NetworkSettings/hashCode.html | 160 + docs/data/NetworkSettings/noSuchMethod.html | 168 + .../data/NetworkSettings/operator_equals.html | 158 + docs/data/NetworkSettings/runtimeType.html | 135 + .../NetworkSettings/subsystemsSocket.html | 129 + docs/data/NetworkSettings/tankSocket.html | 133 + docs/data/NetworkSettings/toJson.html | 138 + docs/data/NetworkSettings/toString.html | 140 + docs/data/NetworkSettings/videoSocket.html | 129 + docs/data/NumUtils-extension-sidebar.html | 17 + docs/data/NumUtils.html | 170 + docs/data/NumUtils/format.html | 132 + docs/data/NumUtils/toDegrees.html | 132 + docs/data/OperatingMode-enum-sidebar.html | 37 + docs/data/OperatingMode.html | 377 ++ docs/data/OperatingMode/OperatingMode.html | 129 + docs/data/OperatingMode/hashCode.html | 160 + docs/data/OperatingMode/index.html | 140 + docs/data/OperatingMode/name.html | 130 + docs/data/OperatingMode/noSuchMethod.html | 168 + docs/data/OperatingMode/operator_equals.html | 158 + docs/data/OperatingMode/runtimeType.html | 135 + docs/data/OperatingMode/toString.html | 140 + docs/data/OperatingMode/values-constant.html | 125 + docs/data/Orientation-class-sidebar.html | 82 + docs/data/Orientation-class.html | 950 ++++ .../Orientation/Orientation.fromBuffer.html | 126 + .../Orientation/Orientation.fromJson.html | 126 + docs/data/Orientation/Orientation.html | 143 + docs/data/Orientation/clearX.html | 134 + docs/data/Orientation/clearY.html | 134 + docs/data/Orientation/clearZ.html | 134 + docs/data/Orientation/clone.html | 141 + docs/data/Orientation/copyWith.html | 144 + docs/data/Orientation/create.html | 129 + .../data/Orientation/createEmptyInstance.html | 136 + docs/data/Orientation/createRepeated.html | 128 + docs/data/Orientation/getDefault.html | 129 + docs/data/Orientation/hasX.html | 134 + docs/data/Orientation/hasY.html | 134 + docs/data/Orientation/hasZ.html | 134 + docs/data/Orientation/info_.html | 132 + docs/data/Orientation/x.html | 165 + docs/data/Orientation/y.html | 165 + docs/data/Orientation/z.html | 165 + docs/data/PositionMetrics-class-sidebar.html | 39 + docs/data/PositionMetrics-class.html | 409 ++ .../data/PositionMetrics/PositionMetrics.html | 128 + docs/data/PositionMetrics/allMetrics.html | 154 + docs/data/PositionMetrics/angle.html | 136 + docs/data/PositionMetrics/baseStation.html | 161 + .../PositionMetrics/getRotationSeverity.html | 144 + docs/data/PositionMetrics/name.html | 142 + docs/data/PositionMetrics/update.html | 154 + docs/data/ProtoColor-class-sidebar.html | 82 + docs/data/ProtoColor-class.html | 951 ++++ .../ProtoColor/ProtoColor.fromBuffer.html | 126 + docs/data/ProtoColor/ProtoColor.fromJson.html | 126 + docs/data/ProtoColor/ProtoColor.html | 143 + docs/data/ProtoColor/blue.html | 165 + docs/data/ProtoColor/clearBlue.html | 134 + docs/data/ProtoColor/clearGreen.html | 134 + docs/data/ProtoColor/clearRed.html | 134 + docs/data/ProtoColor/clone.html | 141 + docs/data/ProtoColor/copyWith.html | 144 + docs/data/ProtoColor/create.html | 129 + docs/data/ProtoColor/createEmptyInstance.html | 136 + docs/data/ProtoColor/createRepeated.html | 128 + docs/data/ProtoColor/getDefault.html | 129 + docs/data/ProtoColor/green.html | 165 + docs/data/ProtoColor/hasBlue.html | 134 + docs/data/ProtoColor/hasGreen.html | 134 + docs/data/ProtoColor/hasRed.html | 134 + docs/data/ProtoColor/info_.html | 132 + docs/data/ProtoColor/red.html | 165 + docs/data/PumpState-class-sidebar.html | 33 + docs/data/PumpState-class.html | 323 ++ docs/data/PumpState/PUMP_OFF-constant.html | 125 + docs/data/PumpState/PUMP_ON-constant.html | 125 + .../PUMP_STATE_UNDEFINED-constant.html | 125 + docs/data/PumpState/valueOf.html | 129 + docs/data/PumpState/values-constant.html | 129 + docs/data/RawDataHandler.html | 127 + docs/data/RoverPosition-class-sidebar.html | 81 + docs/data/RoverPosition-class.html | 938 ++++ .../RoverPosition.fromBuffer.html | 126 + .../RoverPosition/RoverPosition.fromJson.html | 126 + docs/data/RoverPosition/RoverPosition.html | 138 + docs/data/RoverPosition/clearGps.html | 134 + docs/data/RoverPosition/clearOrientation.html | 134 + docs/data/RoverPosition/clone.html | 141 + docs/data/RoverPosition/copyWith.html | 144 + docs/data/RoverPosition/create.html | 129 + .../RoverPosition/createEmptyInstance.html | 136 + docs/data/RoverPosition/createRepeated.html | 128 + docs/data/RoverPosition/ensureGps.html | 134 + .../data/RoverPosition/ensureOrientation.html | 134 + docs/data/RoverPosition/getDefault.html | 129 + docs/data/RoverPosition/gps.html | 165 + docs/data/RoverPosition/hasGps.html | 134 + docs/data/RoverPosition/hasOrientation.html | 134 + docs/data/RoverPosition/info_.html | 132 + docs/data/RoverPosition/orientation.html | 165 + docs/data/RoverStatus-class-sidebar.html | 36 + docs/data/RoverStatus-class.html | 370 ++ .../data/RoverStatus/AUTONOMOUS-constant.html | 125 + .../RoverStatus/DISCONNECTED-constant.html | 125 + docs/data/RoverStatus/IDLE-constant.html | 125 + docs/data/RoverStatus/MANUAL-constant.html | 125 + docs/data/RoverStatus/POWER_OFF-constant.html | 125 + docs/data/RoverStatus/RESTART-constant.html | 125 + docs/data/RoverStatus/valueOf.html | 129 + docs/data/RoverStatus/values-constant.html | 132 + ...overStatusHumanName-extension-sidebar.html | 16 + docs/data/RoverStatusHumanName.html | 156 + docs/data/RoverStatusHumanName/humanName.html | 147 + docs/data/RoverType-enum-sidebar.html | 34 + docs/data/RoverType.html | 316 ++ docs/data/RoverType/RoverType.html | 121 + docs/data/RoverType/hashCode.html | 160 + docs/data/RoverType/humanName.html | 142 + docs/data/RoverType/index.html | 140 + docs/data/RoverType/noSuchMethod.html | 168 + docs/data/RoverType/operator_equals.html | 158 + docs/data/RoverType/runtimeType.html | 135 + docs/data/RoverType/toString.html | 140 + docs/data/RoverType/values-constant.html | 125 + docs/data/SampleData-class-sidebar.html | 34 + docs/data/SampleData-class.html | 319 ++ docs/data/SampleData/SampleData.html | 121 + docs/data/SampleData/addReading.html | 142 + docs/data/SampleData/average.html | 130 + docs/data/SampleData/clear.html | 137 + docs/data/SampleData/firstTimestamp.html | 130 + docs/data/SampleData/hashCode.html | 160 + docs/data/SampleData/max.html | 129 + docs/data/SampleData/min.html | 129 + docs/data/SampleData/noSuchMethod.html | 168 + docs/data/SampleData/operator_equals.html | 158 + docs/data/SampleData/readings.html | 129 + docs/data/SampleData/runtimeType.html | 135 + docs/data/SampleData/sum.html | 129 + docs/data/SampleData/toString.html | 140 + docs/data/ScienceCommand-class-sidebar.html | 121 + docs/data/ScienceCommand-class.html | 1444 +++++ .../ScienceCommand.fromBuffer.html | 126 + .../ScienceCommand.fromJson.html | 126 + docs/data/ScienceCommand/ScienceCommand.html | 208 + docs/data/ScienceCommand/calibrate.html | 168 + docs/data/ScienceCommand/clearCalibrate.html | 134 + .../ScienceCommand/clearDirtCarousel.html | 134 + docs/data/ScienceCommand/clearDirtLinear.html | 134 + .../data/ScienceCommand/clearDirtRelease.html | 134 + .../data/ScienceCommand/clearNextSection.html | 134 + docs/data/ScienceCommand/clearNextTube.html | 134 + docs/data/ScienceCommand/clearPump1.html | 134 + docs/data/ScienceCommand/clearPump2.html | 134 + docs/data/ScienceCommand/clearPump3.html | 134 + docs/data/ScienceCommand/clearPump4.html | 134 + docs/data/ScienceCommand/clearSample.html | 134 + .../ScienceCommand/clearScienceLinear.html | 134 + docs/data/ScienceCommand/clearState.html | 134 + docs/data/ScienceCommand/clearStop.html | 134 + docs/data/ScienceCommand/clearVacuum.html | 134 + .../ScienceCommand/clearVacuumLinear.html | 134 + docs/data/ScienceCommand/clone.html | 141 + docs/data/ScienceCommand/copyWith.html | 144 + docs/data/ScienceCommand/create.html | 129 + .../ScienceCommand/createEmptyInstance.html | 136 + docs/data/ScienceCommand/createRepeated.html | 128 + docs/data/ScienceCommand/dirtCarousel.html | 168 + docs/data/ScienceCommand/dirtLinear.html | 165 + docs/data/ScienceCommand/dirtRelease.html | 165 + docs/data/ScienceCommand/getDefault.html | 129 + docs/data/ScienceCommand/hasCalibrate.html | 134 + docs/data/ScienceCommand/hasDirtCarousel.html | 134 + docs/data/ScienceCommand/hasDirtLinear.html | 134 + docs/data/ScienceCommand/hasDirtRelease.html | 134 + docs/data/ScienceCommand/hasNextSection.html | 134 + docs/data/ScienceCommand/hasNextTube.html | 134 + docs/data/ScienceCommand/hasPump1.html | 134 + docs/data/ScienceCommand/hasPump2.html | 134 + docs/data/ScienceCommand/hasPump3.html | 134 + docs/data/ScienceCommand/hasPump4.html | 134 + docs/data/ScienceCommand/hasSample.html | 134 + .../data/ScienceCommand/hasScienceLinear.html | 134 + docs/data/ScienceCommand/hasState.html | 134 + docs/data/ScienceCommand/hasStop.html | 134 + docs/data/ScienceCommand/hasVacuum.html | 134 + docs/data/ScienceCommand/hasVacuumLinear.html | 134 + docs/data/ScienceCommand/info_.html | 132 + docs/data/ScienceCommand/nextSection.html | 165 + docs/data/ScienceCommand/nextTube.html | 165 + docs/data/ScienceCommand/pump1.html | 168 + docs/data/ScienceCommand/pump2.html | 165 + docs/data/ScienceCommand/pump3.html | 165 + docs/data/ScienceCommand/pump4.html | 165 + docs/data/ScienceCommand/sample.html | 165 + docs/data/ScienceCommand/scienceLinear.html | 165 + docs/data/ScienceCommand/state.html | 165 + docs/data/ScienceCommand/stop.html | 165 + docs/data/ScienceCommand/vacuum.html | 168 + docs/data/ScienceCommand/vacuumLinear.html | 165 + docs/data/ScienceData-class-sidebar.html | 94 + docs/data/ScienceData-class.html | 1102 ++++ .../ScienceData/ScienceData.fromBuffer.html | 126 + .../ScienceData/ScienceData.fromJson.html | 126 + docs/data/ScienceData/ScienceData.html | 163 + docs/data/ScienceData/clearCo2.html | 134 + docs/data/ScienceData/clearHumidity.html | 134 + docs/data/ScienceData/clearMethane.html | 134 + docs/data/ScienceData/clearPH.html | 134 + docs/data/ScienceData/clearSample.html | 134 + docs/data/ScienceData/clearState.html | 134 + docs/data/ScienceData/clearTemperature.html | 134 + docs/data/ScienceData/clone.html | 141 + docs/data/ScienceData/co2.html | 165 + docs/data/ScienceData/copyWith.html | 144 + docs/data/ScienceData/create.html | 129 + .../data/ScienceData/createEmptyInstance.html | 136 + docs/data/ScienceData/createRepeated.html | 128 + docs/data/ScienceData/getDefault.html | 129 + docs/data/ScienceData/hasCo2.html | 134 + docs/data/ScienceData/hasHumidity.html | 134 + docs/data/ScienceData/hasMethane.html | 134 + docs/data/ScienceData/hasPH.html | 134 + docs/data/ScienceData/hasSample.html | 134 + docs/data/ScienceData/hasState.html | 134 + docs/data/ScienceData/hasTemperature.html | 134 + docs/data/ScienceData/humidity.html | 165 + docs/data/ScienceData/info_.html | 132 + docs/data/ScienceData/methane.html | 165 + docs/data/ScienceData/pH.html | 165 + docs/data/ScienceData/sample.html | 165 + docs/data/ScienceData/state.html | 165 + docs/data/ScienceData/temperature.html | 165 + docs/data/ScienceMetrics-class-sidebar.html | 36 + docs/data/ScienceMetrics-class.html | 373 ++ docs/data/ScienceMetrics/ScienceMetrics.html | 128 + docs/data/ScienceMetrics/allMetrics.html | 150 + docs/data/ScienceMetrics/name.html | 142 + docs/data/ScienceMetrics/update.html | 142 + docs/data/ScienceResult-enum-sidebar.html | 35 + docs/data/ScienceResult.html | 324 ++ docs/data/ScienceResult/ScienceResult.html | 121 + docs/data/ScienceResult/hashCode.html | 160 + docs/data/ScienceResult/index.html | 140 + docs/data/ScienceResult/noSuchMethod.html | 168 + docs/data/ScienceResult/operator_equals.html | 158 + docs/data/ScienceResult/runtimeType.html | 135 + docs/data/ScienceResult/toString.html | 140 + docs/data/ScienceResult/values-constant.html | 125 + docs/data/ScienceSensor-class-sidebar.html | 29 + docs/data/ScienceSensor-class.html | 258 + docs/data/ScienceSensor/ScienceSensor.html | 135 + docs/data/ScienceSensor/hashCode.html | 160 + docs/data/ScienceSensor/name.html | 129 + docs/data/ScienceSensor/noSuchMethod.html | 168 + docs/data/ScienceSensor/operator_equals.html | 158 + docs/data/ScienceSensor/runtimeType.html | 135 + docs/data/ScienceSensor/test.html | 129 + docs/data/ScienceSensor/testDescription.html | 129 + docs/data/ScienceSensor/toString.html | 140 + docs/data/ScienceSettings-class-sidebar.html | 30 + docs/data/ScienceSettings-class.html | 265 + .../ScienceSettings.fromJson.html | 131 + .../data/ScienceSettings/ScienceSettings.html | 130 + docs/data/ScienceSettings/hashCode.html | 160 + docs/data/ScienceSettings/noSuchMethod.html | 168 + docs/data/ScienceSettings/numSamples.html | 129 + .../data/ScienceSettings/operator_equals.html | 158 + docs/data/ScienceSettings/runtimeType.html | 135 + .../ScienceSettings/scrollableGraphs.html | 130 + docs/data/ScienceSettings/toJson.html | 134 + docs/data/ScienceSettings/toString.html | 140 + docs/data/ScienceState-class-sidebar.html | 33 + docs/data/ScienceState-class.html | 327 ++ .../ScienceState/COLLECT_DATA-constant.html | 125 + .../SCIENCE_STATE_UNDEFINED-constant.html | 125 + .../STOP_COLLECTING-constant.html | 125 + docs/data/ScienceState/valueOf.html | 129 + docs/data/ScienceState/values-constant.html | 129 + .../ScienceStateUtils-extension-sidebar.html | 16 + docs/data/ScienceStateUtils.html | 156 + docs/data/ScienceStateUtils/humanName.html | 144 + docs/data/ScienceTest.html | 127 + docs/data/SensorReading-class-sidebar.html | 28 + docs/data/SensorReading-class.html | 246 + docs/data/SensorReading/SensorReading.html | 130 + docs/data/SensorReading/hashCode.html | 160 + docs/data/SensorReading/noSuchMethod.html | 168 + docs/data/SensorReading/operator_equals.html | 158 + docs/data/SensorReading/runtimeType.html | 135 + docs/data/SensorReading/time.html | 129 + docs/data/SensorReading/toString.html | 140 + docs/data/SensorReading/value.html | 129 + docs/data/Settings-class-sidebar.html | 33 + docs/data/Settings-class.html | 301 ++ docs/data/Settings/Settings.fromJson.html | 134 + docs/data/Settings/Settings.html | 139 + docs/data/Settings/arm.html | 129 + docs/data/Settings/dashboard.html | 129 + docs/data/Settings/easterEggs.html | 130 + docs/data/Settings/hashCode.html | 160 + docs/data/Settings/network.html | 129 + docs/data/Settings/noSuchMethod.html | 168 + docs/data/Settings/operator_equals.html | 158 + docs/data/Settings/runtimeType.html | 135 + docs/data/Settings/science.html | 129 + docs/data/Settings/toJson.html | 138 + docs/data/Settings/toString.html | 140 + .../SettingsParser-extension-sidebar.html | 16 + docs/data/SettingsParser.html | 157 + docs/data/SettingsParser/getSocket.html | 137 + docs/data/Severity-enum-sidebar.html | 34 + docs/data/Severity.html | 324 ++ docs/data/Severity/Severity.html | 121 + docs/data/Severity/hashCode.html | 160 + docs/data/Severity/index.html | 140 + docs/data/Severity/noSuchMethod.html | 168 + docs/data/Severity/operator_equals.html | 158 + docs/data/Severity/runtimeType.html | 135 + docs/data/Severity/toString.html | 140 + docs/data/Severity/values-constant.html | 125 + docs/data/SocketInfo-class-sidebar.html | 32 + docs/data/SocketInfo-class.html | 303 ++ docs/data/SocketInfo/SocketInfo.fromJson.html | 130 + docs/data/SocketInfo/SocketInfo.html | 129 + docs/data/SocketInfo/SocketInfo.raw.html | 129 + docs/data/SocketInfo/address.html | 128 + docs/data/SocketInfo/copyWith.html | 136 + docs/data/SocketInfo/hashCode.html | 166 + docs/data/SocketInfo/noSuchMethod.html | 168 + docs/data/SocketInfo/operator_equals.html | 166 + docs/data/SocketInfo/port.html | 128 + docs/data/SocketInfo/runtimeType.html | 135 + docs/data/SocketInfo/toJson.html | 134 + docs/data/SocketInfo/toString.html | 146 + docs/data/SplitMode-enum-sidebar.html | 33 + docs/data/SplitMode.html | 306 ++ docs/data/SplitMode/SplitMode.html | 129 + docs/data/SplitMode/hashCode.html | 160 + docs/data/SplitMode/humanName.html | 129 + docs/data/SplitMode/index.html | 140 + docs/data/SplitMode/noSuchMethod.html | 168 + docs/data/SplitMode/operator_equals.html | 158 + docs/data/SplitMode/runtimeType.html | 135 + docs/data/SplitMode/toString.html | 140 + docs/data/SplitMode/values-constant.html | 125 + docs/data/TaskbarMessage-class-sidebar.html | 28 + docs/data/TaskbarMessage-class.html | 245 + docs/data/TaskbarMessage/TaskbarMessage.html | 133 + docs/data/TaskbarMessage/hashCode.html | 160 + docs/data/TaskbarMessage/noSuchMethod.html | 168 + docs/data/TaskbarMessage/operator_equals.html | 158 + docs/data/TaskbarMessage/runtimeType.html | 135 + docs/data/TaskbarMessage/severity.html | 129 + docs/data/TaskbarMessage/text.html | 129 + docs/data/TaskbarMessage/toString.html | 140 + .../ThemeModeUtils-extension-sidebar.html | 16 + docs/data/ThemeModeUtils.html | 156 + docs/data/ThemeModeUtils/humanName.html | 140 + docs/data/Timestamp-class-sidebar.html | 81 + docs/data/Timestamp-class.html | 1020 ++++ docs/data/Timestamp/Timestamp.fromBuffer.html | 126 + docs/data/Timestamp/Timestamp.fromJson.html | 126 + docs/data/Timestamp/Timestamp.html | 138 + docs/data/Timestamp/clearNanos.html | 134 + docs/data/Timestamp/clearSeconds.html | 134 + docs/data/Timestamp/clone.html | 141 + docs/data/Timestamp/copyWith.html | 144 + docs/data/Timestamp/create.html | 129 + docs/data/Timestamp/createEmptyInstance.html | 136 + docs/data/Timestamp/createRepeated.html | 128 + docs/data/Timestamp/fromDateTime.html | 137 + docs/data/Timestamp/getDefault.html | 129 + docs/data/Timestamp/hasNanos.html | 134 + docs/data/Timestamp/hasSeconds.html | 134 + docs/data/Timestamp/info_.html | 132 + docs/data/Timestamp/nanos.html | 171 + docs/data/Timestamp/seconds.html | 170 + docs/data/Timestamp/toDateTime.html | 138 + .../TimestampUtils-extension-sidebar.html | 19 + docs/data/TimestampUtils.html | 190 + docs/data/TimestampUtils/now.html | 132 + docs/data/TimestampUtils/operator_minus.html | 133 + docs/data/TimestampUtils/operator_plus.html | 133 + .../UndefinedFilter-extension-sidebar.html | 16 + docs/data/UndefinedFilter.html | 156 + docs/data/UndefinedFilter/filtered.html | 140 + docs/data/Unwrapper-extension-sidebar.html | 16 + docs/data/Unwrapper.html | 157 + docs/data/Unwrapper/decode.html | 133 + docs/data/UpdateSetting-class-sidebar.html | 80 + docs/data/UpdateSetting-class.html | 931 ++++ .../UpdateSetting.fromBuffer.html | 126 + .../UpdateSetting/UpdateSetting.fromJson.html | 126 + docs/data/UpdateSetting/UpdateSetting.html | 138 + docs/data/UpdateSetting/clearColor.html | 134 + docs/data/UpdateSetting/clearStatus.html | 134 + docs/data/UpdateSetting/clone.html | 141 + docs/data/UpdateSetting/color.html | 165 + docs/data/UpdateSetting/copyWith.html | 144 + docs/data/UpdateSetting/create.html | 129 + .../UpdateSetting/createEmptyInstance.html | 136 + docs/data/UpdateSetting/createRepeated.html | 128 + docs/data/UpdateSetting/ensureColor.html | 134 + docs/data/UpdateSetting/getDefault.html | 129 + docs/data/UpdateSetting/hasColor.html | 134 + docs/data/UpdateSetting/hasStatus.html | 134 + docs/data/UpdateSetting/info_.html | 132 + docs/data/UpdateSetting/status.html | 165 + docs/data/VideoCommand-class-sidebar.html | 80 + docs/data/VideoCommand-class.html | 930 ++++ .../VideoCommand/VideoCommand.fromBuffer.html | 126 + .../VideoCommand/VideoCommand.fromJson.html | 126 + docs/data/VideoCommand/VideoCommand.html | 138 + docs/data/VideoCommand/clearDetails.html | 134 + docs/data/VideoCommand/clearId.html | 134 + docs/data/VideoCommand/clone.html | 141 + docs/data/VideoCommand/copyWith.html | 144 + docs/data/VideoCommand/create.html | 129 + .../VideoCommand/createEmptyInstance.html | 136 + docs/data/VideoCommand/createRepeated.html | 128 + docs/data/VideoCommand/details.html | 170 + docs/data/VideoCommand/ensureDetails.html | 134 + docs/data/VideoCommand/getDefault.html | 129 + docs/data/VideoCommand/hasDetails.html | 134 + docs/data/VideoCommand/hasId.html | 134 + docs/data/VideoCommand/id.html | 168 + docs/data/VideoCommand/info_.html | 132 + docs/data/VideoData-class-sidebar.html | 83 + docs/data/VideoData-class.html | 967 ++++ docs/data/VideoData/VideoData.fromBuffer.html | 126 + docs/data/VideoData/VideoData.fromJson.html | 126 + docs/data/VideoData/VideoData.html | 143 + docs/data/VideoData/clearDetails.html | 134 + docs/data/VideoData/clearFrame.html | 134 + docs/data/VideoData/clearId.html | 134 + docs/data/VideoData/clone.html | 141 + docs/data/VideoData/copyWith.html | 144 + docs/data/VideoData/create.html | 129 + docs/data/VideoData/createEmptyInstance.html | 136 + docs/data/VideoData/createRepeated.html | 128 + docs/data/VideoData/details.html | 168 + docs/data/VideoData/ensureDetails.html | 134 + docs/data/VideoData/frame.html | 168 + docs/data/VideoData/getDefault.html | 129 + docs/data/VideoData/hasDetails.html | 134 + docs/data/VideoData/hasFrame.html | 134 + docs/data/VideoData/hasId.html | 134 + docs/data/VideoData/id.html | 168 + docs/data/VideoData/info_.html | 132 + .../VideoDataUtils-extension-sidebar.html | 16 + docs/data/VideoDataUtils.html | 156 + docs/data/VideoDataUtils/hasFrame.html | 137 + docs/data/WrappedMessage-class-sidebar.html | 83 + docs/data/WrappedMessage-class.html | 964 ++++ .../WrappedMessage.fromBuffer.html | 126 + .../WrappedMessage.fromJson.html | 126 + docs/data/WrappedMessage/WrappedMessage.html | 143 + docs/data/WrappedMessage/clearData.html | 134 + docs/data/WrappedMessage/clearName.html | 134 + docs/data/WrappedMessage/clearTimestamp.html | 134 + docs/data/WrappedMessage/clone.html | 141 + docs/data/WrappedMessage/copyWith.html | 144 + docs/data/WrappedMessage/create.html | 129 + .../WrappedMessage/createEmptyInstance.html | 136 + docs/data/WrappedMessage/createRepeated.html | 128 + docs/data/WrappedMessage/data.html | 165 + docs/data/WrappedMessage/ensureTimestamp.html | 134 + docs/data/WrappedMessage/getDefault.html | 129 + docs/data/WrappedMessage/hasData.html | 134 + docs/data/WrappedMessage/hasName.html | 134 + docs/data/WrappedMessage/hasTimestamp.html | 134 + docs/data/WrappedMessage/info_.html | 132 + docs/data/WrappedMessage/name.html | 165 + docs/data/WrappedMessage/timestamp.html | 165 + docs/data/WrappedMessageHandler.html | 127 + docs/data/co2-constant.html | 133 + docs/data/co2Test.html | 134 + docs/data/data-library-sidebar.html | 121 + docs/data/data-library.html | 1187 ++++ docs/data/getCommandName.html | 138 + docs/data/getDataName.html | 138 + docs/data/humidity-constant.html | 133 + docs/data/humidityTest.html | 133 + docs/data/sensors-constant.html | 129 + docs/data/temperature-constant.html | 133 + docs/data/temperatureTest.html | 133 + .../DashboardException-class-sidebar.html | 26 + docs/errors/DashboardException-class.html | 250 + .../DashboardException.html | 128 + docs/errors/DashboardException/hashCode.html | 160 + .../DashboardException/noSuchMethod.html | 168 + .../DashboardException/operator_equals.html | 158 + .../DashboardException/runtimeType.html | 135 + docs/errors/DashboardException/toString.html | 140 + docs/errors/errors-library-sidebar.html | 13 + docs/errors/errors-library.html | 153 + docs/index.html | 221 + docs/index.json | 1 + docs/main/main-library-sidebar.html | 15 + docs/main/main-library.html | 184 + docs/main/main.html | 141 + docs/main/networkErrors-constant.html | 129 + docs/models/AddressBuilder-class-sidebar.html | 39 + docs/models/AddressBuilder-class.html | 402 ++ .../models/AddressBuilder/AddressBuilder.html | 129 + docs/models/AddressBuilder/regex.html | 129 + docs/models/AddressBuilder/update.html | 153 + docs/models/ArmControls-class-sidebar.html | 38 + docs/models/ArmControls-class.html | 390 ++ docs/models/ArmControls/ArmControls.html | 121 + docs/models/ArmControls/buttonMapping.html | 171 + docs/models/ArmControls/ik.html | 130 + docs/models/ArmControls/isAPressed.html | 129 + docs/models/ArmControls/isBPressed.html | 129 + docs/models/ArmControls/isXPressed.html | 129 + docs/models/ArmControls/isYPressed.html | 129 + docs/models/ArmControls/mode.html | 142 + docs/models/ArmControls/onDispose.html | 143 + docs/models/ArmControls/parseInputs.html | 170 + docs/models/ArmControls/settings.html | 136 + docs/models/ArmControls/updateIK.html | 139 + docs/models/ArmControls/updateState.html | 144 + .../ArmSettingsBuilder-class-sidebar.html | 43 + docs/models/ArmSettingsBuilder-class.html | 455 ++ .../ArmSettingsBuilder.html | 146 + docs/models/ArmSettingsBuilder/elbow.html | 129 + docs/models/ArmSettingsBuilder/ik.html | 129 + docs/models/ArmSettingsBuilder/isValid.html | 149 + docs/models/ArmSettingsBuilder/lift.html | 129 + docs/models/ArmSettingsBuilder/pinch.html | 129 + docs/models/ArmSettingsBuilder/rotate.html | 129 + docs/models/ArmSettingsBuilder/shoulder.html | 129 + docs/models/ArmSettingsBuilder/swivel.html | 129 + docs/models/ArmSettingsBuilder/updateIK.html | 136 + docs/models/ArmSettingsBuilder/useIK.html | 129 + docs/models/ArmSettingsBuilder/value.html | 151 + docs/models/AutonomyCell-enum-sidebar.html | 36 + docs/models/AutonomyCell.html | 336 ++ docs/models/AutonomyCell/AutonomyCell.html | 121 + docs/models/AutonomyCell/hashCode.html | 160 + docs/models/AutonomyCell/index.html | 140 + docs/models/AutonomyCell/noSuchMethod.html | 168 + docs/models/AutonomyCell/operator_equals.html | 158 + docs/models/AutonomyCell/runtimeType.html | 135 + docs/models/AutonomyCell/toString.html | 140 + docs/models/AutonomyCell/values-constant.html | 125 + .../AutonomyCommandBuilder-class-sidebar.html | 41 + docs/models/AutonomyCommandBuilder-class.html | 434 ++ .../AutonomyCommandBuilder.html | 128 + docs/models/AutonomyCommandBuilder/abort.html | 150 + .../AutonomyCommandBuilder/dispose.html | 147 + docs/models/AutonomyCommandBuilder/gps.html | 129 + docs/models/AutonomyCommandBuilder/init.html | 139 + .../AutonomyCommandBuilder/isLoading.html | 129 + .../AutonomyCommandBuilder/isValid.html | 143 + .../models/AutonomyCommandBuilder/submit.html | 146 + docs/models/AutonomyCommandBuilder/task.html | 129 + .../AutonomyCommandBuilder/updateTask.html | 136 + docs/models/AutonomyCommandBuilder/value.html | 145 + docs/models/AutonomyModel-class-sidebar.html | 58 + docs/models/AutonomyModel-class.html | 641 +++ docs/models/AutonomyModel/AutonomyModel.html | 128 + .../AutonomyModel/badAppleAudioPlayer.html | 129 + .../AutonomyModel/badAppleFps-constant.html | 129 + docs/models/AutonomyModel/badAppleFrame.html | 129 + .../badAppleLastFrame-constant.html | 129 + docs/models/AutonomyModel/badAppleTimer.html | 129 + docs/models/AutonomyModel/clearMarkers.html | 136 + docs/models/AutonomyModel/data.html | 129 + docs/models/AutonomyModel/dispose.html | 150 + docs/models/AutonomyModel/empty.html | 141 + docs/models/AutonomyModel/gpsToBlock.html | 133 + docs/models/AutonomyModel/grid.html | 152 + docs/models/AutonomyModel/gridSize.html | 130 + docs/models/AutonomyModel/init.html | 145 + .../AutonomyModel/isPlayingBadApple.html | 129 + docs/models/AutonomyModel/markCell.html | 147 + docs/models/AutonomyModel/markerBuilder.html | 129 + docs/models/AutonomyModel/markers.html | 129 + docs/models/AutonomyModel/offset.html | 129 + docs/models/AutonomyModel/onNewData.html | 137 + docs/models/AutonomyModel/placeMarker.html | 136 + docs/models/AutonomyModel/recenterRover.html | 147 + docs/models/AutonomyModel/roverHeading.html | 136 + docs/models/AutonomyModel/roverPosition.html | 136 + docs/models/AutonomyModel/startBadApple.html | 140 + docs/models/AutonomyModel/stopBadApple.html | 139 + docs/models/AutonomyModel/updateMarker.html | 139 + docs/models/AutonomyModel/zoom.html | 136 + docs/models/CameraControls-class-sidebar.html | 31 + docs/models/CameraControls-class.html | 305 ++ .../models/CameraControls/CameraControls.html | 121 + docs/models/CameraControls/buttonMapping.html | 147 + docs/models/CameraControls/mode.html | 142 + docs/models/CameraControls/onDispose.html | 143 + docs/models/CameraControls/parseInputs.html | 149 + .../CameraDetailsBuilder-class-sidebar.html | 46 + docs/models/CameraDetailsBuilder-class.html | 486 ++ .../CameraDetailsBuilder.html | 135 + docs/models/CameraDetailsBuilder/error.html | 129 + docs/models/CameraDetailsBuilder/fps.html | 129 + .../CameraDetailsBuilder/isLoading.html | 129 + docs/models/CameraDetailsBuilder/isValid.html | 147 + docs/models/CameraDetailsBuilder/name.html | 131 + .../okStatuses-constant.html | 129 + .../CameraDetailsBuilder/otherBuilders.html | 142 + docs/models/CameraDetailsBuilder/quality.html | 129 + .../resolutionHeight.html | 129 + .../CameraDetailsBuilder/resolutionWidth.html | 129 + .../CameraDetailsBuilder/saveSettings.html | 145 + docs/models/CameraDetailsBuilder/status.html | 130 + .../CameraDetailsBuilder/updateStatus.html | 144 + docs/models/CameraDetailsBuilder/value.html | 149 + docs/models/ColorBuilder-class-sidebar.html | 40 + docs/models/ColorBuilder-class.html | 420 ++ docs/models/ColorBuilder/ColorBuilder.html | 128 + docs/models/ColorBuilder/color.html | 129 + docs/models/ColorBuilder/errorText.html | 129 + docs/models/ColorBuilder/isLoading.html | 129 + docs/models/ColorBuilder/isValid.html | 143 + docs/models/ColorBuilder/setColor.html | 141 + docs/models/ColorBuilder/slider.html | 130 + docs/models/ColorBuilder/updateSlider.html | 137 + docs/models/ColorBuilder/value.html | 142 + docs/models/ColorUtils-extension-sidebar.html | 17 + docs/models/ColorUtils.html | 170 + docs/models/ColorUtils/fromColor.html | 137 + docs/models/ColorUtils/toColor.html | 134 + docs/models/Controller-class-sidebar.html | 41 + docs/models/Controller-class.html | 439 ++ docs/models/Controller/Controller.html | 130 + docs/models/Controller/connect.html | 140 + docs/models/Controller/controls.html | 129 + docs/models/Controller/dispose.html | 149 + docs/models/Controller/gamepad.html | 136 + docs/models/Controller/gamepadIndex.html | 129 + docs/models/Controller/gamepadTimer.html | 129 + docs/models/Controller/init.html | 141 + docs/models/Controller/isConnected.html | 136 + docs/models/Controller/mode.html | 136 + docs/models/Controller/setMode.html | 139 + docs/models/Controller/setModeIndex.html | 133 + ...ashboardSettingsBuilder-class-sidebar.html | 40 + .../DashboardSettingsBuilder-class.html | 420 ++ .../DashboardSettingsBuilder.html | 133 + .../DashboardSettingsBuilder/blockSize.html | 129 + docs/models/DashboardSettingsBuilder/fps.html | 129 + .../DashboardSettingsBuilder/isValid.html | 143 + .../DashboardSettingsBuilder/splitMode.html | 129 + .../DashboardSettingsBuilder/themeMode.html | 129 + .../updateSplitMode.html | 137 + .../updateThemeMode.html | 137 + .../DashboardSettingsBuilder/value.html | 147 + docs/models/DashboardView-class-sidebar.html | 34 + docs/models/DashboardView-class.html | 312 ++ docs/models/DashboardView/DashboardView.html | 132 + docs/models/DashboardView/blank.html | 144 + docs/models/DashboardView/builder.html | 129 + docs/models/DashboardView/cameraViews.html | 136 + docs/models/DashboardView/flutterKey.html | 129 + docs/models/DashboardView/hashCode.html | 160 + docs/models/DashboardView/key.html | 129 + docs/models/DashboardView/name.html | 129 + docs/models/DashboardView/noSuchMethod.html | 168 + .../models/DashboardView/operator_equals.html | 158 + docs/models/DashboardView/runtimeType.html | 135 + docs/models/DashboardView/toString.html | 140 + docs/models/DashboardView/uiViews.html | 134 + docs/models/DriveControls-class-sidebar.html | 31 + docs/models/DriveControls-class.html | 305 ++ docs/models/DriveControls/DriveControls.html | 121 + docs/models/DriveControls/buttonMapping.html | 148 + docs/models/DriveControls/mode.html | 142 + docs/models/DriveControls/onDispose.html | 147 + docs/models/DriveControls/parseInputs.html | 142 + ...sterEggsSettingsBuilder-class-sidebar.html | 42 + .../EasterEggsSettingsBuilder-class.html | 446 ++ .../EasterEggsSettingsBuilder.html | 133 + .../EasterEggsSettingsBuilder/badApple.html | 129 + .../enableClippy.html | 129 + .../EasterEggsSettingsBuilder/isValid.html | 143 + .../EasterEggsSettingsBuilder/segaIntro.html | 129 + .../EasterEggsSettingsBuilder/segaSound.html | 129 + .../updateBadApple.html | 136 + .../updateClippy.html | 136 + .../updateSegaIntro.html | 136 + .../updateSegaSound.html | 136 + .../EasterEggsSettingsBuilder/value.html | 147 + .../models/ElectricalModel-class-sidebar.html | 43 + docs/models/ElectricalModel-class.html | 448 ++ .../ElectricalModel/ElectricalModel.html | 131 + docs/models/ElectricalModel/axis.html | 129 + .../ElectricalModel/changeDirection.html | 135 + docs/models/ElectricalModel/clear.html | 139 + .../ElectricalModel/currentReadings.html | 129 + docs/models/ElectricalModel/dispose.html | 148 + .../ElectricalModel/firstTimestamp.html | 129 + docs/models/ElectricalModel/leftSpeeds.html | 129 + .../ElectricalModel/maxReadings-constant.html | 129 + docs/models/ElectricalModel/metrics.html | 136 + docs/models/ElectricalModel/rightSpeeds.html | 129 + docs/models/ElectricalModel/timer.html | 129 + .../ElectricalModel/voltageReadings.html | 129 + docs/models/GpsBuilder-class-sidebar.html | 45 + docs/models/GpsBuilder-class.html | 480 ++ docs/models/GpsBuilder/GpsBuilder.html | 121 + docs/models/GpsBuilder/clear.html | 143 + docs/models/GpsBuilder/isValid.html | 145 + docs/models/GpsBuilder/latDecimal.html | 129 + docs/models/GpsBuilder/latDegrees.html | 129 + docs/models/GpsBuilder/latMinutes.html | 129 + docs/models/GpsBuilder/latSeconds.html | 129 + docs/models/GpsBuilder/longDecimal.html | 129 + docs/models/GpsBuilder/longDegrees.html | 129 + docs/models/GpsBuilder/longMinutes.html | 129 + docs/models/GpsBuilder/longSeconds.html | 129 + docs/models/GpsBuilder/otherBuilders.html | 146 + docs/models/GpsBuilder/type.html | 129 + docs/models/GpsBuilder/updateType.html | 136 + docs/models/GpsBuilder/value.html | 148 + docs/models/GpsType-enum-sidebar.html | 33 + docs/models/GpsType.html | 301 ++ docs/models/GpsType/GpsType.html | 121 + docs/models/GpsType/hashCode.html | 160 + docs/models/GpsType/humanName.html | 139 + docs/models/GpsType/index.html | 140 + docs/models/GpsType/noSuchMethod.html | 168 + docs/models/GpsType/operator_equals.html | 158 + docs/models/GpsType/runtimeType.html | 135 + docs/models/GpsType/toString.html | 140 + docs/models/GpsType/values-constant.html | 125 + docs/models/GridOffset-class-sidebar.html | 28 + docs/models/GridOffset-class.html | 249 + docs/models/GridOffset/GridOffset.html | 130 + docs/models/GridOffset/hashCode.html | 160 + docs/models/GridOffset/noSuchMethod.html | 168 + docs/models/GridOffset/operator_equals.html | 158 + docs/models/GridOffset/runtimeType.html | 135 + docs/models/GridOffset/toString.html | 140 + docs/models/GridOffset/x.html | 129 + docs/models/GridOffset/y.html | 129 + docs/models/HomeModel-class-sidebar.html | 37 + docs/models/HomeModel-class.html | 385 ++ docs/models/HomeModel/HomeModel.html | 121 + docs/models/HomeModel/clear.html | 138 + docs/models/HomeModel/dispose.html | 149 + docs/models/HomeModel/init.html | 143 + docs/models/HomeModel/message.html | 129 + docs/models/HomeModel/mission.html | 129 + docs/models/HomeModel/setMessage.html | 142 + docs/models/HomeModel/version.html | 129 + docs/models/LogsModel-class-sidebar.html | 40 + docs/models/LogsModel-class.html | 419 ++ docs/models/LogsModel/LogsModel.html | 121 + docs/models/LogsModel/allLogs.html | 129 + docs/models/LogsModel/clear.html | 136 + docs/models/LogsModel/handleLog.html | 149 + docs/models/LogsModel/init.html | 141 + docs/models/LogsModel/saveToFile.html | 139 + docs/models/LogsModel/saveToFileBuffer.html | 129 + .../saveToFileInterval-constant.html | 129 + docs/models/LogsModel/saveToFileTimer.html | 129 + .../LogsOptionsViewModel-class-sidebar.html | 38 + docs/models/LogsOptionsViewModel-class.html | 398 ++ .../LogsOptionsViewModel.html | 121 + .../LogsOptionsViewModel/autoscroll.html | 130 + .../LogsOptionsViewModel/deviceFilter.html | 129 + .../LogsOptionsViewModel/levelFilter.html | 129 + .../LogsOptionsViewModel/resetDevice.html | 143 + .../LogsOptionsViewModel/setAutoscroll.html | 137 + .../LogsOptionsViewModel/setDeviceFilter.html | 136 + .../LogsOptionsViewModel/setLevelFilter.html | 137 + docs/models/LogsViewModel-class-sidebar.html | 38 + docs/models/LogsViewModel-class.html | 396 ++ docs/models/LogsViewModel/LogsViewModel.html | 134 + docs/models/LogsViewModel/dispose.html | 147 + docs/models/LogsViewModel/jumpToBottom.html | 135 + docs/models/LogsViewModel/logs.html | 144 + docs/models/LogsViewModel/onNewLog.html | 136 + docs/models/LogsViewModel/onScroll.html | 135 + docs/models/LogsViewModel/options.html | 129 + .../LogsViewModel/scrollController.html | 129 + docs/models/LogsViewModel/update.html | 132 + docs/models/MarsControls-class-sidebar.html | 31 + docs/models/MarsControls-class.html | 305 ++ docs/models/MarsControls/MarsControls.html | 121 + docs/models/MarsControls/buttonMapping.html | 146 + docs/models/MarsControls/mode.html | 142 + docs/models/MarsControls/onDispose.html | 143 + docs/models/MarsControls/parseInputs.html | 142 + docs/models/MessagesModel-class-sidebar.html | 32 + docs/models/MessagesModel-class.html | 296 + docs/models/MessagesModel/MessagesModel.html | 121 + .../allowedFallthrough-constant.html | 129 + docs/models/MessagesModel/hashCode.html | 160 + docs/models/MessagesModel/noSuchMethod.html | 168 + docs/models/MessagesModel/onMessage.html | 144 + .../models/MessagesModel/operator_equals.html | 158 + .../models/MessagesModel/registerHandler.html | 155 + docs/models/MessagesModel/removeHandler.html | 134 + docs/models/MessagesModel/runtimeType.html | 135 + docs/models/MessagesModel/sendMessage.html | 136 + docs/models/MessagesModel/toString.html | 140 + docs/models/MissionTimer-class-sidebar.html | 39 + docs/models/MissionTimer-class.html | 409 ++ docs/models/MissionTimer/MissionTimer.html | 121 + docs/models/MissionTimer/cancel.html | 136 + docs/models/MissionTimer/isPaused.html | 129 + docs/models/MissionTimer/pause.html | 136 + docs/models/MissionTimer/resume.html | 135 + docs/models/MissionTimer/start.html | 141 + docs/models/MissionTimer/timeLeft.html | 129 + docs/models/MissionTimer/title.html | 129 + docs/models/MissionTimer/underMin.html | 136 + docs/models/Model-class-sidebar.html | 32 + docs/models/Model-class.html | 336 ++ docs/models/Model/Model.html | 121 + docs/models/Model/init.html | 132 + docs/models/Models-class-sidebar.html | 42 + docs/models/Models-class.html | 452 ++ docs/models/Models/Models.html | 121 + docs/models/Models/dispose.html | 154 + docs/models/Models/home.html | 129 + docs/models/Models/init.html | 151 + docs/models/Models/isReady.html | 129 + docs/models/Models/logs.html | 129 + docs/models/Models/messages.html | 129 + docs/models/Models/rover.html | 129 + docs/models/Models/serial.html | 129 + docs/models/Models/settings.html | 129 + docs/models/Models/sockets.html | 129 + docs/models/Models/video.html | 129 + docs/models/Models/views.html | 129 + .../NetworkSettingsBuilder-class-sidebar.html | 38 + docs/models/NetworkSettingsBuilder-class.html | 394 ++ .../NetworkSettingsBuilder.html | 133 + .../autonomySocket.html | 129 + .../NetworkSettingsBuilder/dataSocket.html | 129 + .../NetworkSettingsBuilder/isValid.html | 146 + .../NetworkSettingsBuilder/otherBuilders.html | 142 + .../NetworkSettingsBuilder/tankSocket.html | 130 + docs/models/NetworkSettingsBuilder/value.html | 148 + .../NetworkSettingsBuilder/videoSocket.html | 129 + docs/models/NoControls-class-sidebar.html | 31 + docs/models/NoControls-class.html | 305 ++ docs/models/NoControls/NoControls.html | 121 + docs/models/NoControls/buttonMapping.html | 143 + docs/models/NoControls/mode.html | 142 + docs/models/NoControls/onDispose.html | 143 + docs/models/NoControls/parseInputs.html | 139 + docs/models/NumberBuilder-class-sidebar.html | 41 + docs/models/NumberBuilder-class.html | 434 ++ docs/models/NumberBuilder/NumberBuilder.html | 131 + docs/models/NumberBuilder/clear.html | 137 + docs/models/NumberBuilder/isInteger.html | 136 + docs/models/NumberBuilder/max.html | 129 + docs/models/NumberBuilder/min.html | 129 + docs/models/NumberBuilder/update.html | 156 + .../RequestNotAccepted-class-sidebar.html | 26 + docs/models/RequestNotAccepted-class.html | 224 + .../RequestNotAccepted.html | 121 + docs/models/RequestNotAccepted/hashCode.html | 160 + .../RequestNotAccepted/noSuchMethod.html | 168 + .../RequestNotAccepted/operator_equals.html | 158 + .../RequestNotAccepted/runtimeType.html | 135 + docs/models/RequestNotAccepted/toString.html | 140 + docs/models/Rover-class-sidebar.html | 39 + docs/models/Rover-class.html | 408 ++ docs/models/Rover/Rover.html | 121 + docs/models/Rover/controller1.html | 129 + docs/models/Rover/controller2.html | 129 + docs/models/Rover/controller3.html | 129 + docs/models/Rover/dispose.html | 154 + docs/models/Rover/init.html | 147 + docs/models/Rover/isConnected.html | 136 + docs/models/Rover/metrics.html | 129 + docs/models/Rover/settings.html | 129 + docs/models/Rover/status.html | 129 + docs/models/RoverControls-class-sidebar.html | 32 + docs/models/RoverControls-class.html | 317 ++ .../RoverControls/RoverControls.forMode.html | 138 + docs/models/RoverControls/RoverControls.html | 128 + docs/models/RoverControls/buttonMapping.html | 137 + docs/models/RoverControls/hashCode.html | 160 + docs/models/RoverControls/mode.html | 136 + docs/models/RoverControls/noSuchMethod.html | 168 + docs/models/RoverControls/onDispose.html | 137 + .../models/RoverControls/operator_equals.html | 158 + docs/models/RoverControls/parseInputs.html | 133 + docs/models/RoverControls/runtimeType.html | 135 + docs/models/RoverControls/toString.html | 140 + docs/models/RoverControls/updateState.html | 133 + docs/models/RoverMetrics-class-sidebar.html | 38 + docs/models/RoverMetrics-class.html | 395 ++ docs/models/RoverMetrics/RoverMetrics.html | 121 + docs/models/RoverMetrics/allMetrics.html | 138 + docs/models/RoverMetrics/arm.html | 129 + docs/models/RoverMetrics/drive.html | 129 + docs/models/RoverMetrics/gripper.html | 129 + docs/models/RoverMetrics/init.html | 164 + docs/models/RoverMetrics/position.html | 129 + docs/models/RoverMetrics/science.html | 129 + .../models/ScienceAnalysis-class-sidebar.html | 32 + docs/models/ScienceAnalysis-class.html | 295 + .../ScienceAnalysis/ScienceAnalysis.html | 129 + docs/models/ScienceAnalysis/addReading.html | 137 + docs/models/ScienceAnalysis/clear.html | 135 + docs/models/ScienceAnalysis/data.html | 129 + docs/models/ScienceAnalysis/hashCode.html | 160 + docs/models/ScienceAnalysis/noSuchMethod.html | 168 + .../ScienceAnalysis/operator_equals.html | 158 + docs/models/ScienceAnalysis/runtimeType.html | 135 + docs/models/ScienceAnalysis/sensor.html | 129 + docs/models/ScienceAnalysis/testBuilder.html | 129 + docs/models/ScienceAnalysis/testResult.html | 141 + docs/models/ScienceAnalysis/toString.html | 140 + .../ScienceCommandBuilder-class-sidebar.html | 38 + docs/models/ScienceCommandBuilder-class.html | 396 ++ .../ScienceCommandBuilder.html | 121 + .../models/ScienceCommandBuilder/isValid.html | 143 + .../ScienceCommandBuilder/otherBuilders.html | 142 + docs/models/ScienceCommandBuilder/sample.html | 129 + docs/models/ScienceCommandBuilder/send.html | 135 + docs/models/ScienceCommandBuilder/state.html | 129 + .../ScienceCommandBuilder/updateState.html | 136 + docs/models/ScienceCommandBuilder/value.html | 145 + .../models/ScienceControls-class-sidebar.html | 31 + docs/models/ScienceControls-class.html | 305 ++ .../ScienceControls/ScienceControls.html | 121 + .../models/ScienceControls/buttonMapping.html | 151 + docs/models/ScienceControls/mode.html | 142 + docs/models/ScienceControls/onDispose.html | 143 + docs/models/ScienceControls/parseInputs.html | 161 + docs/models/ScienceModel-class-sidebar.html | 45 + docs/models/ScienceModel-class.html | 482 ++ docs/models/ScienceModel/ScienceModel.html | 133 + docs/models/ScienceModel/addMessage.html | 142 + docs/models/ScienceModel/addReading.html | 137 + docs/models/ScienceModel/allSamples.html | 134 + .../ScienceModel/analysesForSample.html | 138 + docs/models/ScienceModel/clear.html | 140 + docs/models/ScienceModel/dispose.html | 150 + docs/models/ScienceModel/errorText.html | 129 + docs/models/ScienceModel/isListening.html | 129 + docs/models/ScienceModel/isLoading.html | 129 + docs/models/ScienceModel/loadFile.html | 163 + docs/models/ScienceModel/metrics.html | 136 + docs/models/ScienceModel/numSamples.html | 136 + docs/models/ScienceModel/sample.html | 129 + docs/models/ScienceModel/updateData.html | 136 + docs/models/ScienceModel/updateSample.html | 137 + .../ScienceSettingsBuilder-class-sidebar.html | 37 + docs/models/ScienceSettingsBuilder-class.html | 383 ++ .../ScienceSettingsBuilder.html | 131 + .../ScienceSettingsBuilder/isValid.html | 143 + .../ScienceSettingsBuilder/numSamples.html | 129 + .../scrollableGraphs.html | 129 + .../updateScrollableGraphs.html | 136 + docs/models/ScienceSettingsBuilder/value.html | 145 + .../ScienceTestBuilder-class-sidebar.html | 35 + docs/models/ScienceTestBuilder-class.html | 357 ++ .../ScienceTestBuilder.html | 132 + docs/models/ScienceTestBuilder/average.html | 129 + docs/models/ScienceTestBuilder/dispose.html | 149 + docs/models/ScienceTestBuilder/max.html | 129 + docs/models/ScienceTestBuilder/min.html | 129 + docs/models/ScienceTestBuilder/update.html | 141 + docs/models/SerialModel-class-sidebar.html | 39 + docs/models/SerialModel-class.html | 417 ++ docs/models/SerialModel/SerialModel.html | 121 + docs/models/SerialModel/connect.html | 148 + docs/models/SerialModel/devices.html | 130 + docs/models/SerialModel/disconnect.html | 140 + docs/models/SerialModel/hasDevice.html | 136 + docs/models/SerialModel/init.html | 138 + docs/models/SerialModel/isConnected.html | 133 + docs/models/SerialModel/sendMessage.html | 138 + docs/models/SerialModel/toggle.html | 133 + .../models/SettingsBuilder-class-sidebar.html | 41 + docs/models/SettingsBuilder-class.html | 431 ++ .../SettingsBuilder/SettingsBuilder.html | 140 + docs/models/SettingsBuilder/arm.html | 129 + docs/models/SettingsBuilder/dashboard.html | 129 + docs/models/SettingsBuilder/easterEggs.html | 129 + docs/models/SettingsBuilder/isLoading.html | 129 + docs/models/SettingsBuilder/isValid.html | 147 + docs/models/SettingsBuilder/network.html | 129 + docs/models/SettingsBuilder/save.html | 140 + docs/models/SettingsBuilder/science.html | 129 + docs/models/SettingsBuilder/value.html | 148 + docs/models/SettingsModel-class-sidebar.html | 39 + docs/models/SettingsModel-class.html | 408 ++ docs/models/SettingsModel/SettingsModel.html | 121 + docs/models/SettingsModel/all.html | 129 + docs/models/SettingsModel/arm.html | 136 + docs/models/SettingsModel/dashboard.html | 136 + docs/models/SettingsModel/easterEggs.html | 136 + docs/models/SettingsModel/init.html | 140 + docs/models/SettingsModel/network.html | 136 + docs/models/SettingsModel/science.html | 136 + docs/models/SettingsModel/update.html | 141 + docs/models/SocketBuilder-class-sidebar.html | 36 + docs/models/SocketBuilder-class.html | 370 ++ docs/models/SocketBuilder/SocketBuilder.html | 135 + docs/models/SocketBuilder/address.html | 129 + docs/models/SocketBuilder/isValid.html | 143 + docs/models/SocketBuilder/port.html | 129 + docs/models/SocketBuilder/value.html | 142 + docs/models/Sockets-class-sidebar.html | 44 + docs/models/Sockets-class.html | 472 ++ docs/models/Sockets/Sockets.html | 121 + docs/models/Sockets/addressOverride.html | 140 + docs/models/Sockets/autonomy.html | 134 + docs/models/Sockets/connectionSummary.html | 142 + docs/models/Sockets/data.html | 134 + docs/models/Sockets/dispose.html | 149 + docs/models/Sockets/init.html | 146 + docs/models/Sockets/onConnect.html | 141 + docs/models/Sockets/onDisconnect.html | 137 + docs/models/Sockets/reset.html | 141 + docs/models/Sockets/rover.html | 129 + docs/models/Sockets/setRover.html | 139 + docs/models/Sockets/sockets.html | 136 + docs/models/Sockets/updateSockets.html | 137 + docs/models/Sockets/video.html | 134 + docs/models/TextBuilder-class-sidebar.html | 37 + docs/models/TextBuilder-class.html | 389 ++ docs/models/TextBuilder/TextBuilder.html | 132 + docs/models/TextBuilder/controller.html | 130 + docs/models/TextBuilder/error.html | 129 + docs/models/TextBuilder/isValid.html | 143 + docs/models/TextBuilder/update.html | 135 + docs/models/TextBuilder/value.html | 135 + .../models/ThrottleBuilder-class-sidebar.html | 36 + docs/models/ThrottleBuilder-class.html | 369 ++ .../ThrottleBuilder/ThrottleBuilder.html | 121 + docs/models/ThrottleBuilder/controller.html | 129 + docs/models/ThrottleBuilder/errorText.html | 129 + docs/models/ThrottleBuilder/isLoading.html | 129 + docs/models/ThrottleBuilder/isValid.html | 136 + docs/models/ThrottleBuilder/save.html | 141 + docs/models/TimerBuilder-class-sidebar.html | 38 + docs/models/TimerBuilder-class.html | 396 ++ docs/models/TimerBuilder/TimerBuilder.html | 121 + docs/models/TimerBuilder/duration.html | 129 + docs/models/TimerBuilder/isValid.html | 143 + docs/models/TimerBuilder/nameController.html | 129 + docs/models/TimerBuilder/otherBuilders.html | 142 + docs/models/TimerBuilder/start.html | 134 + docs/models/TimerBuilder/update.html | 133 + docs/models/TimerBuilder/value.html | 142 + docs/models/ValueBuilder-class-sidebar.html | 34 + docs/models/ValueBuilder-class.html | 364 ++ docs/models/ValueBuilder/ValueBuilder.html | 132 + docs/models/ValueBuilder/dispose.html | 149 + docs/models/ValueBuilder/isValid.html | 137 + docs/models/ValueBuilder/otherBuilders.html | 136 + docs/models/ValueBuilder/value.html | 136 + docs/models/VideoModel-class-sidebar.html | 43 + docs/models/VideoModel-class.html | 461 ++ docs/models/VideoModel/VideoModel.html | 121 + docs/models/VideoModel/dispose.html | 148 + docs/models/VideoModel/feeds.html | 136 + docs/models/VideoModel/fpsTimer.html | 129 + docs/models/VideoModel/frameUpdater.html | 130 + docs/models/VideoModel/framesThisSecond.html | 133 + docs/models/VideoModel/handleData.html | 152 + docs/models/VideoModel/init.html | 151 + docs/models/VideoModel/networkFps.html | 129 + docs/models/VideoModel/reset.html | 143 + docs/models/VideoModel/resetNetworkFps.html | 140 + docs/models/VideoModel/saveFrame.html | 138 + docs/models/VideoModel/toggleCamera.html | 152 + docs/models/VideoModel/updateCamera.html | 140 + docs/models/ViewsModel-class-sidebar.html | 39 + docs/models/ViewsModel-class.html | 410 ++ docs/models/ViewsModel/ViewsModel.html | 121 + docs/models/ViewsModel/dispose.html | 150 + .../ViewsModel/horizontalController1.html | 129 + .../ViewsModel/horizontalController2.html | 129 + docs/models/ViewsModel/init.html | 140 + docs/models/ViewsModel/replaceView.html | 142 + docs/models/ViewsModel/resetSizes.html | 144 + docs/models/ViewsModel/setNumViews.html | 144 + .../models/ViewsModel/verticalController.html | 129 + docs/models/ViewsModel/views.html | 131 + docs/models/ViewsSelector-class-sidebar.html | 37 + docs/models/ViewsSelector-class.html | 389 ++ docs/models/ViewsSelector/ViewsSelector.html | 129 + docs/models/ViewsSelector/build.html | 191 + docs/models/ViewsSelector/currentView.html | 129 + .../models/ViewsSelector/getCameraStatus.html | 149 + docs/models/gamepadDelay-constant.html | 129 + docs/models/maxColor.html | 129 + docs/models/maxLogCount-constant.html | 129 + docs/models/minColor.html | 129 + docs/models/models-library-sidebar.html | 75 + docs/models/models-library.html | 669 +++ docs/models/models.html | 132 + docs/pages/ChartsRow-class-sidebar.html | 39 + docs/pages/ChartsRow-class.html | 412 ++ docs/pages/ChartsRow/ChartsRow.html | 138 + docs/pages/ChartsRow/analyses.html | 129 + docs/pages/ChartsRow/build.html | 182 + docs/pages/ChartsRow/builder.html | 129 + docs/pages/ChartsRow/height.html | 129 + docs/pages/ChartsRow/title.html | 129 + .../DesktopScrollBehavior-class-sidebar.html | 36 + docs/pages/DesktopScrollBehavior-class.html | 378 ++ .../DesktopScrollBehavior.html | 121 + .../DesktopScrollBehavior/dragDevices.html | 151 + docs/pages/ElectricalPage-class-sidebar.html | 39 + docs/pages/ElectricalPage-class.html | 416 ++ docs/pages/ElectricalPage/ElectricalPage.html | 121 + docs/pages/ElectricalPage/build.html | 170 + docs/pages/ElectricalPage/createModel.html | 138 + docs/pages/HomePage-class-sidebar.html | 35 + docs/pages/HomePage-class.html | 364 ++ docs/pages/HomePage/HomePage.html | 121 + docs/pages/HomePage/createState.html | 150 + docs/pages/HomePageState-class-sidebar.html | 42 + docs/pages/HomePageState-class.html | 451 ++ docs/pages/HomePageState/HomePageState.html | 121 + docs/pages/HomePageState/build.html | 275 + docs/pages/HomePageState/showSidebar.html | 129 + docs/pages/LogWidget-class-sidebar.html | 37 + docs/pages/LogWidget-class.html | 388 ++ docs/pages/LogWidget/LogWidget.html | 129 + docs/pages/LogWidget/build.html | 175 + docs/pages/LogWidget/icon.html | 144 + docs/pages/LogWidget/log.html | 129 + docs/pages/LogsBody-class-sidebar.html | 40 + docs/pages/LogsBody-class.html | 430 ++ docs/pages/LogsBody/LogsBody.html | 129 + docs/pages/LogsBody/build.html | 147 + docs/pages/LogsOptions-class-sidebar.html | 41 + docs/pages/LogsOptions-class.html | 441 ++ docs/pages/LogsOptions/LogsOptions.html | 129 + docs/pages/LogsOptions/build.html | 192 + docs/pages/LogsOptions/viewModel.html | 129 + docs/pages/LogsPage-class-sidebar.html | 35 + docs/pages/LogsPage-class.html | 364 ++ docs/pages/LogsPage/LogsPage.html | 121 + docs/pages/LogsPage/createState.html | 150 + docs/pages/LogsState-class-sidebar.html | 42 + docs/pages/LogsState-class.html | 451 ++ docs/pages/LogsState/LogsState.html | 121 + docs/pages/LogsState/build.html | 288 + docs/pages/LogsState/model.html | 129 + docs/pages/MapPage-class-sidebar.html | 41 + docs/pages/MapPage-class.html | 443 ++ docs/pages/MapPage/MapPage.html | 121 + docs/pages/MapPage/build.html | 236 + docs/pages/MapPage/createModel.html | 138 + docs/pages/MapPage/getColor.html | 140 + docs/pages/MapPage/placeMarker.html | 150 + docs/pages/ResultsBox-class-sidebar.html | 38 + docs/pages/ResultsBox-class.html | 400 ++ docs/pages/ResultsBox/ResultsBox.html | 129 + docs/pages/ResultsBox/analysis.html | 129 + docs/pages/ResultsBox/build.html | 199 + docs/pages/ResultsBox/color.html | 144 + docs/pages/ResultsBox/text.html | 144 + docs/pages/Routes-class-sidebar.html | 36 + docs/pages/Routes-class.html | 336 ++ docs/pages/Routes/Routes.html | 121 + docs/pages/Routes/arm-constant.html | 129 + docs/pages/Routes/autonomy-constant.html | 129 + docs/pages/Routes/blank-constant.html | 129 + docs/pages/Routes/electrical-constant.html | 129 + docs/pages/Routes/hashCode.html | 160 + docs/pages/Routes/home-constant.html | 129 + docs/pages/Routes/logs-constant.html | 129 + docs/pages/Routes/mars-constant.html | 129 + docs/pages/Routes/noSuchMethod.html | 168 + docs/pages/Routes/operator_equals.html | 158 + docs/pages/Routes/runtimeType.html | 135 + docs/pages/Routes/science-constant.html | 129 + docs/pages/Routes/settings-constant.html | 129 + docs/pages/Routes/toString.html | 140 + docs/pages/SciencePage-class-sidebar.html | 45 + docs/pages/SciencePage-class.html | 485 ++ docs/pages/SciencePage/SciencePage.html | 121 + docs/pages/SciencePage/build.html | 198 + docs/pages/SciencePage/createModel.html | 138 + docs/pages/SciencePage/getBarChartData.html | 154 + docs/pages/SciencePage/getColor.html | 134 + docs/pages/SciencePage/getDetailsData.html | 163 + docs/pages/SciencePage/purple.html | 129 + docs/pages/SciencePage/red.html | 129 + docs/pages/ScrollingRow-class-sidebar.html | 42 + docs/pages/ScrollingRow-class.html | 452 ++ docs/pages/ScrollingRow/ScrollingRow.html | 130 + docs/pages/ScrollingRow/build.html | 153 + docs/pages/ScrollingRow/children.html | 129 + docs/pages/ScrollingRow/height.html | 129 + docs/pages/SegaState-enum-sidebar.html | 33 + docs/pages/SegaState.html | 300 + docs/pages/SegaState/SegaState.html | 121 + docs/pages/SegaState/hashCode.html | 160 + docs/pages/SegaState/index.html | 140 + docs/pages/SegaState/noSuchMethod.html | 168 + docs/pages/SegaState/operator_equals.html | 158 + docs/pages/SegaState/runtimeType.html | 135 + docs/pages/SegaState/toString.html | 140 + docs/pages/SegaState/values-constant.html | 125 + docs/pages/SettingsPage-class-sidebar.html | 39 + docs/pages/SettingsPage-class.html | 416 ++ docs/pages/SettingsPage/SettingsPage.html | 121 + docs/pages/SettingsPage/build.html | 345 ++ docs/pages/SettingsPage/createModel.html | 138 + docs/pages/SocketSwitcher-class-sidebar.html | 40 + docs/pages/SocketSwitcher-class.html | 428 ++ docs/pages/SocketSwitcher/SocketSwitcher.html | 128 + docs/pages/SocketSwitcher/build.html | 150 + docs/pages/SplashPage-class-sidebar.html | 35 + docs/pages/SplashPage-class.html | 363 ++ docs/pages/SplashPage/SplashPage.html | 121 + docs/pages/SplashPage/createState.html | 150 + docs/pages/SplashPageState-class-sidebar.html | 47 + docs/pages/SplashPageState-class.html | 513 ++ .../SplashPageState/SplashPageState.html | 121 + docs/pages/SplashPageState/audioPlayer.html | 129 + docs/pages/SplashPageState/build.html | 288 + docs/pages/SplashPageState/current.html | 129 + docs/pages/SplashPageState/dispose.html | 191 + docs/pages/SplashPageState/errorText.html | 129 + docs/pages/SplashPageState/init.html | 151 + docs/pages/SplashPageState/initAnimation.html | 143 + docs/pages/SplashPageState/initState.html | 164 + docs/pages/SplashPageState/state.html | 129 + docs/pages/ValueEditor-class-sidebar.html | 37 + docs/pages/ValueEditor-class.html | 390 ++ docs/pages/ValueEditor/ValueEditor.html | 130 + docs/pages/ValueEditor/build.html | 186 + docs/pages/ValueEditor/children.html | 129 + docs/pages/ValueEditor/name.html | 129 + docs/pages/criticalWidget.html | 129 + docs/pages/debugWidget-constant.html | 129 + docs/pages/errorWidget-constant.html | 129 + docs/pages/getTitles.html | 136 + docs/pages/infoWidget.html | 129 + docs/pages/pages-library-sidebar.html | 44 + docs/pages/pages-library.html | 428 ++ docs/pages/traceWidget-constant.html | 129 + docs/pages/warningWidget-constant.html | 129 + docs/search.html | 108 + .../DashboardSocket-class-sidebar.html | 48 + docs/services/DashboardSocket-class.html | 506 ++ .../DashboardSocket/DashboardSocket.html | 142 + .../DashboardSocket/checkHeartbeats.html | 159 + .../DashboardSocket/connectionStrength.html | 129 + .../services/DashboardSocket/destination.html | 130 + docs/services/DashboardSocket/device.html | 128 + docs/services/DashboardSocket/dispose.html | 140 + docs/services/DashboardSocket/hashCode.html | 160 + .../DashboardSocket/heartbeatInterval.html | 142 + .../DashboardSocket/heartbeatTimer.html | 128 + docs/services/DashboardSocket/init.html | 140 + .../services/DashboardSocket/isConnected.html | 142 + docs/services/DashboardSocket/logger.html | 128 + .../DashboardSocket/messageHandler.html | 129 + .../DashboardSocket/noSuchMethod.html | 168 + docs/services/DashboardSocket/onConnect.html | 129 + docs/services/DashboardSocket/onData.html | 142 + .../DashboardSocket/onDisconnect.html | 129 + .../services/DashboardSocket/onHeartbeat.html | 140 + docs/services/DashboardSocket/onMessage.html | 139 + docs/services/DashboardSocket/onWrapper.html | 148 + .../DashboardSocket/operator_equals.html | 158 + docs/services/DashboardSocket/port.html | 128 + docs/services/DashboardSocket/quiet.html | 128 + .../services/DashboardSocket/runtimeType.html | 135 + docs/services/DashboardSocket/sendData.html | 140 + .../services/DashboardSocket/sendMessage.html | 134 + .../services/DashboardSocket/sendWrapper.html | 135 + docs/services/DashboardSocket/toString.html | 140 + .../DeviceNotConnected-class-sidebar.html | 26 + docs/services/DeviceNotConnected-class.html | 244 + .../DeviceNotConnected.html | 121 + .../services/DeviceNotConnected/toString.html | 147 + docs/services/FilesService-class-sidebar.html | 40 + docs/services/FilesService-class.html | 400 ++ docs/services/FilesService/FilesService.html | 121 + docs/services/FilesService/dispose.html | 138 + docs/services/FilesService/hashCode.html | 160 + docs/services/FilesService/init.html | 144 + docs/services/FilesService/logData.html | 138 + docs/services/FilesService/logError.html | 137 + docs/services/FilesService/logFiles.html | 129 + docs/services/FilesService/logMessage.html | 137 + docs/services/FilesService/loggingDir.html | 130 + docs/services/FilesService/noSuchMethod.html | 168 + .../FilesService/operator_equals.html | 158 + docs/services/FilesService/outputDir.html | 132 + docs/services/FilesService/readLogs.html | 136 + docs/services/FilesService/readSettings.html | 148 + docs/services/FilesService/runtimeType.html | 135 + .../services/FilesService/screenshotsDir.html | 137 + docs/services/FilesService/settingsFile.html | 138 + docs/services/FilesService/toString.html | 140 + docs/services/FilesService/writeImage.html | 139 + docs/services/FilesService/writeSettings.html | 136 + .../GamepadNumbers-extension-sidebar.html | 17 + docs/services/GamepadNumbers.html | 168 + .../GamepadNumbers/normalizeJoystick.html | 139 + .../GamepadNumbers/normalizeTrigger.html | 139 + .../GamepadService-class-sidebar.html | 34 + docs/services/GamepadService-class.html | 322 ++ .../GamepadService/GamepadService.html | 121 + docs/services/GamepadService/connect.html | 144 + docs/services/GamepadService/dispose.html | 138 + docs/services/GamepadService/gamepads.html | 133 + docs/services/GamepadService/hashCode.html | 160 + docs/services/GamepadService/ids.html | 138 + docs/services/GamepadService/init.html | 142 + .../services/GamepadService/noSuchMethod.html | 168 + .../GamepadService/numGamepads-constant.html | 129 + .../GamepadService/operator_equals.html | 158 + docs/services/GamepadService/runtimeType.html | 135 + docs/services/GamepadService/toString.html | 140 + docs/services/GamepadService/update.html | 138 + .../GamepadStateUtils-extension-sidebar.html | 25 + docs/services/GamepadStateUtils.html | 264 + .../GamepadStateUtils/normalDpadX.html | 140 + .../GamepadStateUtils/normalDpadY.html | 140 + .../GamepadStateUtils/normalLeftTrigger.html | 136 + .../GamepadStateUtils/normalLeftX.html | 136 + .../GamepadStateUtils/normalLeftY.html | 136 + .../GamepadStateUtils/normalRightTrigger.html | 136 + .../GamepadStateUtils/normalRightX.html | 136 + .../GamepadStateUtils/normalRightY.html | 136 + .../GamepadStateUtils/normalShoulder.html | 140 + .../GamepadStateUtils/normalTrigger.html | 140 + .../GamepadUtils-extension-sidebar.html | 18 + docs/services/GamepadUtils.html | 176 + docs/services/GamepadUtils/battery.html | 136 + docs/services/GamepadUtils/pulse.html | 141 + .../MalformedSerialPacket-class-sidebar.html | 27 + .../services/MalformedSerialPacket-class.html | 259 + .../MalformedSerialPacket.html | 129 + .../MalformedSerialPacket/packet.html | 129 + .../MalformedSerialPacket/toString.html | 147 + docs/services/MockGamepad-class-sidebar.html | 34 + docs/services/MockGamepad-class.html | 344 ++ docs/services/MockGamepad/MockGamepad.html | 121 + docs/services/MockGamepad/appHasFocus.html | 145 + docs/services/MockGamepad/controller.html | 144 + .../MockGamepad/gamepadBatteryInfo.html | 142 + .../MockGamepad/headsetBatteryInfo.html | 143 + docs/services/MockGamepad/isConnected.html | 146 + docs/services/MockGamepad/state.html | 172 + docs/services/MockGamepad/updateState.html | 141 + docs/services/MockGamepad/vibrate.html | 142 + .../MultipleDevicesFound-class-sidebar.html | 27 + docs/services/MultipleDevicesFound-class.html | 257 + .../MultipleDevicesFound.html | 129 + .../MultipleDevicesFound/devices.html | 129 + .../MultipleDevicesFound/toString.html | 147 + .../services/NoDeviceFound-class-sidebar.html | 26 + docs/services/NoDeviceFound-class.html | 244 + .../services/NoDeviceFound/NoDeviceFound.html | 121 + docs/services/NoDeviceFound/toString.html | 147 + .../SerialCannotOpen-class-sidebar.html | 27 + docs/services/SerialCannotOpen-class.html | 258 + .../SerialCannotOpen/SerialCannotOpen.html | 129 + docs/services/SerialCannotOpen/port.html | 129 + docs/services/SerialCannotOpen/toString.html | 147 + docs/services/SerialDevice-class-sidebar.html | 36 + docs/services/SerialDevice-class.html | 335 ++ docs/services/SerialDevice/SerialDevice.html | 130 + .../services/SerialDevice/availablePorts.html | 136 + docs/services/SerialDevice/connect.html | 136 + docs/services/SerialDevice/device.html | 131 + docs/services/SerialDevice/dispose.html | 135 + docs/services/SerialDevice/hashCode.html | 160 + docs/services/SerialDevice/noSuchMethod.html | 168 + docs/services/SerialDevice/onMessage.html | 129 + .../SerialDevice/operator_equals.html | 158 + docs/services/SerialDevice/port.html | 129 + .../SerialDevice/resetCode-constant.html | 129 + docs/services/SerialDevice/runtimeType.html | 135 + docs/services/SerialDevice/sendMessage.html | 140 + docs/services/SerialDevice/toString.html | 140 + .../SerialException-class-sidebar.html | 26 + docs/services/SerialException-class.html | 254 + .../SerialException/SerialException.html | 128 + .../SerialHandshakeFailed-class-sidebar.html | 26 + .../services/SerialHandshakeFailed-class.html | 246 + .../SerialHandshakeFailed.html | 121 + .../SerialHandshakeFailed/toString.html | 147 + .../services/SerialIOError-class-sidebar.html | 27 + docs/services/SerialIOError-class.html | 258 + .../services/SerialIOError/SerialIOError.html | 129 + docs/services/SerialIOError/error.html | 129 + docs/services/SerialIOError/toString.html | 147 + docs/services/Services-class-sidebar.html | 31 + docs/services/Services-class.html | 288 + docs/services/Services/Services.html | 121 + docs/services/Services/dispose.html | 141 + docs/services/Services/error.html | 129 + docs/services/Services/files.html | 129 + docs/services/Services/gamepad.html | 129 + docs/services/Services/hashCode.html | 160 + docs/services/Services/init.html | 141 + docs/services/Services/noSuchMethod.html | 168 + docs/services/Services/operator_equals.html | 158 + docs/services/Services/runtimeType.html | 135 + docs/services/Services/toString.html | 140 + .../connectionIncrement-constant.html | 129 + docs/services/epsilon-constant.html | 129 + .../services/heartbeatWaitDelay-constant.html | 129 + docs/services/maxGamepads-constant.html | 129 + docs/services/services-library-sidebar.html | 49 + docs/services/services-library.html | 478 ++ docs/services/services.html | 130 + docs/services/vibrateIntensity-constant.html | 130 + docs/static-assets/docs.dart.js | 4804 +++++++++++++++++ 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 | 1314 +++++ .../AutonomyCommandEditor-class-sidebar.html | 40 + docs/widgets/AutonomyCommandEditor-class.html | 429 ++ .../AutonomyCommandEditor.html | 121 + docs/widgets/AutonomyCommandEditor/build.html | 155 + .../AutonomyCommandEditor/createModel.html | 138 + .../AutonomyCommandEditor/createTask.html | 162 + .../BuildContextUtils-extension-sidebar.html | 17 + docs/widgets/BuildContextUtils.html | 168 + .../BuildContextUtils/colorScheme.html | 136 + docs/widgets/BuildContextUtils/textTheme.html | 136 + .../CameraDetailsEditor-class-sidebar.html | 40 + docs/widgets/CameraDetailsEditor-class.html | 429 ++ .../CameraDetailsEditor.html | 129 + docs/widgets/CameraDetailsEditor/build.html | 194 + .../CameraDetailsEditor/createModel.html | 138 + docs/widgets/CameraDetailsEditor/data.html | 130 + docs/widgets/ColorEditor-class-sidebar.html | 40 + docs/widgets/ColorEditor-class.html | 429 ++ docs/widgets/ColorEditor/ColorEditor.html | 129 + docs/widgets/ColorEditor/build.html | 165 + .../ControlsDisplay-class-sidebar.html | 41 + docs/widgets/ControlsDisplay-class.html | 441 ++ .../ControlsDisplay/ControlsDisplay.html | 130 + docs/widgets/ControlsDisplay/build.html | 155 + docs/widgets/ControlsDisplay/gamepadNum.html | 129 + .../widgets/DropdownEditor-class-sidebar.html | 40 + docs/widgets/DropdownEditor-class.html | 424 ++ .../DropdownEditor/DropdownEditor.html | 140 + docs/widgets/DropdownEditor/build.html | 190 + docs/widgets/DropdownEditor/humanName.html | 129 + docs/widgets/DropdownEditor/items.html | 129 + docs/widgets/DropdownEditor/name.html | 129 + docs/widgets/DropdownEditor/onChanged.html | 129 + docs/widgets/DropdownEditor/value.html | 129 + docs/widgets/Footer-class-sidebar.html | 36 + docs/widgets/Footer-class.html | 376 ++ docs/widgets/Footer/Footer.html | 129 + docs/widgets/Footer/build.html | 195 + docs/widgets/Footer/showLogs.html | 129 + docs/widgets/GamepadButton-class-sidebar.html | 42 + docs/widgets/GamepadButton-class.html | 460 ++ docs/widgets/GamepadButton/GamepadButton.html | 129 + docs/widgets/GamepadButton/build.html | 175 + docs/widgets/GamepadButton/getColor.html | 141 + docs/widgets/GamepadButton/isDisabled.html | 133 + docs/widgets/GpsEditor-class-sidebar.html | 40 + docs/widgets/GpsEditor-class.html | 429 ++ docs/widgets/GpsEditor/GpsEditor.html | 129 + docs/widgets/GpsEditor/build.html | 165 + docs/widgets/ImageLoader-class-sidebar.html | 32 + docs/widgets/ImageLoader-class.html | 303 ++ docs/widgets/ImageLoader/ImageLoader.html | 121 + docs/widgets/ImageLoader/codec.html | 129 + docs/widgets/ImageLoader/dispose.html | 136 + docs/widgets/ImageLoader/hasImage.html | 136 + docs/widgets/ImageLoader/hashCode.html | 160 + docs/widgets/ImageLoader/image.html | 129 + docs/widgets/ImageLoader/isLoading.html | 129 + docs/widgets/ImageLoader/load.html | 140 + docs/widgets/ImageLoader/noSuchMethod.html | 168 + docs/widgets/ImageLoader/operator_equals.html | 158 + docs/widgets/ImageLoader/runtimeType.html | 135 + docs/widgets/ImageLoader/toString.html | 140 + .../widgets/MessageDisplay-class-sidebar.html | 43 + docs/widgets/MessageDisplay-class.html | 466 ++ .../MessageDisplay/MessageDisplay.html | 129 + docs/widgets/MessageDisplay/build.html | 172 + docs/widgets/MessageDisplay/getColor.html | 141 + docs/widgets/MessageDisplay/getIcon.html | 141 + docs/widgets/MessageDisplay/showLogs.html | 129 + docs/widgets/MetricsList-class-sidebar.html | 40 + docs/widgets/MetricsList-class.html | 429 ++ docs/widgets/MetricsList/MetricsList.html | 129 + docs/widgets/MetricsList/build.html | 159 + .../widgets/MobileControls-class-sidebar.html | 39 + docs/widgets/MobileControls-class.html | 416 ++ .../MobileControls/MobileControls.html | 121 + docs/widgets/MobileControls/build.html | 178 + docs/widgets/MobileControls/createModel.html | 138 + .../MobileControlsModel-class-sidebar.html | 35 + docs/widgets/MobileControlsModel-class.html | 358 ++ .../MobileControlsModel.html | 130 + docs/widgets/MobileControlsModel/dispose.html | 147 + docs/widgets/MobileControlsModel/left.html | 129 + docs/widgets/MobileControlsModel/right.html | 129 + .../MobileControlsModel/updateLeft.html | 136 + .../MobileControlsModel/updateRight.html | 136 + docs/widgets/NumberEditor-class-sidebar.html | 44 + docs/widgets/NumberEditor-class.html | 477 ++ docs/widgets/NumberEditor/NumberEditor.html | 139 + docs/widgets/NumberEditor/build.html | 159 + docs/widgets/NumberEditor/name.html | 129 + docs/widgets/NumberEditor/subtitle.html | 129 + docs/widgets/NumberEditor/titleFlex.html | 129 + docs/widgets/NumberEditor/width.html | 129 + .../widgets/ReactiveWidget-class-sidebar.html | 39 + docs/widgets/ReactiveWidget-class.html | 430 ++ .../ReactiveWidget/ReactiveWidget.html | 129 + docs/widgets/ReactiveWidget/createModel.html | 138 + .../widgets/ReactiveWidget/shouldDispose.html | 146 + ...ReactiveWidgetInterface-class-sidebar.html | 39 + .../ReactiveWidgetInterface-class.html | 425 ++ .../ReactiveWidgetInterface.html | 129 + .../ReactiveWidgetInterface/build.html | 134 + .../ReactiveWidgetInterface/createModel.html | 132 + .../ReactiveWidgetInterface/createState.html | 150 + .../didUpdateWidget.html | 141 + .../shouldDispose.html | 140 + .../ReactiveWidgetState-class-sidebar.html | 43 + docs/widgets/ReactiveWidgetState-class.html | 464 ++ .../ReactiveWidgetState.html | 121 + docs/widgets/ReactiveWidgetState/build.html | 238 + .../ReactiveWidgetState/didUpdateWidget.html | 167 + docs/widgets/ReactiveWidgetState/dispose.html | 192 + .../ReactiveWidgetState/initState.html | 165 + .../widgets/ReactiveWidgetState/listener.html | 132 + docs/widgets/ReactiveWidgetState/model.html | 129 + .../ReusableReactiveWidget-class-sidebar.html | 40 + .../widgets/ReusableReactiveWidget-class.html | 449 ++ .../ReusableReactiveWidget.html | 129 + .../ReusableReactiveWidget/createModel.html | 138 + .../widgets/ReusableReactiveWidget/model.html | 129 + .../ReusableReactiveWidget/shouldDispose.html | 146 + .../ScienceCommandEditor-class-sidebar.html | 39 + docs/widgets/ScienceCommandEditor-class.html | 416 ++ .../ScienceCommandEditor.html | 121 + docs/widgets/ScienceCommandEditor/build.html | 170 + .../ScienceCommandEditor/createModel.html | 138 + docs/widgets/SerialButton-class-sidebar.html | 40 + docs/widgets/SerialButton-class.html | 429 ++ docs/widgets/SerialButton/SerialButton.html | 128 + docs/widgets/SerialButton/build.html | 156 + .../SeverityUtil-extension-sidebar.html | 16 + docs/widgets/SeverityUtil.html | 156 + docs/widgets/SeverityUtil/color.html | 141 + docs/widgets/Sidebar-class-sidebar.html | 35 + docs/widgets/Sidebar-class.html | 364 ++ docs/widgets/Sidebar/Sidebar.html | 128 + docs/widgets/Sidebar/build.html | 188 + docs/widgets/SocketEditor-class-sidebar.html | 42 + docs/widgets/SocketEditor-class.html | 453 ++ docs/widgets/SocketEditor/SocketEditor.html | 135 + docs/widgets/SocketEditor/build.html | 161 + docs/widgets/SocketEditor/editPort.html | 129 + docs/widgets/SocketEditor/name.html | 129 + docs/widgets/StatusIcons-class-sidebar.html | 40 + docs/widgets/StatusIcons-class.html | 429 ++ docs/widgets/StatusIcons/StatusIcons.html | 128 + docs/widgets/StatusIcons/build.html | 240 + docs/widgets/StatusIcons/getBatteryIcon.html | 142 + docs/widgets/StatusIcons/getColor.html | 138 + docs/widgets/StatusIcons/getNetworkIcon.html | 139 + docs/widgets/StatusIcons/getStatusColor.html | 143 + docs/widgets/StatusIcons/getStatusIcon.html | 143 + .../widgets/ThrottleEditor-class-sidebar.html | 39 + docs/widgets/ThrottleEditor-class.html | 416 ++ .../ThrottleEditor/ThrottleEditor.html | 121 + docs/widgets/ThrottleEditor/build.html | 168 + docs/widgets/ThrottleEditor/createModel.html | 138 + docs/widgets/TimerEditor-class-sidebar.html | 39 + docs/widgets/TimerEditor-class.html | 416 ++ docs/widgets/TimerEditor/TimerEditor.html | 121 + docs/widgets/TimerEditor/build.html | 172 + docs/widgets/TimerEditor/createModel.html | 138 + docs/widgets/TimerWidget-class-sidebar.html | 41 + docs/widgets/TimerWidget-class.html | 442 ++ docs/widgets/TimerWidget/TimerWidget.html | 128 + docs/widgets/TimerWidget/build.html | 168 + docs/widgets/TimerWidget/getStyle.html | 139 + docs/widgets/VideoFeed-class-sidebar.html | 36 + docs/widgets/VideoFeed-class.html | 376 ++ docs/widgets/VideoFeed/VideoFeed.html | 129 + docs/widgets/VideoFeed/createState.html | 150 + docs/widgets/VideoFeed/name.html | 129 + .../widgets/VideoFeedState-class-sidebar.html | 45 + docs/widgets/VideoFeedState-class.html | 493 ++ .../VideoFeedState/VideoFeedState.html | 121 + docs/widgets/VideoFeedState/build.html | 274 + docs/widgets/VideoFeedState/data.html | 129 + docs/widgets/VideoFeedState/dispose.html | 192 + docs/widgets/VideoFeedState/errorMessage.html | 151 + docs/widgets/VideoFeedState/imageLoader.html | 129 + docs/widgets/VideoFeedState/initState.html | 165 + docs/widgets/VideoFeedState/updateImage.html | 141 + docs/widgets/ViewWidget-class-sidebar.html | 36 + docs/widgets/ViewWidget-class.html | 375 ++ docs/widgets/ViewWidget/ViewWidget.html | 129 + docs/widgets/ViewWidget/createState.html | 150 + docs/widgets/ViewWidget/view.html | 129 + docs/widgets/ViewsCounter-class-sidebar.html | 40 + docs/widgets/ViewsCounter-class.html | 428 ++ docs/widgets/ViewsCounter/ViewsCounter.html | 128 + docs/widgets/ViewsCounter/build.html | 157 + docs/widgets/ViewsWidget-class-sidebar.html | 40 + docs/widgets/ViewsWidget-class.html | 428 ++ docs/widgets/ViewsWidget/ViewsWidget.html | 128 + docs/widgets/ViewsWidget/build.html | 225 + docs/widgets/widgets-library-sidebar.html | 46 + docs/widgets/widgets-library.html | 438 ++ 2412 files changed, 385546 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/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/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/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/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/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/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/info_.html create mode 100644 docs/data/ArmData/shoulder.html create mode 100644 docs/data/ArmData/targetPosition.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/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/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/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/info_.html create mode 100644 docs/data/AutonomyCommand/task.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/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/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/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/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/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/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/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/runtimeType.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/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/DirtReleaseState-class-sidebar.html create mode 100644 docs/data/DirtReleaseState-class.html create mode 100644 docs/data/DirtReleaseState/CLOSE_DIRT-constant.html create mode 100644 docs/data/DirtReleaseState/DIRT_RELEASE_STATE_UNDEFINED-constant.html create mode 100644 docs/data/DirtReleaseState/OPEN_DIRT-constant.html create mode 100644 docs/data/DirtReleaseState/valueOf.html create mode 100644 docs/data/DirtReleaseState/values-constant.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/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/clone.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/frontSwivel.html create mode 100644 docs/data/DriveCommand/frontTilt.html create mode 100644 docs/data/DriveCommand/getDefault.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/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/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/batteryCurrent.html create mode 100644 docs/data/DriveData/batteryTemperature.html create mode 100644 docs/data/DriveData/batteryVoltage.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/clearFrontSwivel.html create mode 100644 docs/data/DriveData/clearFrontTilt.html create mode 100644 docs/data/DriveData/clearLeft.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/clearThrottle.html create mode 100644 docs/data/DriveData/clone.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/frontSwivel.html create mode 100644 docs/data/DriveData/frontTilt.html create mode 100644 docs/data/DriveData/getDefault.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/hasFrontSwivel.html create mode 100644 docs/data/DriveData/hasFrontTilt.html create mode 100644 docs/data/DriveData/hasLeft.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/hasThrottle.html create mode 100644 docs/data/DriveData/info_.html create mode 100644 docs/data/DriveData/left.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/throttle.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/throttleSeverity.html create mode 100644 docs/data/DriveMetrics/update.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/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/clearSpin.html create mode 100644 docs/data/GripperCommand/clearStop.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/getDefault.html create mode 100644 docs/data/GripperCommand/hasCalibrate.html create mode 100644 docs/data/GripperCommand/hasClose.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/hasSpin.html create mode 100644 docs/data/GripperCommand/hasStop.html create mode 100644 docs/data/GripperCommand/info_.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/spin.html create mode 100644 docs/data/GripperCommand/stop.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/clearLift.html create mode 100644 docs/data/GripperData/clearPinch.html create mode 100644 docs/data/GripperData/clearRotate.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/getDefault.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/info_.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/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/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/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/MarsStatusUtils-extension-sidebar.html create mode 100644 docs/data/MarsStatusUtils.html create mode 100644 docs/data/MarsStatusUtils/humanName.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/data.html create mode 100644 docs/data/Metrics/name.html create mode 100644 docs/data/Metrics/overallSeverity.html create mode 100644 docs/data/Metrics/update.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/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/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/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/update.html create mode 100644 docs/data/ProtoColor-class-sidebar.html create mode 100644 docs/data/ProtoColor-class.html create mode 100644 docs/data/ProtoColor/ProtoColor.fromBuffer.html create mode 100644 docs/data/ProtoColor/ProtoColor.fromJson.html create mode 100644 docs/data/ProtoColor/ProtoColor.html create mode 100644 docs/data/ProtoColor/blue.html create mode 100644 docs/data/ProtoColor/clearBlue.html create mode 100644 docs/data/ProtoColor/clearGreen.html create mode 100644 docs/data/ProtoColor/clearRed.html create mode 100644 docs/data/ProtoColor/clone.html create mode 100644 docs/data/ProtoColor/copyWith.html create mode 100644 docs/data/ProtoColor/create.html create mode 100644 docs/data/ProtoColor/createEmptyInstance.html create mode 100644 docs/data/ProtoColor/createRepeated.html create mode 100644 docs/data/ProtoColor/getDefault.html create mode 100644 docs/data/ProtoColor/green.html create mode 100644 docs/data/ProtoColor/hasBlue.html create mode 100644 docs/data/ProtoColor/hasGreen.html create mode 100644 docs/data/ProtoColor/hasRed.html create mode 100644 docs/data/ProtoColor/info_.html create mode 100644 docs/data/ProtoColor/red.html create mode 100644 docs/data/PumpState-class-sidebar.html create mode 100644 docs/data/PumpState-class.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/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/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/info_.html create mode 100644 docs/data/RoverPosition/orientation.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/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/clearCalibrate.html create mode 100644 docs/data/ScienceCommand/clearDirtCarousel.html create mode 100644 docs/data/ScienceCommand/clearDirtLinear.html create mode 100644 docs/data/ScienceCommand/clearDirtRelease.html create mode 100644 docs/data/ScienceCommand/clearNextSection.html create mode 100644 docs/data/ScienceCommand/clearNextTube.html create mode 100644 docs/data/ScienceCommand/clearPump1.html create mode 100644 docs/data/ScienceCommand/clearPump2.html create mode 100644 docs/data/ScienceCommand/clearPump3.html create mode 100644 docs/data/ScienceCommand/clearPump4.html create mode 100644 docs/data/ScienceCommand/clearSample.html create mode 100644 docs/data/ScienceCommand/clearScienceLinear.html create mode 100644 docs/data/ScienceCommand/clearState.html create mode 100644 docs/data/ScienceCommand/clearStop.html create mode 100644 docs/data/ScienceCommand/clearVacuum.html create mode 100644 docs/data/ScienceCommand/clearVacuumLinear.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/dirtCarousel.html create mode 100644 docs/data/ScienceCommand/dirtLinear.html create mode 100644 docs/data/ScienceCommand/dirtRelease.html create mode 100644 docs/data/ScienceCommand/getDefault.html create mode 100644 docs/data/ScienceCommand/hasCalibrate.html create mode 100644 docs/data/ScienceCommand/hasDirtCarousel.html create mode 100644 docs/data/ScienceCommand/hasDirtLinear.html create mode 100644 docs/data/ScienceCommand/hasDirtRelease.html create mode 100644 docs/data/ScienceCommand/hasNextSection.html create mode 100644 docs/data/ScienceCommand/hasNextTube.html create mode 100644 docs/data/ScienceCommand/hasPump1.html create mode 100644 docs/data/ScienceCommand/hasPump2.html create mode 100644 docs/data/ScienceCommand/hasPump3.html create mode 100644 docs/data/ScienceCommand/hasPump4.html create mode 100644 docs/data/ScienceCommand/hasSample.html create mode 100644 docs/data/ScienceCommand/hasScienceLinear.html create mode 100644 docs/data/ScienceCommand/hasState.html create mode 100644 docs/data/ScienceCommand/hasStop.html create mode 100644 docs/data/ScienceCommand/hasVacuum.html create mode 100644 docs/data/ScienceCommand/hasVacuumLinear.html create mode 100644 docs/data/ScienceCommand/info_.html create mode 100644 docs/data/ScienceCommand/nextSection.html create mode 100644 docs/data/ScienceCommand/nextTube.html create mode 100644 docs/data/ScienceCommand/pump1.html create mode 100644 docs/data/ScienceCommand/pump2.html create mode 100644 docs/data/ScienceCommand/pump3.html create mode 100644 docs/data/ScienceCommand/pump4.html create mode 100644 docs/data/ScienceCommand/sample.html create mode 100644 docs/data/ScienceCommand/scienceLinear.html create mode 100644 docs/data/ScienceCommand/state.html create mode 100644 docs/data/ScienceCommand/stop.html create mode 100644 docs/data/ScienceCommand/vacuum.html create mode 100644 docs/data/ScienceCommand/vacuumLinear.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/clearMethane.html create mode 100644 docs/data/ScienceData/clearPH.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/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/getDefault.html create mode 100644 docs/data/ScienceData/hasCo2.html create mode 100644 docs/data/ScienceData/hasHumidity.html create mode 100644 docs/data/ScienceData/hasMethane.html create mode 100644 docs/data/ScienceData/hasPH.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/humidity.html create mode 100644 docs/data/ScienceData/info_.html create mode 100644 docs/data/ScienceData/methane.html create mode 100644 docs/data/ScienceData/pH.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/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/update.html create mode 100644 docs/data/ScienceResult-enum-sidebar.html create mode 100644 docs/data/ScienceResult.html create mode 100644 docs/data/ScienceResult/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/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/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/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/clearColor.html create mode 100644 docs/data/UpdateSetting/clearStatus.html create mode 100644 docs/data/UpdateSetting/clone.html create mode 100644 docs/data/UpdateSetting/color.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/ensureColor.html create mode 100644 docs/data/UpdateSetting/getDefault.html create mode 100644 docs/data/UpdateSetting/hasColor.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/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/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/getDefault.html create mode 100644 docs/data/VideoCommand/hasDetails.html create mode 100644 docs/data/VideoCommand/hasId.html create mode 100644 docs/data/VideoCommand/id.html create mode 100644 docs/data/VideoCommand/info_.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/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/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/id.html create mode 100644 docs/data/VideoData/info_.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/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/updateIK.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/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/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/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/buttonMapping.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/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/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/color.html create mode 100644 docs/models/ColorBuilder/errorText.html create mode 100644 docs/models/ColorBuilder/isLoading.html create mode 100644 docs/models/ColorBuilder/isValid.html create mode 100644 docs/models/ColorBuilder/setColor.html create mode 100644 docs/models/ColorBuilder/slider.html create mode 100644 docs/models/ColorBuilder/updateSlider.html create mode 100644 docs/models/ColorBuilder/value.html create mode 100644 docs/models/ColorUtils-extension-sidebar.html create mode 100644 docs/models/ColorUtils.html create mode 100644 docs/models/ColorUtils/fromColor.html create mode 100644 docs/models/ColorUtils/toColor.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/gamepadIndex.html create mode 100644 docs/models/Controller/gamepadTimer.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/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/splitMode.html create mode 100644 docs/models/DashboardSettingsBuilder/themeMode.html create mode 100644 docs/models/DashboardSettingsBuilder/updateSplitMode.html create mode 100644 docs/models/DashboardSettingsBuilder/updateThemeMode.html create mode 100644 docs/models/DashboardSettingsBuilder/value.html create mode 100644 docs/models/DashboardView-class-sidebar.html create mode 100644 docs/models/DashboardView-class.html create mode 100644 docs/models/DashboardView/DashboardView.html create mode 100644 docs/models/DashboardView/blank.html create mode 100644 docs/models/DashboardView/builder.html create mode 100644 docs/models/DashboardView/cameraViews.html create mode 100644 docs/models/DashboardView/flutterKey.html create mode 100644 docs/models/DashboardView/hashCode.html create mode 100644 docs/models/DashboardView/key.html create mode 100644 docs/models/DashboardView/name.html create mode 100644 docs/models/DashboardView/noSuchMethod.html create mode 100644 docs/models/DashboardView/operator_equals.html create mode 100644 docs/models/DashboardView/runtimeType.html create mode 100644 docs/models/DashboardView/toString.html create mode 100644 docs/models/DashboardView/uiViews.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/mode.html create mode 100644 docs/models/DriveControls/onDispose.html create mode 100644 docs/models/DriveControls/parseInputs.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/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/clear.html create mode 100644 docs/models/LogsModel/handleLog.html create mode 100644 docs/models/LogsModel/init.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/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/levelFilter.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/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/LogsViewModel/update.html create mode 100644 docs/models/MarsControls-class-sidebar.html create mode 100644 docs/models/MarsControls-class.html create mode 100644 docs/models/MarsControls/MarsControls.html create mode 100644 docs/models/MarsControls/buttonMapping.html create mode 100644 docs/models/MarsControls/mode.html create mode 100644 docs/models/MarsControls/onDispose.html create mode 100644 docs/models/MarsControls/parseInputs.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/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/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/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/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/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/position.html create mode 100644 docs/models/RoverMetrics/science.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/buttonMapping.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/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/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/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/views.html create mode 100644 docs/models/ViewsSelector-class-sidebar.html create mode 100644 docs/models/ViewsSelector-class.html create mode 100644 docs/models/ViewsSelector/ViewsSelector.html create mode 100644 docs/models/ViewsSelector/build.html create mode 100644 docs/models/ViewsSelector/currentView.html create mode 100644 docs/models/ViewsSelector/getCameraStatus.html create mode 100644 docs/models/gamepadDelay-constant.html create mode 100644 docs/models/maxColor.html create mode 100644 docs/models/maxLogCount-constant.html create mode 100644 docs/models/minColor.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/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/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/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/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/viewModel.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/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/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/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/mars-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/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/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/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/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/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/hashCode.html create mode 100644 docs/services/DashboardSocket/heartbeatInterval.html create mode 100644 docs/services/DashboardSocket/heartbeatTimer.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/dispose.html create mode 100644 docs/services/FilesService/hashCode.html create mode 100644 docs/services/FilesService/init.html create mode 100644 docs/services/FilesService/logData.html create mode 100644 docs/services/FilesService/logError.html create mode 100644 docs/services/FilesService/logFiles.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/GamepadNumbers-extension-sidebar.html create mode 100644 docs/services/GamepadNumbers.html create mode 100644 docs/services/GamepadNumbers/normalizeJoystick.html create mode 100644 docs/services/GamepadNumbers/normalizeTrigger.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/ids.html create mode 100644 docs/services/GamepadService/init.html create mode 100644 docs/services/GamepadService/noSuchMethod.html create mode 100644 docs/services/GamepadService/numGamepads-constant.html create mode 100644 docs/services/GamepadService/operator_equals.html create mode 100644 docs/services/GamepadService/runtimeType.html create mode 100644 docs/services/GamepadService/toString.html create mode 100644 docs/services/GamepadService/update.html create mode 100644 docs/services/GamepadStateUtils-extension-sidebar.html create mode 100644 docs/services/GamepadStateUtils.html create mode 100644 docs/services/GamepadStateUtils/normalDpadX.html create mode 100644 docs/services/GamepadStateUtils/normalDpadY.html create mode 100644 docs/services/GamepadStateUtils/normalLeftTrigger.html create mode 100644 docs/services/GamepadStateUtils/normalLeftX.html create mode 100644 docs/services/GamepadStateUtils/normalLeftY.html create mode 100644 docs/services/GamepadStateUtils/normalRightTrigger.html create mode 100644 docs/services/GamepadStateUtils/normalRightX.html create mode 100644 docs/services/GamepadStateUtils/normalRightY.html create mode 100644 docs/services/GamepadStateUtils/normalShoulder.html create mode 100644 docs/services/GamepadStateUtils/normalTrigger.html create mode 100644 docs/services/GamepadUtils-extension-sidebar.html create mode 100644 docs/services/GamepadUtils.html create mode 100644 docs/services/GamepadUtils/battery.html create mode 100644 docs/services/GamepadUtils/pulse.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/MockGamepad-class-sidebar.html create mode 100644 docs/services/MockGamepad-class.html create mode 100644 docs/services/MockGamepad/MockGamepad.html create mode 100644 docs/services/MockGamepad/appHasFocus.html create mode 100644 docs/services/MockGamepad/controller.html create mode 100644 docs/services/MockGamepad/gamepadBatteryInfo.html create mode 100644 docs/services/MockGamepad/headsetBatteryInfo.html create mode 100644 docs/services/MockGamepad/isConnected.html create mode 100644 docs/services/MockGamepad/state.html create mode 100644 docs/services/MockGamepad/updateState.html create mode 100644 docs/services/MockGamepad/vibrate.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/connectionIncrement-constant.html create mode 100644 docs/services/epsilon-constant.html create mode 100644 docs/services/heartbeatWaitDelay-constant.html create mode 100644 docs/services/maxGamepads-constant.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/services/vibrateIntensity-constant.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/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/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/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/getNetworkIcon.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/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/build.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/imageLoader.html create mode 100644 docs/widgets/VideoFeedState/initState.html create mode 100644 docs/widgets/VideoFeedState/updateImage.html create mode 100644 docs/widgets/ViewWidget-class-sidebar.html create mode 100644 docs/widgets/ViewWidget-class.html create mode 100644 docs/widgets/ViewWidget/ViewWidget.html create mode 100644 docs/widgets/ViewWidget/createState.html create mode 100644 docs/widgets/ViewWidget/view.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/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..8d51363310 --- /dev/null +++ b/docs/__404error.html @@ -0,0 +1,118 @@ + + + + + + + + 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..41acd8152c --- /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..44b0e87759 --- /dev/null +++ b/docs/app/RoverControlDashboard-class.html @@ -0,0 +1,428 @@ + + + + + + + + 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..df87a2b50a --- /dev/null +++ b/docs/app/RoverControlDashboard/RoverControlDashboard.html @@ -0,0 +1,128 @@ + + + + + + + + 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..740e750716 --- /dev/null +++ b/docs/app/RoverControlDashboard/build.html @@ -0,0 +1,168 @@ + + + + + + + + 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: ColorScheme.light(
+        primary: binghamtonGreen,
+        secondary: binghamtonGreen,
+        surfaceVariant: Colors.blueGrey.shade400,
+      ),
+      appBarTheme: const AppBarTheme(
+        backgroundColor: binghamtonGreen,
+        foregroundColor: Colors.white,
+      ),
+    ),
+    darkTheme: ThemeData.from(
+      colorScheme: ColorScheme.dark(
+        primary: binghamtonGreen,
+        secondary: binghamtonGreen,
+        surfaceVariant: Colors.blueGrey.shade700,
+      ),
+    ),
+    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..65955cfa97 --- /dev/null +++ b/docs/app/app-library.html @@ -0,0 +1,177 @@ + + + + + + + + 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..a17aa0524a --- /dev/null +++ b/docs/app/binghamtonGreen-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..33a24c56ce --- /dev/null +++ b/docs/data/ArmCommand-class-sidebar.html @@ -0,0 +1,107 @@ +
    + +
  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. Methods
  44. +
  45. addExtension
  46. +
  47. check
  48. +
  49. clear
  50. +
  51. clearCalibrate
  52. +
  53. clearElbow
  54. +
  55. clearExtension
  56. +
  57. clearField
  58. +
  59. clearGripperLift
  60. +
  61. clearIkX
  62. +
  63. clearIkY
  64. +
  65. clearIkZ
  66. +
  67. clearJab
  68. +
  69. clearShoulder
  70. +
  71. clearStop
  72. +
  73. clearSwivel
  74. +
  75. clone
  76. +
  77. copyWith
  78. +
  79. createEmptyInstance
  80. +
  81. createMapField
  82. +
  83. createRepeatedField
  84. +
  85. ensureElbow
  86. +
  87. ensureGripperLift
  88. +
  89. ensureShoulder
  90. +
  91. ensureSwivel
  92. +
  93. extensionsAreInitialized
  94. +
  95. freeze
  96. +
  97. getDefaultForField
  98. +
  99. getExtension
  100. +
  101. getField
  102. +
  103. getFieldOrNull
  104. +
  105. getTagNumber
  106. +
  107. hasCalibrate
  108. +
  109. hasElbow
  110. +
  111. hasExtension
  112. +
  113. hasField
  114. +
  115. hasGripperLift
  116. +
  117. hasIkX
  118. +
  119. hasIkY
  120. +
  121. hasIkZ
  122. +
  123. hasJab
  124. +
  125. hasRequiredFields
  126. +
  127. hasShoulder
  128. +
  129. hasStop
  130. +
  131. hasSwivel
  132. +
  133. isInitialized
  134. +
  135. mergeFromBuffer
  136. +
  137. mergeFromCodedBufferReader
  138. +
  139. mergeFromJson
  140. +
  141. mergeFromJsonMap
  142. +
  143. mergeFromMessage
  144. +
  145. mergeFromProto3Json
  146. +
  147. mergeUnknownFields
  148. +
  149. noSuchMethod
  150. +
  151. setExtension
  152. +
  153. setField
  154. +
  155. toBuilder
  156. +
  157. toDebugString
  158. +
  159. toProto3Json
  160. +
  161. toString
  162. +
  163. writeToBuffer
  164. +
  165. writeToCodedBufferWriter
  166. +
  167. writeToJson
  168. +
  169. writeToJsonMap
  170. + +
  171. Operators
  172. +
  173. operator ==
  174. + + + + + +
  175. Static methods
  176. +
  177. create
  178. +
  179. createRepeated
  180. +
  181. getDefault
  182. + +
diff --git a/docs/data/ArmCommand-class.html b/docs/data/ArmCommand-class.html new file mode 100644 index 0000000000..5c28b683e3 --- /dev/null +++ b/docs/data/ArmCommand-class.html @@ -0,0 +1,1269 @@ + + + + + + + + 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}) +
+
+ +
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 + + +
+
+ +
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
+ +
+ +
+
+ +
+

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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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..2109b5753e --- /dev/null +++ b/docs/data/ArmCommand/ArmCommand.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..7b9e3f94dd --- /dev/null +++ b/docs/data/ArmCommand/ArmCommand.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..0563dd1b88 --- /dev/null +++ b/docs/data/ArmCommand/ArmCommand.html @@ -0,0 +1,178 @@ + + + + + + + + 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. +
}) +
+ + + + + +
+

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,
+}) {
+  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;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ArmCommand/calibrate.html b/docs/data/ArmCommand/calibrate.html new file mode 100644 index 0000000000..4369101ffb --- /dev/null +++ b/docs/data/ArmCommand/calibrate.html @@ -0,0 +1,165 @@ + + + + + + + + calibrate property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
calibrate
+ +
+ +
+
+
+ +
+
+

calibrate property +

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

Implementation

+
@$pb.TagNumber(2)
+$core.bool get calibrate => $_getBF(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..ecd2518220 --- /dev/null +++ b/docs/data/ArmCommand/clearCalibrate.html @@ -0,0 +1,134 @@ + + + + + + + + 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..ffcc55b838 --- /dev/null +++ b/docs/data/ArmCommand/clearElbow.html @@ -0,0 +1,134 @@ + + + + + + + + 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..40138dd7da --- /dev/null +++ b/docs/data/ArmCommand/clearGripperLift.html @@ -0,0 +1,134 @@ + + + + + + + + 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..3cbe6eac6e --- /dev/null +++ b/docs/data/ArmCommand/clearIkX.html @@ -0,0 +1,134 @@ + + + + + + + + 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..9a7f827c08 --- /dev/null +++ b/docs/data/ArmCommand/clearIkY.html @@ -0,0 +1,134 @@ + + + + + + + + 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..74ad73e403 --- /dev/null +++ b/docs/data/ArmCommand/clearIkZ.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c13991ae83 --- /dev/null +++ b/docs/data/ArmCommand/clearJab.html @@ -0,0 +1,134 @@ + + + + + + + + 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..e59c4f34b9 --- /dev/null +++ b/docs/data/ArmCommand/clearShoulder.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d627e5c8cf --- /dev/null +++ b/docs/data/ArmCommand/clearStop.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f352654ca4 --- /dev/null +++ b/docs/data/ArmCommand/clearSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/ArmCommand/clone.html new file mode 100644 index 0000000000..98ff83329a --- /dev/null +++ b/docs/data/ArmCommand/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..bc48539940 --- /dev/null +++ b/docs/data/ArmCommand/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..1d3fcf3e59 --- /dev/null +++ b/docs/data/ArmCommand/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f90667e6f9 --- /dev/null +++ b/docs/data/ArmCommand/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..cc09c00116 --- /dev/null +++ b/docs/data/ArmCommand/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..18a7a1c76a --- /dev/null +++ b/docs/data/ArmCommand/elbow.html @@ -0,0 +1,165 @@ + + + + + + + + elbow property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
elbow
+ +
+ +
+
+
+ +
+
+

elbow property +

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

Implementation

+
@$pb.TagNumber(5)
+MotorCommand get elbow => $_getN(4);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ void + 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..6aadc1f8a7 --- /dev/null +++ b/docs/data/ArmCommand/ensureElbow.html @@ -0,0 +1,134 @@ + + + + + + + + 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..652e1b945c --- /dev/null +++ b/docs/data/ArmCommand/ensureGripperLift.html @@ -0,0 +1,134 @@ + + + + + + + + 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..e9f4c7a363 --- /dev/null +++ b/docs/data/ArmCommand/ensureShoulder.html @@ -0,0 +1,134 @@ + + + + + + + + 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..260b67db08 --- /dev/null +++ b/docs/data/ArmCommand/ensureSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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/getDefault.html b/docs/data/ArmCommand/getDefault.html new file mode 100644 index 0000000000..4008e4d24b --- /dev/null +++ b/docs/data/ArmCommand/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..324c37d9b4 --- /dev/null +++ b/docs/data/ArmCommand/gripperLift.html @@ -0,0 +1,169 @@ + + + + + + + + gripperLift property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
gripperLift
+ +
+ +
+
+
+ +
+
+

gripperLift property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ MotorCommand + 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. +
+
+ void + 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..e639cfb3b4 --- /dev/null +++ b/docs/data/ArmCommand/hasCalibrate.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d0103b1366 --- /dev/null +++ b/docs/data/ArmCommand/hasElbow.html @@ -0,0 +1,134 @@ + + + + + + + + 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..37896964b1 --- /dev/null +++ b/docs/data/ArmCommand/hasGripperLift.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c9046e1483 --- /dev/null +++ b/docs/data/ArmCommand/hasIkX.html @@ -0,0 +1,134 @@ + + + + + + + + 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..098a284763 --- /dev/null +++ b/docs/data/ArmCommand/hasIkY.html @@ -0,0 +1,134 @@ + + + + + + + + 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..2d557e6213 --- /dev/null +++ b/docs/data/ArmCommand/hasIkZ.html @@ -0,0 +1,134 @@ + + + + + + + + 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..332b72726c --- /dev/null +++ b/docs/data/ArmCommand/hasJab.html @@ -0,0 +1,134 @@ + + + + + + + + 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..3c44869948 --- /dev/null +++ b/docs/data/ArmCommand/hasShoulder.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d1f6fab46e --- /dev/null +++ b/docs/data/ArmCommand/hasStop.html @@ -0,0 +1,134 @@ + + + + + + + + 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..8f27cfda6c --- /dev/null +++ b/docs/data/ArmCommand/hasSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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/ikX.html b/docs/data/ArmCommand/ikX.html new file mode 100644 index 0000000000..6f361951e8 --- /dev/null +++ b/docs/data/ArmCommand/ikX.html @@ -0,0 +1,165 @@ + + + + + + + + ikX property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ikX
+ +
+ +
+
+
+ +
+
+

ikX property +

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

Implementation

+
@$pb.TagNumber(7)
+$core.double get ikX => $_getN(6);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ void + 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..05f5283a62 --- /dev/null +++ b/docs/data/ArmCommand/ikY.html @@ -0,0 +1,165 @@ + + + + + + + + ikY property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ikY
+ +
+ +
+
+
+ +
+
+

ikY property +

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

Implementation

+
@$pb.TagNumber(8)
+$core.double get ikY => $_getN(7);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ void + 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..4b8a714930 --- /dev/null +++ b/docs/data/ArmCommand/ikZ.html @@ -0,0 +1,165 @@ + + + + + + + + ikZ property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ikZ
+ +
+ +
+
+
+ +
+
+

ikZ property +

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

Implementation

+
@$pb.TagNumber(9)
+$core.double get ikZ => $_getN(8);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ void + 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..aebecb1fdb --- /dev/null +++ b/docs/data/ArmCommand/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..90e6ba4406 --- /dev/null +++ b/docs/data/ArmCommand/jab.html @@ -0,0 +1,168 @@ + + + + + + + + jab property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
jab
+ +
+ +
+
+
+ +
+
+

jab property +

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

Custom actions

+
+ + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.bool get jab => $_getBF(9);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ void + 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..b2430c605d --- /dev/null +++ b/docs/data/ArmCommand/shoulder.html @@ -0,0 +1,165 @@ + + + + + + + + shoulder property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
shoulder
+ +
+ +
+
+
+ +
+
+

shoulder property +

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

Implementation

+
@$pb.TagNumber(4)
+MotorCommand get shoulder => $_getN(3);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ void + 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..e4924fd01c --- /dev/null +++ b/docs/data/ArmCommand/stop.html @@ -0,0 +1,168 @@ + + + + + + + + stop property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
stop
+ +
+ +
+
+
+ +
+
+

stop property +

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

General commands

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.bool get stop => $_getBF(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..41889762f8 --- /dev/null +++ b/docs/data/ArmCommand/swivel.html @@ -0,0 +1,168 @@ + + + + + + + + swivel property - ArmCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
swivel
+ +
+ +
+
+
+ +
+
+

swivel property +

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

Move individual motors

+
+ + +
+

Implementation

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

Implementation

+
@$pb.TagNumber(3)
+set swivel(MotorCommand v) { setField(3, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ArmData-class-sidebar.html b/docs/data/ArmData-class-sidebar.html new file mode 100644 index 0000000000..f8eadd0b82 --- /dev/null +++ b/docs/data/ArmData-class-sidebar.html @@ -0,0 +1,93 @@ +
    + +
  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. Methods
  34. +
  35. addExtension
  36. +
  37. check
  38. +
  39. clear
  40. +
  41. clearBase
  42. +
  43. clearCurrentPosition
  44. +
  45. clearElbow
  46. +
  47. clearExtension
  48. +
  49. clearField
  50. +
  51. clearShoulder
  52. +
  53. clearTargetPosition
  54. +
  55. clone
  56. +
  57. copyWith
  58. +
  59. createEmptyInstance
  60. +
  61. createMapField
  62. +
  63. createRepeatedField
  64. +
  65. ensureBase
  66. +
  67. ensureCurrentPosition
  68. +
  69. ensureElbow
  70. +
  71. ensureShoulder
  72. +
  73. ensureTargetPosition
  74. +
  75. extensionsAreInitialized
  76. +
  77. freeze
  78. +
  79. getDefaultForField
  80. +
  81. getExtension
  82. +
  83. getField
  84. +
  85. getFieldOrNull
  86. +
  87. getTagNumber
  88. +
  89. hasBase
  90. +
  91. hasCurrentPosition
  92. +
  93. hasElbow
  94. +
  95. hasExtension
  96. +
  97. hasField
  98. +
  99. hasRequiredFields
  100. +
  101. hasShoulder
  102. +
  103. hasTargetPosition
  104. +
  105. isInitialized
  106. +
  107. mergeFromBuffer
  108. +
  109. mergeFromCodedBufferReader
  110. +
  111. mergeFromJson
  112. +
  113. mergeFromJsonMap
  114. +
  115. mergeFromMessage
  116. +
  117. mergeFromProto3Json
  118. +
  119. mergeUnknownFields
  120. +
  121. noSuchMethod
  122. +
  123. setExtension
  124. +
  125. setField
  126. +
  127. toBuilder
  128. +
  129. toDebugString
  130. +
  131. toProto3Json
  132. +
  133. toString
  134. +
  135. writeToBuffer
  136. +
  137. writeToCodedBufferWriter
  138. +
  139. writeToJson
  140. +
  141. writeToJsonMap
  142. + +
  143. Operators
  144. +
  145. operator ==
  146. + + + + + +
  147. Static methods
  148. +
  149. create
  150. +
  151. createRepeated
  152. +
  153. getDefault
  154. + +
diff --git a/docs/data/ArmData-class.html b/docs/data/ArmData-class.html new file mode 100644 index 0000000000..b282028589 --- /dev/null +++ b/docs/data/ArmData-class.html @@ -0,0 +1,1091 @@ + + + + + + + + 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}) +
+
+ +
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
+ +
+ +
+
+ +
+

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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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..1adba0d7dc --- /dev/null +++ b/docs/data/ArmData/ArmData.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..bc04fdb460 --- /dev/null +++ b/docs/data/ArmData/ArmData.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..8a517cc954 --- /dev/null +++ b/docs/data/ArmData/ArmData.html @@ -0,0 +1,153 @@ + + + + + + + + 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. +
}) +
+ + + + + +
+

Implementation

+
factory ArmData({
+  Coordinates? currentPosition,
+  Coordinates? targetPosition,
+  MotorData? base,
+  MotorData? shoulder,
+  MotorData? elbow,
+}) {
+  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;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ArmData/base.html b/docs/data/ArmData/base.html new file mode 100644 index 0000000000..cdf68ca472 --- /dev/null +++ b/docs/data/ArmData/base.html @@ -0,0 +1,165 @@ + + + + + + + + base property - ArmData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
base
+ +
+ +
+
+
+ +
+
+

base property +

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

Implementation

+
@$pb.TagNumber(3)
+MotorData get base => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..5d1081c39d --- /dev/null +++ b/docs/data/ArmData/clearBase.html @@ -0,0 +1,134 @@ + + + + + + + + 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..e4bbab4f11 --- /dev/null +++ b/docs/data/ArmData/clearCurrentPosition.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c06248ae76 --- /dev/null +++ b/docs/data/ArmData/clearElbow.html @@ -0,0 +1,134 @@ + + + + + + + + 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..cb4f9a32fb --- /dev/null +++ b/docs/data/ArmData/clearShoulder.html @@ -0,0 +1,134 @@ + + + + + + + + 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..edfabba1c7 --- /dev/null +++ b/docs/data/ArmData/clearTargetPosition.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/ArmData/clone.html new file mode 100644 index 0000000000..ff8c98f8c4 --- /dev/null +++ b/docs/data/ArmData/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..5b0a184eca --- /dev/null +++ b/docs/data/ArmData/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..87619d18f1 --- /dev/null +++ b/docs/data/ArmData/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..4394068910 --- /dev/null +++ b/docs/data/ArmData/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..8ef4e93660 --- /dev/null +++ b/docs/data/ArmData/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..9eeb5b5536 --- /dev/null +++ b/docs/data/ArmData/currentPosition.html @@ -0,0 +1,165 @@ + + + + + + + + currentPosition property - ArmData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
currentPosition
+ +
+ +
+
+
+ +
+
+

currentPosition property +

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

Implementation

+
@$pb.TagNumber(1)
+Coordinates get currentPosition => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..030884156f --- /dev/null +++ b/docs/data/ArmData/elbow.html @@ -0,0 +1,165 @@ + + + + + + + + elbow property - ArmData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
elbow
+ +
+ +
+
+
+ +
+
+

elbow property +

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

Implementation

+
@$pb.TagNumber(5)
+MotorData get elbow => $_getN(4);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ void + 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..a1ead195dc --- /dev/null +++ b/docs/data/ArmData/ensureBase.html @@ -0,0 +1,134 @@ + + + + + + + + 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..4f6ba14815 --- /dev/null +++ b/docs/data/ArmData/ensureCurrentPosition.html @@ -0,0 +1,134 @@ + + + + + + + + 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..8ccb5394fa --- /dev/null +++ b/docs/data/ArmData/ensureElbow.html @@ -0,0 +1,134 @@ + + + + + + + + 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..51a9a21df7 --- /dev/null +++ b/docs/data/ArmData/ensureShoulder.html @@ -0,0 +1,134 @@ + + + + + + + + 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..2c4e7c1f59 --- /dev/null +++ b/docs/data/ArmData/ensureTargetPosition.html @@ -0,0 +1,134 @@ + + + + + + + + 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/getDefault.html b/docs/data/ArmData/getDefault.html new file mode 100644 index 0000000000..5181fa592a --- /dev/null +++ b/docs/data/ArmData/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2053cb6f0b --- /dev/null +++ b/docs/data/ArmData/hasBase.html @@ -0,0 +1,134 @@ + + + + + + + + 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..7543de66ed --- /dev/null +++ b/docs/data/ArmData/hasCurrentPosition.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d58b2484ae --- /dev/null +++ b/docs/data/ArmData/hasElbow.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f9eba2d3c2 --- /dev/null +++ b/docs/data/ArmData/hasShoulder.html @@ -0,0 +1,134 @@ + + + + + + + + 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..5ae732fb06 --- /dev/null +++ b/docs/data/ArmData/hasTargetPosition.html @@ -0,0 +1,134 @@ + + + + + + + + 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/info_.html b/docs/data/ArmData/info_.html new file mode 100644 index 0000000000..75ec2ab698 --- /dev/null +++ b/docs/data/ArmData/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - ArmData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..78ed9729a3 --- /dev/null +++ b/docs/data/ArmData/shoulder.html @@ -0,0 +1,165 @@ + + + + + + + + shoulder property - ArmData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
shoulder
+ +
+ +
+
+
+ +
+
+

shoulder property +

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

Implementation

+
@$pb.TagNumber(4)
+MotorData get shoulder => $_getN(3);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ void + 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..e3b3f233bf --- /dev/null +++ b/docs/data/ArmData/targetPosition.html @@ -0,0 +1,165 @@ + + + + + + + + targetPosition property - ArmData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
targetPosition
+ +
+ +
+
+
+ +
+
+

targetPosition property +

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

Implementation

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

Implementation

+
@$pb.TagNumber(2)
+set targetPosition(Coordinates v) { setField(2, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ArmMetrics-class-sidebar.html b/docs/data/ArmMetrics-class-sidebar.html new file mode 100644 index 0000000000..bde885c942 --- /dev/null +++ b/docs/data/ArmMetrics-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. ArmMetrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. data
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. name
  16. +
  17. overallSeverity
  18. +
  19. runtimeType
  20. + +
  21. Methods
  22. +
  23. addListener
  24. +
  25. dispose
  26. +
  27. getMotorData
  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/data/ArmMetrics-class.html b/docs/data/ArmMetrics-class.html new file mode 100644 index 0000000000..5e62c8ed50 --- /dev/null +++ b/docs/data/ArmMetrics-class.html @@ -0,0 +1,384 @@ + + + + + + + + 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
+ +
+ +
+ 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
+ +
+ +
+
+ +
+

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
+ +
+ +
+ 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
+ +
+ +
+ 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..2ecc064a39 --- /dev/null +++ b/docs/data/ArmMetrics/ArmMetrics.html @@ -0,0 +1,128 @@ + + + + + + + + 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..a87135fd8d --- /dev/null +++ b/docs/data/ArmMetrics/allMetrics.html @@ -0,0 +1,157 @@ + + + + + + + + allMetrics property - ArmMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
allMetrics
+ +
+ +
+
+
+ +
+
+ +

allMetrics property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<MetricLine> + 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..9d9221913a --- /dev/null +++ b/docs/data/ArmMetrics/getMotorData.html @@ -0,0 +1,139 @@ + + + + + + + + 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}", severity: motor.isMoving ? Severity.info : null),
+	MetricLine("  Limit? ${motor.isLimitSwitchPressed}", severity: motor.isLimitSwitchPressed ? 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..f0d4d48c6f --- /dev/null +++ b/docs/data/ArmMetrics/name.html @@ -0,0 +1,142 @@ + + + + + + + + name property - ArmMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
name
+ +
+ +
+
+
+ +
+
+ +

name property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ String + 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/ArmSettings-class-sidebar.html b/docs/data/ArmSettings-class-sidebar.html new file mode 100644 index 0000000000..75ad14c67d --- /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..3630ef5ff1 --- /dev/null +++ b/docs/data/ArmSettings-class.html @@ -0,0 +1,337 @@ + + + + + + + + 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..b1f46bd7fc --- /dev/null +++ b/docs/data/ArmSettings/ArmSettings.fromJson.html @@ -0,0 +1,137 @@ + + + + + + + + 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..d8b0aaac0b --- /dev/null +++ b/docs/data/ArmSettings/ArmSettings.html @@ -0,0 +1,145 @@ + + + + + + + + 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..f5c4eccfec --- /dev/null +++ b/docs/data/ArmSettings/elbow.html @@ -0,0 +1,129 @@ + + + + + + + + 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..ebc1c05e1d --- /dev/null +++ b/docs/data/ArmSettings/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..57fc2f55c7 --- /dev/null +++ b/docs/data/ArmSettings/ikIncrement.html @@ -0,0 +1,129 @@ + + + + + + + + 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..44ad61c660 --- /dev/null +++ b/docs/data/ArmSettings/lift.html @@ -0,0 +1,129 @@ + + + + + + + + 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..5560a3de1c --- /dev/null +++ b/docs/data/ArmSettings/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..636eaf16e0 --- /dev/null +++ b/docs/data/ArmSettings/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..9be42739c8 --- /dev/null +++ b/docs/data/ArmSettings/pinch.html @@ -0,0 +1,129 @@ + + + + + + + + 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..b2079b17f6 --- /dev/null +++ b/docs/data/ArmSettings/rotate.html @@ -0,0 +1,129 @@ + + + + + + + + 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..7492c38467 --- /dev/null +++ b/docs/data/ArmSettings/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - ArmSettings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..2afed14189 --- /dev/null +++ b/docs/data/ArmSettings/shoulder.html @@ -0,0 +1,129 @@ + + + + + + + + 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..17aa9bc1fb --- /dev/null +++ b/docs/data/ArmSettings/swivel.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2ecb4f9a68 --- /dev/null +++ b/docs/data/ArmSettings/toJson.html @@ -0,0 +1,141 @@ + + + + + + + + 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..4282b74c0e --- /dev/null +++ b/docs/data/ArmSettings/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..6b501f243e --- /dev/null +++ b/docs/data/ArmSettings/useIK.html @@ -0,0 +1,129 @@ + + + + + + + + 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..1dc1583f43 --- /dev/null +++ b/docs/data/AutonomyCommand-class-sidebar.html @@ -0,0 +1,86 @@ +
    + +
  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. Methods
  32. +
  33. addExtension
  34. +
  35. check
  36. +
  37. clear
  38. +
  39. clearAbort
  40. +
  41. clearArucoId
  42. +
  43. clearDestination
  44. +
  45. clearExtension
  46. +
  47. clearField
  48. +
  49. clearTask
  50. +
  51. clone
  52. +
  53. copyWith
  54. +
  55. createEmptyInstance
  56. +
  57. createMapField
  58. +
  59. createRepeatedField
  60. +
  61. ensureDestination
  62. +
  63. extensionsAreInitialized
  64. +
  65. freeze
  66. +
  67. getDefaultForField
  68. +
  69. getExtension
  70. +
  71. getField
  72. +
  73. getFieldOrNull
  74. +
  75. getTagNumber
  76. +
  77. hasAbort
  78. +
  79. hasArucoId
  80. +
  81. hasDestination
  82. +
  83. hasExtension
  84. +
  85. hasField
  86. +
  87. hasRequiredFields
  88. +
  89. hasTask
  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/AutonomyCommand-class.html b/docs/data/AutonomyCommand-class.html new file mode 100644 index 0000000000..f7814e7dee --- /dev/null +++ b/docs/data/AutonomyCommand-class.html @@ -0,0 +1,1001 @@ + + + + + + + + AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
AutonomyCommand
+ +
+ +
+
+
+ +
+
+

AutonomyCommand class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + +
Available Extensions
+
+ + + + +
+
+ + +
+

Constructors

+ +
+
+ AutonomyCommand({GpsCoordinates? destination, AutonomyTask? task, int? arucoId, bool? abort}) +
+
+ +
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
+ +
+ +
+
+ +
+

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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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..41b8886e7f --- /dev/null +++ b/docs/data/AutonomyCommand/AutonomyCommand.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..b78702aa7c --- /dev/null +++ b/docs/data/AutonomyCommand/AutonomyCommand.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..1700233863 --- /dev/null +++ b/docs/data/AutonomyCommand/AutonomyCommand.html @@ -0,0 +1,148 @@ + + + + + + + + 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. +
}) +
+ + + + + +
+

Implementation

+
factory AutonomyCommand({
+  $0.GpsCoordinates? destination,
+  AutonomyTask? task,
+  $core.int? arucoId,
+  $core.bool? abort,
+}) {
+  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;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/AutonomyCommand/abort.html b/docs/data/AutonomyCommand/abort.html new file mode 100644 index 0000000000..eee4ba23d6 --- /dev/null +++ b/docs/data/AutonomyCommand/abort.html @@ -0,0 +1,165 @@ + + + + + + + + abort property - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
abort
+ +
+ +
+
+
+ +
+
+

abort property +

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

Implementation

+
@$pb.TagNumber(4)
+$core.bool get abort => $_getBF(3);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ void + 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..5a890403f3 --- /dev/null +++ b/docs/data/AutonomyCommand/arucoId.html @@ -0,0 +1,165 @@ + + + + + + + + arucoId property - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
arucoId
+ +
+ +
+
+
+ +
+
+

arucoId property +

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

Implementation

+
@$pb.TagNumber(3)
+$core.int get arucoId => $_getIZ(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..1d9d81043e --- /dev/null +++ b/docs/data/AutonomyCommand/clearAbort.html @@ -0,0 +1,134 @@ + + + + + + + + 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..56ceb475ba --- /dev/null +++ b/docs/data/AutonomyCommand/clearArucoId.html @@ -0,0 +1,134 @@ + + + + + + + + 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..e61dde47ff --- /dev/null +++ b/docs/data/AutonomyCommand/clearDestination.html @@ -0,0 +1,134 @@ + + + + + + + + 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..de269c5aff --- /dev/null +++ b/docs/data/AutonomyCommand/clearTask.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/AutonomyCommand/clone.html new file mode 100644 index 0000000000..99c794e17d --- /dev/null +++ b/docs/data/AutonomyCommand/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..23eab321dd --- /dev/null +++ b/docs/data/AutonomyCommand/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..018bbb700f --- /dev/null +++ b/docs/data/AutonomyCommand/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2d6aaf25d2 --- /dev/null +++ b/docs/data/AutonomyCommand/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..22a8f52f02 --- /dev/null +++ b/docs/data/AutonomyCommand/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..24270de1d7 --- /dev/null +++ b/docs/data/AutonomyCommand/destination.html @@ -0,0 +1,165 @@ + + + + + + + + destination property - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
destination
+ +
+ +
+
+
+ +
+
+

destination property +

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

Implementation

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

Implementation

+
@$pb.TagNumber(1)
+set destination($0.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..37badc5296 --- /dev/null +++ b/docs/data/AutonomyCommand/ensureDestination.html @@ -0,0 +1,134 @@ + + + + + + + + ensureDestination method - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ensureDestination
+ +
+ +
+
+
+ +
+
+

ensureDestination method +

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

Implementation

+
@$pb.TagNumber(1)
+$0.GpsCoordinates ensureDestination() => $_ensure(0);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/AutonomyCommand/getDefault.html b/docs/data/AutonomyCommand/getDefault.html new file mode 100644 index 0000000000..52e1d88e9f --- /dev/null +++ b/docs/data/AutonomyCommand/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c0c42983aa --- /dev/null +++ b/docs/data/AutonomyCommand/hasAbort.html @@ -0,0 +1,134 @@ + + + + + + + + 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..cbe0d6ae8c --- /dev/null +++ b/docs/data/AutonomyCommand/hasArucoId.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f15ef0e95a --- /dev/null +++ b/docs/data/AutonomyCommand/hasDestination.html @@ -0,0 +1,134 @@ + + + + + + + + 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..e025a91277 --- /dev/null +++ b/docs/data/AutonomyCommand/hasTask.html @@ -0,0 +1,134 @@ + + + + + + + + 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/info_.html b/docs/data/AutonomyCommand/info_.html new file mode 100644 index 0000000000..5e8d1220a8 --- /dev/null +++ b/docs/data/AutonomyCommand/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..f3cb861453 --- /dev/null +++ b/docs/data/AutonomyCommand/task.html @@ -0,0 +1,165 @@ + + + + + + + + task property - AutonomyCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
task
+ +
+ +
+
+
+ +
+
+

task property +

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

Implementation

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

Implementation

+
@$pb.TagNumber(2)
+set task(AutonomyTask v) { setField(2, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/AutonomyData-class-sidebar.html b/docs/data/AutonomyData-class-sidebar.html new file mode 100644 index 0000000000..3576d62018 --- /dev/null +++ b/docs/data/AutonomyData-class-sidebar.html @@ -0,0 +1,88 @@ +
    + +
  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. Methods
  36. +
  37. addExtension
  38. +
  39. check
  40. +
  41. clear
  42. +
  43. clearCrash
  44. +
  45. clearDestination
  46. +
  47. clearExtension
  48. +
  49. clearField
  50. +
  51. clearState
  52. +
  53. clearTask
  54. +
  55. clone
  56. +
  57. copyWith
  58. +
  59. createEmptyInstance
  60. +
  61. createMapField
  62. +
  63. createRepeatedField
  64. +
  65. ensureDestination
  66. +
  67. extensionsAreInitialized
  68. +
  69. freeze
  70. +
  71. getDefaultForField
  72. +
  73. getExtension
  74. +
  75. getField
  76. +
  77. getFieldOrNull
  78. +
  79. getTagNumber
  80. +
  81. hasCrash
  82. +
  83. hasDestination
  84. +
  85. hasExtension
  86. +
  87. hasField
  88. +
  89. hasRequiredFields
  90. +
  91. hasState
  92. +
  93. hasTask
  94. +
  95. isInitialized
  96. +
  97. mergeFromBuffer
  98. +
  99. mergeFromCodedBufferReader
  100. +
  101. mergeFromJson
  102. +
  103. mergeFromJsonMap
  104. +
  105. mergeFromMessage
  106. +
  107. mergeFromProto3Json
  108. +
  109. mergeUnknownFields
  110. +
  111. noSuchMethod
  112. +
  113. setExtension
  114. +
  115. setField
  116. +
  117. toBuilder
  118. +
  119. toDebugString
  120. +
  121. toProto3Json
  122. +
  123. toString
  124. +
  125. writeToBuffer
  126. +
  127. writeToCodedBufferWriter
  128. +
  129. writeToJson
  130. +
  131. writeToJsonMap
  132. + +
  133. Operators
  134. +
  135. operator ==
  136. + + + + + +
  137. Static methods
  138. +
  139. create
  140. +
  141. createRepeated
  142. +
  143. getDefault
  144. + +
diff --git a/docs/data/AutonomyData-class.html b/docs/data/AutonomyData-class.html new file mode 100644 index 0000000000..598b1b8fa2 --- /dev/null +++ b/docs/data/AutonomyData-class.html @@ -0,0 +1,1025 @@ + + + + + + + + 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}) +
+
+ +
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
+ +
+ +
+
+ +
+

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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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..43973dd723 --- /dev/null +++ b/docs/data/AutonomyData/AutonomyData.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..453e4a2815 --- /dev/null +++ b/docs/data/AutonomyData/AutonomyData.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..322c6b5732 --- /dev/null +++ b/docs/data/AutonomyData/AutonomyData.html @@ -0,0 +1,158 @@ + + + + + + + + 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. +
}) +
+ + + + + +
+

Implementation

+
factory AutonomyData({
+  AutonomyState? state,
+  $0.GpsCoordinates? destination,
+  $core.Iterable<$0.GpsCoordinates>? obstacles,
+  $core.Iterable<$0.GpsCoordinates>? path,
+  AutonomyTask? task,
+  $core.bool? crash,
+}) {
+  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;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/AutonomyData/clearCrash.html b/docs/data/AutonomyData/clearCrash.html new file mode 100644 index 0000000000..e44314c96c --- /dev/null +++ b/docs/data/AutonomyData/clearCrash.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d1ebc248cc --- /dev/null +++ b/docs/data/AutonomyData/clearDestination.html @@ -0,0 +1,134 @@ + + + + + + + + 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..fc5f39d0ed --- /dev/null +++ b/docs/data/AutonomyData/clearState.html @@ -0,0 +1,134 @@ + + + + + + + + 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..0a41e39a85 --- /dev/null +++ b/docs/data/AutonomyData/clearTask.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/AutonomyData/clone.html new file mode 100644 index 0000000000..e73f67c99b --- /dev/null +++ b/docs/data/AutonomyData/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..6b4a51731d --- /dev/null +++ b/docs/data/AutonomyData/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..12433a8a49 --- /dev/null +++ b/docs/data/AutonomyData/crash.html @@ -0,0 +1,165 @@ + + + + + + + + crash property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
crash
+ +
+ +
+
+
+ +
+
+

crash property +

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

Implementation

+
@$pb.TagNumber(6)
+$core.bool get crash => $_getBF(5);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ void + 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..49c531b625 --- /dev/null +++ b/docs/data/AutonomyData/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..b096d6a3ea --- /dev/null +++ b/docs/data/AutonomyData/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..567c7f7864 --- /dev/null +++ b/docs/data/AutonomyData/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..69241df54e --- /dev/null +++ b/docs/data/AutonomyData/destination.html @@ -0,0 +1,165 @@ + + + + + + + + destination property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
destination
+ +
+ +
+
+
+ +
+
+

destination property +

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

Implementation

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

Implementation

+
@$pb.TagNumber(2)
+set destination($0.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..8316ca3601 --- /dev/null +++ b/docs/data/AutonomyData/ensureDestination.html @@ -0,0 +1,134 @@ + + + + + + + + ensureDestination method - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ensureDestination
+ +
+ +
+
+
+ +
+
+

ensureDestination method +

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

Implementation

+
@$pb.TagNumber(2)
+$0.GpsCoordinates ensureDestination() => $_ensure(1);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/AutonomyData/getDefault.html b/docs/data/AutonomyData/getDefault.html new file mode 100644 index 0000000000..a1bb9d31d7 --- /dev/null +++ b/docs/data/AutonomyData/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..355f68a9e5 --- /dev/null +++ b/docs/data/AutonomyData/hasCrash.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c6c20a90bd --- /dev/null +++ b/docs/data/AutonomyData/hasDestination.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f17b6a014a --- /dev/null +++ b/docs/data/AutonomyData/hasState.html @@ -0,0 +1,134 @@ + + + + + + + + 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..cc4ba1aea5 --- /dev/null +++ b/docs/data/AutonomyData/hasTask.html @@ -0,0 +1,134 @@ + + + + + + + + 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/info_.html b/docs/data/AutonomyData/info_.html new file mode 100644 index 0000000000..bf7f7a9fe6 --- /dev/null +++ b/docs/data/AutonomyData/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..1abfb1c7de --- /dev/null +++ b/docs/data/AutonomyData/obstacles.html @@ -0,0 +1,138 @@ + + + + + + + + obstacles property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
obstacles
+ +
+ +
+
+
+ +
+
+

obstacles property +

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

Implementation

+
@$pb.TagNumber(3)
+$core.List<$0.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..8f0b606c1c --- /dev/null +++ b/docs/data/AutonomyData/path.html @@ -0,0 +1,138 @@ + + + + + + + + path property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
path
+ +
+ +
+
+
+ +
+
+

path property +

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

Implementation

+
@$pb.TagNumber(4)
+$core.List<$0.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..f135c4f134 --- /dev/null +++ b/docs/data/AutonomyData/state.html @@ -0,0 +1,165 @@ + + + + + + + + state property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
state
+ +
+ +
+
+
+ +
+
+

state property +

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

Implementation

+
@$pb.TagNumber(1)
+AutonomyState get state => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..de878de80f --- /dev/null +++ b/docs/data/AutonomyData/task.html @@ -0,0 +1,165 @@ + + + + + + + + task property - AutonomyData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
task
+ +
+ +
+
+
+ +
+
+

task property +

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

Implementation

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

Implementation

+
@$pb.TagNumber(5)
+set task(AutonomyTask v) { setField(5, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/AutonomyState-class-sidebar.html b/docs/data/AutonomyState-class-sidebar.html new file mode 100644 index 0000000000..ff0504972e --- /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..70e44c6619 --- /dev/null +++ b/docs/data/AutonomyState-class.html @@ -0,0 +1,387 @@ + + + + + + + + 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..ba2f142a54 --- /dev/null +++ b/docs/data/AutonomyState/ABORTING-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..ce67b11111 --- /dev/null +++ b/docs/data/AutonomyState/APPROACHING-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..af23b8f22b --- /dev/null +++ b/docs/data/AutonomyState/AT_DESTINATION-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..300a6e3be5 --- /dev/null +++ b/docs/data/AutonomyState/AUTONOMY_STATE_UNDEFINED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..d0980a0fb1 --- /dev/null +++ b/docs/data/AutonomyState/DRIVING-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..aaa7c9ec0f --- /dev/null +++ b/docs/data/AutonomyState/NO_SOLUTION-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..faeed0db31 --- /dev/null +++ b/docs/data/AutonomyState/PATHING-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..80c9fad6e7 --- /dev/null +++ b/docs/data/AutonomyState/SEARCHING-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..22a04dc9c0 --- /dev/null +++ b/docs/data/AutonomyState/valueOf.html @@ -0,0 +1,129 @@ + + + + + + + + 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..4ef09e4bc4 --- /dev/null +++ b/docs/data/AutonomyState/values-constant.html @@ -0,0 +1,134 @@ + + + + + + + + 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..570f48fcb3 --- /dev/null +++ b/docs/data/AutonomyStateUtils.html @@ -0,0 +1,156 @@ + + + + + + + + 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..dacc0e4e9e --- /dev/null +++ b/docs/data/AutonomyStateUtils/humanName.html @@ -0,0 +1,149 @@ + + + + + + + + humanName property - AutonomyStateUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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..04ea951ad0 --- /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..ebcde4c2aa --- /dev/null +++ b/docs/data/AutonomyTask-class.html @@ -0,0 +1,339 @@ + + + + + + + + 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..d6cedab8dd --- /dev/null +++ b/docs/data/AutonomyTask/AUTONOMY_TASK_UNDEFINED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..24e1aac533 --- /dev/null +++ b/docs/data/AutonomyTask/BETWEEN_GATES-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..1dd11962f9 --- /dev/null +++ b/docs/data/AutonomyTask/GPS_ONLY-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..cc47e12722 --- /dev/null +++ b/docs/data/AutonomyTask/VISUAL_MARKER-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..e0ef55c498 --- /dev/null +++ b/docs/data/AutonomyTask/valueOf.html @@ -0,0 +1,129 @@ + + + + + + + + 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..e501cd40c4 --- /dev/null +++ b/docs/data/AutonomyTask/values-constant.html @@ -0,0 +1,130 @@ + + + + + + + + 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..2b83d01e5a --- /dev/null +++ b/docs/data/AutonomyTaskUtils.html @@ -0,0 +1,156 @@ + + + + + + + + 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..7dc269ad7c --- /dev/null +++ b/docs/data/AutonomyTaskUtils/humanName.html @@ -0,0 +1,145 @@ + + + + + + + + humanName property - AutonomyTaskUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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/BurtLog-class-sidebar.html b/docs/data/BurtLog-class-sidebar.html new file mode 100644 index 0000000000..1fe0665ffb --- /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..10388807b5 --- /dev/null +++ b/docs/data/BurtLog-class.html @@ -0,0 +1,989 @@ + + + + + + + + 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..6c9b6dd995 --- /dev/null +++ b/docs/data/BurtLog/BurtLog.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..d7186adf13 --- /dev/null +++ b/docs/data/BurtLog/BurtLog.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..ba2b032196 --- /dev/null +++ b/docs/data/BurtLog/BurtLog.html @@ -0,0 +1,148 @@ + + + + + + + + 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,
+  $1.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..ff9bfc54de --- /dev/null +++ b/docs/data/BurtLog/body.html @@ -0,0 +1,165 @@ + + + + + + + + body property - BurtLog class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
body
+ +
+ +
+
+
+ +
+
+

body property +

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

Implementation

+
@$pb.TagNumber(3)
+$core.String get body => $_getSZ(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..6629568b73 --- /dev/null +++ b/docs/data/BurtLog/clearBody.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c549174790 --- /dev/null +++ b/docs/data/BurtLog/clearDevice.html @@ -0,0 +1,134 @@ + + + + + + + + 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..8aa6def482 --- /dev/null +++ b/docs/data/BurtLog/clearLevel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..53ac3d91cd --- /dev/null +++ b/docs/data/BurtLog/clearTitle.html @@ -0,0 +1,134 @@ + + + + + + + + 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..a32792e5f7 --- /dev/null +++ b/docs/data/BurtLog/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..048e11339c --- /dev/null +++ b/docs/data/BurtLog/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..76de7f6ddc --- /dev/null +++ b/docs/data/BurtLog/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..fc3f2b5479 --- /dev/null +++ b/docs/data/BurtLog/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..b6e74275b8 --- /dev/null +++ b/docs/data/BurtLog/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..fa09d6e0c3 --- /dev/null +++ b/docs/data/BurtLog/device.html @@ -0,0 +1,165 @@ + + + + + + + + device property - BurtLog class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
device
+ +
+ +
+
+
+ +
+
+

device property +

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

Implementation

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

Implementation

+
@$pb.TagNumber(4)
+set device($1.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..39b2cfb081 --- /dev/null +++ b/docs/data/BurtLog/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..d679df42ff --- /dev/null +++ b/docs/data/BurtLog/hasBody.html @@ -0,0 +1,134 @@ + + + + + + + + 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..bd272a0228 --- /dev/null +++ b/docs/data/BurtLog/hasDevice.html @@ -0,0 +1,134 @@ + + + + + + + + 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..1ed62e3c4a --- /dev/null +++ b/docs/data/BurtLog/hasLevel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..24d0d31579 --- /dev/null +++ b/docs/data/BurtLog/hasTitle.html @@ -0,0 +1,134 @@ + + + + + + + + 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..0910a95a4b --- /dev/null +++ b/docs/data/BurtLog/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - BurtLog class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..974e7a9630 --- /dev/null +++ b/docs/data/BurtLog/level.html @@ -0,0 +1,165 @@ + + + + + + + + level property - BurtLog class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
level
+ +
+ +
+
+
+ +
+
+

level property +

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

Implementation

+
@$pb.TagNumber(1)
+BurtLogLevel get level => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..2a2598fdc2 --- /dev/null +++ b/docs/data/BurtLog/title.html @@ -0,0 +1,165 @@ + + + + + + + + title property - BurtLog class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
title
+ +
+ +
+
+
+ +
+
+

title property +

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

Implementation

+
@$pb.TagNumber(2)
+$core.String get title => $_getSZ(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..2b22329fb5 --- /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..54cf2ea185 --- /dev/null +++ b/docs/data/BurtLogLevel-class.html @@ -0,0 +1,375 @@ + + + + + + + + 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..5c687d8e56 --- /dev/null +++ b/docs/data/BurtLogLevel/BURT_LOG_LEVEL_UNDEFINED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..5b42de1fa4 --- /dev/null +++ b/docs/data/BurtLogLevel/critical-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..21ab72a3f9 --- /dev/null +++ b/docs/data/BurtLogLevel/debug-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..8d65034482 --- /dev/null +++ b/docs/data/BurtLogLevel/error-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..2186c39350 --- /dev/null +++ b/docs/data/BurtLogLevel/info-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..4eef66b641 --- /dev/null +++ b/docs/data/BurtLogLevel/trace-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..cca19ecbf8 --- /dev/null +++ b/docs/data/BurtLogLevel/valueOf.html @@ -0,0 +1,129 @@ + + + + + + + + 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..59ca97139d --- /dev/null +++ b/docs/data/BurtLogLevel/values-constant.html @@ -0,0 +1,133 @@ + + + + + + + + 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..66b3debe52 --- /dev/null +++ b/docs/data/BurtLogLevel/warning-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..08fda90a27 --- /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..9369606d0e --- /dev/null +++ b/docs/data/CameraDetails-class.html @@ -0,0 +1,1257 @@ + + + + + + + + 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..0b0211fbd9 --- /dev/null +++ b/docs/data/CameraDetails/CameraDetails.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..00928e5725 --- /dev/null +++ b/docs/data/CameraDetails/CameraDetails.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..3fee3ce660 --- /dev/null +++ b/docs/data/CameraDetails/CameraDetails.html @@ -0,0 +1,183 @@ + + + + + + + + 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..c7c11e06fe --- /dev/null +++ b/docs/data/CameraDetails/autofocus.html @@ -0,0 +1,165 @@ + + + + + + + + autofocus property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
autofocus
+ +
+ +
+
+
+ +
+
+

autofocus property +

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

Implementation

+
@$pb.TagNumber(7)
+$core.bool get autofocus => $_getBF(6);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ void + 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..1b130ebc14 --- /dev/null +++ b/docs/data/CameraDetails/clearAutofocus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..35f1ebf290 --- /dev/null +++ b/docs/data/CameraDetails/clearFocus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f6588a26d4 --- /dev/null +++ b/docs/data/CameraDetails/clearFps.html @@ -0,0 +1,134 @@ + + + + + + + + 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..5615ffe637 --- /dev/null +++ b/docs/data/CameraDetails/clearName.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c9bccd6680 --- /dev/null +++ b/docs/data/CameraDetails/clearPan.html @@ -0,0 +1,134 @@ + + + + + + + + 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..2451154760 --- /dev/null +++ b/docs/data/CameraDetails/clearQuality.html @@ -0,0 +1,134 @@ + + + + + + + + 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..cdc8c0de33 --- /dev/null +++ b/docs/data/CameraDetails/clearResolutionHeight.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f7aae1eacb --- /dev/null +++ b/docs/data/CameraDetails/clearResolutionWidth.html @@ -0,0 +1,134 @@ + + + + + + + + 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..8f22549c7e --- /dev/null +++ b/docs/data/CameraDetails/clearStatus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..756766c392 --- /dev/null +++ b/docs/data/CameraDetails/clearTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..b69f904e48 --- /dev/null +++ b/docs/data/CameraDetails/clearZoom.html @@ -0,0 +1,134 @@ + + + + + + + + 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..7d710253e5 --- /dev/null +++ b/docs/data/CameraDetails/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..769cbd4774 --- /dev/null +++ b/docs/data/CameraDetails/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..4ea82088b2 --- /dev/null +++ b/docs/data/CameraDetails/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..12bd5fe987 --- /dev/null +++ b/docs/data/CameraDetails/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..6303787212 --- /dev/null +++ b/docs/data/CameraDetails/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..65cd52f904 --- /dev/null +++ b/docs/data/CameraDetails/focus.html @@ -0,0 +1,165 @@ + + + + + + + + focus property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
focus
+ +
+ +
+
+
+ +
+
+

focus property +

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

Implementation

+
@$pb.TagNumber(11)
+$core.int get focus => $_getIZ(10);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ void + 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..439bf555f7 --- /dev/null +++ b/docs/data/CameraDetails/fps.html @@ -0,0 +1,168 @@ + + + + + + + + fps property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
fps
+ +
+ +
+
+
+ +
+
+

fps property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ int + 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. +
+
+ void + 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..75197f15e9 --- /dev/null +++ b/docs/data/CameraDetails/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..9d513062b8 --- /dev/null +++ b/docs/data/CameraDetails/hasAutofocus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..fc4daab6f1 --- /dev/null +++ b/docs/data/CameraDetails/hasFocus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..1bf99cf9fc --- /dev/null +++ b/docs/data/CameraDetails/hasFps.html @@ -0,0 +1,134 @@ + + + + + + + + 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..a8b5aa79cd --- /dev/null +++ b/docs/data/CameraDetails/hasName.html @@ -0,0 +1,134 @@ + + + + + + + + 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..475bec5993 --- /dev/null +++ b/docs/data/CameraDetails/hasPan.html @@ -0,0 +1,134 @@ + + + + + + + + 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..b8a9b75145 --- /dev/null +++ b/docs/data/CameraDetails/hasQuality.html @@ -0,0 +1,134 @@ + + + + + + + + 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..db42273b3f --- /dev/null +++ b/docs/data/CameraDetails/hasResolutionHeight.html @@ -0,0 +1,134 @@ + + + + + + + + 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..a8fda106cf --- /dev/null +++ b/docs/data/CameraDetails/hasResolutionWidth.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d4d91345f7 --- /dev/null +++ b/docs/data/CameraDetails/hasStatus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..54bdd4863f --- /dev/null +++ b/docs/data/CameraDetails/hasTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c0cc6ae752 --- /dev/null +++ b/docs/data/CameraDetails/hasZoom.html @@ -0,0 +1,134 @@ + + + + + + + + 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..4c07b5bbe4 --- /dev/null +++ b/docs/data/CameraDetails/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..6ee9814116 --- /dev/null +++ b/docs/data/CameraDetails/name.html @@ -0,0 +1,168 @@ + + + + + + + + name property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
name
+ +
+ +
+
+
+ +
+
+

name property +

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

/ The name of the camera.

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+CameraName get name => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..e10208e7af --- /dev/null +++ b/docs/data/CameraDetails/pan.html @@ -0,0 +1,165 @@ + + + + + + + + pan property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
pan
+ +
+ +
+
+
+ +
+
+

pan property +

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

Implementation

+
@$pb.TagNumber(9)
+$core.int get pan => $_getIZ(8);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ void + 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..cbb8f70aa0 --- /dev/null +++ b/docs/data/CameraDetails/quality.html @@ -0,0 +1,168 @@ + + + + + + + + quality property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
quality
+ +
+ +
+
+
+ +
+
+

quality property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ int + 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. +
+
+ void + 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..382ca4e4a1 --- /dev/null +++ b/docs/data/CameraDetails/resolutionHeight.html @@ -0,0 +1,165 @@ + + + + + + + + resolutionHeight property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
resolutionHeight
+ +
+ +
+
+
+ +
+
+

resolutionHeight property +

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

Implementation

+
@$pb.TagNumber(3)
+$core.int get resolutionHeight => $_getIZ(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..bbeaccc39f --- /dev/null +++ b/docs/data/CameraDetails/resolutionWidth.html @@ -0,0 +1,168 @@ + + + + + + + + resolutionWidth property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
resolutionWidth
+ +
+ +
+
+
+ +
+
+

resolutionWidth property +

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

/ The width and height of the image frame.

+
+ + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.int get resolutionWidth => $_getIZ(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..153350f075 --- /dev/null +++ b/docs/data/CameraDetails/status.html @@ -0,0 +1,168 @@ + + + + + + + + status property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
status
+ +
+ +
+
+
+ +
+
+

status property +

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

/ The status of this camera.

+
+ + +
+

Implementation

+
@$pb.TagNumber(6)
+CameraStatus get status => $_getN(5);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ void + 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..aa12218068 --- /dev/null +++ b/docs/data/CameraDetails/tilt.html @@ -0,0 +1,165 @@ + + + + + + + + tilt property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
tilt
+ +
+ +
+
+
+ +
+
+

tilt property +

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

Implementation

+
@$pb.TagNumber(10)
+$core.int get tilt => $_getIZ(9);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ void + 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..3d5bd057bc --- /dev/null +++ b/docs/data/CameraDetails/zoom.html @@ -0,0 +1,165 @@ + + + + + + + + zoom property - CameraDetails class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
zoom
+ +
+ +
+
+
+ +
+
+

zoom property +

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

Implementation

+
@$pb.TagNumber(8)
+$core.int get zoom => $_getIZ(7);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ void + 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..595d150b20 --- /dev/null +++ b/docs/data/CameraName-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. AUTONOMY_DEPTH
  28. +
  29. CAMERA_NAME_UNDEFINED
  30. +
  31. ROVER_FRONT
  32. +
  33. ROVER_REAR
  34. +
  35. SUBSYSTEM1
  36. +
  37. SUBSYSTEM2
  38. +
  39. SUBSYSTEM3
  40. +
  41. values
  42. +
diff --git a/docs/data/CameraName-class.html b/docs/data/CameraName-class.html new file mode 100644 index 0000000000..638147f6b9 --- /dev/null +++ b/docs/data/CameraName-class.html @@ -0,0 +1,375 @@ + + + + + + + + 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 + + +
+
+ + + +
+ +
+ 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..ee9172cc64 --- /dev/null +++ b/docs/data/CameraName/AUTONOMY_DEPTH-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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/CAMERA_NAME_UNDEFINED-constant.html b/docs/data/CameraName/CAMERA_NAME_UNDEFINED-constant.html new file mode 100644 index 0000000000..2c5129a3f4 --- /dev/null +++ b/docs/data/CameraName/CAMERA_NAME_UNDEFINED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..4b7a89b7e3 --- /dev/null +++ b/docs/data/CameraName/ROVER_FRONT-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..6439f2b68e --- /dev/null +++ b/docs/data/CameraName/ROVER_REAR-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..28b0c2196f --- /dev/null +++ b/docs/data/CameraName/SUBSYSTEM1-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..1fca967ae9 --- /dev/null +++ b/docs/data/CameraName/SUBSYSTEM2-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..578d244ca7 --- /dev/null +++ b/docs/data/CameraName/SUBSYSTEM3-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..8539b841b0 --- /dev/null +++ b/docs/data/CameraName/valueOf.html @@ -0,0 +1,129 @@ + + + + + + + + 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..3225b8659a --- /dev/null +++ b/docs/data/CameraName/values-constant.html @@ -0,0 +1,133 @@ + + + + + + + + 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,
+];
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + 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..0d3428fb0c --- /dev/null +++ b/docs/data/CameraNameUtils.html @@ -0,0 +1,156 @@ + + + + + + + + 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..9e8b8e5af6 --- /dev/null +++ b/docs/data/CameraNameUtils/humanName.html @@ -0,0 +1,148 @@ + + + + + + + + humanName property - CameraNameUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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";
+	}
+	// 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..7ec5db33b1 --- /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..269277d3ad --- /dev/null +++ b/docs/data/CameraStatus-class.html @@ -0,0 +1,387 @@ + + + + + + + + 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..940e88d791 --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_DISABLED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..2881af9667 --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_DISCONNECTED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..255f0ad904 --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_ENABLED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..c2de2ef731 --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_HAS_NO_NAME-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..98b680ce23 --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_LOADING-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..49bb8a1fd6 --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_NOT_RESPONDING-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..d43954f6d1 --- /dev/null +++ b/docs/data/CameraStatus/CAMERA_STATUS_UNDEFINED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..4f77f7a3a7 --- /dev/null +++ b/docs/data/CameraStatus/FRAME_TOO_LARGE-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..15d65d0844 --- /dev/null +++ b/docs/data/CameraStatus/valueOf.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c5d6e28efd --- /dev/null +++ b/docs/data/CameraStatus/values-constant.html @@ -0,0 +1,134 @@ + + + + + + + + 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..51b918ccf2 --- /dev/null +++ b/docs/data/CameraStatusUtils.html @@ -0,0 +1,156 @@ + + + + + + + + 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..c23f74c770 --- /dev/null +++ b/docs/data/CameraStatusUtils/humanName.html @@ -0,0 +1,149 @@ + + + + + + + + humanName property - CameraStatusUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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/Connect-class-sidebar.html b/docs/data/Connect-class-sidebar.html new file mode 100644 index 0000000000..990e9e48ed --- /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..74c54acc1c --- /dev/null +++ b/docs/data/Connect-class.html @@ -0,0 +1,915 @@ + + + + + + + + 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..b4a97678df --- /dev/null +++ b/docs/data/Connect/Connect.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..8429a26fba --- /dev/null +++ b/docs/data/Connect/Connect.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..dfb79d0c13 --- /dev/null +++ b/docs/data/Connect/Connect.html @@ -0,0 +1,138 @@ + + + + + + + + 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..9bc6947c18 --- /dev/null +++ b/docs/data/Connect/clearReceiver.html @@ -0,0 +1,134 @@ + + + + + + + + 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..734d6d36da --- /dev/null +++ b/docs/data/Connect/clearSender.html @@ -0,0 +1,134 @@ + + + + + + + + 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..e906ee63ab --- /dev/null +++ b/docs/data/Connect/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..5473e98441 --- /dev/null +++ b/docs/data/Connect/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..949bf5c6a4 --- /dev/null +++ b/docs/data/Connect/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..61e44ae1df --- /dev/null +++ b/docs/data/Connect/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..b33fc5e34c --- /dev/null +++ b/docs/data/Connect/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..10967829e1 --- /dev/null +++ b/docs/data/Connect/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..daaab8baeb --- /dev/null +++ b/docs/data/Connect/hasReceiver.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c3a099fb53 --- /dev/null +++ b/docs/data/Connect/hasSender.html @@ -0,0 +1,134 @@ + + + + + + + + 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..3cb7b27c70 --- /dev/null +++ b/docs/data/Connect/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - Connect class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..7d218cfcca --- /dev/null +++ b/docs/data/Connect/receiver.html @@ -0,0 +1,165 @@ + + + + + + + + receiver property - Connect class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
receiver
+ +
+ +
+
+
+ +
+
+

receiver property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ Device + receiver + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+Device get receiver => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..a2fe04c6b2 --- /dev/null +++ b/docs/data/Connect/sender.html @@ -0,0 +1,165 @@ + + + + + + + + sender property - Connect class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
sender
+ +
+ +
+
+
+ +
+
+

sender property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ Device + sender + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+Device get sender => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..f2d5aafb0e --- /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..1fa6c7fb1b --- /dev/null +++ b/docs/data/Coordinates-class.html @@ -0,0 +1,951 @@ + + + + + + + + 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..86da774da4 --- /dev/null +++ b/docs/data/Coordinates/Coordinates.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..af2695adf8 --- /dev/null +++ b/docs/data/Coordinates/Coordinates.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..28a27b89db --- /dev/null +++ b/docs/data/Coordinates/Coordinates.html @@ -0,0 +1,143 @@ + + + + + + + + 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..bb0493d7f3 --- /dev/null +++ b/docs/data/Coordinates/clearX.html @@ -0,0 +1,134 @@ + + + + + + + + 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..cddbe1c9de --- /dev/null +++ b/docs/data/Coordinates/clearY.html @@ -0,0 +1,134 @@ + + + + + + + + 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..fd05f9d8d5 --- /dev/null +++ b/docs/data/Coordinates/clearZ.html @@ -0,0 +1,134 @@ + + + + + + + + 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..aac71735bc --- /dev/null +++ b/docs/data/Coordinates/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..fbc53fab27 --- /dev/null +++ b/docs/data/Coordinates/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..d8d9f3db0e --- /dev/null +++ b/docs/data/Coordinates/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f424979e3f --- /dev/null +++ b/docs/data/Coordinates/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..fe8584426d --- /dev/null +++ b/docs/data/Coordinates/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..785f4d4224 --- /dev/null +++ b/docs/data/Coordinates/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..6fb2b54eeb --- /dev/null +++ b/docs/data/Coordinates/hasX.html @@ -0,0 +1,134 @@ + + + + + + + + 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..dac289effc --- /dev/null +++ b/docs/data/Coordinates/hasY.html @@ -0,0 +1,134 @@ + + + + + + + + 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..b4833722b2 --- /dev/null +++ b/docs/data/Coordinates/hasZ.html @@ -0,0 +1,134 @@ + + + + + + + + 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..cedd747642 --- /dev/null +++ b/docs/data/Coordinates/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - Coordinates class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..97fd7e6dc1 --- /dev/null +++ b/docs/data/Coordinates/x.html @@ -0,0 +1,165 @@ + + + + + + + + x property - Coordinates class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
x
+ +
+ +
+
+
+ +
+
+

x property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + x + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get x => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..4aaac9af12 --- /dev/null +++ b/docs/data/Coordinates/y.html @@ -0,0 +1,165 @@ + + + + + + + + y property - Coordinates class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
y
+ +
+ +
+
+
+ +
+
+

y property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + y + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get y => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..44451f69f5 --- /dev/null +++ b/docs/data/Coordinates/z.html @@ -0,0 +1,165 @@ + + + + + + + + z property - Coordinates class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
z
+ +
+ +
+
+
+ +
+
+

z property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + z + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get z => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..2e06b8b66c --- /dev/null +++ b/docs/data/CoordinatesUtils.html @@ -0,0 +1,176 @@ + + + + + + + + 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..c154b7995b --- /dev/null +++ b/docs/data/CoordinatesUtils/operator_plus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..0972340320 --- /dev/null +++ b/docs/data/CoordinatesUtils/prettyPrint.html @@ -0,0 +1,136 @@ + + + + + + + + prettyPrint property - CoordinatesUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
prettyPrint
+ +
+ +
+
+
+ +
+
+ +

prettyPrint property +

+ + + +
+ +
+ + String + 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..e2162dbd6a --- /dev/null +++ b/docs/data/DashboardSettings-class-sidebar.html @@ -0,0 +1,32 @@ +
    + +
  1. Constructors
  2. +
  3. DashboardSettings
  4. +
  5. fromJson
  6. + + + +
  7. + Properties +
  8. +
  9. hashCode
  10. +
  11. mapBlockSize
  12. +
  13. maxFps
  14. +
  15. runtimeType
  16. +
  17. splitMode
  18. +
  19. themeMode
  20. + +
  21. Methods
  22. +
  23. noSuchMethod
  24. +
  25. toJson
  26. +
  27. toString
  28. + +
  29. Operators
  30. +
  31. operator ==
  32. + + + + + + +
diff --git a/docs/data/DashboardSettings-class.html b/docs/data/DashboardSettings-class.html new file mode 100644 index 0000000000..29f079cd37 --- /dev/null +++ b/docs/data/DashboardSettings-class.html @@ -0,0 +1,289 @@ + + + + + + + + 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}) +
+
+ 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
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ splitMode + SplitMode + + +
+
+ How the Dashboard should split when only two views are present. +
final
+ +
+ +
+ themeMode + ThemeMode + + +
+
+ The theme of the Dashboard. +
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..1e2a527c98 --- /dev/null +++ b/docs/data/DashboardSettings/DashboardSettings.fromJson.html @@ -0,0 +1,133 @@ + + + + + + + + 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,
+  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..341b9f0aa1 --- /dev/null +++ b/docs/data/DashboardSettings/DashboardSettings.html @@ -0,0 +1,137 @@ + + + + + + + + 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. +
}) +
+ + +
+

A const constructor.

+
+ + + +
+

Implementation

+
const DashboardSettings({
+  required this.splitMode,
+  required this.mapBlockSize,
+  required this.maxFps,
+  required this.themeMode,
+});
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DashboardSettings/hashCode.html b/docs/data/DashboardSettings/hashCode.html new file mode 100644 index 0000000000..47a3dd301a --- /dev/null +++ b/docs/data/DashboardSettings/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..83dcad319b --- /dev/null +++ b/docs/data/DashboardSettings/mapBlockSize.html @@ -0,0 +1,133 @@ + + + + + + + + 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..0e862500f8 --- /dev/null +++ b/docs/data/DashboardSettings/maxFps.html @@ -0,0 +1,130 @@ + + + + + + + + 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..f1284857c0 --- /dev/null +++ b/docs/data/DashboardSettings/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..ada9004cb1 --- /dev/null +++ b/docs/data/DashboardSettings/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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/runtimeType.html b/docs/data/DashboardSettings/runtimeType.html new file mode 100644 index 0000000000..7550fd2eb2 --- /dev/null +++ b/docs/data/DashboardSettings/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - DashboardSettings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

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

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DashboardSettings/splitMode.html b/docs/data/DashboardSettings/splitMode.html new file mode 100644 index 0000000000..509ddd90bb --- /dev/null +++ b/docs/data/DashboardSettings/splitMode.html @@ -0,0 +1,129 @@ + + + + + + + + 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..0054ce8b2e --- /dev/null +++ b/docs/data/DashboardSettings/themeMode.html @@ -0,0 +1,129 @@ + + + + + + + + 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..94a45087cc --- /dev/null +++ b/docs/data/DashboardSettings/toJson.html @@ -0,0 +1,137 @@ + + + + + + + + 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,
+};
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DashboardSettings/toString.html b/docs/data/DashboardSettings/toString.html new file mode 100644 index 0000000000..156f07e853 --- /dev/null +++ b/docs/data/DashboardSettings/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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/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..efcf33da99 --- /dev/null +++ b/docs/data/DateTimeTimestamp.html @@ -0,0 +1,156 @@ + + + + + + + + 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..2cfd905bc3 --- /dev/null +++ b/docs/data/DateTimeTimestamp/timeStamp.html @@ -0,0 +1,136 @@ + + + + + + + + timeStamp property - DateTimeTimestamp extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
timeStamp
+ +
+ +
+
+
+ +
+
+ +

timeStamp property +

+ + + +
+ +
+ + String + 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..4b282ae665 --- /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..92d82266d3 --- /dev/null +++ b/docs/data/Device-class.html @@ -0,0 +1,411 @@ + + + + + + + + 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..e34a0a27d3 --- /dev/null +++ b/docs/data/Device/ARM-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..04a33371c8 --- /dev/null +++ b/docs/data/Device/AUTONOMY-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..e7645cf184 --- /dev/null +++ b/docs/data/Device/DASHBOARD-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..1809823df8 --- /dev/null +++ b/docs/data/Device/DEVICE_UNDEFINED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..83b074ea19 --- /dev/null +++ b/docs/data/Device/DRIVE-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..7d98cfd88c --- /dev/null +++ b/docs/data/Device/FIRMWARE-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..3fd2aac862 --- /dev/null +++ b/docs/data/Device/GRIPPER-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..d365eeb69b --- /dev/null +++ b/docs/data/Device/SCIENCE-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..1c6b6748e6 --- /dev/null +++ b/docs/data/Device/SUBSYSTEMS-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..716042397a --- /dev/null +++ b/docs/data/Device/VIDEO-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..0399d50446 --- /dev/null +++ b/docs/data/Device/valueOf.html @@ -0,0 +1,129 @@ + + + + + + + + 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..81ff0a5b79 --- /dev/null +++ b/docs/data/Device/values-constant.html @@ -0,0 +1,136 @@ + + + + + + + + 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..d5caf0ee3a --- /dev/null +++ b/docs/data/DeviceUtils.html @@ -0,0 +1,156 @@ + + + + + + + + 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..375468a090 --- /dev/null +++ b/docs/data/DeviceUtils/humanName.html @@ -0,0 +1,151 @@ + + + + + + + + humanName property - DeviceUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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/DirtReleaseState-class-sidebar.html b/docs/data/DirtReleaseState-class-sidebar.html new file mode 100644 index 0000000000..f090e51e4d --- /dev/null +++ b/docs/data/DirtReleaseState-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. CLOSE_DIRT
  28. +
  29. DIRT_RELEASE_STATE_UNDEFINED
  30. +
  31. OPEN_DIRT
  32. +
  33. values
  34. +
diff --git a/docs/data/DirtReleaseState-class.html b/docs/data/DirtReleaseState-class.html new file mode 100644 index 0000000000..122f997ad4 --- /dev/null +++ b/docs/data/DirtReleaseState-class.html @@ -0,0 +1,323 @@ + + + + + + + + DirtReleaseState class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
DirtReleaseState
+ +
+ +
+
+
+ +
+
+

DirtReleaseState 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) + DirtReleaseState? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+ +
+
+ CLOSE_DIRT + → const DirtReleaseState + + +
+
+ + + +
+ +
+ DIRT_RELEASE_STATE_UNDEFINED + → const DirtReleaseState + + +
+
+ + + +
+ +
+ OPEN_DIRT + → const DirtReleaseState + + +
+
+ + + +
+ +
+ values + → const List<DirtReleaseState> + + +
+
+ + + +
+ +
+
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DirtReleaseState/CLOSE_DIRT-constant.html b/docs/data/DirtReleaseState/CLOSE_DIRT-constant.html new file mode 100644 index 0000000000..6e8fa0cd61 --- /dev/null +++ b/docs/data/DirtReleaseState/CLOSE_DIRT-constant.html @@ -0,0 +1,125 @@ + + + + + + + + CLOSE_DIRT constant - DirtReleaseState class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
CLOSE_DIRT
+ +
+ +
+
+
+ +
+
+

CLOSE_DIRT constant +

+ +
+ + DirtReleaseState + const CLOSE_DIRT + + +
+ + + +
+

Implementation

+
static const DirtReleaseState CLOSE_DIRT = DirtReleaseState._(2, _omitEnumNames ? '' : 'CLOSE_DIRT');
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DirtReleaseState/DIRT_RELEASE_STATE_UNDEFINED-constant.html b/docs/data/DirtReleaseState/DIRT_RELEASE_STATE_UNDEFINED-constant.html new file mode 100644 index 0000000000..70a7dd1e5a --- /dev/null +++ b/docs/data/DirtReleaseState/DIRT_RELEASE_STATE_UNDEFINED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + DIRT_RELEASE_STATE_UNDEFINED constant - DirtReleaseState class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
DIRT_RELEASE_STATE_UNDEFINED
+ +
+ +
+
+
+ +
+
+

DIRT_RELEASE_STATE_UNDEFINED constant +

+ +
+ + DirtReleaseState + const DIRT_RELEASE_STATE_UNDEFINED + + +
+ + + +
+

Implementation

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

OPEN_DIRT constant +

+ +
+ + DirtReleaseState + const OPEN_DIRT + + +
+ + + +
+

Implementation

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

valueOf static method +

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

Implementation

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

values constant +

+ +
+ + List<DirtReleaseState> + const values + + +
+ + + +
+

Implementation

+
static const $core.List<DirtReleaseState> values = <DirtReleaseState> [
+  DIRT_RELEASE_STATE_UNDEFINED,
+  OPEN_DIRT,
+  CLOSE_DIRT,
+];
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/Disconnect-class-sidebar.html b/docs/data/Disconnect-class-sidebar.html new file mode 100644 index 0000000000..ef6aa5840b --- /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..371e8b527b --- /dev/null +++ b/docs/data/Disconnect-class.html @@ -0,0 +1,877 @@ + + + + + + + + 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..d1a1819af4 --- /dev/null +++ b/docs/data/Disconnect/Disconnect.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..631944e8c3 --- /dev/null +++ b/docs/data/Disconnect/Disconnect.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..461f06d82b --- /dev/null +++ b/docs/data/Disconnect/Disconnect.html @@ -0,0 +1,133 @@ + + + + + + + + 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..6bbb8513a6 --- /dev/null +++ b/docs/data/Disconnect/clearSender.html @@ -0,0 +1,134 @@ + + + + + + + + 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..a2f7a1d420 --- /dev/null +++ b/docs/data/Disconnect/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..053fbb126c --- /dev/null +++ b/docs/data/Disconnect/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..ec9999ffc6 --- /dev/null +++ b/docs/data/Disconnect/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..9853208367 --- /dev/null +++ b/docs/data/Disconnect/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..86d5faeb03 --- /dev/null +++ b/docs/data/Disconnect/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..02970f6199 --- /dev/null +++ b/docs/data/Disconnect/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..74c06a5a71 --- /dev/null +++ b/docs/data/Disconnect/hasSender.html @@ -0,0 +1,134 @@ + + + + + + + + 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..2096fcf454 --- /dev/null +++ b/docs/data/Disconnect/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - Disconnect class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..583578062a --- /dev/null +++ b/docs/data/Disconnect/sender.html @@ -0,0 +1,165 @@ + + + + + + + + sender property - Disconnect class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
sender
+ +
+ +
+
+
+ +
+
+

sender property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ Device + sender + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+Device get sender => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..f3332b7a5f --- /dev/null +++ b/docs/data/DriveCommand-class-sidebar.html @@ -0,0 +1,106 @@ +
    + +
  1. Constructors
  2. +
  3. DriveCommand
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. eventPlugin
  12. +
  13. frontSwivel
  14. +
  15. frontTilt
  16. +
  17. hashCode
  18. +
  19. info_
  20. +
  21. isFrozen
  22. +
  23. left
  24. +
  25. rearSwivel
  26. +
  27. rearTilt
  28. +
  29. right
  30. +
  31. runtimeType
  32. +
  33. setLeft
  34. +
  35. setRight
  36. +
  37. setThrottle
  38. +
  39. status
  40. +
  41. throttle
  42. +
  43. unknownFields
  44. + +
  45. Methods
  46. +
  47. addExtension
  48. +
  49. check
  50. +
  51. clear
  52. +
  53. clearExtension
  54. +
  55. clearField
  56. +
  57. clearFrontSwivel
  58. +
  59. clearFrontTilt
  60. +
  61. clearLeft
  62. +
  63. clearRearSwivel
  64. +
  65. clearRearTilt
  66. +
  67. clearRight
  68. +
  69. clearSetLeft
  70. +
  71. clearSetRight
  72. +
  73. clearSetThrottle
  74. +
  75. clearStatus
  76. +
  77. clearThrottle
  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. hasExtension
  104. +
  105. hasField
  106. +
  107. hasFrontSwivel
  108. +
  109. hasFrontTilt
  110. +
  111. hasLeft
  112. +
  113. hasRearSwivel
  114. +
  115. hasRearTilt
  116. +
  117. hasRequiredFields
  118. +
  119. hasRight
  120. +
  121. hasSetLeft
  122. +
  123. hasSetRight
  124. +
  125. hasSetThrottle
  126. +
  127. hasStatus
  128. +
  129. hasThrottle
  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/DriveCommand-class.html b/docs/data/DriveCommand-class.html new file mode 100644 index 0000000000..a4f29eee55 --- /dev/null +++ b/docs/data/DriveCommand-class.html @@ -0,0 +1,1254 @@ + + + + + + + + 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}) +
+
+ +
factory
+
+
+ DriveCommand.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ DriveCommand.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
+ +
+ +
+ 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
+ +
+ +
+
+ +
+

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
+ +
+ +
+ clearFrontSwivel() + → void + + + +
+
+ + + +
+ +
+ clearFrontTilt() + → void + + + +
+
+ + + +
+ +
+ clearLeft() + → void + + + +
+
+ + + +
+ +
+ clearRearSwivel() + → void + + + +
+
+ + + +
+ +
+ clearRearTilt() + → void + + + +
+
+ + + +
+ +
+ clearRight() + → void + + + +
+
+ + + +
+ +
+ clearSetLeft() + → void + + + +
+
+ + + +
+ +
+ clearSetRight() + → void + + + +
+
+ + + +
+ +
+ clearSetThrottle() + → void + + + +
+
+ + + +
+ +
+ clearStatus() + → void + + + +
+
+ + + +
+ +
+ clearThrottle() + → 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
+ +
+ +
+ 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
+ +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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..c67d88365f --- /dev/null +++ b/docs/data/DriveCommand/DriveCommand.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..7b620f028c --- /dev/null +++ b/docs/data/DriveCommand/DriveCommand.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..69aa80608e --- /dev/null +++ b/docs/data/DriveCommand/DriveCommand.html @@ -0,0 +1,183 @@ + + + + + + + + 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. +
}) +
+ + + + + +
+

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,
+  $1.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 (status != null) {
+    $result.status = status;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DriveCommand/clearFrontSwivel.html b/docs/data/DriveCommand/clearFrontSwivel.html new file mode 100644 index 0000000000..68d5db15ce --- /dev/null +++ b/docs/data/DriveCommand/clearFrontSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..3dbf9d5e2b --- /dev/null +++ b/docs/data/DriveCommand/clearFrontTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..b144a94b39 --- /dev/null +++ b/docs/data/DriveCommand/clearLeft.html @@ -0,0 +1,134 @@ + + + + + + + + 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..9327c3d8a3 --- /dev/null +++ b/docs/data/DriveCommand/clearRearSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..52ea5ef888 --- /dev/null +++ b/docs/data/DriveCommand/clearRearTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..115054e7f9 --- /dev/null +++ b/docs/data/DriveCommand/clearRight.html @@ -0,0 +1,134 @@ + + + + + + + + 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..050ba41e91 --- /dev/null +++ b/docs/data/DriveCommand/clearSetLeft.html @@ -0,0 +1,134 @@ + + + + + + + + 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..318445179c --- /dev/null +++ b/docs/data/DriveCommand/clearSetRight.html @@ -0,0 +1,134 @@ + + + + + + + + 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..6b4f1e2a46 --- /dev/null +++ b/docs/data/DriveCommand/clearSetThrottle.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d3d48d1dda --- /dev/null +++ b/docs/data/DriveCommand/clearStatus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..950acffe88 --- /dev/null +++ b/docs/data/DriveCommand/clearThrottle.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/DriveCommand/clone.html new file mode 100644 index 0000000000..4b3b08787f --- /dev/null +++ b/docs/data/DriveCommand/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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/copyWith.html b/docs/data/DriveCommand/copyWith.html new file mode 100644 index 0000000000..a1bd7d208a --- /dev/null +++ b/docs/data/DriveCommand/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..8b65794a42 --- /dev/null +++ b/docs/data/DriveCommand/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..81880461b3 --- /dev/null +++ b/docs/data/DriveCommand/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..c042226dc9 --- /dev/null +++ b/docs/data/DriveCommand/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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/frontSwivel.html b/docs/data/DriveCommand/frontSwivel.html new file mode 100644 index 0000000000..21d1b786a0 --- /dev/null +++ b/docs/data/DriveCommand/frontSwivel.html @@ -0,0 +1,165 @@ + + + + + + + + frontSwivel property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
frontSwivel
+ +
+ +
+
+
+ +
+
+

frontSwivel property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ double + frontSwivel + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.double get frontSwivel => $_getN(6);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ void + 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..3e2c9d9c12 --- /dev/null +++ b/docs/data/DriveCommand/frontTilt.html @@ -0,0 +1,165 @@ + + + + + + + + frontTilt property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
frontTilt
+ +
+ +
+
+
+ +
+
+

frontTilt property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ double + frontTilt + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.double get frontTilt => $_getN(7);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ void + 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..2618613a0f --- /dev/null +++ b/docs/data/DriveCommand/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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/hasFrontSwivel.html b/docs/data/DriveCommand/hasFrontSwivel.html new file mode 100644 index 0000000000..ff9df72418 --- /dev/null +++ b/docs/data/DriveCommand/hasFrontSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..2fc92e5687 --- /dev/null +++ b/docs/data/DriveCommand/hasFrontTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..6293b72425 --- /dev/null +++ b/docs/data/DriveCommand/hasLeft.html @@ -0,0 +1,134 @@ + + + + + + + + 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..96698eaeaa --- /dev/null +++ b/docs/data/DriveCommand/hasRearSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..9c1968ef30 --- /dev/null +++ b/docs/data/DriveCommand/hasRearTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d67bb6b50f --- /dev/null +++ b/docs/data/DriveCommand/hasRight.html @@ -0,0 +1,134 @@ + + + + + + + + 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..e2e41bd354 --- /dev/null +++ b/docs/data/DriveCommand/hasSetLeft.html @@ -0,0 +1,134 @@ + + + + + + + + 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..4c2ff7382d --- /dev/null +++ b/docs/data/DriveCommand/hasSetRight.html @@ -0,0 +1,134 @@ + + + + + + + + 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..ef8df6a411 --- /dev/null +++ b/docs/data/DriveCommand/hasSetThrottle.html @@ -0,0 +1,134 @@ + + + + + + + + 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..625264ac73 --- /dev/null +++ b/docs/data/DriveCommand/hasStatus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c8e6186b98 --- /dev/null +++ b/docs/data/DriveCommand/hasThrottle.html @@ -0,0 +1,134 @@ + + + + + + + + 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/info_.html b/docs/data/DriveCommand/info_.html new file mode 100644 index 0000000000..28921e5cad --- /dev/null +++ b/docs/data/DriveCommand/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..14770e6f5c --- /dev/null +++ b/docs/data/DriveCommand/left.html @@ -0,0 +1,168 @@ + + + + + + + + left property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
left
+ +
+ +
+
+
+ +
+
+

left property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + 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. +
+
+ void + 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..241857ada4 --- /dev/null +++ b/docs/data/DriveCommand/rearSwivel.html @@ -0,0 +1,165 @@ + + + + + + + + rearSwivel property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
rearSwivel
+ +
+ +
+
+
+ +
+
+

rearSwivel property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ double + rearSwivel + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.double get rearSwivel => $_getN(8);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ void + 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..b37e1dc8b6 --- /dev/null +++ b/docs/data/DriveCommand/rearTilt.html @@ -0,0 +1,165 @@ + + + + + + + + rearTilt property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
rearTilt
+ +
+ +
+
+
+ +
+
+

rearTilt property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ double + rearTilt + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.double get rearTilt => $_getN(9);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ void + 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..64623b67e0 --- /dev/null +++ b/docs/data/DriveCommand/right.html @@ -0,0 +1,168 @@ + + + + + + + + right property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
right
+ +
+ +
+
+
+ +
+
+

right property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + 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. +
+
+ void + 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..3174bbaac3 --- /dev/null +++ b/docs/data/DriveCommand/setLeft.html @@ -0,0 +1,168 @@ + + + + + + + + setLeft property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
setLeft
+ +
+ +
+
+
+ +
+
+

setLeft property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ bool + 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. +
+
+ void + 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..c994be547d --- /dev/null +++ b/docs/data/DriveCommand/setRight.html @@ -0,0 +1,168 @@ + + + + + + + + setRight property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
setRight
+ +
+ +
+
+
+ +
+
+

setRight property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ bool + 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. +
+
+ void + 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..42cf794cf8 --- /dev/null +++ b/docs/data/DriveCommand/setThrottle.html @@ -0,0 +1,168 @@ + + + + + + + + setThrottle property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
setThrottle
+ +
+ +
+
+
+ +
+
+

setThrottle property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ bool + 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. +
+
+ void + 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..8910d2f89f --- /dev/null +++ b/docs/data/DriveCommand/status.html @@ -0,0 +1,165 @@ + + + + + + + + status property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
status
+ +
+ +
+
+
+ +
+
+

status property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ RoverStatus + status + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+$1.RoverStatus get status => $_getN(10);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ void + status=(RoverStatus v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+set status($1.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..a375444798 --- /dev/null +++ b/docs/data/DriveCommand/throttle.html @@ -0,0 +1,168 @@ + + + + + + + + throttle property - DriveCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
throttle
+ +
+ +
+
+
+ +
+
+

throttle property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + 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. +
+
+ void + throttle=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+set throttle($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DriveData-class-sidebar.html b/docs/data/DriveData-class-sidebar.html new file mode 100644 index 0000000000..1e3ade81ae --- /dev/null +++ b/docs/data/DriveData-class-sidebar.html @@ -0,0 +1,112 @@ +
    + +
  1. Constructors
  2. +
  3. DriveData
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. batteryCurrent
  12. +
  13. batteryTemperature
  14. +
  15. batteryVoltage
  16. +
  17. eventPlugin
  18. +
  19. frontSwivel
  20. +
  21. frontTilt
  22. +
  23. hashCode
  24. +
  25. info_
  26. +
  27. isFrozen
  28. +
  29. left
  30. +
  31. rearSwivel
  32. +
  33. rearTilt
  34. +
  35. right
  36. +
  37. runtimeType
  38. +
  39. setLeft
  40. +
  41. setRight
  42. +
  43. setThrottle
  44. +
  45. throttle
  46. +
  47. unknownFields
  48. + +
  49. Methods
  50. +
  51. addExtension
  52. +
  53. check
  54. +
  55. clear
  56. +
  57. clearBatteryCurrent
  58. +
  59. clearBatteryTemperature
  60. +
  61. clearBatteryVoltage
  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. clearThrottle
  86. +
  87. clone
  88. +
  89. copyWith
  90. +
  91. createEmptyInstance
  92. +
  93. createMapField
  94. +
  95. createRepeatedField
  96. +
  97. extensionsAreInitialized
  98. +
  99. freeze
  100. +
  101. getDefaultForField
  102. +
  103. getExtension
  104. +
  105. getField
  106. +
  107. getFieldOrNull
  108. +
  109. getTagNumber
  110. +
  111. hasBatteryCurrent
  112. +
  113. hasBatteryTemperature
  114. +
  115. hasBatteryVoltage
  116. +
  117. hasExtension
  118. +
  119. hasField
  120. +
  121. hasFrontSwivel
  122. +
  123. hasFrontTilt
  124. +
  125. hasLeft
  126. +
  127. hasRearSwivel
  128. +
  129. hasRearTilt
  130. +
  131. hasRequiredFields
  132. +
  133. hasRight
  134. +
  135. hasSetLeft
  136. +
  137. hasSetRight
  138. +
  139. hasSetThrottle
  140. +
  141. hasThrottle
  142. +
  143. isInitialized
  144. +
  145. mergeFromBuffer
  146. +
  147. mergeFromCodedBufferReader
  148. +
  149. mergeFromJson
  150. +
  151. mergeFromJsonMap
  152. +
  153. mergeFromMessage
  154. +
  155. mergeFromProto3Json
  156. +
  157. mergeUnknownFields
  158. +
  159. noSuchMethod
  160. +
  161. setExtension
  162. +
  163. setField
  164. +
  165. toBuilder
  166. +
  167. toDebugString
  168. +
  169. toProto3Json
  170. +
  171. toString
  172. +
  173. writeToBuffer
  174. +
  175. writeToCodedBufferWriter
  176. +
  177. writeToJson
  178. +
  179. writeToJsonMap
  180. + +
  181. Operators
  182. +
  183. operator ==
  184. + + + + + +
  185. Static methods
  186. +
  187. create
  188. +
  189. createRepeated
  190. +
  191. getDefault
  192. + +
diff --git a/docs/data/DriveData-class.html b/docs/data/DriveData-class.html new file mode 100644 index 0000000000..84b669cba4 --- /dev/null +++ b/docs/data/DriveData-class.html @@ -0,0 +1,1330 @@ + + + + + + + + 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}) +
+
+ +
factory
+
+
+ DriveData.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ DriveData.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ batteryCurrent + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ batteryTemperature + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ batteryVoltage + ↔ double + + +
+
+ Vitals for the whole rover +
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
+ +
+ +
+ throttle + ↔ double + + +
+
+ The max speed, as a percentage of the rover's possible speed. +
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
+ +
+ +
+ clearBatteryCurrent() + → void + + + +
+
+ + + +
+ +
+ clearBatteryTemperature() + → void + + + +
+
+ + + +
+ +
+ clearBatteryVoltage() + → 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 + + + +
+
+ + + +
+ +
+ clearThrottle() + → 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
+ +
+ +
+ 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
+ +
+ +
+ hasBatteryCurrent() + → bool + + + +
+
+ + + +
+ +
+ hasBatteryTemperature() + → bool + + + +
+
+ + + +
+ +
+ hasBatteryVoltage() + → 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 + + + +
+
+ + + +
+ +
+ hasThrottle() + → 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..9388f627bb --- /dev/null +++ b/docs/data/DriveData/DriveData.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..f05855d69f --- /dev/null +++ b/docs/data/DriveData/DriveData.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..eae0cdb6d8 --- /dev/null +++ b/docs/data/DriveData/DriveData.html @@ -0,0 +1,193 @@ + + + + + + + + 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. +
}) +
+ + + + + +
+

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,
+}) {
+  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;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DriveData/batteryCurrent.html b/docs/data/DriveData/batteryCurrent.html new file mode 100644 index 0000000000..d10986a219 --- /dev/null +++ b/docs/data/DriveData/batteryCurrent.html @@ -0,0 +1,165 @@ + + + + + + + + batteryCurrent property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
batteryCurrent
+ +
+ +
+
+
+ +
+
+

batteryCurrent property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+ double + batteryCurrent + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(12)
+$core.double get batteryCurrent => $_getN(11);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(12)
  2. +
+
+ void + 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..f8dfe867fa --- /dev/null +++ b/docs/data/DriveData/batteryTemperature.html @@ -0,0 +1,165 @@ + + + + + + + + batteryTemperature property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
batteryTemperature
+ +
+ +
+
+
+ +
+
+

batteryTemperature property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(13)
  2. +
+
+ double + batteryTemperature + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(13)
+$core.double get batteryTemperature => $_getN(12);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(13)
  2. +
+
+ void + 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..e4f8d07d18 --- /dev/null +++ b/docs/data/DriveData/batteryVoltage.html @@ -0,0 +1,168 @@ + + + + + + + + batteryVoltage property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
batteryVoltage
+ +
+ +
+
+
+ +
+
+

batteryVoltage property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ double + batteryVoltage + + +
+ + +
+

Vitals for the whole rover

+
+ + +
+

Implementation

+
@$pb.TagNumber(11)
+$core.double get batteryVoltage => $_getN(10);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ void + batteryVoltage=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+set batteryVoltage($core.double v) { $_setFloat(10, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DriveData/clearBatteryCurrent.html b/docs/data/DriveData/clearBatteryCurrent.html new file mode 100644 index 0000000000..633b44e035 --- /dev/null +++ b/docs/data/DriveData/clearBatteryCurrent.html @@ -0,0 +1,134 @@ + + + + + + + + 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..636a6d20bd --- /dev/null +++ b/docs/data/DriveData/clearBatteryTemperature.html @@ -0,0 +1,134 @@ + + + + + + + + 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..8bbc05b220 --- /dev/null +++ b/docs/data/DriveData/clearBatteryVoltage.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clearFrontSwivel.html b/docs/data/DriveData/clearFrontSwivel.html new file mode 100644 index 0000000000..30bd1a298d --- /dev/null +++ b/docs/data/DriveData/clearFrontSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..7757bc33c6 --- /dev/null +++ b/docs/data/DriveData/clearFrontTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..46662a96f8 --- /dev/null +++ b/docs/data/DriveData/clearLeft.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clearRearSwivel.html b/docs/data/DriveData/clearRearSwivel.html new file mode 100644 index 0000000000..200d4469da --- /dev/null +++ b/docs/data/DriveData/clearRearSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..2772b78fcc --- /dev/null +++ b/docs/data/DriveData/clearRearTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..a7fe9ba3c3 --- /dev/null +++ b/docs/data/DriveData/clearRight.html @@ -0,0 +1,134 @@ + + + + + + + + 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..3a9e8c321b --- /dev/null +++ b/docs/data/DriveData/clearSetLeft.html @@ -0,0 +1,134 @@ + + + + + + + + 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..04c73e2b02 --- /dev/null +++ b/docs/data/DriveData/clearSetRight.html @@ -0,0 +1,134 @@ + + + + + + + + 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..1c1f6d9f8b --- /dev/null +++ b/docs/data/DriveData/clearSetThrottle.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clearThrottle.html b/docs/data/DriveData/clearThrottle.html new file mode 100644 index 0000000000..125c91c37f --- /dev/null +++ b/docs/data/DriveData/clearThrottle.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/DriveData/clone.html new file mode 100644 index 0000000000..189695e08b --- /dev/null +++ b/docs/data/DriveData/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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/copyWith.html b/docs/data/DriveData/copyWith.html new file mode 100644 index 0000000000..635138a975 --- /dev/null +++ b/docs/data/DriveData/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..0fdf3bb78d --- /dev/null +++ b/docs/data/DriveData/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..86ffb49569 --- /dev/null +++ b/docs/data/DriveData/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..0fa7dde1d4 --- /dev/null +++ b/docs/data/DriveData/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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/frontSwivel.html b/docs/data/DriveData/frontSwivel.html new file mode 100644 index 0000000000..812eb51f81 --- /dev/null +++ b/docs/data/DriveData/frontSwivel.html @@ -0,0 +1,165 @@ + + + + + + + + frontSwivel property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
frontSwivel
+ +
+ +
+
+
+ +
+
+

frontSwivel property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ double + frontSwivel + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+$core.double get frontSwivel => $_getN(6);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ void + 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..35f5d0ea60 --- /dev/null +++ b/docs/data/DriveData/frontTilt.html @@ -0,0 +1,165 @@ + + + + + + + + frontTilt property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
frontTilt
+ +
+ +
+
+
+ +
+
+

frontTilt property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ double + frontTilt + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+$core.double get frontTilt => $_getN(7);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ void + 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..087387905c --- /dev/null +++ b/docs/data/DriveData/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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/hasBatteryCurrent.html b/docs/data/DriveData/hasBatteryCurrent.html new file mode 100644 index 0000000000..0aa950e721 --- /dev/null +++ b/docs/data/DriveData/hasBatteryCurrent.html @@ -0,0 +1,134 @@ + + + + + + + + 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..dc5b264355 --- /dev/null +++ b/docs/data/DriveData/hasBatteryTemperature.html @@ -0,0 +1,134 @@ + + + + + + + + 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..116dff4a8b --- /dev/null +++ b/docs/data/DriveData/hasBatteryVoltage.html @@ -0,0 +1,134 @@ + + + + + + + + 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/hasFrontSwivel.html b/docs/data/DriveData/hasFrontSwivel.html new file mode 100644 index 0000000000..fd69636b49 --- /dev/null +++ b/docs/data/DriveData/hasFrontSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f79675a467 --- /dev/null +++ b/docs/data/DriveData/hasFrontTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f54fea770f --- /dev/null +++ b/docs/data/DriveData/hasLeft.html @@ -0,0 +1,134 @@ + + + + + + + + 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/hasRearSwivel.html b/docs/data/DriveData/hasRearSwivel.html new file mode 100644 index 0000000000..8ccb96a192 --- /dev/null +++ b/docs/data/DriveData/hasRearSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..6add99bb8f --- /dev/null +++ b/docs/data/DriveData/hasRearTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..897786ef9a --- /dev/null +++ b/docs/data/DriveData/hasRight.html @@ -0,0 +1,134 @@ + + + + + + + + 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..175915e320 --- /dev/null +++ b/docs/data/DriveData/hasSetLeft.html @@ -0,0 +1,134 @@ + + + + + + + + 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..702b31bd5f --- /dev/null +++ b/docs/data/DriveData/hasSetRight.html @@ -0,0 +1,134 @@ + + + + + + + + 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..43247e1919 --- /dev/null +++ b/docs/data/DriveData/hasSetThrottle.html @@ -0,0 +1,134 @@ + + + + + + + + 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/hasThrottle.html b/docs/data/DriveData/hasThrottle.html new file mode 100644 index 0000000000..6862d46343 --- /dev/null +++ b/docs/data/DriveData/hasThrottle.html @@ -0,0 +1,134 @@ + + + + + + + + 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/info_.html b/docs/data/DriveData/info_.html new file mode 100644 index 0000000000..a2753ee6c2 --- /dev/null +++ b/docs/data/DriveData/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..2c3027950a --- /dev/null +++ b/docs/data/DriveData/left.html @@ -0,0 +1,168 @@ + + + + + + + + left property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
left
+ +
+ +
+
+
+ +
+
+

left property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + 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. +
+
+ void + left=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+set left($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DriveData/rearSwivel.html b/docs/data/DriveData/rearSwivel.html new file mode 100644 index 0000000000..5dd385be12 --- /dev/null +++ b/docs/data/DriveData/rearSwivel.html @@ -0,0 +1,165 @@ + + + + + + + + rearSwivel property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
rearSwivel
+ +
+ +
+
+
+ +
+
+

rearSwivel property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ double + rearSwivel + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+$core.double get rearSwivel => $_getN(8);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ void + 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..76640439c2 --- /dev/null +++ b/docs/data/DriveData/rearTilt.html @@ -0,0 +1,165 @@ + + + + + + + + rearTilt property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
rearTilt
+ +
+ +
+
+
+ +
+
+

rearTilt property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ double + rearTilt + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+$core.double get rearTilt => $_getN(9);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ void + 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..8181b37931 --- /dev/null +++ b/docs/data/DriveData/right.html @@ -0,0 +1,168 @@ + + + + + + + + right property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
right
+ +
+ +
+
+
+ +
+
+

right property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + 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. +
+
+ void + 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..9180001f77 --- /dev/null +++ b/docs/data/DriveData/setLeft.html @@ -0,0 +1,168 @@ + + + + + + + + setLeft property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
setLeft
+ +
+ +
+
+
+ +
+
+

setLeft property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ bool + 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. +
+
+ void + 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..69ba8f0a83 --- /dev/null +++ b/docs/data/DriveData/setRight.html @@ -0,0 +1,168 @@ + + + + + + + + setRight property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
setRight
+ +
+ +
+
+
+ +
+
+

setRight property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ bool + 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. +
+
+ void + 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..37b54bc61e --- /dev/null +++ b/docs/data/DriveData/setThrottle.html @@ -0,0 +1,168 @@ + + + + + + + + setThrottle property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
setThrottle
+ +
+ +
+
+
+ +
+
+

setThrottle property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ bool + 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. +
+
+ void + setThrottle=(bool v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+set setThrottle($core.bool v) { $_setBool(5, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DriveData/throttle.html b/docs/data/DriveData/throttle.html new file mode 100644 index 0000000000..a0b205005c --- /dev/null +++ b/docs/data/DriveData/throttle.html @@ -0,0 +1,168 @@ + + + + + + + + throttle property - DriveData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
throttle
+ +
+ +
+
+
+ +
+
+

throttle property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + 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. +
+
+ void + throttle=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+set throttle($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DriveMetrics-class-sidebar.html b/docs/data/DriveMetrics-class-sidebar.html new file mode 100644 index 0000000000..155df40b08 --- /dev/null +++ b/docs/data/DriveMetrics-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  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. name
  22. +
  23. overallSeverity
  24. +
  25. runtimeType
  26. +
  27. throttleSeverity
  28. + +
  29. Methods
  30. +
  31. addListener
  32. +
  33. dispose
  34. +
  35. noSuchMethod
  36. +
  37. notifyListeners
  38. +
  39. removeListener
  40. +
  41. toString
  42. +
  43. update
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/data/DriveMetrics-class.html b/docs/data/DriveMetrics-class.html new file mode 100644 index 0000000000..840ddcbb24 --- /dev/null +++ b/docs/data/DriveMetrics-class.html @@ -0,0 +1,423 @@ + + + + + + + + DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
DriveMetrics
+ +
+ +
+
+
+ +
+
+ +

DriveMetrics class + +

+ + +
+

Metrics reported by the drive subsystem.

+

In the future, the drive Teensy will have a GPS and IMU to read RoverPosition data. For now, +this information is sent separately and is represented by its own RoverPosition object because +they are collected on the Pi. In the future, when they are moved to the Drive subsystem, this +data should still be kept separate so as to make it easier to show in the UI and send to MARS.

+
+ + +
+
+ +
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
+ +
+ +
+ 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
+ +
+ +
+ throttleSeverity + Severity? + + +
+
+ The severity based on the throttle speed. +
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
+ +
+ +
+ 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(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..965c17ba8f --- /dev/null +++ b/docs/data/DriveMetrics/DriveMetrics.html @@ -0,0 +1,128 @@ + + + + + + + + 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..9acf8833f7 --- /dev/null +++ b/docs/data/DriveMetrics/allMetrics.html @@ -0,0 +1,149 @@ + + + + + + + + allMetrics property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
allMetrics
+ +
+ +
+
+
+ +
+
+ +

allMetrics property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<MetricLine> + 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("Battery: ${data.batteryVoltage.toStringAsFixed(2)}V,${data.batteryCurrent.toStringAsFixed(2)}A, ${data.batteryTemperature.toStringAsFixed(2)}°F", severity: electricalSeverity),
+];
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/DriveMetrics/batteryPercentage.html b/docs/data/DriveMetrics/batteryPercentage.html new file mode 100644 index 0000000000..5c5eb02fb5 --- /dev/null +++ b/docs/data/DriveMetrics/batteryPercentage.html @@ -0,0 +1,136 @@ + + + + + + + + batteryPercentage property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
batteryPercentage
+ +
+ +
+
+
+ +
+
+ +

batteryPercentage property +

+ + + +
+ +
+ + double + 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..b6f3a81fbb --- /dev/null +++ b/docs/data/DriveMetrics/batteryVoltage.html @@ -0,0 +1,136 @@ + + + + + + + + batteryVoltage property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
batteryVoltage
+ +
+ +
+
+
+ +
+
+ +

batteryVoltage property +

+ + + +
+ +
+ + double + 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..fb5d7262cb --- /dev/null +++ b/docs/data/DriveMetrics/electricalSeverity.html @@ -0,0 +1,145 @@ + + + + + + + + electricalSeverity property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
electricalSeverity
+ +
+ +
+
+
+ +
+
+ +

electricalSeverity property +

+ + + +
+ +
+ + Severity? + 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..0426bce07d --- /dev/null +++ b/docs/data/DriveMetrics/name.html @@ -0,0 +1,142 @@ + + + + + + + + name property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
name
+ +
+ +
+
+
+ +
+
+ +

name property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ String + 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/throttleSeverity.html b/docs/data/DriveMetrics/throttleSeverity.html new file mode 100644 index 0000000000..7100f584b5 --- /dev/null +++ b/docs/data/DriveMetrics/throttleSeverity.html @@ -0,0 +1,146 @@ + + + + + + + + throttleSeverity property - DriveMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
throttleSeverity
+ +
+ +
+
+
+ +
+
+ +

throttleSeverity property +

+ + + +
+ +
+ + Severity? + 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..ce356a2975 --- /dev/null +++ b/docs/data/DriveMetrics/update.html @@ -0,0 +1,148 @@ + + + + + + + + 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 (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;
+	notifyListeners();
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/EasterEggsSettings-class-sidebar.html b/docs/data/EasterEggsSettings-class-sidebar.html new file mode 100644 index 0000000000..3dc41487db --- /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..d73c14eba1 --- /dev/null +++ b/docs/data/EasterEggsSettings-class.html @@ -0,0 +1,290 @@ + + + + + + + + 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..c06bcf5134 --- /dev/null +++ b/docs/data/EasterEggsSettings/EasterEggsSettings.fromJson.html @@ -0,0 +1,133 @@ + + + + + + + + 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..46523f0ba0 --- /dev/null +++ b/docs/data/EasterEggsSettings/EasterEggsSettings.html @@ -0,0 +1,137 @@ + + + + + + + + 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..52d8124f77 --- /dev/null +++ b/docs/data/EasterEggsSettings/badApple.html @@ -0,0 +1,129 @@ + + + + + + + + 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..983991a546 --- /dev/null +++ b/docs/data/EasterEggsSettings/enableClippy.html @@ -0,0 +1,129 @@ + + + + + + + + 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..9b05f4136f --- /dev/null +++ b/docs/data/EasterEggsSettings/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..5df5655128 --- /dev/null +++ b/docs/data/EasterEggsSettings/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..87e43fd35b --- /dev/null +++ b/docs/data/EasterEggsSettings/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..b40ab52b1a --- /dev/null +++ b/docs/data/EasterEggsSettings/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - EasterEggsSettings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..9f8f966a0e --- /dev/null +++ b/docs/data/EasterEggsSettings/segaIntro.html @@ -0,0 +1,129 @@ + + + + + + + + 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..8bb7ef082c --- /dev/null +++ b/docs/data/EasterEggsSettings/segaSound.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a6c173b5a5 --- /dev/null +++ b/docs/data/EasterEggsSettings/toJson.html @@ -0,0 +1,137 @@ + + + + + + + + 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..33fe66beaf --- /dev/null +++ b/docs/data/EasterEggsSettings/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..0624cabce7 --- /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..b5aea15c5c --- /dev/null +++ b/docs/data/GpsCoordinates-class.html @@ -0,0 +1,951 @@ + + + + + + + + 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..46afee80cc --- /dev/null +++ b/docs/data/GpsCoordinates/GpsCoordinates.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..d48f1d6635 --- /dev/null +++ b/docs/data/GpsCoordinates/GpsCoordinates.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..98e7c9f0b1 --- /dev/null +++ b/docs/data/GpsCoordinates/GpsCoordinates.html @@ -0,0 +1,143 @@ + + + + + + + + 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..e3a0bc234a --- /dev/null +++ b/docs/data/GpsCoordinates/altitude.html @@ -0,0 +1,165 @@ + + + + + + + + altitude property - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
altitude
+ +
+ +
+
+
+ +
+
+

altitude property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + altitude + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get altitude => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..a2f0c505b1 --- /dev/null +++ b/docs/data/GpsCoordinates/clearAltitude.html @@ -0,0 +1,134 @@ + + + + + + + + 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..7a4819e2d8 --- /dev/null +++ b/docs/data/GpsCoordinates/clearLatitude.html @@ -0,0 +1,134 @@ + + + + + + + + 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..a0d85d5ae2 --- /dev/null +++ b/docs/data/GpsCoordinates/clearLongitude.html @@ -0,0 +1,134 @@ + + + + + + + + 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..53392d433d --- /dev/null +++ b/docs/data/GpsCoordinates/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..c95d584012 --- /dev/null +++ b/docs/data/GpsCoordinates/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..a088d150c8 --- /dev/null +++ b/docs/data/GpsCoordinates/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f6e1ebd8db --- /dev/null +++ b/docs/data/GpsCoordinates/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..d66f796caa --- /dev/null +++ b/docs/data/GpsCoordinates/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..610e242cca --- /dev/null +++ b/docs/data/GpsCoordinates/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..d4d0b0115c --- /dev/null +++ b/docs/data/GpsCoordinates/hasAltitude.html @@ -0,0 +1,134 @@ + + + + + + + + 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..6d2cc62473 --- /dev/null +++ b/docs/data/GpsCoordinates/hasLatitude.html @@ -0,0 +1,134 @@ + + + + + + + + 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..1c2c6301ee --- /dev/null +++ b/docs/data/GpsCoordinates/hasLongitude.html @@ -0,0 +1,134 @@ + + + + + + + + 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..7e864b3ae0 --- /dev/null +++ b/docs/data/GpsCoordinates/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..ce8a51bfeb --- /dev/null +++ b/docs/data/GpsCoordinates/latitude.html @@ -0,0 +1,165 @@ + + + + + + + + latitude property - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
latitude
+ +
+ +
+
+
+ +
+
+

latitude property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + latitude + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get latitude => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..7af1b05b53 --- /dev/null +++ b/docs/data/GpsCoordinates/longitude.html @@ -0,0 +1,165 @@ + + + + + + + + longitude property - GpsCoordinates class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
longitude
+ +
+ +
+
+
+ +
+
+

longitude property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + longitude + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get longitude => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..b04ddd9eba --- /dev/null +++ b/docs/data/GpsUtils.html @@ -0,0 +1,157 @@ + + + + + + + + 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..2595acf1ea --- /dev/null +++ b/docs/data/GpsUtils/distanceTo.html @@ -0,0 +1,144 @@ + + + + + + + + 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..695e929e15 --- /dev/null +++ b/docs/data/GripperCommand-class-sidebar.html @@ -0,0 +1,100 @@ +
    + +
  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. lift
  24. +
  25. open
  26. +
  27. pinch
  28. +
  29. rotate
  30. +
  31. runtimeType
  32. +
  33. spin
  34. +
  35. stop
  36. +
  37. unknownFields
  38. + +
  39. Methods
  40. +
  41. addExtension
  42. +
  43. check
  44. +
  45. clear
  46. +
  47. clearCalibrate
  48. +
  49. clearClose
  50. +
  51. clearExtension
  52. +
  53. clearField
  54. +
  55. clearLift
  56. +
  57. clearOpen
  58. +
  59. clearPinch
  60. +
  61. clearRotate
  62. +
  63. clearSpin
  64. +
  65. clearStop
  66. +
  67. clone
  68. +
  69. copyWith
  70. +
  71. createEmptyInstance
  72. +
  73. createMapField
  74. +
  75. createRepeatedField
  76. +
  77. ensureLift
  78. +
  79. ensurePinch
  80. +
  81. ensureRotate
  82. +
  83. extensionsAreInitialized
  84. +
  85. freeze
  86. +
  87. getDefaultForField
  88. +
  89. getExtension
  90. +
  91. getField
  92. +
  93. getFieldOrNull
  94. +
  95. getTagNumber
  96. +
  97. hasCalibrate
  98. +
  99. hasClose
  100. +
  101. hasExtension
  102. +
  103. hasField
  104. +
  105. hasLift
  106. +
  107. hasOpen
  108. +
  109. hasPinch
  110. +
  111. hasRequiredFields
  112. +
  113. hasRotate
  114. +
  115. hasSpin
  116. +
  117. hasStop
  118. +
  119. isInitialized
  120. +
  121. mergeFromBuffer
  122. +
  123. mergeFromCodedBufferReader
  124. +
  125. mergeFromJson
  126. +
  127. mergeFromJsonMap
  128. +
  129. mergeFromMessage
  130. +
  131. mergeFromProto3Json
  132. +
  133. mergeUnknownFields
  134. +
  135. noSuchMethod
  136. +
  137. setExtension
  138. +
  139. setField
  140. +
  141. toBuilder
  142. +
  143. toDebugString
  144. +
  145. toProto3Json
  146. +
  147. toString
  148. +
  149. writeToBuffer
  150. +
  151. writeToCodedBufferWriter
  152. +
  153. writeToJson
  154. +
  155. writeToJsonMap
  156. + +
  157. Operators
  158. +
  159. operator ==
  160. + + + + + +
  161. Static methods
  162. +
  163. create
  164. +
  165. createRepeated
  166. +
  167. getDefault
  168. + +
diff --git a/docs/data/GripperCommand-class.html b/docs/data/GripperCommand-class.html new file mode 100644 index 0000000000..4e4598f445 --- /dev/null +++ b/docs/data/GripperCommand-class.html @@ -0,0 +1,1179 @@ + + + + + + + + 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}) +
+
+ +
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
+ +
+ +
+ 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
+ +
+ +
+ spin + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ stop + ↔ bool + + +
+
+ General commands +
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
+ +
+ +
+ 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
+ +
+ +
+ clearLift() + → void + + + +
+
+ + + +
+ +
+ clearOpen() + → void + + + +
+
+ + + +
+ +
+ clearPinch() + → void + + + +
+
+ + + +
+ +
+ clearRotate() + → void + + + +
+
+ + + +
+ +
+ clearSpin() + → void + + + +
+
+ + + +
+ +
+ clearStop() + → 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 + + + +
+
+ + + +
+ +
+ 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
+ +
+ +
+ hasLift() + → bool + + + +
+
+ + + +
+ +
+ hasOpen() + → bool + + + +
+
+ + + +
+ +
+ hasPinch() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasRotate() + → bool + + + +
+
+ + + +
+ +
+ hasSpin() + → bool + + + +
+
+ + + +
+ +
+ hasStop() + → 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..2b7526661f --- /dev/null +++ b/docs/data/GripperCommand/GripperCommand.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..d3758e1c61 --- /dev/null +++ b/docs/data/GripperCommand/GripperCommand.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..8bdb1aec5b --- /dev/null +++ b/docs/data/GripperCommand/GripperCommand.html @@ -0,0 +1,168 @@ + + + + + + + + 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. +
}) +
+ + + + + +
+

Implementation

+
factory GripperCommand({
+  $core.bool? stop,
+  $core.bool? calibrate,
+  MotorCommand? lift,
+  MotorCommand? rotate,
+  MotorCommand? pinch,
+  $core.bool? open,
+  $core.bool? close,
+  $core.bool? spin,
+}) {
+  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;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/GripperCommand/calibrate.html b/docs/data/GripperCommand/calibrate.html new file mode 100644 index 0000000000..49543c1710 --- /dev/null +++ b/docs/data/GripperCommand/calibrate.html @@ -0,0 +1,165 @@ + + + + + + + + calibrate property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
calibrate
+ +
+ +
+
+
+ +
+
+

calibrate property +

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

Implementation

+
@$pb.TagNumber(2)
+$core.bool get calibrate => $_getBF(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..3deaa6bd22 --- /dev/null +++ b/docs/data/GripperCommand/clearCalibrate.html @@ -0,0 +1,134 @@ + + + + + + + + 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..25478ef811 --- /dev/null +++ b/docs/data/GripperCommand/clearClose.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clearLift.html b/docs/data/GripperCommand/clearLift.html new file mode 100644 index 0000000000..b5a79bc5ca --- /dev/null +++ b/docs/data/GripperCommand/clearLift.html @@ -0,0 +1,134 @@ + + + + + + + + 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..38d0259526 --- /dev/null +++ b/docs/data/GripperCommand/clearOpen.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c7a487d216 --- /dev/null +++ b/docs/data/GripperCommand/clearPinch.html @@ -0,0 +1,134 @@ + + + + + + + + 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..9c503feaf4 --- /dev/null +++ b/docs/data/GripperCommand/clearRotate.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clearSpin.html b/docs/data/GripperCommand/clearSpin.html new file mode 100644 index 0000000000..4f6601f932 --- /dev/null +++ b/docs/data/GripperCommand/clearSpin.html @@ -0,0 +1,134 @@ + + + + + + + + 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..deedfee2f9 --- /dev/null +++ b/docs/data/GripperCommand/clearStop.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/GripperCommand/clone.html new file mode 100644 index 0000000000..4ff61013a9 --- /dev/null +++ b/docs/data/GripperCommand/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..bed22c4cc0 --- /dev/null +++ b/docs/data/GripperCommand/close.html @@ -0,0 +1,165 @@ + + + + + + + + close property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
close
+ +
+ +
+
+
+ +
+
+

close property +

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

Implementation

+
@$pb.TagNumber(7)
+$core.bool get close => $_getBF(6);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ void + 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..dd50f88dfc --- /dev/null +++ b/docs/data/GripperCommand/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..08d804c419 --- /dev/null +++ b/docs/data/GripperCommand/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..1cd042f011 --- /dev/null +++ b/docs/data/GripperCommand/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..ad775d080a --- /dev/null +++ b/docs/data/GripperCommand/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..c52cceb5df --- /dev/null +++ b/docs/data/GripperCommand/ensureLift.html @@ -0,0 +1,134 @@ + + + + + + + + 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..1b6b5af1e0 --- /dev/null +++ b/docs/data/GripperCommand/ensurePinch.html @@ -0,0 +1,134 @@ + + + + + + + + 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..842b443848 --- /dev/null +++ b/docs/data/GripperCommand/ensureRotate.html @@ -0,0 +1,134 @@ + + + + + + + + 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/getDefault.html b/docs/data/GripperCommand/getDefault.html new file mode 100644 index 0000000000..2e88de0c6e --- /dev/null +++ b/docs/data/GripperCommand/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..3f32afb6c7 --- /dev/null +++ b/docs/data/GripperCommand/hasCalibrate.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c1e7183cfa --- /dev/null +++ b/docs/data/GripperCommand/hasClose.html @@ -0,0 +1,134 @@ + + + + + + + + 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/hasLift.html b/docs/data/GripperCommand/hasLift.html new file mode 100644 index 0000000000..39a20b01e2 --- /dev/null +++ b/docs/data/GripperCommand/hasLift.html @@ -0,0 +1,134 @@ + + + + + + + + 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..3933dd44bd --- /dev/null +++ b/docs/data/GripperCommand/hasOpen.html @@ -0,0 +1,134 @@ + + + + + + + + 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..2798963a0c --- /dev/null +++ b/docs/data/GripperCommand/hasPinch.html @@ -0,0 +1,134 @@ + + + + + + + + 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..fe4bb62b03 --- /dev/null +++ b/docs/data/GripperCommand/hasRotate.html @@ -0,0 +1,134 @@ + + + + + + + + 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/hasSpin.html b/docs/data/GripperCommand/hasSpin.html new file mode 100644 index 0000000000..a4927f8bf7 --- /dev/null +++ b/docs/data/GripperCommand/hasSpin.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f5959eed2a --- /dev/null +++ b/docs/data/GripperCommand/hasStop.html @@ -0,0 +1,134 @@ + + + + + + + + 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/info_.html b/docs/data/GripperCommand/info_.html new file mode 100644 index 0000000000..d0ccedf4ea --- /dev/null +++ b/docs/data/GripperCommand/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

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

Implementation

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

lift property +

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

Move individual motors

+
+ + +
+

Implementation

+
@$pb.TagNumber(3)
+MotorCommand get lift => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..75b21c374d --- /dev/null +++ b/docs/data/GripperCommand/open.html @@ -0,0 +1,168 @@ + + + + + + + + open property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
open
+ +
+ +
+
+
+ +
+
+

open property +

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

Custom actions

+
+ + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.bool get open => $_getBF(5);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ void + 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..e4b3dfeddb --- /dev/null +++ b/docs/data/GripperCommand/pinch.html @@ -0,0 +1,165 @@ + + + + + + + + pinch property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
pinch
+ +
+ +
+
+
+ +
+
+

pinch property +

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

Implementation

+
@$pb.TagNumber(5)
+MotorCommand get pinch => $_getN(4);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ void + 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..a077ec8a1d --- /dev/null +++ b/docs/data/GripperCommand/rotate.html @@ -0,0 +1,165 @@ + + + + + + + + rotate property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
rotate
+ +
+ +
+
+
+ +
+
+

rotate property +

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

Implementation

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

Implementation

+
@$pb.TagNumber(4)
+set rotate(MotorCommand v) { setField(4, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/GripperCommand/spin.html b/docs/data/GripperCommand/spin.html new file mode 100644 index 0000000000..75fa177a02 --- /dev/null +++ b/docs/data/GripperCommand/spin.html @@ -0,0 +1,165 @@ + + + + + + + + spin property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
spin
+ +
+ +
+
+
+ +
+
+

spin property +

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

Implementation

+
@$pb.TagNumber(8)
+$core.bool get spin => $_getBF(7);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ void + 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..5dec16459a --- /dev/null +++ b/docs/data/GripperCommand/stop.html @@ -0,0 +1,168 @@ + + + + + + + + stop property - GripperCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
stop
+ +
+ +
+
+
+ +
+
+

stop property +

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

General commands

+
+ + +
+

Implementation

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

Implementation

+
@$pb.TagNumber(1)
+set stop($core.bool v) { $_setBool(0, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/GripperData-class-sidebar.html b/docs/data/GripperData-class-sidebar.html new file mode 100644 index 0000000000..b34e0b70b1 --- /dev/null +++ b/docs/data/GripperData-class-sidebar.html @@ -0,0 +1,85 @@ +
    + +
  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. lift
  20. +
  21. pinch
  22. +
  23. rotate
  24. +
  25. runtimeType
  26. +
  27. unknownFields
  28. + +
  29. Methods
  30. +
  31. addExtension
  32. +
  33. check
  34. +
  35. clear
  36. +
  37. clearExtension
  38. +
  39. clearField
  40. +
  41. clearLift
  42. +
  43. clearPinch
  44. +
  45. clearRotate
  46. +
  47. clone
  48. +
  49. copyWith
  50. +
  51. createEmptyInstance
  52. +
  53. createMapField
  54. +
  55. createRepeatedField
  56. +
  57. ensureLift
  58. +
  59. ensurePinch
  60. +
  61. ensureRotate
  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. hasLift
  82. +
  83. hasPinch
  84. +
  85. hasRequiredFields
  86. +
  87. hasRotate
  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/GripperData-class.html b/docs/data/GripperData-class.html new file mode 100644 index 0000000000..55426a7ca6 --- /dev/null +++ b/docs/data/GripperData-class.html @@ -0,0 +1,989 @@ + + + + + + + + GripperData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
GripperData
+ +
+ +
+
+
+ +
+
+

GripperData class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + +
Available Extensions
+
+ + + + +
+
+ + +
+

Constructors

+ +
+
+ GripperData({MotorData? lift, MotorData? rotate, MotorData? pinch}) +
+
+ +
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
+ +
+ +
+ 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
+ +
+ +
+ 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
+ +
+ +
+ clearLift() + → void + + + +
+
+ + + +
+ +
+ clearPinch() + → void + + + +
+
+ + + +
+ +
+ clearRotate() + → 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 + + + +
+
+ + + +
+ +
+ 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
+ +
+ +
+ hasLift() + → bool + + + +
+
+ + + +
+ +
+ hasPinch() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasRotate() + → 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..5deba556c1 --- /dev/null +++ b/docs/data/GripperData/GripperData.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..126f2de4fc --- /dev/null +++ b/docs/data/GripperData/GripperData.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..bd40ddb2f7 --- /dev/null +++ b/docs/data/GripperData/GripperData.html @@ -0,0 +1,143 @@ + + + + + + + + GripperData constructor - GripperData - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
GripperData
+ +
+ +
+
+
+ +
+
+

GripperData constructor +

+ +
+ + GripperData({
  1. MotorData? lift,
  2. +
  3. MotorData? rotate,
  4. +
  5. MotorData? pinch,
  6. +
}) +
+ + + + + +
+

Implementation

+
factory GripperData({
+  MotorData? lift,
+  MotorData? rotate,
+  MotorData? pinch,
+}) {
+  final $result = create();
+  if (lift != null) {
+    $result.lift = lift;
+  }
+  if (rotate != null) {
+    $result.rotate = rotate;
+  }
+  if (pinch != null) {
+    $result.pinch = pinch;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/GripperData/clearLift.html b/docs/data/GripperData/clearLift.html new file mode 100644 index 0000000000..55449c612d --- /dev/null +++ b/docs/data/GripperData/clearLift.html @@ -0,0 +1,134 @@ + + + + + + + + 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..cb94c2b787 --- /dev/null +++ b/docs/data/GripperData/clearPinch.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f314a992de --- /dev/null +++ b/docs/data/GripperData/clearRotate.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/GripperData/clone.html new file mode 100644 index 0000000000..008370724d --- /dev/null +++ b/docs/data/GripperData/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..eb6e5644e5 --- /dev/null +++ b/docs/data/GripperData/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..4a3aef5f9b --- /dev/null +++ b/docs/data/GripperData/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..52ba34b30b --- /dev/null +++ b/docs/data/GripperData/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..c6bd12b020 --- /dev/null +++ b/docs/data/GripperData/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..76d1e623ca --- /dev/null +++ b/docs/data/GripperData/ensureLift.html @@ -0,0 +1,134 @@ + + + + + + + + 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..8c490d3015 --- /dev/null +++ b/docs/data/GripperData/ensurePinch.html @@ -0,0 +1,134 @@ + + + + + + + + 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..891446b448 --- /dev/null +++ b/docs/data/GripperData/ensureRotate.html @@ -0,0 +1,134 @@ + + + + + + + + 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/getDefault.html b/docs/data/GripperData/getDefault.html new file mode 100644 index 0000000000..330daf37d8 --- /dev/null +++ b/docs/data/GripperData/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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/hasLift.html b/docs/data/GripperData/hasLift.html new file mode 100644 index 0000000000..684c0cdda3 --- /dev/null +++ b/docs/data/GripperData/hasLift.html @@ -0,0 +1,134 @@ + + + + + + + + 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..87e8a6f21e --- /dev/null +++ b/docs/data/GripperData/hasPinch.html @@ -0,0 +1,134 @@ + + + + + + + + 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..1359faa12f --- /dev/null +++ b/docs/data/GripperData/hasRotate.html @@ -0,0 +1,134 @@ + + + + + + + + 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/info_.html b/docs/data/GripperData/info_.html new file mode 100644 index 0000000000..b3c95a947b --- /dev/null +++ b/docs/data/GripperData/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - GripperData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

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

Implementation

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

lift property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ MotorData + lift + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+MotorData get lift => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..cfe1a2df77 --- /dev/null +++ b/docs/data/GripperData/pinch.html @@ -0,0 +1,165 @@ + + + + + + + + pinch property - GripperData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
pinch
+ +
+ +
+
+
+ +
+
+

pinch property +

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

Implementation

+
@$pb.TagNumber(3)
+MotorData get pinch => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..ca9f1e427d --- /dev/null +++ b/docs/data/GripperData/rotate.html @@ -0,0 +1,165 @@ + + + + + + + + rotate property - GripperData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
rotate
+ +
+ +
+
+
+ +
+
+

rotate property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ MotorData + rotate + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+MotorData get rotate => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + rotate=(MotorData v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+set rotate(MotorData v) { setField(2, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/GripperMetrics-class-sidebar.html b/docs/data/GripperMetrics-class-sidebar.html new file mode 100644 index 0000000000..6f1318cb3e --- /dev/null +++ b/docs/data/GripperMetrics-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. GripperMetrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. data
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. name
  16. +
  17. overallSeverity
  18. +
  19. runtimeType
  20. + +
  21. Methods
  22. +
  23. addListener
  24. +
  25. dispose
  26. +
  27. getMotorData
  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/data/GripperMetrics-class.html b/docs/data/GripperMetrics-class.html new file mode 100644 index 0000000000..66e0403ab9 --- /dev/null +++ b/docs/data/GripperMetrics-class.html @@ -0,0 +1,384 @@ + + + + + + + + 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
+ +
+ +
+ 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
+ +
+ +
+
+ +
+

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
+ +
+ +
+ 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
+ +
+ +
+ 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..35846171cf --- /dev/null +++ b/docs/data/GripperMetrics/GripperMetrics.html @@ -0,0 +1,128 @@ + + + + + + + + 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..28c8e884e3 --- /dev/null +++ b/docs/data/GripperMetrics/allMetrics.html @@ -0,0 +1,153 @@ + + + + + + + + allMetrics property - GripperMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
allMetrics
+ +
+ +
+
+
+ +
+
+ +

allMetrics property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<MetricLine> + 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("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..65f92d54de --- /dev/null +++ b/docs/data/GripperMetrics/getMotorData.html @@ -0,0 +1,139 @@ + + + + + + + + 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}", severity: motor.isMoving ? Severity.info : null),
+	MetricLine("  Limit? ${motor.isLimitSwitchPressed}", severity: motor.isLimitSwitchPressed ? 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/GripperMetrics/name.html b/docs/data/GripperMetrics/name.html new file mode 100644 index 0000000000..7b5ed75ae9 --- /dev/null +++ b/docs/data/GripperMetrics/name.html @@ -0,0 +1,142 @@ + + + + + + + + name property - GripperMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
name
+ +
+ +
+
+
+ +
+
+ +

name property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ String + 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/Json.html b/docs/data/Json.html new file mode 100644 index 0000000000..4d9c160637 --- /dev/null +++ b/docs/data/Json.html @@ -0,0 +1,128 @@ + + + + + + + + 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..b90cf464e1 --- /dev/null +++ b/docs/data/LimitedList.html @@ -0,0 +1,157 @@ + + + + + + + + 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..08f50fa0cb --- /dev/null +++ b/docs/data/LimitedList/pushWithLimit.html @@ -0,0 +1,137 @@ + + + + + + + + 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..4494cf8dce --- /dev/null +++ b/docs/data/LogFormat.html @@ -0,0 +1,157 @@ + + + + + + + + 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..feffd3df16 --- /dev/null +++ b/docs/data/LogFormat/format.html @@ -0,0 +1,141 @@ + + + + + + + + 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..057b0be217 --- /dev/null +++ b/docs/data/LogLevelUtils-extension-sidebar.html @@ -0,0 +1,17 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. +
  5. label
  6. + + + + + + +
diff --git a/docs/data/LogLevelUtils.html b/docs/data/LogLevelUtils.html new file mode 100644 index 0000000000..ea222da1c9 --- /dev/null +++ b/docs/data/LogLevelUtils.html @@ -0,0 +1,168 @@ + + + + + + + + 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
+ +
+ +
+
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + + + diff --git a/docs/data/LogLevelUtils/humanName.html b/docs/data/LogLevelUtils/humanName.html new file mode 100644 index 0000000000..8c40a46144 --- /dev/null +++ b/docs/data/LogLevelUtils/humanName.html @@ -0,0 +1,144 @@ + + + + + + + + humanName property - LogLevelUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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/label.html b/docs/data/LogLevelUtils/label.html new file mode 100644 index 0000000000..6d5f4b18de --- /dev/null +++ b/docs/data/LogLevelUtils/label.html @@ -0,0 +1,144 @@ + + + + + + + + label property - LogLevelUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
label
+ +
+ +
+
+
+ +
+
+ +

label property +

+ + + +
+ +
+ + String + 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..73d05851dd --- /dev/null +++ b/docs/data/MapRecords.html @@ -0,0 +1,156 @@ + + + + + + + + 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..afc1ee95af --- /dev/null +++ b/docs/data/MapRecords/records.html @@ -0,0 +1,140 @@ + + + + + + + + records property - MapRecords extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
records
+ +
+ +
+
+
+ +
+
+ +

records property +

+ + + +
+ +
+ + Iterable<(K, V)> + 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..efd8ef699f --- /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..b973ad8d18 --- /dev/null +++ b/docs/data/MarsCommand-class.html @@ -0,0 +1,1014 @@ + + + + + + + + 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..6b4c967b32 --- /dev/null +++ b/docs/data/MarsCommand/MarsCommand.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..eca319c871 --- /dev/null +++ b/docs/data/MarsCommand/MarsCommand.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..41d074225f --- /dev/null +++ b/docs/data/MarsCommand/MarsCommand.html @@ -0,0 +1,148 @@ + + + + + + + + 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..3b34264b9c --- /dev/null +++ b/docs/data/MarsCommand/baseStationOverride.html @@ -0,0 +1,165 @@ + + + + + + + + baseStationOverride property - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
baseStationOverride
+ +
+ +
+
+
+ +
+
+

baseStationOverride property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ GpsCoordinates + baseStationOverride + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$0.GpsCoordinates get baseStationOverride => $_getN(3);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ void + 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..885be42646 --- /dev/null +++ b/docs/data/MarsCommand/clearBaseStationOverride.html @@ -0,0 +1,134 @@ + + + + + + + + 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..93f85a7dea --- /dev/null +++ b/docs/data/MarsCommand/clearRover.html @@ -0,0 +1,134 @@ + + + + + + + + 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..a16b95dd84 --- /dev/null +++ b/docs/data/MarsCommand/clearSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..92a0c6c139 --- /dev/null +++ b/docs/data/MarsCommand/clearTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..e52cf9fc57 --- /dev/null +++ b/docs/data/MarsCommand/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..cdee74260c --- /dev/null +++ b/docs/data/MarsCommand/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..e914ae01f2 --- /dev/null +++ b/docs/data/MarsCommand/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..614001a4ed --- /dev/null +++ b/docs/data/MarsCommand/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..7708607fb7 --- /dev/null +++ b/docs/data/MarsCommand/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..7fae269a8d --- /dev/null +++ b/docs/data/MarsCommand/ensureBaseStationOverride.html @@ -0,0 +1,134 @@ + + + + + + + + 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..0f51d6449b --- /dev/null +++ b/docs/data/MarsCommand/ensureRover.html @@ -0,0 +1,134 @@ + + + + + + + + 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..34c8e81fe3 --- /dev/null +++ b/docs/data/MarsCommand/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..1127eae0a3 --- /dev/null +++ b/docs/data/MarsCommand/hasBaseStationOverride.html @@ -0,0 +1,134 @@ + + + + + + + + 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..65fcd3fa56 --- /dev/null +++ b/docs/data/MarsCommand/hasRover.html @@ -0,0 +1,134 @@ + + + + + + + + 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..758cd46a48 --- /dev/null +++ b/docs/data/MarsCommand/hasSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d80f0ee9bb --- /dev/null +++ b/docs/data/MarsCommand/hasTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..85c86da649 --- /dev/null +++ b/docs/data/MarsCommand/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..b87d658b03 --- /dev/null +++ b/docs/data/MarsCommand/rover.html @@ -0,0 +1,168 @@ + + + + + + + + rover property - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
rover
+ +
+ +
+
+
+ +
+
+

rover property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ GpsCoordinates + rover + + +
+ + +
+

Automatic control

+
+ + +
+

Implementation

+
@$pb.TagNumber(3)
+$0.GpsCoordinates get rover => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..388bb9c8b1 --- /dev/null +++ b/docs/data/MarsCommand/swivel.html @@ -0,0 +1,168 @@ + + + + + + + + swivel property - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
swivel
+ +
+ +
+
+
+ +
+
+

swivel property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + swivel + + +
+ + +
+

Manual control

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get swivel => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..1ac2e979f9 --- /dev/null +++ b/docs/data/MarsCommand/tilt.html @@ -0,0 +1,165 @@ + + + + + + + + tilt property - MarsCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
tilt
+ +
+ +
+
+
+ +
+
+

tilt property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + tilt + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get tilt => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..3756697eab --- /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..9d4d7ba21c --- /dev/null +++ b/docs/data/MarsData-class.html @@ -0,0 +1,1001 @@ + + + + + + + + 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..bcc5abcd26 --- /dev/null +++ b/docs/data/MarsData/MarsData.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..860ac69ae5 --- /dev/null +++ b/docs/data/MarsData/MarsData.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..67f5164b55 --- /dev/null +++ b/docs/data/MarsData/MarsData.html @@ -0,0 +1,148 @@ + + + + + + + + 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..68681dafca --- /dev/null +++ b/docs/data/MarsData/clearCoordinates.html @@ -0,0 +1,134 @@ + + + + + + + + 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..b7f78bad8c --- /dev/null +++ b/docs/data/MarsData/clearStatus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..6e300fa5cd --- /dev/null +++ b/docs/data/MarsData/clearSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..445a293b64 --- /dev/null +++ b/docs/data/MarsData/clearTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c5c04b4386 --- /dev/null +++ b/docs/data/MarsData/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..fd12b7cb04 --- /dev/null +++ b/docs/data/MarsData/coordinates.html @@ -0,0 +1,165 @@ + + + + + + + + coordinates property - MarsData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
coordinates
+ +
+ +
+
+
+ +
+
+

coordinates property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ GpsCoordinates + coordinates + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$0.GpsCoordinates get coordinates => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..9f80dede5b --- /dev/null +++ b/docs/data/MarsData/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..b433a298c5 --- /dev/null +++ b/docs/data/MarsData/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..0c9ea29a7e --- /dev/null +++ b/docs/data/MarsData/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..de478de5b3 --- /dev/null +++ b/docs/data/MarsData/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..db88ac81cb --- /dev/null +++ b/docs/data/MarsData/ensureCoordinates.html @@ -0,0 +1,134 @@ + + + + + + + + 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..9464989c83 --- /dev/null +++ b/docs/data/MarsData/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..cef61c2037 --- /dev/null +++ b/docs/data/MarsData/hasCoordinates.html @@ -0,0 +1,134 @@ + + + + + + + + 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..15f8cc8bad --- /dev/null +++ b/docs/data/MarsData/hasStatus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..719b9177e8 --- /dev/null +++ b/docs/data/MarsData/hasSwivel.html @@ -0,0 +1,134 @@ + + + + + + + + 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..23e6d88541 --- /dev/null +++ b/docs/data/MarsData/hasTilt.html @@ -0,0 +1,134 @@ + + + + + + + + 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..39cdbe43b4 --- /dev/null +++ b/docs/data/MarsData/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - MarsData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..63f2132b5e --- /dev/null +++ b/docs/data/MarsData/status.html @@ -0,0 +1,165 @@ + + + + + + + + status property - MarsData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
status
+ +
+ +
+
+
+ +
+
+

status property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ MarsStatus + status + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+MarsStatus get status => $_getN(3);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ void + 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..718141ac9a --- /dev/null +++ b/docs/data/MarsData/swivel.html @@ -0,0 +1,165 @@ + + + + + + + + swivel property - MarsData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
swivel
+ +
+ +
+
+
+ +
+
+

swivel property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + swivel + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get swivel => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..a5f9730c08 --- /dev/null +++ b/docs/data/MarsData/tilt.html @@ -0,0 +1,165 @@ + + + + + + + + tilt property - MarsData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
tilt
+ +
+ +
+
+
+ +
+
+

tilt property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + tilt + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get tilt => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..6334ff9966 --- /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..230503560e --- /dev/null +++ b/docs/data/MarsStatus-class.html @@ -0,0 +1,351 @@ + + + + + + + + MarsStatus class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
MarsStatus
+ +
+ +
+
+
+ +
+
+

MarsStatus 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) + 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..e01fb729b1 --- /dev/null +++ b/docs/data/MarsStatus/FAILED_HANDSHAKE-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..991fc6c3b9 --- /dev/null +++ b/docs/data/MarsStatus/MARS_STATUS_UNDEFINED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..c1f2d43211 --- /dev/null +++ b/docs/data/MarsStatus/PORT_NOT_FOUND-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..9ea6f9973b --- /dev/null +++ b/docs/data/MarsStatus/TEENSY_CONNECTED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..7095d7579b --- /dev/null +++ b/docs/data/MarsStatus/TEENSY_UNRESPONSIVE-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..252b7065ff --- /dev/null +++ b/docs/data/MarsStatus/valueOf.html @@ -0,0 +1,129 @@ + + + + + + + + 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..134a7ff740 --- /dev/null +++ b/docs/data/MarsStatus/values-constant.html @@ -0,0 +1,131 @@ + + + + + + + + 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/MarsStatusUtils-extension-sidebar.html b/docs/data/MarsStatusUtils-extension-sidebar.html new file mode 100644 index 0000000000..28e862c7c4 --- /dev/null +++ b/docs/data/MarsStatusUtils-extension-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. humanName
  4. + + + + + + +
diff --git a/docs/data/MarsStatusUtils.html b/docs/data/MarsStatusUtils.html new file mode 100644 index 0000000000..0f4b661882 --- /dev/null +++ b/docs/data/MarsStatusUtils.html @@ -0,0 +1,156 @@ + + + + + + + + MarsStatusUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
MarsStatusUtils
+ +
+ +
+
+
+
+
+ +

MarsStatusUtils extension + +

+ + +
+

Utilities for MarsStatuses.

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

Properties

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

humanName property +

+ + + +
+ +
+ + String + humanName + + +
+ + +
+

The human-readable name of the status

+
+ + +
+

Implementation

+
String get humanName {
+	switch (this) {
+		case MarsStatus.MARS_STATUS_UNDEFINED: return "Not available";
+		case MarsStatus.PORT_NOT_FOUND: return "Could not open port";
+		case MarsStatus.TEENSY_UNRESPONSIVE: return "Teensy unresponsive";
+		case MarsStatus.FAILED_HANDSHAKE: return "Failed handshake";
+		case MarsStatus.TEENSY_CONNECTED: return "Connected";
+	}
+	// Do not use default or else you'll lose exhaustiveness checking.
+	throw ArgumentError("Unrecognized MarsStatus: $this");
+}
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/Message.html b/docs/data/Message.html new file mode 100644 index 0000000000..1d3d66106e --- /dev/null +++ b/docs/data/Message.html @@ -0,0 +1,128 @@ + + + + + + + + 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..cb41fed780 --- /dev/null +++ b/docs/data/MessageDecoder.html @@ -0,0 +1,128 @@ + + + + + + + + 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..01fd67ecb3 --- /dev/null +++ b/docs/data/MessageHandler.html @@ -0,0 +1,127 @@ + + + + + + + + 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..60ab71722a --- /dev/null +++ b/docs/data/MessageUtils.html @@ -0,0 +1,175 @@ + + + + + + + + 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..bc1c51dc81 --- /dev/null +++ b/docs/data/MessageUtils/messageName.html @@ -0,0 +1,135 @@ + + + + + + + + messageName property - MessageUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
messageName
+ +
+ +
+
+
+ +
+
+

messageName property +

+ + + +
+ +
+ + String + 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..fa7c8607bb --- /dev/null +++ b/docs/data/MessageUtils/wrap.html @@ -0,0 +1,136 @@ + + + + + + + + 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..a68ee93fd3 --- /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..b5e43fc57e --- /dev/null +++ b/docs/data/MetricLine-class.html @@ -0,0 +1,245 @@ + + + + + + + + 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..b5f70d6654 --- /dev/null +++ b/docs/data/MetricLine/MetricLine.html @@ -0,0 +1,130 @@ + + + + + + + + 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..cc0b75912c --- /dev/null +++ b/docs/data/MetricLine/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - MetricLine class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..2075ce57ce --- /dev/null +++ b/docs/data/MetricLine/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..3060363d3a --- /dev/null +++ b/docs/data/MetricLine/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..13fa12710e --- /dev/null +++ b/docs/data/MetricLine/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - MetricLine class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..0c3df8dcd5 --- /dev/null +++ b/docs/data/MetricLine/severity.html @@ -0,0 +1,129 @@ + + + + + + + + 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..d65e3509a2 --- /dev/null +++ b/docs/data/MetricLine/text.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c6e8290dfd --- /dev/null +++ b/docs/data/MetricLine/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..5c3eefd7ef --- /dev/null +++ b/docs/data/Metrics-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. Metrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. data
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. name
  16. +
  17. overallSeverity
  18. +
  19. runtimeType
  20. + +
  21. Methods
  22. +
  23. addListener
  24. +
  25. dispose
  26. +
  27. noSuchMethod
  28. +
  29. notifyListeners
  30. +
  31. removeListener
  32. +
  33. toString
  34. +
  35. update
  36. + +
  37. Operators
  38. +
  39. operator ==
  40. + + + + + + +
diff --git a/docs/data/Metrics-class.html b/docs/data/Metrics-class.html new file mode 100644 index 0000000000..5e81ec1b27 --- /dev/null +++ b/docs/data/Metrics-class.html @@ -0,0 +1,382 @@ + + + + + + + + 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
+ +
+ +
+ 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
+ +
+ +
+
+ +
+

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(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..24617ecf97 --- /dev/null +++ b/docs/data/Metrics/Metrics.html @@ -0,0 +1,129 @@ + + + + + + + + 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..1a7b9cb74b --- /dev/null +++ b/docs/data/Metrics/allMetrics.html @@ -0,0 +1,138 @@ + + + + + + + + allMetrics property - Metrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
allMetrics
+ +
+ +
+
+
+ +
+
+ +

allMetrics property +

+ + + +
+ +
+ + List<MetricLine> + 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/data.html b/docs/data/Metrics/data.html new file mode 100644 index 0000000000..255822acf9 --- /dev/null +++ b/docs/data/Metrics/data.html @@ -0,0 +1,129 @@ + + + + + + + + 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/name.html b/docs/data/Metrics/name.html new file mode 100644 index 0000000000..7071ea5d9f --- /dev/null +++ b/docs/data/Metrics/name.html @@ -0,0 +1,136 @@ + + + + + + + + name property - Metrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
name
+ +
+ +
+
+
+ +
+
+ +

name property +

+ + + +
+ +
+ + String + 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..2432b9182d --- /dev/null +++ b/docs/data/Metrics/overallSeverity.html @@ -0,0 +1,141 @@ + + + + + + + + overallSeverity property - Metrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
overallSeverity
+ +
+ +
+
+
+ +
+
+ +

overallSeverity property +

+ + + +
+ +
+ + Severity? + 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/update.html b/docs/data/Metrics/update.html new file mode 100644 index 0000000000..86e6092d75 --- /dev/null +++ b/docs/data/Metrics/update.html @@ -0,0 +1,137 @@ + + + + + + + + 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) {
+	data.mergeFromMessage(value);
+	notifyListeners();
+	services.files.logData(value);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/MotorCommand-class-sidebar.html b/docs/data/MotorCommand-class-sidebar.html new file mode 100644 index 0000000000..04366b5ffe --- /dev/null +++ b/docs/data/MotorCommand-class-sidebar.html @@ -0,0 +1,79 @@ +
    + +
  1. Constructors
  2. +
  3. MotorCommand
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. eventPlugin
  12. +
  13. hashCode
  14. +
  15. info_
  16. +
  17. isFrozen
  18. +
  19. moveRadians
  20. +
  21. moveSteps
  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. clearMoveRadians
  40. +
  41. clearMoveSteps
  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. hasMoveRadians
  72. +
  73. hasMoveSteps
  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/MotorCommand-class.html b/docs/data/MotorCommand-class.html new file mode 100644 index 0000000000..43b5a7aab6 --- /dev/null +++ b/docs/data/MotorCommand-class.html @@ -0,0 +1,912 @@ + + + + + + + + MotorCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
MotorCommand
+ +
+ +
+
+
+ +
+
+

MotorCommand class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + +
Available Extensions
+
+ + + + +
+
+ + +
+

Constructors

+ +
+
+ MotorCommand({int? moveSteps, double? moveRadians}) +
+
+ +
factory
+
+
+ MotorCommand.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ MotorCommand.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
+ +
+ +
+ 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
+ +
+ +
+ 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
+ +
+ +
+ 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..a036e425dc --- /dev/null +++ b/docs/data/MotorCommand/MotorCommand.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..fcbf7f3a62 --- /dev/null +++ b/docs/data/MotorCommand/MotorCommand.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..629d6315ce --- /dev/null +++ b/docs/data/MotorCommand/MotorCommand.html @@ -0,0 +1,138 @@ + + + + + + + + MotorCommand constructor - MotorCommand - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
MotorCommand
+ +
+ +
+
+
+ +
+
+

MotorCommand constructor +

+ +
+ + MotorCommand({
  1. int? moveSteps,
  2. +
  3. double? moveRadians,
  4. +
}) +
+ + + + + +
+

Implementation

+
factory MotorCommand({
+  $core.int? moveSteps,
+  $core.double? moveRadians,
+}) {
+  final $result = create();
+  if (moveSteps != null) {
+    $result.moveSteps = moveSteps;
+  }
+  if (moveRadians != null) {
+    $result.moveRadians = moveRadians;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/MotorCommand/clearMoveRadians.html b/docs/data/MotorCommand/clearMoveRadians.html new file mode 100644 index 0000000000..19ccf77f54 --- /dev/null +++ b/docs/data/MotorCommand/clearMoveRadians.html @@ -0,0 +1,134 @@ + + + + + + + + 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..6944fa8dc0 --- /dev/null +++ b/docs/data/MotorCommand/clearMoveSteps.html @@ -0,0 +1,134 @@ + + + + + + + + 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..ce57faa54f --- /dev/null +++ b/docs/data/MotorCommand/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..7af26b0e6b --- /dev/null +++ b/docs/data/MotorCommand/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..5fada28bf0 --- /dev/null +++ b/docs/data/MotorCommand/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f1ddbfc132 --- /dev/null +++ b/docs/data/MotorCommand/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..efb615031a --- /dev/null +++ b/docs/data/MotorCommand/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..e8a891e520 --- /dev/null +++ b/docs/data/MotorCommand/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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/hasMoveRadians.html b/docs/data/MotorCommand/hasMoveRadians.html new file mode 100644 index 0000000000..4e832f5267 --- /dev/null +++ b/docs/data/MotorCommand/hasMoveRadians.html @@ -0,0 +1,134 @@ + + + + + + + + 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..1707918a22 --- /dev/null +++ b/docs/data/MotorCommand/hasMoveSteps.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f37bc3c6ab --- /dev/null +++ b/docs/data/MotorCommand/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..8cdad7bffb --- /dev/null +++ b/docs/data/MotorCommand/moveRadians.html @@ -0,0 +1,168 @@ + + + + + + + + moveRadians property - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
moveRadians
+ +
+ +
+
+
+ +
+
+

moveRadians property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + moveRadians + + +
+ + +
+

Precise control: Move by radians

+
+ + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get moveRadians => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..5d3a1c1aa0 --- /dev/null +++ b/docs/data/MotorCommand/moveSteps.html @@ -0,0 +1,168 @@ + + + + + + + + moveSteps property - MotorCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
moveSteps
+ +
+ +
+
+
+ +
+
+

moveSteps property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ int + moveSteps + + +
+ + +
+

Debug control: Move by individual steps

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.int get moveSteps => $_getIZ(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..f0ff1eddb2 --- /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..57cb17ab6e --- /dev/null +++ b/docs/data/MotorData-class.html @@ -0,0 +1,1064 @@ + + + + + + + + MotorData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
MotorData
+ +
+ +
+
+
+ +
+
+

MotorData class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + +
Available Extensions
+
+ + + + +
+
+ + +
+

Constructors

+ +
+
+ MotorData({bool? isMoving, bool? 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 + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ isMoving + ↔ bool + + +
+
+ +
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..6fec128df1 --- /dev/null +++ b/docs/data/MotorData/MotorData.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..97bf9b7fc0 --- /dev/null +++ b/docs/data/MotorData/MotorData.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..46be81ac14 --- /dev/null +++ b/docs/data/MotorData/MotorData.html @@ -0,0 +1,158 @@ + + + + + + + + MotorData constructor - MotorData - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
MotorData
+ +
+ +
+
+
+ +
+
+

MotorData constructor +

+ +
+ + MotorData({
  1. bool? isMoving,
  2. +
  3. bool? isLimitSwitchPressed,
  4. +
  5. MotorDirection? direction,
  6. +
  7. int? currentStep,
  8. +
  9. int? targetStep,
  10. +
  11. double? angle,
  12. +
}) +
+ + + + + +
+

Implementation

+
factory MotorData({
+  $core.bool? isMoving,
+  $core.bool? 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..c09950ae28 --- /dev/null +++ b/docs/data/MotorData/angle.html @@ -0,0 +1,165 @@ + + + + + + + + angle property - MotorData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
angle
+ +
+ +
+
+
+ +
+
+

angle property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ double + angle + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.double get angle => $_getN(5);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ void + 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..d2f7211b2d --- /dev/null +++ b/docs/data/MotorData/clearAngle.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c5300bcf2e --- /dev/null +++ b/docs/data/MotorData/clearCurrentStep.html @@ -0,0 +1,134 @@ + + + + + + + + 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..754f574143 --- /dev/null +++ b/docs/data/MotorData/clearDirection.html @@ -0,0 +1,134 @@ + + + + + + + + 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..642e748430 --- /dev/null +++ b/docs/data/MotorData/clearIsLimitSwitchPressed.html @@ -0,0 +1,134 @@ + + + + + + + + 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..b7fb357218 --- /dev/null +++ b/docs/data/MotorData/clearIsMoving.html @@ -0,0 +1,134 @@ + + + + + + + + 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..cbcb66e534 --- /dev/null +++ b/docs/data/MotorData/clearTargetStep.html @@ -0,0 +1,134 @@ + + + + + + + + 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..5f174ad3c1 --- /dev/null +++ b/docs/data/MotorData/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..93d0c8255e --- /dev/null +++ b/docs/data/MotorData/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..16f25701bc --- /dev/null +++ b/docs/data/MotorData/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..649172fa84 --- /dev/null +++ b/docs/data/MotorData/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..f12d6e25bd --- /dev/null +++ b/docs/data/MotorData/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..b5fb45bc5c --- /dev/null +++ b/docs/data/MotorData/currentStep.html @@ -0,0 +1,165 @@ + + + + + + + + currentStep property - MotorData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
currentStep
+ +
+ +
+
+
+ +
+
+

currentStep property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ int + currentStep + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.int get currentStep => $_getIZ(3);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ void + 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..73eef295e2 --- /dev/null +++ b/docs/data/MotorData/direction.html @@ -0,0 +1,165 @@ + + + + + + + + direction property - MotorData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
direction
+ +
+ +
+
+
+ +
+
+

direction property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ MotorDirection + direction + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+MotorDirection get direction => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..3e182ebba3 --- /dev/null +++ b/docs/data/MotorData/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..24c290a822 --- /dev/null +++ b/docs/data/MotorData/hasAngle.html @@ -0,0 +1,134 @@ + + + + + + + + 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..7f3b2ca725 --- /dev/null +++ b/docs/data/MotorData/hasCurrentStep.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c6dcea5b51 --- /dev/null +++ b/docs/data/MotorData/hasDirection.html @@ -0,0 +1,134 @@ + + + + + + + + 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..43f612a58d --- /dev/null +++ b/docs/data/MotorData/hasIsLimitSwitchPressed.html @@ -0,0 +1,134 @@ + + + + + + + + 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..1cc88c7629 --- /dev/null +++ b/docs/data/MotorData/hasIsMoving.html @@ -0,0 +1,134 @@ + + + + + + + + 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..ed9bea8623 --- /dev/null +++ b/docs/data/MotorData/hasTargetStep.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f3de176bc8 --- /dev/null +++ b/docs/data/MotorData/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - MotorData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..966e2bde26 --- /dev/null +++ b/docs/data/MotorData/isLimitSwitchPressed.html @@ -0,0 +1,165 @@ + + + + + + + + isLimitSwitchPressed property - MotorData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isLimitSwitchPressed
+ +
+ +
+
+
+ +
+
+

isLimitSwitchPressed property +

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

Implementation

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

Implementation

+
@$pb.TagNumber(2)
+set isLimitSwitchPressed($core.bool v) { $_setBool(1, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/MotorData/isMoving.html b/docs/data/MotorData/isMoving.html new file mode 100644 index 0000000000..c891be054b --- /dev/null +++ b/docs/data/MotorData/isMoving.html @@ -0,0 +1,165 @@ + + + + + + + + isMoving property - MotorData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isMoving
+ +
+ +
+
+
+ +
+
+

isMoving property +

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

Implementation

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

Implementation

+
@$pb.TagNumber(1)
+set isMoving($core.bool v) { $_setBool(0, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/MotorData/targetStep.html b/docs/data/MotorData/targetStep.html new file mode 100644 index 0000000000..8930d651ea --- /dev/null +++ b/docs/data/MotorData/targetStep.html @@ -0,0 +1,165 @@ + + + + + + + + targetStep property - MotorData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
targetStep
+ +
+ +
+
+
+ +
+
+

targetStep property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ int + targetStep + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.int get targetStep => $_getIZ(4);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ void + 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..9ec60de4d3 --- /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..33f700de16 --- /dev/null +++ b/docs/data/MotorDirection-class.html @@ -0,0 +1,411 @@ + + + + + + + + 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..1dcf8ae687 --- /dev/null +++ b/docs/data/MotorDirection/CLOCKWISE-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..a5d74ca413 --- /dev/null +++ b/docs/data/MotorDirection/CLOSING-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..2d927e76cc --- /dev/null +++ b/docs/data/MotorDirection/COUNTER_CLOCKWISE-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..2f861c24cb --- /dev/null +++ b/docs/data/MotorDirection/DOWN-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..78b5dcefbc --- /dev/null +++ b/docs/data/MotorDirection/LEFT-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..80f496f505 --- /dev/null +++ b/docs/data/MotorDirection/MOTOR_DIRECTION_UNDEFINED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..1668d1795c --- /dev/null +++ b/docs/data/MotorDirection/NOT_MOVING-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..b1f1bab91d --- /dev/null +++ b/docs/data/MotorDirection/OPENING-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..4a16b50eed --- /dev/null +++ b/docs/data/MotorDirection/RIGHT-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..06551692d8 --- /dev/null +++ b/docs/data/MotorDirection/UP-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..9637bef508 --- /dev/null +++ b/docs/data/MotorDirection/valueOf.html @@ -0,0 +1,129 @@ + + + + + + + + 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..0134d4fd32 --- /dev/null +++ b/docs/data/MotorDirection/values-constant.html @@ -0,0 +1,136 @@ + + + + + + + + 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..86253ed1f7 --- /dev/null +++ b/docs/data/MotorDirectionUtils.html @@ -0,0 +1,156 @@ + + + + + + + + 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..53cf0fd6cc --- /dev/null +++ b/docs/data/MotorDirectionUtils/humanName.html @@ -0,0 +1,151 @@ + + + + + + + + humanName property - MotorDirectionUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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..a1d76ad5ba --- /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..088719c7b7 --- /dev/null +++ b/docs/data/NetworkSettings-class.html @@ -0,0 +1,302 @@ + + + + + + + + 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 int 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 + → int + + +
+
+ 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..ea35a9c3a5 --- /dev/null +++ b/docs/data/NetworkSettings/NetworkSettings.fromJson.html @@ -0,0 +1,134 @@ + + + + + + + + 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..2b37334b5e --- /dev/null +++ b/docs/data/NetworkSettings/NetworkSettings.html @@ -0,0 +1,139 @@ + + + + + + + + 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 int 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..4763fb33af --- /dev/null +++ b/docs/data/NetworkSettings/autonomySocket.html @@ -0,0 +1,129 @@ + + + + + + + + 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..228d8a21aa --- /dev/null +++ b/docs/data/NetworkSettings/connectionTimeout.html @@ -0,0 +1,131 @@ + + + + + + + + connectionTimeout property - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
connectionTimeout
+ +
+ +
+
+
+ +
+
+ +

connectionTimeout property +

+ +
+ + int + 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 int connectionTimeout;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/NetworkSettings/hashCode.html b/docs/data/NetworkSettings/hashCode.html new file mode 100644 index 0000000000..ddbac7305c --- /dev/null +++ b/docs/data/NetworkSettings/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..b51f001e4a --- /dev/null +++ b/docs/data/NetworkSettings/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..a7ad11ece5 --- /dev/null +++ b/docs/data/NetworkSettings/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..1d3a0d3175 --- /dev/null +++ b/docs/data/NetworkSettings/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - NetworkSettings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..ae79473549 --- /dev/null +++ b/docs/data/NetworkSettings/subsystemsSocket.html @@ -0,0 +1,129 @@ + + + + + + + + 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..3deb1d6fd3 --- /dev/null +++ b/docs/data/NetworkSettings/tankSocket.html @@ -0,0 +1,133 @@ + + + + + + + + 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..5bdf141fa8 --- /dev/null +++ b/docs/data/NetworkSettings/toJson.html @@ -0,0 +1,138 @@ + + + + + + + + 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..6a3cd89f4c --- /dev/null +++ b/docs/data/NetworkSettings/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..3bb20cd912 --- /dev/null +++ b/docs/data/NetworkSettings/videoSocket.html @@ -0,0 +1,129 @@ + + + + + + + + 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..251e9184d0 --- /dev/null +++ b/docs/data/NumUtils.html @@ -0,0 +1,170 @@ + + + + + + + + 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..225d6af194 --- /dev/null +++ b/docs/data/NumUtils/format.html @@ -0,0 +1,132 @@ + + + + + + + + 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..9f36d2a3cd --- /dev/null +++ b/docs/data/NumUtils/toDegrees.html @@ -0,0 +1,132 @@ + + + + + + + + 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..75d8d41e49 --- /dev/null +++ b/docs/data/OperatingMode-enum-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. OperatingMode
  4. + +
  5. Values
  6. +
  7. none
  8. +
  9. drive
  10. +
  11. cameras
  12. +
  13. science
  14. +
  15. arm
  16. +
  17. mars
  18. + + +
  19. + Properties +
  20. +
  21. hashCode
  22. +
  23. index
  24. +
  25. name
  26. +
  27. runtimeType
  28. + +
  29. Methods
  30. +
  31. noSuchMethod
  32. +
  33. toString
  34. + +
  35. Operators
  36. +
  37. operator ==
  38. + + + + + + +
  39. Constants
  40. +
  41. values
  42. +
diff --git a/docs/data/OperatingMode.html b/docs/data/OperatingMode.html new file mode 100644 index 0000000000..181464a439 --- /dev/null +++ b/docs/data/OperatingMode.html @@ -0,0 +1,377 @@ + + + + + + + + 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
  • +
+
+ + + + +
+

Constructors

+ +
+
+ OperatingMode(String name) +
+
+ Describes an operating mode. +
const
+
+
+
+ +
+

Values

+ +
+
+ none + → const OperatingMode + + +
+
+

No controls. Allows the user to "disable" a gamepad.

+ + +
+ const OperatingMode("None") +
+
+ +
+ drive + → const OperatingMode + + +
+
+

Drive mode.

+

Focus on helping the user simply drive the rover.

+ + +
+ const OperatingMode("Drive") +
+
+ +
+ cameras + → const OperatingMode + + +
+
+

Camera mode.

+

The on-board cameras are on spinnable 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") +
+
+ +
+ mars + → const OperatingMode + + +
+
+

MARS mode.

+

Allows the user to control the MARS subsystem manually.

+ + +
+ const OperatingMode("MARS") +
+
+ +
+
+ + +
+

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/OperatingMode.html b/docs/data/OperatingMode/OperatingMode.html new file mode 100644 index 0000000000..22a47a6499 --- /dev/null +++ b/docs/data/OperatingMode/OperatingMode.html @@ -0,0 +1,129 @@ + + + + + + + + OperatingMode constructor - OperatingMode - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
OperatingMode
+ +
+ +
+
+
+ +
+
+ +

OperatingMode constructor +

+ +
+ const + OperatingMode(
  1. String name
  2. +
) +
+ + +
+

Describes an operating mode.

+
+ + + +
+

Implementation

+
const OperatingMode(this.name);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/OperatingMode/hashCode.html b/docs/data/OperatingMode/hashCode.html new file mode 100644 index 0000000000..a948c84aed --- /dev/null +++ b/docs/data/OperatingMode/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..40535ed991 --- /dev/null +++ b/docs/data/OperatingMode/index.html @@ -0,0 +1,140 @@ + + + + + + + + index property - OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
index
+ +
+ +
+
+
+ +
+
+

index property +

+ + + +
+ +
+ + int + 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..d3796feba2 --- /dev/null +++ b/docs/data/OperatingMode/name.html @@ -0,0 +1,130 @@ + + + + + + + + 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..7ff262ac7a --- /dev/null +++ b/docs/data/OperatingMode/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..a54b16a92c --- /dev/null +++ b/docs/data/OperatingMode/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..d63e0bf54f --- /dev/null +++ b/docs/data/OperatingMode/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - OperatingMode enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..3b7dc9245f --- /dev/null +++ b/docs/data/OperatingMode/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..d62f66f9cf --- /dev/null +++ b/docs/data/OperatingMode/values-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..81770d8301 --- /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..359ef90b47 --- /dev/null +++ b/docs/data/Orientation-class.html @@ -0,0 +1,950 @@ + + + + + + + + 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..a722950bad --- /dev/null +++ b/docs/data/Orientation/Orientation.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..6a0659a110 --- /dev/null +++ b/docs/data/Orientation/Orientation.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..855c219e0d --- /dev/null +++ b/docs/data/Orientation/Orientation.html @@ -0,0 +1,143 @@ + + + + + + + + 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..280ce18162 --- /dev/null +++ b/docs/data/Orientation/clearX.html @@ -0,0 +1,134 @@ + + + + + + + + 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..82361f7d91 --- /dev/null +++ b/docs/data/Orientation/clearY.html @@ -0,0 +1,134 @@ + + + + + + + + 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..b41a2e02d9 --- /dev/null +++ b/docs/data/Orientation/clearZ.html @@ -0,0 +1,134 @@ + + + + + + + + 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..9a5deceec0 --- /dev/null +++ b/docs/data/Orientation/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..a32f85f8d9 --- /dev/null +++ b/docs/data/Orientation/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..01dbebc205 --- /dev/null +++ b/docs/data/Orientation/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..cd71e507a4 --- /dev/null +++ b/docs/data/Orientation/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..9fcc5ecfb4 --- /dev/null +++ b/docs/data/Orientation/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..172358fe47 --- /dev/null +++ b/docs/data/Orientation/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..0617977ac4 --- /dev/null +++ b/docs/data/Orientation/hasX.html @@ -0,0 +1,134 @@ + + + + + + + + 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..327a1227ca --- /dev/null +++ b/docs/data/Orientation/hasY.html @@ -0,0 +1,134 @@ + + + + + + + + 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..3c21d650f1 --- /dev/null +++ b/docs/data/Orientation/hasZ.html @@ -0,0 +1,134 @@ + + + + + + + + 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..bd713f70ca --- /dev/null +++ b/docs/data/Orientation/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - Orientation class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..1e4ef91949 --- /dev/null +++ b/docs/data/Orientation/x.html @@ -0,0 +1,165 @@ + + + + + + + + x property - Orientation class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
x
+ +
+ +
+
+
+ +
+
+

x property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + x + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get x => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..826ef74d71 --- /dev/null +++ b/docs/data/Orientation/y.html @@ -0,0 +1,165 @@ + + + + + + + + y property - Orientation class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
y
+ +
+ +
+
+
+ +
+
+

y property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + y + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get y => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..a6a5b6bdd8 --- /dev/null +++ b/docs/data/Orientation/z.html @@ -0,0 +1,165 @@ + + + + + + + + z property - Orientation class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
z
+ +
+ +
+
+
+ +
+
+

z property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + z + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get z => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..1aa044f18a --- /dev/null +++ b/docs/data/PositionMetrics-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  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. name
  20. +
  21. overallSeverity
  22. +
  23. runtimeType
  24. + +
  25. Methods
  26. +
  27. addListener
  28. +
  29. dispose
  30. +
  31. getRotationSeverity
  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/data/PositionMetrics-class.html b/docs/data/PositionMetrics-class.html new file mode 100644 index 0000000000..b45ca2be1b --- /dev/null +++ b/docs/data/PositionMetrics-class.html @@ -0,0 +1,409 @@ + + + + + + + + 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
+ +
+ +
+ 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
+ +
+ +
+
+ +
+

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
+ +
+ +
+ 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
+ +
+ +
+ 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. +
override
+ +
+ +
+
+ +
+

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..07ea322420 --- /dev/null +++ b/docs/data/PositionMetrics/PositionMetrics.html @@ -0,0 +1,128 @@ + + + + + + + + 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..1ebfc9ac6c --- /dev/null +++ b/docs/data/PositionMetrics/allMetrics.html @@ -0,0 +1,154 @@ + + + + + + + + allMetrics property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
allMetrics
+ +
+ +
+
+
+ +
+
+ +

allMetrics property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<MetricLine> + 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..e862452fe6 --- /dev/null +++ b/docs/data/PositionMetrics/angle.html @@ -0,0 +1,136 @@ + + + + + + + + angle property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
angle
+ +
+ +
+
+
+ +
+
+ +

angle property +

+ + + +
+ +
+ + double + 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..d438ea6f22 --- /dev/null +++ b/docs/data/PositionMetrics/baseStation.html @@ -0,0 +1,161 @@ + + + + + + + + baseStation property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
baseStation
+ +
+ +
+
+
+ +
+
+ +

baseStation property +

+ + + +
+ +
+ + GpsCoordinates + baseStation + + +
+ + +
+

The position of the base station. Setting this value updates the UI.

+

Defaults to RoverPosition.gps until the MARS subsystem comes online (see MarsData.coordinates).

+
+ + +
+

Implementation

+
GpsCoordinates get baseStation => _baseStation ?? data.gps;
+
+ +
+ + + +
+ +
+ + void + 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..9a7b577a2a --- /dev/null +++ b/docs/data/PositionMetrics/getRotationSeverity.html @@ -0,0 +1,144 @@ + + + + + + + + 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..cf512533a8 --- /dev/null +++ b/docs/data/PositionMetrics/name.html @@ -0,0 +1,142 @@ + + + + + + + + name property - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
name
+ +
+ +
+
+
+ +
+
+ +

name property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ String + 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/update.html b/docs/data/PositionMetrics/update.html new file mode 100644 index 0000000000..0817ea5e37 --- /dev/null +++ b/docs/data/PositionMetrics/update.html @@ -0,0 +1,154 @@ + + + + + + + + update method - PositionMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
update
+ +
+ +
+
+
+ +
+
+ +

update method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ +void +update(
  1. RoverPosition value
  2. +
) + +
override
+ +
+ +
+

Updates data with new data.

+
+ + + +
+

Implementation

+
@override
+void update(RoverPosition value) {
+	final oldOrientation = data.orientation.deepCopy();
+	super.update(value);
+	if(data.orientation.x > 360 || data.orientation.x < -360){
+		data.orientation.x = oldOrientation.x;
+		notifyListeners();
+	}
+	if(data.orientation.y > 360 || data.orientation.y < -360){
+		data.orientation.y = oldOrientation.y;
+		notifyListeners();
+	}
+	if(data.orientation.z > 360 || data.orientation.z < -360){
+		data.orientation.z = oldOrientation.z;
+		notifyListeners();
+	}
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor-class-sidebar.html b/docs/data/ProtoColor-class-sidebar.html new file mode 100644 index 0000000000..709c099bc4 --- /dev/null +++ b/docs/data/ProtoColor-class-sidebar.html @@ -0,0 +1,82 @@ +
    + +
  1. Constructors
  2. +
  3. ProtoColor
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. blue
  12. +
  13. eventPlugin
  14. +
  15. green
  16. +
  17. hashCode
  18. +
  19. info_
  20. +
  21. isFrozen
  22. +
  23. red
  24. +
  25. runtimeType
  26. +
  27. unknownFields
  28. + +
  29. Methods
  30. +
  31. addExtension
  32. +
  33. check
  34. +
  35. clear
  36. +
  37. clearBlue
  38. +
  39. clearExtension
  40. +
  41. clearField
  42. +
  43. clearGreen
  44. +
  45. clearRed
  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. hasBlue
  72. +
  73. hasExtension
  74. +
  75. hasField
  76. +
  77. hasGreen
  78. +
  79. hasRed
  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/ProtoColor-class.html b/docs/data/ProtoColor-class.html new file mode 100644 index 0000000000..683d08fb25 --- /dev/null +++ b/docs/data/ProtoColor-class.html @@ -0,0 +1,951 @@ + + + + + + + + ProtoColor class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ProtoColor
+ +
+ +
+
+
+ +
+
+

ProtoColor class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + +
Available Extensions
+
+ + + + +
+
+ + +
+

Constructors

+ +
+
+ ProtoColor({double? red, double? green, double? blue}) +
+
+ +
factory
+
+
+ ProtoColor.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ ProtoColor.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ blue + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ eventPlugin + EventPlugin? + + +
+
+ Subclasses can override this getter to be notified of changes +to protobuf fields. +
no setterinherited
+ +
+ +
+ green + ↔ 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
+ +
+ +
+ red + ↔ 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
+ +
+ +
+ clearBlue() + → 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
+ +
+ +
+ clearGreen() + → void + + + +
+
+ + + +
+ +
+ clearRed() + → void + + + +
+
+ + + +
+ +
+ clone() + ProtoColor + + + +
+
+ Creates a deep copy of the fields in this message. +(The generated code uses mergeFromMessage.) +
override
+ +
+ +
+ copyWith(void updates(ProtoColor)) + ProtoColor + + + +
+
+ Apply updates to a copy of this message. +
override
+ +
+ +
+ createEmptyInstance() + ProtoColor + + + +
+
+ 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
+ +
+ +
+ hasBlue() + → 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
+ +
+ +
+ hasGreen() + → bool + + + +
+
+ + + +
+ +
+ hasRed() + → 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() + ProtoColor + + + +
+
+ + + +
+ +
+ createRepeated() + PbList<ProtoColor> + + + +
+
+ + + +
+ +
+ getDefault() + ProtoColor + + + +
+
+ + + +
+ +
+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor/ProtoColor.fromBuffer.html b/docs/data/ProtoColor/ProtoColor.fromBuffer.html new file mode 100644 index 0000000000..24a3a05a49 --- /dev/null +++ b/docs/data/ProtoColor/ProtoColor.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + ProtoColor.fromBuffer constructor - ProtoColor - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ProtoColor.fromBuffer
+ +
+ +
+
+
+ +
+
+

ProtoColor.fromBuffer constructor +

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

Implementation

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

ProtoColor.fromJson constructor +

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

Implementation

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

ProtoColor constructor +

+ +
+ + ProtoColor({
  1. double? red,
  2. +
  3. double? green,
  4. +
  5. double? blue,
  6. +
}) +
+ + + + + +
+

Implementation

+
factory ProtoColor({
+  $core.double? red,
+  $core.double? green,
+  $core.double? blue,
+}) {
+  final $result = create();
+  if (red != null) {
+    $result.red = red;
+  }
+  if (green != null) {
+    $result.green = green;
+  }
+  if (blue != null) {
+    $result.blue = blue;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor/blue.html b/docs/data/ProtoColor/blue.html new file mode 100644 index 0000000000..809900073e --- /dev/null +++ b/docs/data/ProtoColor/blue.html @@ -0,0 +1,165 @@ + + + + + + + + blue property - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
blue
+ +
+ +
+
+
+ +
+
+

blue property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + blue + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get blue => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + blue=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+set blue($core.double v) { $_setFloat(2, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor/clearBlue.html b/docs/data/ProtoColor/clearBlue.html new file mode 100644 index 0000000000..000770188e --- /dev/null +++ b/docs/data/ProtoColor/clearBlue.html @@ -0,0 +1,134 @@ + + + + + + + + clearBlue method - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearBlue
+ +
+ +
+
+
+ +
+
+

clearBlue method +

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

Implementation

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

clearGreen method +

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

Implementation

+
@$pb.TagNumber(2)
+void clearGreen() => clearField(2);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor/clearRed.html b/docs/data/ProtoColor/clearRed.html new file mode 100644 index 0000000000..550e7e1452 --- /dev/null +++ b/docs/data/ProtoColor/clearRed.html @@ -0,0 +1,134 @@ + + + + + + + + clearRed method - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearRed
+ +
+ +
+
+
+ +
+
+

clearRed method +

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

Implementation

+
@$pb.TagNumber(1)
+void clearRed() => clearField(1);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor/clone.html b/docs/data/ProtoColor/clone.html new file mode 100644 index 0000000000..8e6e2d9ba0 --- /dev/null +++ b/docs/data/ProtoColor/clone.html @@ -0,0 +1,141 @@ + + + + + + + + clone method - ProtoColor 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. +
+
+ +ProtoColor +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')
+ProtoColor clone() => ProtoColor()..mergeFromMessage(this);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor/copyWith.html b/docs/data/ProtoColor/copyWith.html new file mode 100644 index 0000000000..0235e71d30 --- /dev/null +++ b/docs/data/ProtoColor/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + copyWith method - ProtoColor 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. +
+
+ +ProtoColor +copyWith(
  1. void updates(
    1. ProtoColor
    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')
+ProtoColor copyWith(void Function(ProtoColor) updates) => super.copyWith((message) => updates(message as ProtoColor)) as ProtoColor;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor/create.html b/docs/data/ProtoColor/create.html new file mode 100644 index 0000000000..35f1280f17 --- /dev/null +++ b/docs/data/ProtoColor/create.html @@ -0,0 +1,129 @@ + + + + + + + + create method - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
create
+ +
+ +
+
+
+ +
+
+

create static method +

+ +
+ + +ProtoColor +create() + + + +
+ + + + +
+

Implementation

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

createEmptyInstance method +

+ +
+ + +ProtoColor +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

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

createRepeated static method +

+ +
+ + +PbList<ProtoColor> +createRepeated() + + + +
+ + + + +
+

Implementation

+
static $pb.PbList<ProtoColor> createRepeated() => $pb.PbList<ProtoColor>();
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor/getDefault.html b/docs/data/ProtoColor/getDefault.html new file mode 100644 index 0000000000..aa381376d9 --- /dev/null +++ b/docs/data/ProtoColor/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + getDefault method - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
getDefault
+ +
+ +
+
+
+ +
+
+

getDefault static method +

+ +
+ + +ProtoColor +getDefault() + + + +
+ + + + +
+

Implementation

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

green property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + green + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get green => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + green=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+set green($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor/hasBlue.html b/docs/data/ProtoColor/hasBlue.html new file mode 100644 index 0000000000..750e7bf60c --- /dev/null +++ b/docs/data/ProtoColor/hasBlue.html @@ -0,0 +1,134 @@ + + + + + + + + hasBlue method - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasBlue
+ +
+ +
+
+
+ +
+
+

hasBlue method +

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

Implementation

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

hasGreen method +

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

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasGreen() => $_has(1);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor/hasRed.html b/docs/data/ProtoColor/hasRed.html new file mode 100644 index 0000000000..701a59c8ce --- /dev/null +++ b/docs/data/ProtoColor/hasRed.html @@ -0,0 +1,134 @@ + + + + + + + + hasRed method - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasRed
+ +
+ +
+
+
+ +
+
+

hasRed method +

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

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasRed() => $_has(0);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ProtoColor/info_.html b/docs/data/ProtoColor/info_.html new file mode 100644 index 0000000000..947f1d0abe --- /dev/null +++ b/docs/data/ProtoColor/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - ProtoColor class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

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

Implementation

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

red property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + red + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get red => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + red=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+set red($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/PumpState-class-sidebar.html b/docs/data/PumpState-class-sidebar.html new file mode 100644 index 0000000000..8567399d18 --- /dev/null +++ b/docs/data/PumpState-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. PUMP_OFF
  28. +
  29. PUMP_ON
  30. +
  31. PUMP_STATE_UNDEFINED
  32. +
  33. values
  34. +
diff --git a/docs/data/PumpState-class.html b/docs/data/PumpState-class.html new file mode 100644 index 0000000000..47c24e4437 --- /dev/null +++ b/docs/data/PumpState-class.html @@ -0,0 +1,323 @@ + + + + + + + + PumpState class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
PumpState
+ +
+ +
+
+
+ +
+
+

PumpState 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) + PumpState? + + + +
+
+ + + +
+ +
+
+ + +
+

Constants

+ +
+
+ PUMP_OFF + → const PumpState + + +
+
+ + + +
+ +
+ PUMP_ON + → const PumpState + + +
+
+ + + +
+ +
+ PUMP_STATE_UNDEFINED + → const PumpState + + +
+
+ + + +
+ +
+ values + → const List<PumpState> + + +
+
+ + + +
+ +
+
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/PumpState/PUMP_OFF-constant.html b/docs/data/PumpState/PUMP_OFF-constant.html new file mode 100644 index 0000000000..42c8d8bd90 --- /dev/null +++ b/docs/data/PumpState/PUMP_OFF-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..24900337f3 --- /dev/null +++ b/docs/data/PumpState/PUMP_ON-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..d7c1bfd343 --- /dev/null +++ b/docs/data/PumpState/PUMP_STATE_UNDEFINED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..6a5369dce0 --- /dev/null +++ b/docs/data/PumpState/valueOf.html @@ -0,0 +1,129 @@ + + + + + + + + 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..8affeba8a3 --- /dev/null +++ b/docs/data/PumpState/values-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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,
+];
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/RawDataHandler.html b/docs/data/RawDataHandler.html new file mode 100644 index 0000000000..9256a4e50a --- /dev/null +++ b/docs/data/RawDataHandler.html @@ -0,0 +1,127 @@ + + + + + + + + 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..663def154b --- /dev/null +++ b/docs/data/RoverPosition-class-sidebar.html @@ -0,0 +1,81 @@ +
    + +
  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. Methods
  28. +
  29. addExtension
  30. +
  31. check
  32. +
  33. clear
  34. +
  35. clearExtension
  36. +
  37. clearField
  38. +
  39. clearGps
  40. +
  41. clearOrientation
  42. +
  43. clone
  44. +
  45. copyWith
  46. +
  47. createEmptyInstance
  48. +
  49. createMapField
  50. +
  51. createRepeatedField
  52. +
  53. ensureGps
  54. +
  55. ensureOrientation
  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. hasGps
  76. +
  77. hasOrientation
  78. +
  79. hasRequiredFields
  80. +
  81. isInitialized
  82. +
  83. mergeFromBuffer
  84. +
  85. mergeFromCodedBufferReader
  86. +
  87. mergeFromJson
  88. +
  89. mergeFromJsonMap
  90. +
  91. mergeFromMessage
  92. +
  93. mergeFromProto3Json
  94. +
  95. mergeUnknownFields
  96. +
  97. noSuchMethod
  98. +
  99. setExtension
  100. +
  101. setField
  102. +
  103. toBuilder
  104. +
  105. toDebugString
  106. +
  107. toProto3Json
  108. +
  109. toString
  110. +
  111. writeToBuffer
  112. +
  113. writeToCodedBufferWriter
  114. +
  115. writeToJson
  116. +
  117. writeToJsonMap
  118. + +
  119. Operators
  120. +
  121. operator ==
  122. + + + + + +
  123. Static methods
  124. +
  125. create
  126. +
  127. createRepeated
  128. +
  129. getDefault
  130. + +
diff --git a/docs/data/RoverPosition-class.html b/docs/data/RoverPosition-class.html new file mode 100644 index 0000000000..992fae30de --- /dev/null +++ b/docs/data/RoverPosition-class.html @@ -0,0 +1,938 @@ + + + + + + + + RoverPosition class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
RoverPosition
+ +
+ +
+
+
+ +
+
+

RoverPosition class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + +
Available Extensions
+
+ + + + +
+
+ + +
+

Constructors

+ +
+
+ RoverPosition({GpsCoordinates? gps, Orientation? orientation}) +
+
+ +
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
+ +
+ +
+
+ +
+

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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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
+ +
+ +
+ 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..217797b1c7 --- /dev/null +++ b/docs/data/RoverPosition/RoverPosition.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..30df2284eb --- /dev/null +++ b/docs/data/RoverPosition/RoverPosition.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..9fc19f0243 --- /dev/null +++ b/docs/data/RoverPosition/RoverPosition.html @@ -0,0 +1,138 @@ + + + + + + + + RoverPosition constructor - RoverPosition - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
RoverPosition
+ +
+ +
+
+
+ +
+
+

RoverPosition constructor +

+ +
+ + RoverPosition({
  1. GpsCoordinates? gps,
  2. +
  3. Orientation? orientation,
  4. +
}) +
+ + + + + +
+

Implementation

+
factory RoverPosition({
+  GpsCoordinates? gps,
+  Orientation? orientation,
+}) {
+  final $result = create();
+  if (gps != null) {
+    $result.gps = gps;
+  }
+  if (orientation != null) {
+    $result.orientation = orientation;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/RoverPosition/clearGps.html b/docs/data/RoverPosition/clearGps.html new file mode 100644 index 0000000000..29eaa29279 --- /dev/null +++ b/docs/data/RoverPosition/clearGps.html @@ -0,0 +1,134 @@ + + + + + + + + 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..ac7b7f6018 --- /dev/null +++ b/docs/data/RoverPosition/clearOrientation.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/RoverPosition/clone.html new file mode 100644 index 0000000000..75afa547d4 --- /dev/null +++ b/docs/data/RoverPosition/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..de1ad9d103 --- /dev/null +++ b/docs/data/RoverPosition/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..17c60bcfed --- /dev/null +++ b/docs/data/RoverPosition/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..1ab86af8ab --- /dev/null +++ b/docs/data/RoverPosition/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..5813f2a9fa --- /dev/null +++ b/docs/data/RoverPosition/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..036dd32ada --- /dev/null +++ b/docs/data/RoverPosition/ensureGps.html @@ -0,0 +1,134 @@ + + + + + + + + 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..aba2e221cb --- /dev/null +++ b/docs/data/RoverPosition/ensureOrientation.html @@ -0,0 +1,134 @@ + + + + + + + + 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/getDefault.html b/docs/data/RoverPosition/getDefault.html new file mode 100644 index 0000000000..be2637a7ca --- /dev/null +++ b/docs/data/RoverPosition/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..04483ace89 --- /dev/null +++ b/docs/data/RoverPosition/gps.html @@ -0,0 +1,165 @@ + + + + + + + + gps property - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
gps
+ +
+ +
+
+
+ +
+
+

gps property +

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

Implementation

+
@$pb.TagNumber(1)
+GpsCoordinates get gps => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..53f7d09320 --- /dev/null +++ b/docs/data/RoverPosition/hasGps.html @@ -0,0 +1,134 @@ + + + + + + + + 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..ff382adbfa --- /dev/null +++ b/docs/data/RoverPosition/hasOrientation.html @@ -0,0 +1,134 @@ + + + + + + + + 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/info_.html b/docs/data/RoverPosition/info_.html new file mode 100644 index 0000000000..8665ab27af --- /dev/null +++ b/docs/data/RoverPosition/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..b567e553d2 --- /dev/null +++ b/docs/data/RoverPosition/orientation.html @@ -0,0 +1,165 @@ + + + + + + + + orientation property - RoverPosition class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
orientation
+ +
+ +
+
+
+ +
+
+

orientation property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ Orientation + orientation + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+Orientation get orientation => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + orientation=(Orientation v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+set orientation(Orientation v) { setField(2, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/RoverStatus-class-sidebar.html b/docs/data/RoverStatus-class-sidebar.html new file mode 100644 index 0000000000..6f439e4988 --- /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..f66c3ef9f6 --- /dev/null +++ b/docs/data/RoverStatus-class.html @@ -0,0 +1,370 @@ + + + + + + + + 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..251f1d1e7a --- /dev/null +++ b/docs/data/RoverStatus/AUTONOMOUS-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..a17abfe9fb --- /dev/null +++ b/docs/data/RoverStatus/DISCONNECTED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..5a1faa3003 --- /dev/null +++ b/docs/data/RoverStatus/IDLE-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..68b7d48bc0 --- /dev/null +++ b/docs/data/RoverStatus/MANUAL-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..61070cb2fc --- /dev/null +++ b/docs/data/RoverStatus/POWER_OFF-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..d7ca318ce7 --- /dev/null +++ b/docs/data/RoverStatus/RESTART-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..c9344db70e --- /dev/null +++ b/docs/data/RoverStatus/valueOf.html @@ -0,0 +1,129 @@ + + + + + + + + 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..8e563b7962 --- /dev/null +++ b/docs/data/RoverStatus/values-constant.html @@ -0,0 +1,132 @@ + + + + + + + + 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..0888f8747c --- /dev/null +++ b/docs/data/RoverStatusHumanName.html @@ -0,0 +1,156 @@ + + + + + + + + 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..3055763bea --- /dev/null +++ b/docs/data/RoverStatusHumanName/humanName.html @@ -0,0 +1,147 @@ + + + + + + + + humanName property - RoverStatusHumanName extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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..6bc0147d83 --- /dev/null +++ b/docs/data/RoverType-enum-sidebar.html @@ -0,0 +1,34 @@ +
    + +
  1. Constructors
  2. +
  3. RoverType
  4. + +
  5. Values
  6. +
  7. rover
  8. +
  9. localhost
  10. +
  11. tank
  12. + + +
  13. + Properties +
  14. +
  15. hashCode
  16. +
  17. humanName
  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/data/RoverType.html b/docs/data/RoverType.html new file mode 100644 index 0000000000..9db12ca197 --- /dev/null +++ b/docs/data/RoverType.html @@ -0,0 +1,316 @@ + + + + + + + + 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.

+
+ + + + +
+

Constructors

+ +
+
+ RoverType() +
+
+ +
const
+
+
+
+ +
+

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/RoverType.html b/docs/data/RoverType/RoverType.html new file mode 100644 index 0000000000..0c67356da2 --- /dev/null +++ b/docs/data/RoverType/RoverType.html @@ -0,0 +1,121 @@ + + + + + + + + RoverType constructor - RoverType - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
RoverType
+ +
+ +
+
+
+ +
+
+ +

RoverType constructor +

+ +
+ const + RoverType() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/RoverType/hashCode.html b/docs/data/RoverType/hashCode.html new file mode 100644 index 0000000000..d50b9949b7 --- /dev/null +++ b/docs/data/RoverType/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - RoverType enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..4252786a59 --- /dev/null +++ b/docs/data/RoverType/humanName.html @@ -0,0 +1,142 @@ + + + + + + + + humanName property - RoverType enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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..df35d4c010 --- /dev/null +++ b/docs/data/RoverType/index.html @@ -0,0 +1,140 @@ + + + + + + + + index property - RoverType enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
index
+ +
+ +
+
+
+ +
+
+

index property +

+ + + +
+ +
+ + int + 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..b19aaef6af --- /dev/null +++ b/docs/data/RoverType/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..9929ffb177 --- /dev/null +++ b/docs/data/RoverType/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..805c4e489a --- /dev/null +++ b/docs/data/RoverType/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - RoverType enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..8020bc75c8 --- /dev/null +++ b/docs/data/RoverType/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..d5d9830da0 --- /dev/null +++ b/docs/data/RoverType/values-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..ea322018d8 --- /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..c199b5d704 --- /dev/null +++ b/docs/data/SampleData-class.html @@ -0,0 +1,319 @@ + + + + + + + + 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..0999546709 --- /dev/null +++ b/docs/data/SampleData/SampleData.html @@ -0,0 +1,121 @@ + + + + + + + + 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..453bf42a52 --- /dev/null +++ b/docs/data/SampleData/addReading.html @@ -0,0 +1,142 @@ + + + + + + + + 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..2bd3db4d84 --- /dev/null +++ b/docs/data/SampleData/average.html @@ -0,0 +1,130 @@ + + + + + + + + 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..a41884feff --- /dev/null +++ b/docs/data/SampleData/clear.html @@ -0,0 +1,137 @@ + + + + + + + + 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..21f95bf706 --- /dev/null +++ b/docs/data/SampleData/firstTimestamp.html @@ -0,0 +1,130 @@ + + + + + + + + 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..6eea4fe816 --- /dev/null +++ b/docs/data/SampleData/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - SampleData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..7ed0abd7be --- /dev/null +++ b/docs/data/SampleData/max.html @@ -0,0 +1,129 @@ + + + + + + + + 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..6ad7324fff --- /dev/null +++ b/docs/data/SampleData/min.html @@ -0,0 +1,129 @@ + + + + + + + + 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..9f408f632c --- /dev/null +++ b/docs/data/SampleData/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..5025f537a7 --- /dev/null +++ b/docs/data/SampleData/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..74a4b389e7 --- /dev/null +++ b/docs/data/SampleData/readings.html @@ -0,0 +1,129 @@ + + + + + + + + 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..31a124a3da --- /dev/null +++ b/docs/data/SampleData/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - SampleData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..a3466f27e9 --- /dev/null +++ b/docs/data/SampleData/sum.html @@ -0,0 +1,129 @@ + + + + + + + + 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..cadf871e1f --- /dev/null +++ b/docs/data/SampleData/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..b0ac7c41ef --- /dev/null +++ b/docs/data/ScienceCommand-class-sidebar.html @@ -0,0 +1,121 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceCommand
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. calibrate
  12. +
  13. dirtCarousel
  14. +
  15. dirtLinear
  16. +
  17. dirtRelease
  18. +
  19. eventPlugin
  20. +
  21. hashCode
  22. +
  23. info_
  24. +
  25. isFrozen
  26. +
  27. nextSection
  28. +
  29. nextTube
  30. +
  31. pump1
  32. +
  33. pump2
  34. +
  35. pump3
  36. +
  37. pump4
  38. +
  39. runtimeType
  40. +
  41. sample
  42. +
  43. scienceLinear
  44. +
  45. state
  46. +
  47. stop
  48. +
  49. unknownFields
  50. +
  51. vacuum
  52. +
  53. vacuumLinear
  54. + +
  55. Methods
  56. +
  57. addExtension
  58. +
  59. check
  60. +
  61. clear
  62. +
  63. clearCalibrate
  64. +
  65. clearDirtCarousel
  66. +
  67. clearDirtLinear
  68. +
  69. clearDirtRelease
  70. +
  71. clearExtension
  72. +
  73. clearField
  74. +
  75. clearNextSection
  76. +
  77. clearNextTube
  78. +
  79. clearPump1
  80. +
  81. clearPump2
  82. +
  83. clearPump3
  84. +
  85. clearPump4
  86. +
  87. clearSample
  88. +
  89. clearScienceLinear
  90. +
  91. clearState
  92. +
  93. clearStop
  94. +
  95. clearVacuum
  96. +
  97. clearVacuumLinear
  98. +
  99. clone
  100. +
  101. copyWith
  102. +
  103. createEmptyInstance
  104. +
  105. createMapField
  106. +
  107. createRepeatedField
  108. +
  109. extensionsAreInitialized
  110. +
  111. freeze
  112. +
  113. getDefaultForField
  114. +
  115. getExtension
  116. +
  117. getField
  118. +
  119. getFieldOrNull
  120. +
  121. getTagNumber
  122. +
  123. hasCalibrate
  124. +
  125. hasDirtCarousel
  126. +
  127. hasDirtLinear
  128. +
  129. hasDirtRelease
  130. +
  131. hasExtension
  132. +
  133. hasField
  134. +
  135. hasNextSection
  136. +
  137. hasNextTube
  138. +
  139. hasPump1
  140. +
  141. hasPump2
  142. +
  143. hasPump3
  144. +
  145. hasPump4
  146. +
  147. hasRequiredFields
  148. +
  149. hasSample
  150. +
  151. hasScienceLinear
  152. +
  153. hasState
  154. +
  155. hasStop
  156. +
  157. hasVacuum
  158. +
  159. hasVacuumLinear
  160. +
  161. isInitialized
  162. +
  163. mergeFromBuffer
  164. +
  165. mergeFromCodedBufferReader
  166. +
  167. mergeFromJson
  168. +
  169. mergeFromJsonMap
  170. +
  171. mergeFromMessage
  172. +
  173. mergeFromProto3Json
  174. +
  175. mergeUnknownFields
  176. +
  177. noSuchMethod
  178. +
  179. setExtension
  180. +
  181. setField
  182. +
  183. toBuilder
  184. +
  185. toDebugString
  186. +
  187. toProto3Json
  188. +
  189. toString
  190. +
  191. writeToBuffer
  192. +
  193. writeToCodedBufferWriter
  194. +
  195. writeToJson
  196. +
  197. writeToJsonMap
  198. + +
  199. Operators
  200. +
  201. operator ==
  202. + + + + + +
  203. Static methods
  204. +
  205. create
  206. +
  207. createRepeated
  208. +
  209. getDefault
  210. + +
diff --git a/docs/data/ScienceCommand-class.html b/docs/data/ScienceCommand-class.html new file mode 100644 index 0000000000..d0d3806463 --- /dev/null +++ b/docs/data/ScienceCommand-class.html @@ -0,0 +1,1444 @@ + + + + + + + + ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ScienceCommand
+ +
+ +
+
+
+ +
+
+

ScienceCommand class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + +
Available Extensions
+
+ + + + +
+
+ + +
+

Constructors

+ +
+
+ ScienceCommand({double? dirtCarousel, double? dirtLinear, double? scienceLinear, double? vacuumLinear, PumpState? vacuum, DirtReleaseState? dirtRelease, PumpState? pump1, PumpState? pump2, PumpState? pump3, PumpState? pump4, bool? calibrate, bool? stop, bool? nextTube, bool? nextSection, int? sample, ScienceState? state}) +
+
+ +
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
+ +
+ +
+ dirtCarousel + ↔ double + + +
+
+ Individual control over each motor. Indicates steps to move +
getter/setter pair
+ +
+ +
+ dirtLinear + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ dirtRelease + DirtReleaseState + + +
+
+ +
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
+ +
+ +
+ nextSection + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ nextTube + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ pump1 + PumpState + + +
+
+ Pumps +
getter/setter pair
+ +
+ +
+ pump2 + PumpState + + +
+
+ +
getter/setter pair
+ +
+ +
+ pump3 + PumpState + + +
+
+ +
getter/setter pair
+ +
+ +
+ pump4 + PumpState + + +
+
+ +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ sample + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ scienceLinear + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ state + ScienceState + + +
+
+ +
getter/setter pair
+ +
+ +
+ stop + ↔ bool + + +
+
+ +
getter/setter pair
+ +
+ +
+ unknownFields + UnknownFieldSet + + +
+
+ +
no setterinherited
+ +
+ +
+ vacuum + PumpState + + +
+
+ Vacuum +
getter/setter pair
+ +
+ +
+ vacuumLinear + ↔ 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
+ +
+ +
+ clearCalibrate() + → void + + + +
+
+ + + +
+ +
+ clearDirtCarousel() + → void + + + +
+
+ + + +
+ +
+ clearDirtLinear() + → void + + + +
+
+ + + +
+ +
+ clearDirtRelease() + → 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
+ +
+ +
+ clearNextSection() + → void + + + +
+
+ + + +
+ +
+ clearNextTube() + → void + + + +
+
+ + + +
+ +
+ clearPump1() + → void + + + +
+
+ + + +
+ +
+ clearPump2() + → void + + + +
+
+ + + +
+ +
+ clearPump3() + → void + + + +
+
+ + + +
+ +
+ clearPump4() + → void + + + +
+
+ + + +
+ +
+ clearSample() + → void + + + +
+
+ + + +
+ +
+ clearScienceLinear() + → void + + + +
+
+ + + +
+ +
+ clearState() + → void + + + +
+
+ + + +
+ +
+ clearStop() + → void + + + +
+
+ + + +
+ +
+ clearVacuum() + → void + + + +
+
+ + + +
+ +
+ clearVacuumLinear() + → 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
+ +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ hasDirtCarousel() + → bool + + + +
+
+ + + +
+ +
+ hasDirtLinear() + → bool + + + +
+
+ + + +
+ +
+ hasDirtRelease() + → 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
+ +
+ +
+ hasNextSection() + → bool + + + +
+
+ + + +
+ +
+ hasNextTube() + → bool + + + +
+
+ + + +
+ +
+ hasPump1() + → bool + + + +
+
+ + + +
+ +
+ hasPump2() + → bool + + + +
+
+ + + +
+ +
+ hasPump3() + → bool + + + +
+
+ + + +
+ +
+ hasPump4() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasSample() + → bool + + + +
+
+ + + +
+ +
+ hasScienceLinear() + → bool + + + +
+
+ + + +
+ +
+ hasState() + → bool + + + +
+
+ + + +
+ +
+ hasStop() + → bool + + + +
+
+ + + +
+ +
+ hasVacuum() + → bool + + + +
+
+ + + +
+ +
+ hasVacuumLinear() + → 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..e4e55ff275 --- /dev/null +++ b/docs/data/ScienceCommand/ScienceCommand.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..0f958d4cff --- /dev/null +++ b/docs/data/ScienceCommand/ScienceCommand.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..2e75f78fe3 --- /dev/null +++ b/docs/data/ScienceCommand/ScienceCommand.html @@ -0,0 +1,208 @@ + + + + + + + + ScienceCommand constructor - ScienceCommand - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ScienceCommand
+ +
+ +
+
+
+ +
+
+

ScienceCommand constructor +

+ +
+ + ScienceCommand({
  1. double? dirtCarousel,
  2. +
  3. double? dirtLinear,
  4. +
  5. double? scienceLinear,
  6. +
  7. double? vacuumLinear,
  8. +
  9. PumpState? vacuum,
  10. +
  11. DirtReleaseState? dirtRelease,
  12. +
  13. PumpState? pump1,
  14. +
  15. PumpState? pump2,
  16. +
  17. PumpState? pump3,
  18. +
  19. PumpState? pump4,
  20. +
  21. bool? calibrate,
  22. +
  23. bool? stop,
  24. +
  25. bool? nextTube,
  26. +
  27. bool? nextSection,
  28. +
  29. int? sample,
  30. +
  31. ScienceState? state,
  32. +
}) +
+ + + + + +
+

Implementation

+
factory ScienceCommand({
+  $core.double? dirtCarousel,
+  $core.double? dirtLinear,
+  $core.double? scienceLinear,
+  $core.double? vacuumLinear,
+  PumpState? vacuum,
+  DirtReleaseState? dirtRelease,
+  PumpState? pump1,
+  PumpState? pump2,
+  PumpState? pump3,
+  PumpState? pump4,
+  $core.bool? calibrate,
+  $core.bool? stop,
+  $core.bool? nextTube,
+  $core.bool? nextSection,
+  $core.int? sample,
+  ScienceState? state,
+}) {
+  final $result = create();
+  if (dirtCarousel != null) {
+    $result.dirtCarousel = dirtCarousel;
+  }
+  if (dirtLinear != null) {
+    $result.dirtLinear = dirtLinear;
+  }
+  if (scienceLinear != null) {
+    $result.scienceLinear = scienceLinear;
+  }
+  if (vacuumLinear != null) {
+    $result.vacuumLinear = vacuumLinear;
+  }
+  if (vacuum != null) {
+    $result.vacuum = vacuum;
+  }
+  if (dirtRelease != null) {
+    $result.dirtRelease = dirtRelease;
+  }
+  if (pump1 != null) {
+    $result.pump1 = pump1;
+  }
+  if (pump2 != null) {
+    $result.pump2 = pump2;
+  }
+  if (pump3 != null) {
+    $result.pump3 = pump3;
+  }
+  if (pump4 != null) {
+    $result.pump4 = pump4;
+  }
+  if (calibrate != null) {
+    $result.calibrate = calibrate;
+  }
+  if (stop != null) {
+    $result.stop = stop;
+  }
+  if (nextTube != null) {
+    $result.nextTube = nextTube;
+  }
+  if (nextSection != null) {
+    $result.nextSection = nextSection;
+  }
+  if (sample != null) {
+    $result.sample = sample;
+  }
+  if (state != null) {
+    $result.state = state;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/calibrate.html b/docs/data/ScienceCommand/calibrate.html new file mode 100644 index 0000000000..86ebe5423b --- /dev/null +++ b/docs/data/ScienceCommand/calibrate.html @@ -0,0 +1,168 @@ + + + + + + + + calibrate property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
calibrate
+ +
+ +
+
+
+ +
+
+

calibrate property +

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

High level commands

+
+ + +
+

Implementation

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

Implementation

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

clearCalibrate method +

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

Implementation

+
@$pb.TagNumber(12)
+void clearCalibrate() => clearField(12);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/clearDirtCarousel.html b/docs/data/ScienceCommand/clearDirtCarousel.html new file mode 100644 index 0000000000..558b813713 --- /dev/null +++ b/docs/data/ScienceCommand/clearDirtCarousel.html @@ -0,0 +1,134 @@ + + + + + + + + clearDirtCarousel method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearDirtCarousel
+ +
+ +
+
+
+ +
+
+

clearDirtCarousel method +

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

Implementation

+
@$pb.TagNumber(1)
+void clearDirtCarousel() => clearField(1);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/clearDirtLinear.html b/docs/data/ScienceCommand/clearDirtLinear.html new file mode 100644 index 0000000000..1febf02912 --- /dev/null +++ b/docs/data/ScienceCommand/clearDirtLinear.html @@ -0,0 +1,134 @@ + + + + + + + + clearDirtLinear method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearDirtLinear
+ +
+ +
+
+
+ +
+
+

clearDirtLinear method +

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

Implementation

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

clearDirtRelease method +

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

Implementation

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

clearNextSection method +

+ +
+ +
+
    +
  1. @TagNumber(15)
  2. +
+
+ +void +clearNextSection() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(15)
+void clearNextSection() => clearField(15);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/clearNextTube.html b/docs/data/ScienceCommand/clearNextTube.html new file mode 100644 index 0000000000..6b8ab84275 --- /dev/null +++ b/docs/data/ScienceCommand/clearNextTube.html @@ -0,0 +1,134 @@ + + + + + + + + clearNextTube method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearNextTube
+ +
+ +
+
+
+ +
+
+

clearNextTube method +

+ +
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+ +void +clearNextTube() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(14)
+void clearNextTube() => clearField(14);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/clearPump1.html b/docs/data/ScienceCommand/clearPump1.html new file mode 100644 index 0000000000..876fda379c --- /dev/null +++ b/docs/data/ScienceCommand/clearPump1.html @@ -0,0 +1,134 @@ + + + + + + + + clearPump1 method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearPump1
+ +
+ +
+
+
+ +
+
+

clearPump1 method +

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

Implementation

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

clearPump2 method +

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

Implementation

+
@$pb.TagNumber(9)
+void clearPump2() => clearField(9);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/clearPump3.html b/docs/data/ScienceCommand/clearPump3.html new file mode 100644 index 0000000000..0b82088ad0 --- /dev/null +++ b/docs/data/ScienceCommand/clearPump3.html @@ -0,0 +1,134 @@ + + + + + + + + clearPump3 method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearPump3
+ +
+ +
+
+
+ +
+
+

clearPump3 method +

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

Implementation

+
@$pb.TagNumber(10)
+void clearPump3() => clearField(10);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/clearPump4.html b/docs/data/ScienceCommand/clearPump4.html new file mode 100644 index 0000000000..bd0be0552b --- /dev/null +++ b/docs/data/ScienceCommand/clearPump4.html @@ -0,0 +1,134 @@ + + + + + + + + clearPump4 method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearPump4
+ +
+ +
+
+
+ +
+
+

clearPump4 method +

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

Implementation

+
@$pb.TagNumber(11)
+void clearPump4() => clearField(11);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/clearSample.html b/docs/data/ScienceCommand/clearSample.html new file mode 100644 index 0000000000..330ba67fbd --- /dev/null +++ b/docs/data/ScienceCommand/clearSample.html @@ -0,0 +1,134 @@ + + + + + + + + clearSample method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearSample
+ +
+ +
+
+
+ +
+
+

clearSample method +

+ +
+ +
+
    +
  1. @TagNumber(16)
  2. +
+
+ +void +clearSample() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(16)
+void clearSample() => clearField(16);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/clearScienceLinear.html b/docs/data/ScienceCommand/clearScienceLinear.html new file mode 100644 index 0000000000..ba740eacda --- /dev/null +++ b/docs/data/ScienceCommand/clearScienceLinear.html @@ -0,0 +1,134 @@ + + + + + + + + clearScienceLinear method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearScienceLinear
+ +
+ +
+
+
+ +
+
+

clearScienceLinear method +

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

Implementation

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

clearState method +

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

Implementation

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

clearStop method +

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

Implementation

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

clearVacuum method +

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

Implementation

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

clearVacuumLinear method +

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

Implementation

+
@$pb.TagNumber(4)
+void clearVacuumLinear() => clearField(4);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/clone.html b/docs/data/ScienceCommand/clone.html new file mode 100644 index 0000000000..9dc56d3251 --- /dev/null +++ b/docs/data/ScienceCommand/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..dfc3a363dd --- /dev/null +++ b/docs/data/ScienceCommand/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..8130c64553 --- /dev/null +++ b/docs/data/ScienceCommand/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..ab1e212a39 --- /dev/null +++ b/docs/data/ScienceCommand/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..567ae1aa33 --- /dev/null +++ b/docs/data/ScienceCommand/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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/dirtCarousel.html b/docs/data/ScienceCommand/dirtCarousel.html new file mode 100644 index 0000000000..1f570577fb --- /dev/null +++ b/docs/data/ScienceCommand/dirtCarousel.html @@ -0,0 +1,168 @@ + + + + + + + + dirtCarousel property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
dirtCarousel
+ +
+ +
+
+
+ +
+
+

dirtCarousel property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + dirtCarousel + + +
+ + +
+

Individual control over each motor. Indicates steps to move

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get dirtCarousel => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + dirtCarousel=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+set dirtCarousel($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/dirtLinear.html b/docs/data/ScienceCommand/dirtLinear.html new file mode 100644 index 0000000000..6d7058d43f --- /dev/null +++ b/docs/data/ScienceCommand/dirtLinear.html @@ -0,0 +1,165 @@ + + + + + + + + dirtLinear property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
dirtLinear
+ +
+ +
+
+
+ +
+
+

dirtLinear property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + dirtLinear + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get dirtLinear => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + dirtLinear=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+set dirtLinear($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/dirtRelease.html b/docs/data/ScienceCommand/dirtRelease.html new file mode 100644 index 0000000000..b46cd48839 --- /dev/null +++ b/docs/data/ScienceCommand/dirtRelease.html @@ -0,0 +1,165 @@ + + + + + + + + dirtRelease property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
dirtRelease
+ +
+ +
+
+
+ +
+
+

dirtRelease property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ DirtReleaseState + dirtRelease + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+DirtReleaseState get dirtRelease => $_getN(5);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ void + dirtRelease=(DirtReleaseState v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+set dirtRelease(DirtReleaseState v) { setField(7, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/getDefault.html b/docs/data/ScienceCommand/getDefault.html new file mode 100644 index 0000000000..86f662b7d5 --- /dev/null +++ b/docs/data/ScienceCommand/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f45e60b97d --- /dev/null +++ b/docs/data/ScienceCommand/hasCalibrate.html @@ -0,0 +1,134 @@ + + + + + + + + hasCalibrate method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasCalibrate
+ +
+ +
+
+
+ +
+
+

hasCalibrate method +

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

Implementation

+
@$pb.TagNumber(12)
+$core.bool hasCalibrate() => $_has(10);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasDirtCarousel.html b/docs/data/ScienceCommand/hasDirtCarousel.html new file mode 100644 index 0000000000..beead59976 --- /dev/null +++ b/docs/data/ScienceCommand/hasDirtCarousel.html @@ -0,0 +1,134 @@ + + + + + + + + hasDirtCarousel method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasDirtCarousel
+ +
+ +
+
+
+ +
+
+

hasDirtCarousel method +

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

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasDirtCarousel() => $_has(0);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasDirtLinear.html b/docs/data/ScienceCommand/hasDirtLinear.html new file mode 100644 index 0000000000..317aef3439 --- /dev/null +++ b/docs/data/ScienceCommand/hasDirtLinear.html @@ -0,0 +1,134 @@ + + + + + + + + hasDirtLinear method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasDirtLinear
+ +
+ +
+
+
+ +
+
+

hasDirtLinear method +

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

Implementation

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

hasDirtRelease method +

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

Implementation

+
@$pb.TagNumber(7)
+$core.bool hasDirtRelease() => $_has(5);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasNextSection.html b/docs/data/ScienceCommand/hasNextSection.html new file mode 100644 index 0000000000..cc75404ff4 --- /dev/null +++ b/docs/data/ScienceCommand/hasNextSection.html @@ -0,0 +1,134 @@ + + + + + + + + hasNextSection method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasNextSection
+ +
+ +
+
+
+ +
+
+

hasNextSection method +

+ +
+ +
+
    +
  1. @TagNumber(15)
  2. +
+
+ +bool +hasNextSection() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(15)
+$core.bool hasNextSection() => $_has(13);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasNextTube.html b/docs/data/ScienceCommand/hasNextTube.html new file mode 100644 index 0000000000..ff8e68177b --- /dev/null +++ b/docs/data/ScienceCommand/hasNextTube.html @@ -0,0 +1,134 @@ + + + + + + + + hasNextTube method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasNextTube
+ +
+ +
+
+
+ +
+
+

hasNextTube method +

+ +
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+ +bool +hasNextTube() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(14)
+$core.bool hasNextTube() => $_has(12);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasPump1.html b/docs/data/ScienceCommand/hasPump1.html new file mode 100644 index 0000000000..29186710f6 --- /dev/null +++ b/docs/data/ScienceCommand/hasPump1.html @@ -0,0 +1,134 @@ + + + + + + + + hasPump1 method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasPump1
+ +
+ +
+
+
+ +
+
+

hasPump1 method +

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

Implementation

+
@$pb.TagNumber(8)
+$core.bool hasPump1() => $_has(6);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasPump2.html b/docs/data/ScienceCommand/hasPump2.html new file mode 100644 index 0000000000..bc0fa4c05a --- /dev/null +++ b/docs/data/ScienceCommand/hasPump2.html @@ -0,0 +1,134 @@ + + + + + + + + hasPump2 method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasPump2
+ +
+ +
+
+
+ +
+
+

hasPump2 method +

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

Implementation

+
@$pb.TagNumber(9)
+$core.bool hasPump2() => $_has(7);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasPump3.html b/docs/data/ScienceCommand/hasPump3.html new file mode 100644 index 0000000000..41302b2e59 --- /dev/null +++ b/docs/data/ScienceCommand/hasPump3.html @@ -0,0 +1,134 @@ + + + + + + + + hasPump3 method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasPump3
+ +
+ +
+
+
+ +
+
+

hasPump3 method +

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

Implementation

+
@$pb.TagNumber(10)
+$core.bool hasPump3() => $_has(8);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasPump4.html b/docs/data/ScienceCommand/hasPump4.html new file mode 100644 index 0000000000..80ce8aa6c5 --- /dev/null +++ b/docs/data/ScienceCommand/hasPump4.html @@ -0,0 +1,134 @@ + + + + + + + + hasPump4 method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasPump4
+ +
+ +
+
+
+ +
+
+

hasPump4 method +

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

Implementation

+
@$pb.TagNumber(11)
+$core.bool hasPump4() => $_has(9);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasSample.html b/docs/data/ScienceCommand/hasSample.html new file mode 100644 index 0000000000..54e7770500 --- /dev/null +++ b/docs/data/ScienceCommand/hasSample.html @@ -0,0 +1,134 @@ + + + + + + + + hasSample method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasSample
+ +
+ +
+
+
+ +
+
+

hasSample method +

+ +
+ +
+
    +
  1. @TagNumber(16)
  2. +
+
+ +bool +hasSample() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(16)
+$core.bool hasSample() => $_has(14);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasScienceLinear.html b/docs/data/ScienceCommand/hasScienceLinear.html new file mode 100644 index 0000000000..5db255757f --- /dev/null +++ b/docs/data/ScienceCommand/hasScienceLinear.html @@ -0,0 +1,134 @@ + + + + + + + + hasScienceLinear method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasScienceLinear
+ +
+ +
+
+
+ +
+
+

hasScienceLinear method +

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

Implementation

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

hasState method +

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

Implementation

+
@$pb.TagNumber(17)
+$core.bool hasState() => $_has(15);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasStop.html b/docs/data/ScienceCommand/hasStop.html new file mode 100644 index 0000000000..978229ff44 --- /dev/null +++ b/docs/data/ScienceCommand/hasStop.html @@ -0,0 +1,134 @@ + + + + + + + + hasStop method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasStop
+ +
+ +
+
+
+ +
+
+

hasStop method +

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

Implementation

+
@$pb.TagNumber(13)
+$core.bool hasStop() => $_has(11);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasVacuum.html b/docs/data/ScienceCommand/hasVacuum.html new file mode 100644 index 0000000000..5461a6275f --- /dev/null +++ b/docs/data/ScienceCommand/hasVacuum.html @@ -0,0 +1,134 @@ + + + + + + + + hasVacuum method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasVacuum
+ +
+ +
+
+
+ +
+
+

hasVacuum method +

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

Implementation

+
@$pb.TagNumber(5)
+$core.bool hasVacuum() => $_has(4);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/hasVacuumLinear.html b/docs/data/ScienceCommand/hasVacuumLinear.html new file mode 100644 index 0000000000..9b7874a851 --- /dev/null +++ b/docs/data/ScienceCommand/hasVacuumLinear.html @@ -0,0 +1,134 @@ + + + + + + + + hasVacuumLinear method - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasVacuumLinear
+ +
+ +
+
+
+ +
+
+

hasVacuumLinear method +

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

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasVacuumLinear() => $_has(3);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/info_.html b/docs/data/ScienceCommand/info_.html new file mode 100644 index 0000000000..add2bf40ee --- /dev/null +++ b/docs/data/ScienceCommand/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

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

Implementation

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

nextSection property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(15)
  2. +
+
+ bool + nextSection + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(15)
+$core.bool get nextSection => $_getBF(13);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(15)
  2. +
+
+ void + nextSection=(bool v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(15)
+set nextSection($core.bool v) { $_setBool(13, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/nextTube.html b/docs/data/ScienceCommand/nextTube.html new file mode 100644 index 0000000000..0d066c6b13 --- /dev/null +++ b/docs/data/ScienceCommand/nextTube.html @@ -0,0 +1,165 @@ + + + + + + + + nextTube property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
nextTube
+ +
+ +
+
+
+ +
+
+

nextTube property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+ bool + nextTube + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(14)
+$core.bool get nextTube => $_getBF(12);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(14)
  2. +
+
+ void + nextTube=(bool v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(14)
+set nextTube($core.bool v) { $_setBool(12, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/pump1.html b/docs/data/ScienceCommand/pump1.html new file mode 100644 index 0000000000..302954db98 --- /dev/null +++ b/docs/data/ScienceCommand/pump1.html @@ -0,0 +1,168 @@ + + + + + + + + pump1 property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
pump1
+ +
+ +
+
+
+ +
+
+

pump1 property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ PumpState + pump1 + + +
+ + +
+

Pumps

+
+ + +
+

Implementation

+
@$pb.TagNumber(8)
+PumpState get pump1 => $_getN(6);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(8)
  2. +
+
+ void + pump1=(PumpState v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(8)
+set pump1(PumpState v) { setField(8, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/pump2.html b/docs/data/ScienceCommand/pump2.html new file mode 100644 index 0000000000..69de7faccb --- /dev/null +++ b/docs/data/ScienceCommand/pump2.html @@ -0,0 +1,165 @@ + + + + + + + + pump2 property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
pump2
+ +
+ +
+
+
+ +
+
+

pump2 property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ PumpState + pump2 + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+PumpState get pump2 => $_getN(7);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(9)
  2. +
+
+ void + pump2=(PumpState v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(9)
+set pump2(PumpState v) { setField(9, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/pump3.html b/docs/data/ScienceCommand/pump3.html new file mode 100644 index 0000000000..08411345fd --- /dev/null +++ b/docs/data/ScienceCommand/pump3.html @@ -0,0 +1,165 @@ + + + + + + + + pump3 property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
pump3
+ +
+ +
+
+
+ +
+
+

pump3 property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ PumpState + pump3 + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+PumpState get pump3 => $_getN(8);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(10)
  2. +
+
+ void + pump3=(PumpState v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(10)
+set pump3(PumpState v) { setField(10, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/pump4.html b/docs/data/ScienceCommand/pump4.html new file mode 100644 index 0000000000..20221f49fa --- /dev/null +++ b/docs/data/ScienceCommand/pump4.html @@ -0,0 +1,165 @@ + + + + + + + + pump4 property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
pump4
+ +
+ +
+
+
+ +
+
+

pump4 property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ PumpState + pump4 + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+PumpState get pump4 => $_getN(9);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(11)
  2. +
+
+ void + pump4=(PumpState v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(11)
+set pump4(PumpState v) { setField(11, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/sample.html b/docs/data/ScienceCommand/sample.html new file mode 100644 index 0000000000..ebbe676332 --- /dev/null +++ b/docs/data/ScienceCommand/sample.html @@ -0,0 +1,165 @@ + + + + + + + + sample property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
sample
+ +
+ +
+
+
+ +
+
+

sample property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(16)
  2. +
+
+ int + sample + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(16)
+$core.int get sample => $_getIZ(14);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(16)
  2. +
+
+ void + sample=(int v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(16)
+set sample($core.int v) { $_setSignedInt32(14, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/scienceLinear.html b/docs/data/ScienceCommand/scienceLinear.html new file mode 100644 index 0000000000..5422e4dfa1 --- /dev/null +++ b/docs/data/ScienceCommand/scienceLinear.html @@ -0,0 +1,165 @@ + + + + + + + + scienceLinear property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
scienceLinear
+ +
+ +
+
+
+ +
+
+

scienceLinear property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + scienceLinear + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get scienceLinear => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + scienceLinear=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+set scienceLinear($core.double v) { $_setFloat(2, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/state.html b/docs/data/ScienceCommand/state.html new file mode 100644 index 0000000000..2abe7f7dda --- /dev/null +++ b/docs/data/ScienceCommand/state.html @@ -0,0 +1,165 @@ + + + + + + + + state property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
state
+ +
+ +
+
+
+ +
+
+

state property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(17)
  2. +
+
+ ScienceState + state + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(17)
+ScienceState get state => $_getN(15);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(17)
  2. +
+
+ void + state=(ScienceState v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(17)
+set state(ScienceState v) { setField(17, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/stop.html b/docs/data/ScienceCommand/stop.html new file mode 100644 index 0000000000..59fced6ea1 --- /dev/null +++ b/docs/data/ScienceCommand/stop.html @@ -0,0 +1,165 @@ + + + + + + + + stop property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
stop
+ +
+ +
+
+
+ +
+
+

stop property +

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

Implementation

+
@$pb.TagNumber(13)
+$core.bool get stop => $_getBF(11);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(13)
  2. +
+
+ void + stop=(bool v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(13)
+set stop($core.bool v) { $_setBool(11, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/vacuum.html b/docs/data/ScienceCommand/vacuum.html new file mode 100644 index 0000000000..53768ae614 --- /dev/null +++ b/docs/data/ScienceCommand/vacuum.html @@ -0,0 +1,168 @@ + + + + + + + + vacuum property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
vacuum
+ +
+ +
+
+
+ +
+
+

vacuum property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ PumpState + vacuum + + +
+ + +
+

Vacuum

+
+ + +
+

Implementation

+
@$pb.TagNumber(5)
+PumpState get vacuum => $_getN(4);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ void + vacuum=(PumpState v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+set vacuum(PumpState v) { setField(5, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceCommand/vacuumLinear.html b/docs/data/ScienceCommand/vacuumLinear.html new file mode 100644 index 0000000000..cc9e756102 --- /dev/null +++ b/docs/data/ScienceCommand/vacuumLinear.html @@ -0,0 +1,165 @@ + + + + + + + + vacuumLinear property - ScienceCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
vacuumLinear
+ +
+ +
+
+
+ +
+
+

vacuumLinear property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ double + vacuumLinear + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.double get vacuumLinear => $_getN(3);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ void + vacuumLinear=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+set vacuumLinear($core.double v) { $_setFloat(3, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData-class-sidebar.html b/docs/data/ScienceData-class-sidebar.html new file mode 100644 index 0000000000..618ee9c894 --- /dev/null +++ b/docs/data/ScienceData-class-sidebar.html @@ -0,0 +1,94 @@ +
    + +
  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. methane
  24. +
  25. pH
  26. +
  27. runtimeType
  28. +
  29. sample
  30. +
  31. state
  32. +
  33. temperature
  34. +
  35. unknownFields
  36. + +
  37. Methods
  38. +
  39. addExtension
  40. +
  41. check
  42. +
  43. clear
  44. +
  45. clearCo2
  46. +
  47. clearExtension
  48. +
  49. clearField
  50. +
  51. clearHumidity
  52. +
  53. clearMethane
  54. +
  55. clearPH
  56. +
  57. clearSample
  58. +
  59. clearState
  60. +
  61. clearTemperature
  62. +
  63. clone
  64. +
  65. copyWith
  66. +
  67. createEmptyInstance
  68. +
  69. createMapField
  70. +
  71. createRepeatedField
  72. +
  73. extensionsAreInitialized
  74. +
  75. freeze
  76. +
  77. getDefaultForField
  78. +
  79. getExtension
  80. +
  81. getField
  82. +
  83. getFieldOrNull
  84. +
  85. getTagNumber
  86. +
  87. hasCo2
  88. +
  89. hasExtension
  90. +
  91. hasField
  92. +
  93. hasHumidity
  94. +
  95. hasMethane
  96. +
  97. hasPH
  98. +
  99. hasRequiredFields
  100. +
  101. hasSample
  102. +
  103. hasState
  104. +
  105. hasTemperature
  106. +
  107. isInitialized
  108. +
  109. mergeFromBuffer
  110. +
  111. mergeFromCodedBufferReader
  112. +
  113. mergeFromJson
  114. +
  115. mergeFromJsonMap
  116. +
  117. mergeFromMessage
  118. +
  119. mergeFromProto3Json
  120. +
  121. mergeUnknownFields
  122. +
  123. noSuchMethod
  124. +
  125. setExtension
  126. +
  127. setField
  128. +
  129. toBuilder
  130. +
  131. toDebugString
  132. +
  133. toProto3Json
  134. +
  135. toString
  136. +
  137. writeToBuffer
  138. +
  139. writeToCodedBufferWriter
  140. +
  141. writeToJson
  142. +
  143. writeToJsonMap
  144. + +
  145. Operators
  146. +
  147. operator ==
  148. + + + + + +
  149. Static methods
  150. +
  151. create
  152. +
  153. createRepeated
  154. +
  155. getDefault
  156. + +
diff --git a/docs/data/ScienceData-class.html b/docs/data/ScienceData-class.html new file mode 100644 index 0000000000..04fcd8aadf --- /dev/null +++ b/docs/data/ScienceData-class.html @@ -0,0 +1,1102 @@ + + + + + + + + ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ScienceData
+ +
+ +
+
+
+ +
+
+

ScienceData class + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + +
Available Extensions
+
+ + + + +
+
+ + +
+

Constructors

+ +
+
+ ScienceData({double? co2, double? humidity, double? methane, double? pH, double? temperature, int? sample, ScienceState? state}) +
+
+ +
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 + + +
+
+ +
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
+ +
+ +
+ methane + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ pH + ↔ double + + +
+
+ +
getter/setter pair
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ sample + ↔ int + + +
+
+ +
getter/setter pair
+ +
+ +
+ state + ScienceState + + +
+
+ +
getter/setter pair
+ +
+ +
+ temperature + ↔ 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
+ +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ clearMethane() + → void + + + +
+
+ + + +
+ +
+ clearPH() + → void + + + +
+
+ + + +
+ +
+ clearSample() + → void + + + +
+
+ + + +
+ +
+ clearState() + → void + + + +
+
+ + + +
+ +
+ clearTemperature() + → 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
+ +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ hasMethane() + → bool + + + +
+
+ + + +
+ +
+ hasPH() + → bool + + + +
+
+ + + +
+ +
+ hasRequiredFields() + → bool + + + +
+
+ Whether the message has required fields. +
inherited
+ +
+ +
+ hasSample() + → bool + + + +
+
+ + + +
+ +
+ hasState() + → bool + + + +
+
+ + + +
+ +
+ hasTemperature() + → 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..41173b10fe --- /dev/null +++ b/docs/data/ScienceData/ScienceData.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..5524bac637 --- /dev/null +++ b/docs/data/ScienceData/ScienceData.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..5b7b5e8801 --- /dev/null +++ b/docs/data/ScienceData/ScienceData.html @@ -0,0 +1,163 @@ + + + + + + + + ScienceData constructor - ScienceData - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ScienceData
+ +
+ +
+
+
+ +
+
+

ScienceData constructor +

+ +
+ + ScienceData({
  1. double? co2,
  2. +
  3. double? humidity,
  4. +
  5. double? methane,
  6. +
  7. double? pH,
  8. +
  9. double? temperature,
  10. +
  11. int? sample,
  12. +
  13. ScienceState? state,
  14. +
}) +
+ + + + + +
+

Implementation

+
factory ScienceData({
+  $core.double? co2,
+  $core.double? humidity,
+  $core.double? methane,
+  $core.double? pH,
+  $core.double? temperature,
+  $core.int? sample,
+  ScienceState? state,
+}) {
+  final $result = create();
+  if (co2 != null) {
+    $result.co2 = co2;
+  }
+  if (humidity != null) {
+    $result.humidity = humidity;
+  }
+  if (methane != null) {
+    $result.methane = methane;
+  }
+  if (pH != null) {
+    $result.pH = pH;
+  }
+  if (temperature != null) {
+    $result.temperature = temperature;
+  }
+  if (sample != null) {
+    $result.sample = sample;
+  }
+  if (state != null) {
+    $result.state = state;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/clearCo2.html b/docs/data/ScienceData/clearCo2.html new file mode 100644 index 0000000000..65c3b50b6b --- /dev/null +++ b/docs/data/ScienceData/clearCo2.html @@ -0,0 +1,134 @@ + + + + + + + + clearCo2 method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearCo2
+ +
+ +
+
+
+ +
+
+

clearCo2 method +

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

Implementation

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

clearHumidity method +

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

Implementation

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

clearMethane method +

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

Implementation

+
@$pb.TagNumber(3)
+void clearMethane() => clearField(3);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/clearPH.html b/docs/data/ScienceData/clearPH.html new file mode 100644 index 0000000000..5b6c33db56 --- /dev/null +++ b/docs/data/ScienceData/clearPH.html @@ -0,0 +1,134 @@ + + + + + + + + clearPH method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearPH
+ +
+ +
+
+
+ +
+
+

clearPH method +

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

Implementation

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

clearSample method +

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

Implementation

+
@$pb.TagNumber(6)
+void clearSample() => clearField(6);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/clearState.html b/docs/data/ScienceData/clearState.html new file mode 100644 index 0000000000..222195de06 --- /dev/null +++ b/docs/data/ScienceData/clearState.html @@ -0,0 +1,134 @@ + + + + + + + + clearState method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearState
+ +
+ +
+
+
+ +
+
+

clearState method +

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

Implementation

+
@$pb.TagNumber(7)
+void clearState() => clearField(7);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/clearTemperature.html b/docs/data/ScienceData/clearTemperature.html new file mode 100644 index 0000000000..ae35f1fe80 --- /dev/null +++ b/docs/data/ScienceData/clearTemperature.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/ScienceData/clone.html new file mode 100644 index 0000000000..d159279984 --- /dev/null +++ b/docs/data/ScienceData/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..49d124e2b6 --- /dev/null +++ b/docs/data/ScienceData/co2.html @@ -0,0 +1,165 @@ + + + + + + + + co2 property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
co2
+ +
+ +
+
+
+ +
+
+

co2 property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ double + co2 + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.double get co2 => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + co2=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+set co2($core.double v) { $_setFloat(0, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/copyWith.html b/docs/data/ScienceData/copyWith.html new file mode 100644 index 0000000000..d33233faca --- /dev/null +++ b/docs/data/ScienceData/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..95d06813c7 --- /dev/null +++ b/docs/data/ScienceData/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..079ca26cb6 --- /dev/null +++ b/docs/data/ScienceData/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..bad70b258f --- /dev/null +++ b/docs/data/ScienceData/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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/getDefault.html b/docs/data/ScienceData/getDefault.html new file mode 100644 index 0000000000..d649da9a4f --- /dev/null +++ b/docs/data/ScienceData/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..33ed9b27c0 --- /dev/null +++ b/docs/data/ScienceData/hasCo2.html @@ -0,0 +1,134 @@ + + + + + + + + hasCo2 method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasCo2
+ +
+ +
+
+
+ +
+
+

hasCo2 method +

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

Implementation

+
@$pb.TagNumber(1)
+$core.bool hasCo2() => $_has(0);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/hasHumidity.html b/docs/data/ScienceData/hasHumidity.html new file mode 100644 index 0000000000..6080fc2260 --- /dev/null +++ b/docs/data/ScienceData/hasHumidity.html @@ -0,0 +1,134 @@ + + + + + + + + hasHumidity method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasHumidity
+ +
+ +
+
+
+ +
+
+

hasHumidity method +

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

Implementation

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

hasMethane method +

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

Implementation

+
@$pb.TagNumber(3)
+$core.bool hasMethane() => $_has(2);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/hasPH.html b/docs/data/ScienceData/hasPH.html new file mode 100644 index 0000000000..1832b63319 --- /dev/null +++ b/docs/data/ScienceData/hasPH.html @@ -0,0 +1,134 @@ + + + + + + + + hasPH method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasPH
+ +
+ +
+
+
+ +
+
+

hasPH method +

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

Implementation

+
@$pb.TagNumber(4)
+$core.bool hasPH() => $_has(3);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/hasSample.html b/docs/data/ScienceData/hasSample.html new file mode 100644 index 0000000000..208f31ffa9 --- /dev/null +++ b/docs/data/ScienceData/hasSample.html @@ -0,0 +1,134 @@ + + + + + + + + hasSample method - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasSample
+ +
+ +
+
+
+ +
+
+

hasSample method +

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

Implementation

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

hasState method +

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

Implementation

+
@$pb.TagNumber(7)
+$core.bool hasState() => $_has(6);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/hasTemperature.html b/docs/data/ScienceData/hasTemperature.html new file mode 100644 index 0000000000..ec3dcb320f --- /dev/null +++ b/docs/data/ScienceData/hasTemperature.html @@ -0,0 +1,134 @@ + + + + + + + + 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/humidity.html b/docs/data/ScienceData/humidity.html new file mode 100644 index 0000000000..0a32d5dd38 --- /dev/null +++ b/docs/data/ScienceData/humidity.html @@ -0,0 +1,165 @@ + + + + + + + + humidity property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humidity
+ +
+ +
+
+
+ +
+
+

humidity property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ double + humidity + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.double get humidity => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + humidity=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+set humidity($core.double v) { $_setFloat(1, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/info_.html b/docs/data/ScienceData/info_.html new file mode 100644 index 0000000000..ac1835a5c8 --- /dev/null +++ b/docs/data/ScienceData/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

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

Implementation

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

methane property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ double + methane + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.double get methane => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + methane=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+set methane($core.double v) { $_setFloat(2, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/pH.html b/docs/data/ScienceData/pH.html new file mode 100644 index 0000000000..36f449a78c --- /dev/null +++ b/docs/data/ScienceData/pH.html @@ -0,0 +1,165 @@ + + + + + + + + pH property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
pH
+ +
+ +
+
+
+ +
+
+

pH property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ double + pH + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+$core.double get pH => $_getN(3);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(4)
  2. +
+
+ void + pH=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(4)
+set pH($core.double v) { $_setFloat(3, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/sample.html b/docs/data/ScienceData/sample.html new file mode 100644 index 0000000000..642d736005 --- /dev/null +++ b/docs/data/ScienceData/sample.html @@ -0,0 +1,165 @@ + + + + + + + + sample property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
sample
+ +
+ +
+
+
+ +
+
+

sample property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ int + sample + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+$core.int get sample => $_getIZ(5);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(6)
  2. +
+
+ void + sample=(int v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(6)
+set sample($core.int v) { $_setSignedInt32(5, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/state.html b/docs/data/ScienceData/state.html new file mode 100644 index 0000000000..7ced9a330d --- /dev/null +++ b/docs/data/ScienceData/state.html @@ -0,0 +1,165 @@ + + + + + + + + state property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
state
+ +
+ +
+
+
+ +
+
+

state property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ ScienceState + state + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+ScienceState get state => $_getN(6);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(7)
  2. +
+
+ void + state=(ScienceState v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(7)
+set state(ScienceState v) { setField(7, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceData/temperature.html b/docs/data/ScienceData/temperature.html new file mode 100644 index 0000000000..8c6c53e047 --- /dev/null +++ b/docs/data/ScienceData/temperature.html @@ -0,0 +1,165 @@ + + + + + + + + temperature property - ScienceData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
temperature
+ +
+ +
+
+
+ +
+
+

temperature property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ double + temperature + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+$core.double get temperature => $_getN(4);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(5)
  2. +
+
+ void + temperature=(double v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(5)
+set temperature($core.double v) { $_setFloat(4, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceMetrics-class-sidebar.html b/docs/data/ScienceMetrics-class-sidebar.html new file mode 100644 index 0000000000..ef0818b1ed --- /dev/null +++ b/docs/data/ScienceMetrics-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceMetrics
  4. + + + +
  5. + Properties +
  6. +
  7. allMetrics
  8. +
  9. data
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. name
  16. +
  17. overallSeverity
  18. +
  19. runtimeType
  20. + +
  21. Methods
  22. +
  23. addListener
  24. +
  25. dispose
  26. +
  27. noSuchMethod
  28. +
  29. notifyListeners
  30. +
  31. removeListener
  32. +
  33. toString
  34. +
  35. update
  36. + +
  37. Operators
  38. +
  39. operator ==
  40. + + + + + + +
diff --git a/docs/data/ScienceMetrics-class.html b/docs/data/ScienceMetrics-class.html new file mode 100644 index 0000000000..19ac65658c --- /dev/null +++ b/docs/data/ScienceMetrics-class.html @@ -0,0 +1,373 @@ + + + + + + + + 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
+ +
+ +
+ 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
+ +
+ +
+
+ +
+

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(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..3d4042236a --- /dev/null +++ b/docs/data/ScienceMetrics/ScienceMetrics.html @@ -0,0 +1,128 @@ + + + + + + + + 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..0e34e16c17 --- /dev/null +++ b/docs/data/ScienceMetrics/allMetrics.html @@ -0,0 +1,150 @@ + + + + + + + + allMetrics property - ScienceMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
allMetrics
+ +
+ +
+
+
+ +
+
+ +

allMetrics property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<MetricLine> + 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("Methane: ${data.methane.toStringAsFixed(3)}"),
+	MetricLine("CO2: ${data.co2.toStringAsFixed(3)}"),
+	MetricLine("Temperature: ${data.temperature.toStringAsFixed(3)}"),
+	MetricLine("Humidity: ${data.humidity.toStringAsFixed(3)}"),
+	MetricLine("pH: ${data.pH.toStringAsFixed(3)}"),
+];
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceMetrics/name.html b/docs/data/ScienceMetrics/name.html new file mode 100644 index 0000000000..7f08bd9147 --- /dev/null +++ b/docs/data/ScienceMetrics/name.html @@ -0,0 +1,142 @@ + + + + + + + + name property - ScienceMetrics class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
name
+ +
+ +
+
+
+ +
+
+ +

name property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ String + 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/update.html b/docs/data/ScienceMetrics/update.html new file mode 100644 index 0000000000..2322730568 --- /dev/null +++ b/docs/data/ScienceMetrics/update.html @@ -0,0 +1,142 @@ + + + + + + + + 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 (value.state == ScienceState.STOP_COLLECTING) return;
+	super.update(value);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceResult-enum-sidebar.html b/docs/data/ScienceResult-enum-sidebar.html new file mode 100644 index 0000000000..4bff744546 --- /dev/null +++ b/docs/data/ScienceResult-enum-sidebar.html @@ -0,0 +1,35 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceResult
  4. + +
  5. Values
  6. +
  7. extinct
  8. +
  9. extant
  10. +
  11. notPresent
  12. +
  13. inconclusive
  14. +
  15. loading
  16. + + +
  17. + Properties +
  18. +
  19. hashCode
  20. +
  21. index
  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/ScienceResult.html b/docs/data/ScienceResult.html new file mode 100644 index 0000000000..5d719e3221 --- /dev/null +++ b/docs/data/ScienceResult.html @@ -0,0 +1,324 @@ + + + + + + + + ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ScienceResult
+ +
+ +
+
+
+ +
+
+ + +

+ ScienceResult + enum + + +

+
+ + +
+

The result of a science test.

+
+ + + + +
+

Constructors

+ +
+
+ ScienceResult() +
+
+ +
const
+
+
+
+ +
+

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/ScienceResult.html b/docs/data/ScienceResult/ScienceResult.html new file mode 100644 index 0000000000..d4617566cd --- /dev/null +++ b/docs/data/ScienceResult/ScienceResult.html @@ -0,0 +1,121 @@ + + + + + + + + ScienceResult constructor - ScienceResult - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ScienceResult
+ +
+ +
+
+
+ +
+
+ +

ScienceResult constructor +

+ +
+ const + ScienceResult() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceResult/hashCode.html b/docs/data/ScienceResult/hashCode.html new file mode 100644 index 0000000000..5ef702bdf5 --- /dev/null +++ b/docs/data/ScienceResult/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..4e6b2d70e4 --- /dev/null +++ b/docs/data/ScienceResult/index.html @@ -0,0 +1,140 @@ + + + + + + + + index property - ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
index
+ +
+ +
+
+
+ +
+
+

index property +

+ + + +
+ +
+ + int + 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..4a94e08ae2 --- /dev/null +++ b/docs/data/ScienceResult/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..102a9defbb --- /dev/null +++ b/docs/data/ScienceResult/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..1286dbf83d --- /dev/null +++ b/docs/data/ScienceResult/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - ScienceResult enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..e88cebc3bc --- /dev/null +++ b/docs/data/ScienceResult/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..1dc32531cb --- /dev/null +++ b/docs/data/ScienceResult/values-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..7276c2d543 --- /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..e081548256 --- /dev/null +++ b/docs/data/ScienceSensor-class.html @@ -0,0 +1,258 @@ + + + + + + + + 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..947758f91b --- /dev/null +++ b/docs/data/ScienceSensor/ScienceSensor.html @@ -0,0 +1,135 @@ + + + + + + + + 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..451917b3e4 --- /dev/null +++ b/docs/data/ScienceSensor/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - ScienceSensor class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..318b478186 --- /dev/null +++ b/docs/data/ScienceSensor/name.html @@ -0,0 +1,129 @@ + + + + + + + + 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..04b79676fe --- /dev/null +++ b/docs/data/ScienceSensor/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..b9bdbca0ee --- /dev/null +++ b/docs/data/ScienceSensor/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..5c17a3ed25 --- /dev/null +++ b/docs/data/ScienceSensor/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - ScienceSensor class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..55b9b7b52e --- /dev/null +++ b/docs/data/ScienceSensor/test.html @@ -0,0 +1,129 @@ + + + + + + + + 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..5d212dfcf5 --- /dev/null +++ b/docs/data/ScienceSensor/testDescription.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a818ddcdb4 --- /dev/null +++ b/docs/data/ScienceSensor/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..2bf70c5089 --- /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..72050ee67b --- /dev/null +++ b/docs/data/ScienceSettings-class.html @@ -0,0 +1,265 @@ + + + + + + + + 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..a592bd090c --- /dev/null +++ b/docs/data/ScienceSettings/ScienceSettings.fromJson.html @@ -0,0 +1,131 @@ + + + + + + + + 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..9189678c07 --- /dev/null +++ b/docs/data/ScienceSettings/ScienceSettings.html @@ -0,0 +1,130 @@ + + + + + + + + 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..b74eb6a227 --- /dev/null +++ b/docs/data/ScienceSettings/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - ScienceSettings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..2fdf8bd8b6 --- /dev/null +++ b/docs/data/ScienceSettings/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..05212ff16d --- /dev/null +++ b/docs/data/ScienceSettings/numSamples.html @@ -0,0 +1,129 @@ + + + + + + + + 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..6f77c50ab2 --- /dev/null +++ b/docs/data/ScienceSettings/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..0f4aa891bc --- /dev/null +++ b/docs/data/ScienceSettings/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - ScienceSettings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..28e22d0bde --- /dev/null +++ b/docs/data/ScienceSettings/scrollableGraphs.html @@ -0,0 +1,130 @@ + + + + + + + + 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..f9e6dfcc94 --- /dev/null +++ b/docs/data/ScienceSettings/toJson.html @@ -0,0 +1,134 @@ + + + + + + + + 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,
+};
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/ScienceSettings/toString.html b/docs/data/ScienceSettings/toString.html new file mode 100644 index 0000000000..72aba7e020 --- /dev/null +++ b/docs/data/ScienceSettings/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..a42ffeba93 --- /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..348255ad88 --- /dev/null +++ b/docs/data/ScienceState-class.html @@ -0,0 +1,327 @@ + + + + + + + + ScienceState class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ScienceState
+ +
+ +
+
+
+ +
+
+

ScienceState 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) + 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..6c073b9983 --- /dev/null +++ b/docs/data/ScienceState/COLLECT_DATA-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..906987e93a --- /dev/null +++ b/docs/data/ScienceState/SCIENCE_STATE_UNDEFINED-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..f4a770b4c3 --- /dev/null +++ b/docs/data/ScienceState/STOP_COLLECTING-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..f27406af03 --- /dev/null +++ b/docs/data/ScienceState/valueOf.html @@ -0,0 +1,129 @@ + + + + + + + + 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..6baa966aae --- /dev/null +++ b/docs/data/ScienceState/values-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..d443db6e62 --- /dev/null +++ b/docs/data/ScienceStateUtils.html @@ -0,0 +1,156 @@ + + + + + + + + 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..bf98dfd02d --- /dev/null +++ b/docs/data/ScienceStateUtils/humanName.html @@ -0,0 +1,144 @@ + + + + + + + + humanName property - ScienceStateUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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..f3732bfee1 --- /dev/null +++ b/docs/data/ScienceTest.html @@ -0,0 +1,127 @@ + + + + + + + + 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..c7333cbdb1 --- /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..5cdecaa7d8 --- /dev/null +++ b/docs/data/SensorReading-class.html @@ -0,0 +1,246 @@ + + + + + + + + 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..4126ec3215 --- /dev/null +++ b/docs/data/SensorReading/SensorReading.html @@ -0,0 +1,130 @@ + + + + + + + + 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..b3c4db366a --- /dev/null +++ b/docs/data/SensorReading/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - SensorReading class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..82f2fb3351 --- /dev/null +++ b/docs/data/SensorReading/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..60600c29de --- /dev/null +++ b/docs/data/SensorReading/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..ecb3ce9158 --- /dev/null +++ b/docs/data/SensorReading/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - SensorReading class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..838f9fbefa --- /dev/null +++ b/docs/data/SensorReading/time.html @@ -0,0 +1,129 @@ + + + + + + + + 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..fd00fca0fb --- /dev/null +++ b/docs/data/SensorReading/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..f41e7d2da5 --- /dev/null +++ b/docs/data/SensorReading/value.html @@ -0,0 +1,129 @@ + + + + + + + + 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/Settings-class-sidebar.html b/docs/data/Settings-class-sidebar.html new file mode 100644 index 0000000000..61ef6db87e --- /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..11e0043144 --- /dev/null +++ b/docs/data/Settings-class.html @@ -0,0 +1,301 @@ + + + + + + + + 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..3430c01612 --- /dev/null +++ b/docs/data/Settings/Settings.fromJson.html @@ -0,0 +1,134 @@ + + + + + + + + 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..6b9fa80360 --- /dev/null +++ b/docs/data/Settings/Settings.html @@ -0,0 +1,139 @@ + + + + + + + + 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..b43104950a --- /dev/null +++ b/docs/data/Settings/arm.html @@ -0,0 +1,129 @@ + + + + + + + + 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..70ee23a425 --- /dev/null +++ b/docs/data/Settings/dashboard.html @@ -0,0 +1,129 @@ + + + + + + + + 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..76bd887f73 --- /dev/null +++ b/docs/data/Settings/easterEggs.html @@ -0,0 +1,130 @@ + + + + + + + + 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..c917b30285 --- /dev/null +++ b/docs/data/Settings/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - Settings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..916728e57a --- /dev/null +++ b/docs/data/Settings/network.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f0db2d87cc --- /dev/null +++ b/docs/data/Settings/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..af39d7e5c2 --- /dev/null +++ b/docs/data/Settings/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..403743aa04 --- /dev/null +++ b/docs/data/Settings/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - Settings class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..21f05c3045 --- /dev/null +++ b/docs/data/Settings/science.html @@ -0,0 +1,129 @@ + + + + + + + + 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..638ea32d81 --- /dev/null +++ b/docs/data/Settings/toJson.html @@ -0,0 +1,138 @@ + + + + + + + + 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..9dcbba45a8 --- /dev/null +++ b/docs/data/Settings/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..3895cf7160 --- /dev/null +++ b/docs/data/SettingsParser.html @@ -0,0 +1,157 @@ + + + + + + + + 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..63665c20b8 --- /dev/null +++ b/docs/data/SettingsParser/getSocket.html @@ -0,0 +1,137 @@ + + + + + + + + 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..21f8cf2b13 --- /dev/null +++ b/docs/data/Severity-enum-sidebar.html @@ -0,0 +1,34 @@ +
    + +
  1. Constructors
  2. +
  3. Severity
  4. + +
  5. Values
  6. +
  7. info
  8. +
  9. warning
  10. +
  11. error
  12. +
  13. critical
  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/data/Severity.html b/docs/data/Severity.html new file mode 100644 index 0000000000..eb4027e559 --- /dev/null +++ b/docs/data/Severity.html @@ -0,0 +1,324 @@ + + + + + + + + Severity enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
Severity
+ +
+ +
+
+
+ +
+
+ + +

+ Severity + enum + + +

+
+ + +
+

The level of danger a message represents.

+
+ + +
+
+ + + + + + + +
+
+ + +
+

Constructors

+ +
+
+ Severity() +
+
+ +
const
+
+
+
+ +
+

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/Severity.html b/docs/data/Severity/Severity.html new file mode 100644 index 0000000000..f05af3dcff --- /dev/null +++ b/docs/data/Severity/Severity.html @@ -0,0 +1,121 @@ + + + + + + + + Severity constructor - Severity - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
Severity
+ +
+ +
+
+
+ +
+
+ +

Severity constructor +

+ +
+ const + Severity() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/Severity/hashCode.html b/docs/data/Severity/hashCode.html new file mode 100644 index 0000000000..227c5d6df4 --- /dev/null +++ b/docs/data/Severity/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - Severity enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..303fa811ca --- /dev/null +++ b/docs/data/Severity/index.html @@ -0,0 +1,140 @@ + + + + + + + + index property - Severity enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
index
+ +
+ +
+
+
+ +
+
+

index property +

+ + + +
+ +
+ + int + 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..9b17d280bf --- /dev/null +++ b/docs/data/Severity/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..c0fc50be18 --- /dev/null +++ b/docs/data/Severity/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..a00e73cfac --- /dev/null +++ b/docs/data/Severity/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - Severity enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..9b57d13c83 --- /dev/null +++ b/docs/data/Severity/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..8044ea9a54 --- /dev/null +++ b/docs/data/Severity/values-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..8c199e815a --- /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..f54c00a538 --- /dev/null +++ b/docs/data/SocketInfo-class.html @@ -0,0 +1,303 @@ + + + + + + + + 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..5caf8acb82 --- /dev/null +++ b/docs/data/SocketInfo/SocketInfo.fromJson.html @@ -0,0 +1,130 @@ + + + + + + + + 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..6a13a99792 --- /dev/null +++ b/docs/data/SocketInfo/SocketInfo.html @@ -0,0 +1,129 @@ + + + + + + + + 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..917c781ea2 --- /dev/null +++ b/docs/data/SocketInfo/SocketInfo.raw.html @@ -0,0 +1,129 @@ + + + + + + + + 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..6dc1425399 --- /dev/null +++ b/docs/data/SocketInfo/address.html @@ -0,0 +1,128 @@ + + + + + + + + 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..bd998b8480 --- /dev/null +++ b/docs/data/SocketInfo/copyWith.html @@ -0,0 +1,136 @@ + + + + + + + + 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..a8ef7be435 --- /dev/null +++ b/docs/data/SocketInfo/hashCode.html @@ -0,0 +1,166 @@ + + + + + + + + hashCode property - SocketInfo class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ int + 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..ec98a761a4 --- /dev/null +++ b/docs/data/SocketInfo/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..c8ec342536 --- /dev/null +++ b/docs/data/SocketInfo/operator_equals.html @@ -0,0 +1,166 @@ + + + + + + + + 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..da54e6e948 --- /dev/null +++ b/docs/data/SocketInfo/port.html @@ -0,0 +1,128 @@ + + + + + + + + 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..4ff5d93cc4 --- /dev/null +++ b/docs/data/SocketInfo/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - SocketInfo class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..6e3c40b732 --- /dev/null +++ b/docs/data/SocketInfo/toJson.html @@ -0,0 +1,134 @@ + + + + + + + + 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..3d638e44bd --- /dev/null +++ b/docs/data/SocketInfo/toString.html @@ -0,0 +1,146 @@ + + + + + + + + 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..398ec8dd65 --- /dev/null +++ b/docs/data/SplitMode-enum-sidebar.html @@ -0,0 +1,33 @@ +
    + +
  1. Constructors
  2. +
  3. SplitMode
  4. + +
  5. Values
  6. +
  7. horizontal
  8. +
  9. vertical
  10. + + +
  11. + Properties +
  12. +
  13. hashCode
  14. +
  15. humanName
  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/SplitMode.html b/docs/data/SplitMode.html new file mode 100644 index 0000000000..530629ef08 --- /dev/null +++ b/docs/data/SplitMode.html @@ -0,0 +1,306 @@ + + + + + + + + SplitMode enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
SplitMode
+ +
+ +
+
+
+ +
+
+ + +

+ SplitMode + enum + + +

+
+ + +
+

Controls the way the Dashboard views split.

+
+ + + + +
+

Constructors

+ +
+
+ SplitMode(String humanName) +
+
+ A const constructor. +
const
+
+
+
+ +
+

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/SplitMode.html b/docs/data/SplitMode/SplitMode.html new file mode 100644 index 0000000000..a7e175baac --- /dev/null +++ b/docs/data/SplitMode/SplitMode.html @@ -0,0 +1,129 @@ + + + + + + + + SplitMode constructor - SplitMode - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
SplitMode
+ +
+ +
+
+
+ +
+
+ +

SplitMode constructor +

+ +
+ const + SplitMode(
  1. String humanName
  2. +
) +
+ + +
+

A const constructor.

+
+ + + +
+

Implementation

+
const SplitMode(this.humanName);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/SplitMode/hashCode.html b/docs/data/SplitMode/hashCode.html new file mode 100644 index 0000000000..02f17a2528 --- /dev/null +++ b/docs/data/SplitMode/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - SplitMode enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..347426ecdb --- /dev/null +++ b/docs/data/SplitMode/humanName.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c3bbaa9ede --- /dev/null +++ b/docs/data/SplitMode/index.html @@ -0,0 +1,140 @@ + + + + + + + + index property - SplitMode enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
index
+ +
+ +
+
+
+ +
+
+

index property +

+ + + +
+ +
+ + int + 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..7372a6d1c5 --- /dev/null +++ b/docs/data/SplitMode/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..6b1f16c582 --- /dev/null +++ b/docs/data/SplitMode/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..5f0e681d57 --- /dev/null +++ b/docs/data/SplitMode/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - SplitMode enum - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..8607a41c38 --- /dev/null +++ b/docs/data/SplitMode/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..0d9619ee37 --- /dev/null +++ b/docs/data/SplitMode/values-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..d9d933040b --- /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..2733dab440 --- /dev/null +++ b/docs/data/TaskbarMessage-class.html @@ -0,0 +1,245 @@ + + + + + + + + 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..c4f6eb2466 --- /dev/null +++ b/docs/data/TaskbarMessage/TaskbarMessage.html @@ -0,0 +1,133 @@ + + + + + + + + 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..f7ff0703f5 --- /dev/null +++ b/docs/data/TaskbarMessage/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - TaskbarMessage class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..bfc2ee7f8d --- /dev/null +++ b/docs/data/TaskbarMessage/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..aafbab2185 --- /dev/null +++ b/docs/data/TaskbarMessage/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..fc0e1bc65c --- /dev/null +++ b/docs/data/TaskbarMessage/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - TaskbarMessage class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..487dc12fc9 --- /dev/null +++ b/docs/data/TaskbarMessage/severity.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2808aaf5c4 --- /dev/null +++ b/docs/data/TaskbarMessage/text.html @@ -0,0 +1,129 @@ + + + + + + + + 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..96d04cd4b3 --- /dev/null +++ b/docs/data/TaskbarMessage/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..2ba8d63918 --- /dev/null +++ b/docs/data/ThemeModeUtils.html @@ -0,0 +1,156 @@ + + + + + + + + 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..9b326a006a --- /dev/null +++ b/docs/data/ThemeModeUtils/humanName.html @@ -0,0 +1,140 @@ + + + + + + + + humanName property - ThemeModeUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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..462840495f --- /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..45c65bc5d0 --- /dev/null +++ b/docs/data/Timestamp-class.html @@ -0,0 +1,1020 @@ + + + + + + + + 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..c5c13bfb02 --- /dev/null +++ b/docs/data/Timestamp/Timestamp.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..27f6149e70 --- /dev/null +++ b/docs/data/Timestamp/Timestamp.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..e2bda9ac72 --- /dev/null +++ b/docs/data/Timestamp/Timestamp.html @@ -0,0 +1,138 @@ + + + + + + + + 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..99047b0939 --- /dev/null +++ b/docs/data/Timestamp/clearNanos.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d9e7df75f4 --- /dev/null +++ b/docs/data/Timestamp/clearSeconds.html @@ -0,0 +1,134 @@ + + + + + + + + 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..fa7e1b98e7 --- /dev/null +++ b/docs/data/Timestamp/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..e4f3c9e0e7 --- /dev/null +++ b/docs/data/Timestamp/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..2515a3ac84 --- /dev/null +++ b/docs/data/Timestamp/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..d7c0699862 --- /dev/null +++ b/docs/data/Timestamp/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..39b7dcf50a --- /dev/null +++ b/docs/data/Timestamp/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..b118002097 --- /dev/null +++ b/docs/data/Timestamp/fromDateTime.html @@ -0,0 +1,137 @@ + + + + + + + + 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..7e17ec32d2 --- /dev/null +++ b/docs/data/Timestamp/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f8aa8719f5 --- /dev/null +++ b/docs/data/Timestamp/hasNanos.html @@ -0,0 +1,134 @@ + + + + + + + + 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..36c8cdd2b7 --- /dev/null +++ b/docs/data/Timestamp/hasSeconds.html @@ -0,0 +1,134 @@ + + + + + + + + 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..b894c2b9f4 --- /dev/null +++ b/docs/data/Timestamp/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - Timestamp class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..ffb084dc97 --- /dev/null +++ b/docs/data/Timestamp/nanos.html @@ -0,0 +1,171 @@ + + + + + + + + nanos property - Timestamp class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
nanos
+ +
+ +
+
+
+ +
+
+

nanos property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ int + 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. +
+
+ void + 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..6346a2722d --- /dev/null +++ b/docs/data/Timestamp/seconds.html @@ -0,0 +1,170 @@ + + + + + + + + seconds property - Timestamp class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
seconds
+ +
+ +
+
+
+ +
+
+

seconds property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ Int64 + 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. +
+
+ void + 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..b90f419071 --- /dev/null +++ b/docs/data/Timestamp/toDateTime.html @@ -0,0 +1,138 @@ + + + + + + + + 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..e277e19443 --- /dev/null +++ b/docs/data/TimestampUtils.html @@ -0,0 +1,190 @@ + + + + + + + + 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..b1410e8ff4 --- /dev/null +++ b/docs/data/TimestampUtils/now.html @@ -0,0 +1,132 @@ + + + + + + + + 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..4b9533409a --- /dev/null +++ b/docs/data/TimestampUtils/operator_minus.html @@ -0,0 +1,133 @@ + + + + + + + + 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..9c8b39679d --- /dev/null +++ b/docs/data/TimestampUtils/operator_plus.html @@ -0,0 +1,133 @@ + + + + + + + + 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..0835bdc4e7 --- /dev/null +++ b/docs/data/UndefinedFilter.html @@ -0,0 +1,156 @@ + + + + + + + + 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..d3698f4cb5 --- /dev/null +++ b/docs/data/UndefinedFilter/filtered.html @@ -0,0 +1,140 @@ + + + + + + + + filtered property - UndefinedFilter extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
filtered
+ +
+ +
+
+
+ +
+
+ +

filtered property +

+ + + +
+ +
+ + List<T> + 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..c74ab7ccaa --- /dev/null +++ b/docs/data/Unwrapper.html @@ -0,0 +1,157 @@ + + + + + + + + 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..355871da71 --- /dev/null +++ b/docs/data/Unwrapper/decode.html @@ -0,0 +1,133 @@ + + + + + + + + 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..e8144ecce7 --- /dev/null +++ b/docs/data/UpdateSetting-class-sidebar.html @@ -0,0 +1,80 @@ +
    + +
  1. Constructors
  2. +
  3. UpdateSetting
  4. +
  5. fromBuffer
  6. +
  7. fromJson
  8. + + + +
  9. + Properties +
  10. +
  11. color
  12. +
  13. eventPlugin
  14. +
  15. hashCode
  16. +
  17. info_
  18. +
  19. isFrozen
  20. +
  21. runtimeType
  22. +
  23. status
  24. +
  25. unknownFields
  26. + +
  27. Methods
  28. +
  29. addExtension
  30. +
  31. check
  32. +
  33. clear
  34. +
  35. clearColor
  36. +
  37. clearExtension
  38. +
  39. clearField
  40. +
  41. clearStatus
  42. +
  43. clone
  44. +
  45. copyWith
  46. +
  47. createEmptyInstance
  48. +
  49. createMapField
  50. +
  51. createRepeatedField
  52. +
  53. ensureColor
  54. +
  55. extensionsAreInitialized
  56. +
  57. freeze
  58. +
  59. getDefaultForField
  60. +
  61. getExtension
  62. +
  63. getField
  64. +
  65. getFieldOrNull
  66. +
  67. getTagNumber
  68. +
  69. hasColor
  70. +
  71. hasExtension
  72. +
  73. hasField
  74. +
  75. hasRequiredFields
  76. +
  77. hasStatus
  78. +
  79. isInitialized
  80. +
  81. mergeFromBuffer
  82. +
  83. mergeFromCodedBufferReader
  84. +
  85. mergeFromJson
  86. +
  87. mergeFromJsonMap
  88. +
  89. mergeFromMessage
  90. +
  91. mergeFromProto3Json
  92. +
  93. mergeUnknownFields
  94. +
  95. noSuchMethod
  96. +
  97. setExtension
  98. +
  99. setField
  100. +
  101. toBuilder
  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. getDefault
  128. + +
diff --git a/docs/data/UpdateSetting-class.html b/docs/data/UpdateSetting-class.html new file mode 100644 index 0000000000..b1a8c825bd --- /dev/null +++ b/docs/data/UpdateSetting-class.html @@ -0,0 +1,931 @@ + + + + + + + + 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, ProtoColor? color}) +
+
+ +
factory
+
+
+ UpdateSetting.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+ UpdateSetting.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) +
+
+ +
factory
+
+
+
+ +
+

Properties

+
+
+ color + ProtoColor + + +
+
+ +
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 + 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
+ +
+ +
+ 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
+ +
+ +
+ 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
+ +
+ +
+ ensureColor() + ProtoColor + + + +
+
+ + + +
+ +
+ 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
+ +
+ +
+ 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..7fd32682fb --- /dev/null +++ b/docs/data/UpdateSetting/UpdateSetting.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..d627c86726 --- /dev/null +++ b/docs/data/UpdateSetting/UpdateSetting.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..b53ddcecb6 --- /dev/null +++ b/docs/data/UpdateSetting/UpdateSetting.html @@ -0,0 +1,138 @@ + + + + + + + + UpdateSetting constructor - UpdateSetting - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
UpdateSetting
+ +
+ +
+
+
+ +
+
+

UpdateSetting constructor +

+ +
+ + UpdateSetting({
  1. RoverStatus? status,
  2. +
  3. ProtoColor? color,
  4. +
}) +
+ + + + + +
+

Implementation

+
factory UpdateSetting({
+  RoverStatus? status,
+  ProtoColor? color,
+}) {
+  final $result = create();
+  if (status != null) {
+    $result.status = status;
+  }
+  if (color != null) {
+    $result.color = color;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/UpdateSetting/clearColor.html b/docs/data/UpdateSetting/clearColor.html new file mode 100644 index 0000000000..322d18dcc2 --- /dev/null +++ b/docs/data/UpdateSetting/clearColor.html @@ -0,0 +1,134 @@ + + + + + + + + clearColor method - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
clearColor
+ +
+ +
+
+
+ +
+
+

clearColor method +

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

Implementation

+
@$pb.TagNumber(2)
+void clearColor() => clearField(2);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/UpdateSetting/clearStatus.html b/docs/data/UpdateSetting/clearStatus.html new file mode 100644 index 0000000000..47f78516cc --- /dev/null +++ b/docs/data/UpdateSetting/clearStatus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..3562c265d0 --- /dev/null +++ b/docs/data/UpdateSetting/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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/color.html b/docs/data/UpdateSetting/color.html new file mode 100644 index 0000000000..212ccdf557 --- /dev/null +++ b/docs/data/UpdateSetting/color.html @@ -0,0 +1,165 @@ + + + + + + + + color property - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
color
+ +
+ +
+
+
+ +
+
+

color property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ ProtoColor + color + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+ProtoColor get color => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + color=(ProtoColor v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+set color(ProtoColor v) { setField(2, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/UpdateSetting/copyWith.html b/docs/data/UpdateSetting/copyWith.html new file mode 100644 index 0000000000..847afe1ced --- /dev/null +++ b/docs/data/UpdateSetting/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..e1e73d87a9 --- /dev/null +++ b/docs/data/UpdateSetting/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..5abb695bcc --- /dev/null +++ b/docs/data/UpdateSetting/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..994ce63053 --- /dev/null +++ b/docs/data/UpdateSetting/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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/ensureColor.html b/docs/data/UpdateSetting/ensureColor.html new file mode 100644 index 0000000000..ccb263b4b9 --- /dev/null +++ b/docs/data/UpdateSetting/ensureColor.html @@ -0,0 +1,134 @@ + + + + + + + + ensureColor method - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ensureColor
+ +
+ +
+
+
+ +
+
+

ensureColor method +

+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ +ProtoColor +ensureColor() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+ProtoColor ensureColor() => $_ensure(1);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/UpdateSetting/getDefault.html b/docs/data/UpdateSetting/getDefault.html new file mode 100644 index 0000000000..2241a877c3 --- /dev/null +++ b/docs/data/UpdateSetting/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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/hasColor.html b/docs/data/UpdateSetting/hasColor.html new file mode 100644 index 0000000000..b69a9ec2ed --- /dev/null +++ b/docs/data/UpdateSetting/hasColor.html @@ -0,0 +1,134 @@ + + + + + + + + hasColor method - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasColor
+ +
+ +
+
+
+ +
+
+

hasColor method +

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

Implementation

+
@$pb.TagNumber(2)
+$core.bool hasColor() => $_has(1);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/UpdateSetting/hasStatus.html b/docs/data/UpdateSetting/hasStatus.html new file mode 100644 index 0000000000..79eef6b7cc --- /dev/null +++ b/docs/data/UpdateSetting/hasStatus.html @@ -0,0 +1,134 @@ + + + + + + + + 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..1967489dce --- /dev/null +++ b/docs/data/UpdateSetting/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..32cb3d185b --- /dev/null +++ b/docs/data/UpdateSetting/status.html @@ -0,0 +1,165 @@ + + + + + + + + status property - UpdateSetting class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
status
+ +
+ +
+
+
+ +
+
+

status property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ RoverStatus + status + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+RoverStatus get status => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + status=(RoverStatus v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+set status(RoverStatus v) { setField(1, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/VideoCommand-class-sidebar.html b/docs/data/VideoCommand-class-sidebar.html new file mode 100644 index 0000000000..db7d891635 --- /dev/null +++ b/docs/data/VideoCommand-class-sidebar.html @@ -0,0 +1,80 @@ +
    + +
  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. unknownFields
  26. + +
  27. Methods
  28. +
  29. addExtension
  30. +
  31. check
  32. +
  33. clear
  34. +
  35. clearDetails
  36. +
  37. clearExtension
  38. +
  39. clearField
  40. +
  41. clearId
  42. +
  43. clone
  44. +
  45. copyWith
  46. +
  47. createEmptyInstance
  48. +
  49. createMapField
  50. +
  51. createRepeatedField
  52. +
  53. ensureDetails
  54. +
  55. extensionsAreInitialized
  56. +
  57. freeze
  58. +
  59. getDefaultForField
  60. +
  61. getExtension
  62. +
  63. getField
  64. +
  65. getFieldOrNull
  66. +
  67. getTagNumber
  68. +
  69. hasDetails
  70. +
  71. hasExtension
  72. +
  73. hasField
  74. +
  75. hasId
  76. +
  77. hasRequiredFields
  78. +
  79. isInitialized
  80. +
  81. mergeFromBuffer
  82. +
  83. mergeFromCodedBufferReader
  84. +
  85. mergeFromJson
  86. +
  87. mergeFromJsonMap
  88. +
  89. mergeFromMessage
  90. +
  91. mergeFromProto3Json
  92. +
  93. mergeUnknownFields
  94. +
  95. noSuchMethod
  96. +
  97. setExtension
  98. +
  99. setField
  100. +
  101. toBuilder
  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. getDefault
  128. + +
diff --git a/docs/data/VideoCommand-class.html b/docs/data/VideoCommand-class.html new file mode 100644 index 0000000000..30526fd4b3 --- /dev/null +++ b/docs/data/VideoCommand-class.html @@ -0,0 +1,930 @@ + + + + + + + + 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}) +
+
+ +
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
+ +
+ +
+ 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
+ +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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
+ +
+ +
+ 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..e9031ab879 --- /dev/null +++ b/docs/data/VideoCommand/VideoCommand.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..94a42c1147 --- /dev/null +++ b/docs/data/VideoCommand/VideoCommand.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..4efbd7b650 --- /dev/null +++ b/docs/data/VideoCommand/VideoCommand.html @@ -0,0 +1,138 @@ + + + + + + + + VideoCommand constructor - VideoCommand - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
VideoCommand
+ +
+ +
+
+
+ +
+
+

VideoCommand constructor +

+ +
+ + VideoCommand({
  1. String? id,
  2. +
  3. CameraDetails? details,
  4. +
}) +
+ + + + + +
+

Implementation

+
factory VideoCommand({
+  $core.String? id,
+  CameraDetails? details,
+}) {
+  final $result = create();
+  if (id != null) {
+    $result.id = id;
+  }
+  if (details != null) {
+    $result.details = details;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/VideoCommand/clearDetails.html b/docs/data/VideoCommand/clearDetails.html new file mode 100644 index 0000000000..9d11d8e061 --- /dev/null +++ b/docs/data/VideoCommand/clearDetails.html @@ -0,0 +1,134 @@ + + + + + + + + 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..98958a88e9 --- /dev/null +++ b/docs/data/VideoCommand/clearId.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/VideoCommand/clone.html new file mode 100644 index 0000000000..9b8e67f0cb --- /dev/null +++ b/docs/data/VideoCommand/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..83cef3b3dc --- /dev/null +++ b/docs/data/VideoCommand/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..e477a50aa7 --- /dev/null +++ b/docs/data/VideoCommand/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..933d103273 --- /dev/null +++ b/docs/data/VideoCommand/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..5a5f1933af --- /dev/null +++ b/docs/data/VideoCommand/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..45fcb10fcb --- /dev/null +++ b/docs/data/VideoCommand/details.html @@ -0,0 +1,170 @@ + + + + + + + + details property - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
details
+ +
+ +
+
+
+ +
+
+

details property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ CameraDetails + 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. +
+
+ void + 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..307947f184 --- /dev/null +++ b/docs/data/VideoCommand/ensureDetails.html @@ -0,0 +1,134 @@ + + + + + + + + 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/getDefault.html b/docs/data/VideoCommand/getDefault.html new file mode 100644 index 0000000000..b55531061d --- /dev/null +++ b/docs/data/VideoCommand/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..029eb8ac79 --- /dev/null +++ b/docs/data/VideoCommand/hasDetails.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f64e163fc5 --- /dev/null +++ b/docs/data/VideoCommand/hasId.html @@ -0,0 +1,134 @@ + + + + + + + + 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/id.html b/docs/data/VideoCommand/id.html new file mode 100644 index 0000000000..abb97603af --- /dev/null +++ b/docs/data/VideoCommand/id.html @@ -0,0 +1,168 @@ + + + + + + + + id property - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
id
+ +
+ +
+
+
+ +
+
+

id property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ String + id + + +
+ + +
+

/ The unique ID of the camera to change.

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.String get id => $_getSZ(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..f02ab8b6e2 --- /dev/null +++ b/docs/data/VideoCommand/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - VideoCommand class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

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

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/VideoData-class-sidebar.html b/docs/data/VideoData-class-sidebar.html new file mode 100644 index 0000000000..f013f42a6b --- /dev/null +++ b/docs/data/VideoData-class-sidebar.html @@ -0,0 +1,83 @@ +
    + +
  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. info_
  22. +
  23. isFrozen
  24. +
  25. runtimeType
  26. +
  27. unknownFields
  28. + +
  29. Methods
  30. +
  31. addExtension
  32. +
  33. check
  34. +
  35. clear
  36. +
  37. clearDetails
  38. +
  39. clearExtension
  40. +
  41. clearField
  42. +
  43. clearFrame
  44. +
  45. clearId
  46. +
  47. clone
  48. +
  49. copyWith
  50. +
  51. createEmptyInstance
  52. +
  53. createMapField
  54. +
  55. createRepeatedField
  56. +
  57. ensureDetails
  58. +
  59. extensionsAreInitialized
  60. +
  61. freeze
  62. +
  63. getDefaultForField
  64. +
  65. getExtension
  66. +
  67. getField
  68. +
  69. getFieldOrNull
  70. +
  71. getTagNumber
  72. +
  73. hasDetails
  74. +
  75. hasExtension
  76. +
  77. hasField
  78. +
  79. hasFrame
  80. +
  81. hasId
  82. +
  83. hasRequiredFields
  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/VideoData-class.html b/docs/data/VideoData-class.html new file mode 100644 index 0000000000..d9eaf90e35 --- /dev/null +++ b/docs/data/VideoData-class.html @@ -0,0 +1,967 @@ + + + + + + + + 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}) +
+
+ +
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
+ +
+ +
+ 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
+ +
+ +
+
+ +
+

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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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 + + + +
+
+ + + +
+ +
+ 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() + 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..d5ecd96c49 --- /dev/null +++ b/docs/data/VideoData/VideoData.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..31829d7c9b --- /dev/null +++ b/docs/data/VideoData/VideoData.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..c609b99ed7 --- /dev/null +++ b/docs/data/VideoData/VideoData.html @@ -0,0 +1,143 @@ + + + + + + + + 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. +
}) +
+ + + + + +
+

Implementation

+
factory VideoData({
+  $core.String? id,
+  CameraDetails? details,
+  $core.List<$core.int>? frame,
+}) {
+  final $result = create();
+  if (id != null) {
+    $result.id = id;
+  }
+  if (details != null) {
+    $result.details = details;
+  }
+  if (frame != null) {
+    $result.frame = frame;
+  }
+  return $result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/VideoData/clearDetails.html b/docs/data/VideoData/clearDetails.html new file mode 100644 index 0000000000..77231df990 --- /dev/null +++ b/docs/data/VideoData/clearDetails.html @@ -0,0 +1,134 @@ + + + + + + + + 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..be44d3f26f --- /dev/null +++ b/docs/data/VideoData/clearFrame.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d1898bc6c5 --- /dev/null +++ b/docs/data/VideoData/clearId.html @@ -0,0 +1,134 @@ + + + + + + + + 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/clone.html b/docs/data/VideoData/clone.html new file mode 100644 index 0000000000..0baff0d63e --- /dev/null +++ b/docs/data/VideoData/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..282538b9b9 --- /dev/null +++ b/docs/data/VideoData/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..0debd44fe6 --- /dev/null +++ b/docs/data/VideoData/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..7a006a3393 --- /dev/null +++ b/docs/data/VideoData/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..5f80ded1a0 --- /dev/null +++ b/docs/data/VideoData/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..a6d63ab374 --- /dev/null +++ b/docs/data/VideoData/details.html @@ -0,0 +1,168 @@ + + + + + + + + details property - VideoData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
details
+ +
+ +
+
+
+ +
+
+

details property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ CameraDetails + details + + +
+ + +
+

/ The details for this camera.

+
+ + +
+

Implementation

+
@$pb.TagNumber(2)
+CameraDetails get details => $_getN(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..02eefe2bda --- /dev/null +++ b/docs/data/VideoData/ensureDetails.html @@ -0,0 +1,134 @@ + + + + + + + + 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/frame.html b/docs/data/VideoData/frame.html new file mode 100644 index 0000000000..61338bc086 --- /dev/null +++ b/docs/data/VideoData/frame.html @@ -0,0 +1,168 @@ + + + + + + + + frame property - VideoData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
frame
+ +
+ +
+
+
+ +
+
+

frame property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ List<int> + frame + + +
+ + +
+

/ The latest frame from this camera.

+
+ + +
+

Implementation

+
@$pb.TagNumber(3)
+$core.List<$core.int> get frame => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + 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..390ff3f6c7 --- /dev/null +++ b/docs/data/VideoData/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..dbf77226cd --- /dev/null +++ b/docs/data/VideoData/hasDetails.html @@ -0,0 +1,134 @@ + + + + + + + + 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..f27591ea97 --- /dev/null +++ b/docs/data/VideoData/hasFrame.html @@ -0,0 +1,134 @@ + + + + + + + + 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..8f49d0537e --- /dev/null +++ b/docs/data/VideoData/hasId.html @@ -0,0 +1,134 @@ + + + + + + + + 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/id.html b/docs/data/VideoData/id.html new file mode 100644 index 0000000000..a46fa0c211 --- /dev/null +++ b/docs/data/VideoData/id.html @@ -0,0 +1,168 @@ + + + + + + + + id property - VideoData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
id
+ +
+ +
+
+
+ +
+
+

id property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ String + id + + +
+ + +
+

/ The unique ID of this camera.

+
+ + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.String get id => $_getSZ(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + id=(String v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+set id($core.String v) { $_setString(0, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/VideoData/info_.html b/docs/data/VideoData/info_.html new file mode 100644 index 0000000000..9184308996 --- /dev/null +++ b/docs/data/VideoData/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - VideoData class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

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

Implementation

+
$pb.BuilderInfo get info_ => _i;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + 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..c20c3b50a0 --- /dev/null +++ b/docs/data/VideoDataUtils.html @@ -0,0 +1,156 @@ + + + + + + + + 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..3424327793 --- /dev/null +++ b/docs/data/VideoDataUtils/hasFrame.html @@ -0,0 +1,137 @@ + + + + + + + + hasFrame property - VideoDataUtils extension - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasFrame
+ +
+ +
+
+
+ +
+
+ +

hasFrame property +

+ + + +
+ +
+ + bool + 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/WrappedMessage-class-sidebar.html b/docs/data/WrappedMessage-class-sidebar.html new file mode 100644 index 0000000000..34704e4579 --- /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..d55c8ae27f --- /dev/null +++ b/docs/data/WrappedMessage-class.html @@ -0,0 +1,964 @@ + + + + + + + + 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..89af515a61 --- /dev/null +++ b/docs/data/WrappedMessage/WrappedMessage.fromBuffer.html @@ -0,0 +1,126 @@ + + + + + + + + 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..5e98bc495a --- /dev/null +++ b/docs/data/WrappedMessage/WrappedMessage.fromJson.html @@ -0,0 +1,126 @@ + + + + + + + + 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..93ec23cef8 --- /dev/null +++ b/docs/data/WrappedMessage/WrappedMessage.html @@ -0,0 +1,143 @@ + + + + + + + + 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,
+  $2.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..3c3e3198fb --- /dev/null +++ b/docs/data/WrappedMessage/clearData.html @@ -0,0 +1,134 @@ + + + + + + + + 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..e96eede023 --- /dev/null +++ b/docs/data/WrappedMessage/clearName.html @@ -0,0 +1,134 @@ + + + + + + + + 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..8c3e100585 --- /dev/null +++ b/docs/data/WrappedMessage/clearTimestamp.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c441d0a37c --- /dev/null +++ b/docs/data/WrappedMessage/clone.html @@ -0,0 +1,141 @@ + + + + + + + + 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..4299f6fd77 --- /dev/null +++ b/docs/data/WrappedMessage/copyWith.html @@ -0,0 +1,144 @@ + + + + + + + + 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..64d55b1050 --- /dev/null +++ b/docs/data/WrappedMessage/create.html @@ -0,0 +1,129 @@ + + + + + + + + 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..e753086ceb --- /dev/null +++ b/docs/data/WrappedMessage/createEmptyInstance.html @@ -0,0 +1,136 @@ + + + + + + + + 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..4a79baa555 --- /dev/null +++ b/docs/data/WrappedMessage/createRepeated.html @@ -0,0 +1,128 @@ + + + + + + + + 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..05e32c60be --- /dev/null +++ b/docs/data/WrappedMessage/data.html @@ -0,0 +1,165 @@ + + + + + + + + data property - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
data
+ +
+ +
+
+
+ +
+
+

data property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ List<int> + data + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(1)
+$core.List<$core.int> get data => $_getN(0);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(1)
  2. +
+
+ void + 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..837ff6b7cc --- /dev/null +++ b/docs/data/WrappedMessage/ensureTimestamp.html @@ -0,0 +1,134 @@ + + + + + + + + ensureTimestamp method - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ensureTimestamp
+ +
+ +
+
+
+ +
+
+

ensureTimestamp method +

+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ +Timestamp +ensureTimestamp() + + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$2.Timestamp ensureTimestamp() => $_ensure(2);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/WrappedMessage/getDefault.html b/docs/data/WrappedMessage/getDefault.html new file mode 100644 index 0000000000..f8948a754f --- /dev/null +++ b/docs/data/WrappedMessage/getDefault.html @@ -0,0 +1,129 @@ + + + + + + + + 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..21a0276315 --- /dev/null +++ b/docs/data/WrappedMessage/hasData.html @@ -0,0 +1,134 @@ + + + + + + + + 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..a8fe839c25 --- /dev/null +++ b/docs/data/WrappedMessage/hasName.html @@ -0,0 +1,134 @@ + + + + + + + + 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..991070fb8e --- /dev/null +++ b/docs/data/WrappedMessage/hasTimestamp.html @@ -0,0 +1,134 @@ + + + + + + + + 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..b95daf9ed7 --- /dev/null +++ b/docs/data/WrappedMessage/info_.html @@ -0,0 +1,132 @@ + + + + + + + + info_ property - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
info_
+ +
+ +
+
+
+ +
+
+

info_ property +

+ + + +
+ +
+ + BuilderInfo + 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..0171ff6e9c --- /dev/null +++ b/docs/data/WrappedMessage/name.html @@ -0,0 +1,165 @@ + + + + + + + + name property - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
name
+ +
+ +
+
+
+ +
+
+

name property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ String + name + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(2)
+$core.String get name => $_getSZ(1);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(2)
  2. +
+
+ void + 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..63b8c6dfc1 --- /dev/null +++ b/docs/data/WrappedMessage/timestamp.html @@ -0,0 +1,165 @@ + + + + + + + + timestamp property - WrappedMessage class - data library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
timestamp
+ +
+ +
+
+
+ +
+
+

timestamp property +

+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ Timestamp + timestamp + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+$2.Timestamp get timestamp => $_getN(2);
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @TagNumber(3)
  2. +
+
+ void + timestamp=(Timestamp v) + + +
+ + + + +
+

Implementation

+
@$pb.TagNumber(3)
+set timestamp($2.Timestamp v) { setField(3, v); }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/data/WrappedMessageHandler.html b/docs/data/WrappedMessageHandler.html new file mode 100644 index 0000000000..39b5d15c21 --- /dev/null +++ b/docs/data/WrappedMessageHandler.html @@ -0,0 +1,127 @@ + + + + + + + + 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..c2fe9758c0 --- /dev/null +++ b/docs/data/co2-constant.html @@ -0,0 +1,133 @@ + + + + + + + + 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..92c0484892 --- /dev/null +++ b/docs/data/co2Test.html @@ -0,0 +1,134 @@ + + + + + + + + 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..14e5bed4be --- /dev/null +++ b/docs/data/data-library-sidebar.html @@ -0,0 +1,121 @@ +
    +
  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. BurtLog
  20. +
  21. BurtLogLevel
  22. +
  23. CameraDetails
  24. +
  25. CameraName
  26. +
  27. CameraStatus
  28. +
  29. Connect
  30. +
  31. Coordinates
  32. +
  33. DashboardSettings
  34. +
  35. Device
  36. +
  37. DirtReleaseState
  38. +
  39. Disconnect
  40. +
  41. DriveCommand
  42. +
  43. DriveData
  44. +
  45. DriveMetrics
  46. +
  47. EasterEggsSettings
  48. +
  49. GpsCoordinates
  50. +
  51. GripperCommand
  52. +
  53. GripperData
  54. +
  55. GripperMetrics
  56. +
  57. MarsCommand
  58. +
  59. MarsData
  60. +
  61. MarsStatus
  62. +
  63. MetricLine
  64. +
  65. Metrics
  66. +
  67. MotorCommand
  68. +
  69. MotorData
  70. +
  71. MotorDirection
  72. +
  73. NetworkSettings
  74. +
  75. Orientation
  76. +
  77. PositionMetrics
  78. +
  79. ProtoColor
  80. +
  81. PumpState
  82. +
  83. RoverPosition
  84. +
  85. RoverStatus
  86. +
  87. SampleData
  88. +
  89. ScienceCommand
  90. +
  91. ScienceData
  92. +
  93. ScienceMetrics
  94. +
  95. ScienceSensor
  96. +
  97. ScienceSettings
  98. +
  99. ScienceState
  100. +
  101. SensorReading
  102. +
  103. Settings
  104. +
  105. SocketInfo
  106. +
  107. TaskbarMessage
  108. +
  109. Timestamp
  110. +
  111. UpdateSetting
  112. +
  113. VideoCommand
  114. +
  115. VideoData
  116. +
  117. WrappedMessage
  118. + +
  119. Enums
  120. +
  121. OperatingMode
  122. +
  123. RoverType
  124. +
  125. ScienceResult
  126. +
  127. Severity
  128. +
  129. SplitMode
  130. + + + +
  131. Constants
  132. +
  133. co2
  134. +
  135. humidity
  136. +
  137. sensors
  138. +
  139. temperature
  140. + + +
  141. Functions
  142. +
  143. co2Test
  144. +
  145. getCommandName
  146. +
  147. getDataName
  148. +
  149. humidityTest
  150. +
  151. temperatureTest
  152. + +
  153. Typedefs
  154. +
  155. Json
  156. +
  157. Message
  158. +
  159. MessageDecoder
  160. +
  161. MessageHandler
  162. +
  163. RawDataHandler
  164. +
  165. ScienceTest
  166. +
  167. WrappedMessageHandler
  168. + + +
  169. Extensions
  170. +
  171. AutonomyStateUtils
  172. +
  173. AutonomyTaskUtils
  174. +
  175. CameraNameUtils
  176. +
  177. CameraStatusUtils
  178. +
  179. CoordinatesUtils
  180. +
  181. DateTimeTimestamp
  182. +
  183. DeviceUtils
  184. +
  185. GeneratedMessageGenericExtensions
  186. +
  187. GpsUtils
  188. +
  189. LimitedList
  190. +
  191. LogFormat
  192. +
  193. LogLevelUtils
  194. +
  195. MapRecords
  196. +
  197. MarsStatusUtils
  198. +
  199. MessageUtils
  200. +
  201. MotorDirectionUtils
  202. +
  203. NumUtils
  204. +
  205. RoverStatusHumanName
  206. +
  207. ScienceStateUtils
  208. +
  209. SettingsParser
  210. +
  211. ThemeModeUtils
  212. +
  213. TimestampUtils
  214. +
  215. UndefinedFilter
  216. +
  217. Unwrapper
  218. +
  219. VideoDataUtils
  220. +
diff --git a/docs/data/data-library.html b/docs/data/data-library.html new file mode 100644 index 0000000000..f3a9d928a1 --- /dev/null +++ b/docs/data/data-library.html @@ -0,0 +1,1187 @@ + + + + + + + + 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 + +
+
+ +
+ +
+ BurtLog + +
+
+ +
+ +
+ BurtLogLevel + +
+
+ +
+ +
+ CameraDetails + +
+
+ / Details about a specific camera. +
+ +
+ CameraName + +
+
+ +
+ +
+ CameraStatus + +
+
+ +
+ +
+ Connect + +
+
+ Used for a simple handshake between devices. +
+ +
+ Coordinates + +
+
+ +
+ +
+ DashboardSettings + +
+
+ Settings related to the dashboard itself, not the rover. +
+ +
+ Device + +
+
+ +
+ +
+ DirtReleaseState + +
+
+ +
+ +
+ 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 + +
+
+ +
+ +
+ 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 + +
+
+ +
+ +
+ ScienceData + +
+
+ +
+ +
+ ScienceMetrics + +
+
+ Metrics reported by the science subsystem. +
+ +
+ ScienceSensor + +
+
+ A sensor in the science subsystem. +
+ +
+ ScienceSettings + +
+
+ Settings relating to science. +
+ +
+ ScienceState + +
+
+ +
+ +
+ SensorReading + +
+
+ A sensor reading with a timestamp. +
+ +
+ 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. +
+ +
+ VideoCommand + +
+
+ / Make changes to a camera feed. +
+ +
+ VideoData + +
+
+ / Reports data about a camera. +
+ +
+ 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. +
+ + +
+ 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. +
+ + +
+ MarsStatusUtils + on MarsStatus + + +
+
+ Utilities for MarsStatuses. +
+ + +
+ 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. +
+ + +
+ 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..8a9986ec4b --- /dev/null +++ b/docs/data/getCommandName.html @@ -0,0 +1,138 @@ + + + + + + + + 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..3f1356f112 --- /dev/null +++ b/docs/data/getDataName.html @@ -0,0 +1,138 @@ + + + + + + + + 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..5a6c08fcde --- /dev/null +++ b/docs/data/humidity-constant.html @@ -0,0 +1,133 @@ + + + + + + + + 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..6722e86782 --- /dev/null +++ b/docs/data/humidityTest.html @@ -0,0 +1,133 @@ + + + + + + + + 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..6c2036d204 --- /dev/null +++ b/docs/data/sensors-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..3b98a2bcac --- /dev/null +++ b/docs/data/temperature-constant.html @@ -0,0 +1,133 @@ + + + + + + + + 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..7e7548e8e5 --- /dev/null +++ b/docs/data/temperatureTest.html @@ -0,0 +1,133 @@ + + + + + + + + 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..3d7cdf83eb --- /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..e088b2c68c --- /dev/null +++ b/docs/errors/DashboardException-class.html @@ -0,0 +1,250 @@ + + + + + + + + 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..bf80312a76 --- /dev/null +++ b/docs/errors/DashboardException/DashboardException.html @@ -0,0 +1,128 @@ + + + + + + + + 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..a872fa98b4 --- /dev/null +++ b/docs/errors/DashboardException/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - DashboardException class - errors library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..41ffc15675 --- /dev/null +++ b/docs/errors/DashboardException/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..5d23317adf --- /dev/null +++ b/docs/errors/DashboardException/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..182daf0cb0 --- /dev/null +++ b/docs/errors/DashboardException/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - DashboardException class - errors library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..1e16021d55 --- /dev/null +++ b/docs/errors/DashboardException/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..74bd9ad53b --- /dev/null +++ b/docs/errors/errors-library.html @@ -0,0 +1,153 @@ + + + + + + + + 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..45062dd92e --- /dev/null +++ b/docs/index.html @@ -0,0 +1,221 @@ + + + + + + + + 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..7137e9ec51 --- /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":"data","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":"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":"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":"ArmCommand.fromBuffer","qualifiedName":"data.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.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":"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":"ikX","qualifiedName":"data.ArmCommand.ikX","href":"data/ArmCommand/ikX.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","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":"ArmData","qualifiedName":"data.ArmData","href":"data/ArmData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"data","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":"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":"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":"ArmData.fromBuffer","qualifiedName":"data.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.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":"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":"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":"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":"data","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":"ArmSettings","qualifiedName":"data.ArmSettings","href":"data/ArmSettings-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Settings relating to the arm.","enclosedBy":{"name":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.ArmSettings.==","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":"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":"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":"ArmSettings.fromJson","qualifiedName":"data.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":"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":"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":"data","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":"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":"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":"AutonomyCommand.fromBuffer","qualifiedName":"data.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.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":"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":"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":"AutonomyData","qualifiedName":"data.AutonomyData","href":"data/AutonomyData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"data","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":"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":"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":"AutonomyData.fromBuffer","qualifiedName":"data.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.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":"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":"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":"AutonomyState","qualifiedName":"data.AutonomyState","href":"data/AutonomyState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"data","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":"data","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":"data","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":"data","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":"BurtLog","qualifiedName":"data.BurtLog","href":"data/BurtLog-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"data","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":"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":"BurtLog.fromBuffer","qualifiedName":"data.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.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":"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":"data","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":"data","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":"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":"CameraDetails.fromBuffer","qualifiedName":"data.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.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":"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":"data","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":"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":"data","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":"data","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":"data","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":"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":"data","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":"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":"Connect.fromBuffer","qualifiedName":"data.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.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":"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":"data","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":"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":"Coordinates.fromBuffer","qualifiedName":"data.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.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":"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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator +","qualifiedName":"data.CoordinatesUtils.+","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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.DashboardSettings.==","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":"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.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":"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":"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":"DateTimeTimestamp","qualifiedName":"data.DateTimeTimestamp","href":"data/DateTimeTimestamp.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Helpful extensions on DateTimes.","enclosedBy":{"name":"data","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":"data","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":"data","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":"DirtReleaseState","qualifiedName":"data.DirtReleaseState","href":"data/DirtReleaseState-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"data","kind":9,"href":"data/data-library.html"}},{"name":"CLOSE_DIRT","qualifiedName":"data.DirtReleaseState.CLOSE_DIRT","href":"data/DirtReleaseState/CLOSE_DIRT-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DirtReleaseState","kind":3,"href":"data/DirtReleaseState-class.html"}},{"name":"DIRT_RELEASE_STATE_UNDEFINED","qualifiedName":"data.DirtReleaseState.DIRT_RELEASE_STATE_UNDEFINED","href":"data/DirtReleaseState/DIRT_RELEASE_STATE_UNDEFINED-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DirtReleaseState","kind":3,"href":"data/DirtReleaseState-class.html"}},{"name":"OPEN_DIRT","qualifiedName":"data.DirtReleaseState.OPEN_DIRT","href":"data/DirtReleaseState/OPEN_DIRT-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DirtReleaseState","kind":3,"href":"data/DirtReleaseState-class.html"}},{"name":"valueOf","qualifiedName":"data.DirtReleaseState.valueOf","href":"data/DirtReleaseState/valueOf.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DirtReleaseState","kind":3,"href":"data/DirtReleaseState-class.html"}},{"name":"values","qualifiedName":"data.DirtReleaseState.values","href":"data/DirtReleaseState/values-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"DirtReleaseState","kind":3,"href":"data/DirtReleaseState-class.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":"data","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":"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":"Disconnect.fromBuffer","qualifiedName":"data.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.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":"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":"data","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":"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":"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":"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":"DriveCommand.fromBuffer","qualifiedName":"data.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.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":"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":"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":"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":"DriveData","qualifiedName":"data.DriveData","href":"data/DriveData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"data","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":"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":"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":"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":"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":"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":"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":"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":"DriveData.fromBuffer","qualifiedName":"data.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.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":"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":"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":"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":"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":"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":"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":"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":"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":"DriveMetrics","qualifiedName":"data.DriveMetrics","href":"data/DriveMetrics-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Metrics reported by the drive subsystem.","enclosedBy":{"name":"data","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":"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":"EasterEggsSettings","qualifiedName":"data.EasterEggsSettings","href":"data/EasterEggsSettings-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Settings relating to easter eggs.","enclosedBy":{"name":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.EasterEggsSettings.==","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":"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":"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":"EasterEggsSettings.fromJson","qualifiedName":"data.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":"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":"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":"data","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":"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":"GpsCoordinates.fromBuffer","qualifiedName":"data.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.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":"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":"data","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":"data","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":"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":"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":"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":"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":"GripperCommand.fromBuffer","qualifiedName":"data.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.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":"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":"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":"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":"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":"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":"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":"GripperData","qualifiedName":"data.GripperData","href":"data/GripperData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"data","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":"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":"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":"GripperData.fromBuffer","qualifiedName":"data.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.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":"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":"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":"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":"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":"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":"data","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":"Json","qualifiedName":"data.Json","href":"data/Json.html","kind":21,"overriddenDepth":0,"packageRank":0,"desc":"JSON data as a map.","enclosedBy":{"name":"data","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":"data","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":"data","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":"data","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":"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":"data","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":"data","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":"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":"MarsCommand.fromBuffer","qualifiedName":"data.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.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":"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":"data","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":"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":"MarsData.fromBuffer","qualifiedName":"data.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.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":"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":"data","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":"MarsStatusUtils","qualifiedName":"data.MarsStatusUtils","href":"data/MarsStatusUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Utilities for MarsStatuses.","enclosedBy":{"name":"data","kind":9,"href":"data/data-library.html"}},{"name":"humanName","qualifiedName":"data.MarsStatusUtils.humanName","href":"data/MarsStatusUtils/humanName.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The human-readable name of the status","enclosedBy":{"name":"MarsStatusUtils","kind":6,"href":"data/MarsStatusUtils.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":"data","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":"data","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":"data","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":"data","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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.MetricLine.==","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":"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":"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":"data","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":"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":"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":"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":"MotorCommand","qualifiedName":"data.MotorCommand","href":"data/MotorCommand-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"data","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":"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":"MotorCommand.fromBuffer","qualifiedName":"data.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.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":"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":"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":"data","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":"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":"MotorData.fromBuffer","qualifiedName":"data.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.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":"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":"data","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":"data","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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.NetworkSettings.==","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":"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":"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":"NetworkSettings.fromJson","qualifiedName":"data.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":"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":"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":"data","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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.OperatingMode.==","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":"OperatingMode","qualifiedName":"data.OperatingMode.OperatingMode","href":"data/OperatingMode/OperatingMode.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Describes an operating mode.","enclosedBy":{"name":"OperatingMode","kind":5,"href":"data/OperatingMode.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":"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":"data","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":"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":"Orientation.fromBuffer","qualifiedName":"data.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.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":"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":"data","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":"update","qualifiedName":"data.PositionMetrics.update","href":"data/PositionMetrics/update.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Updates data with new data.","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":"data","kind":9,"href":"data/data-library.html"}},{"name":"ProtoColor","qualifiedName":"data.ProtoColor.ProtoColor","href":"data/ProtoColor/ProtoColor.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"blue","qualifiedName":"data.ProtoColor.blue","href":"data/ProtoColor/blue.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"clearBlue","qualifiedName":"data.ProtoColor.clearBlue","href":"data/ProtoColor/clearBlue.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"clearGreen","qualifiedName":"data.ProtoColor.clearGreen","href":"data/ProtoColor/clearGreen.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"clearRed","qualifiedName":"data.ProtoColor.clearRed","href":"data/ProtoColor/clearRed.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"clone","qualifiedName":"data.ProtoColor.clone","href":"data/ProtoColor/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":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"copyWith","qualifiedName":"data.ProtoColor.copyWith","href":"data/ProtoColor/copyWith.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Apply updates to a copy of this message.","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"create","qualifiedName":"data.ProtoColor.create","href":"data/ProtoColor/create.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"createEmptyInstance","qualifiedName":"data.ProtoColor.createEmptyInstance","href":"data/ProtoColor/createEmptyInstance.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Creates an empty instance of the same message type as this.","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"createRepeated","qualifiedName":"data.ProtoColor.createRepeated","href":"data/ProtoColor/createRepeated.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"ProtoColor.fromBuffer","qualifiedName":"data.ProtoColor.fromBuffer","href":"data/ProtoColor/ProtoColor.fromBuffer.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"ProtoColor.fromJson","qualifiedName":"data.ProtoColor.fromJson","href":"data/ProtoColor/ProtoColor.fromJson.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"getDefault","qualifiedName":"data.ProtoColor.getDefault","href":"data/ProtoColor/getDefault.html","kind":10,"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.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"hasBlue","qualifiedName":"data.ProtoColor.hasBlue","href":"data/ProtoColor/hasBlue.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"hasGreen","qualifiedName":"data.ProtoColor.hasGreen","href":"data/ProtoColor/hasGreen.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"hasRed","qualifiedName":"data.ProtoColor.hasRed","href":"data/ProtoColor/hasRed.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ProtoColor","kind":3,"href":"data/ProtoColor-class.html"}},{"name":"info_","qualifiedName":"data.ProtoColor.info_","href":"data/ProtoColor/info_.html","kind":16,"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.html","kind":16,"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":"","enclosedBy":{"name":"data","kind":9,"href":"data/data-library.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":"data","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":"data","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":"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":"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":"RoverPosition.fromBuffer","qualifiedName":"data.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.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":"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":"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":"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":"data","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":"data","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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.RoverType.==","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":"RoverType","qualifiedName":"data.RoverType.RoverType","href":"data/RoverType/RoverType.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"RoverType","kind":5,"href":"data/RoverType.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":"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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.SampleData.==","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":"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":"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":"","enclosedBy":{"name":"data","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":"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":"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":"clearDirtCarousel","qualifiedName":"data.ScienceCommand.clearDirtCarousel","href":"data/ScienceCommand/clearDirtCarousel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearDirtLinear","qualifiedName":"data.ScienceCommand.clearDirtLinear","href":"data/ScienceCommand/clearDirtLinear.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearDirtRelease","qualifiedName":"data.ScienceCommand.clearDirtRelease","href":"data/ScienceCommand/clearDirtRelease.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearNextSection","qualifiedName":"data.ScienceCommand.clearNextSection","href":"data/ScienceCommand/clearNextSection.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearNextTube","qualifiedName":"data.ScienceCommand.clearNextTube","href":"data/ScienceCommand/clearNextTube.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearPump1","qualifiedName":"data.ScienceCommand.clearPump1","href":"data/ScienceCommand/clearPump1.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearPump2","qualifiedName":"data.ScienceCommand.clearPump2","href":"data/ScienceCommand/clearPump2.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearPump3","qualifiedName":"data.ScienceCommand.clearPump3","href":"data/ScienceCommand/clearPump3.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearPump4","qualifiedName":"data.ScienceCommand.clearPump4","href":"data/ScienceCommand/clearPump4.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":"clearScienceLinear","qualifiedName":"data.ScienceCommand.clearScienceLinear","href":"data/ScienceCommand/clearScienceLinear.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":"clearVacuum","qualifiedName":"data.ScienceCommand.clearVacuum","href":"data/ScienceCommand/clearVacuum.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"clearVacuumLinear","qualifiedName":"data.ScienceCommand.clearVacuumLinear","href":"data/ScienceCommand/clearVacuumLinear.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":"dirtCarousel","qualifiedName":"data.ScienceCommand.dirtCarousel","href":"data/ScienceCommand/dirtCarousel.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":"dirtLinear","qualifiedName":"data.ScienceCommand.dirtLinear","href":"data/ScienceCommand/dirtLinear.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"dirtRelease","qualifiedName":"data.ScienceCommand.dirtRelease","href":"data/ScienceCommand/dirtRelease.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"ScienceCommand.fromBuffer","qualifiedName":"data.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.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":"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":"hasDirtCarousel","qualifiedName":"data.ScienceCommand.hasDirtCarousel","href":"data/ScienceCommand/hasDirtCarousel.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasDirtLinear","qualifiedName":"data.ScienceCommand.hasDirtLinear","href":"data/ScienceCommand/hasDirtLinear.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasDirtRelease","qualifiedName":"data.ScienceCommand.hasDirtRelease","href":"data/ScienceCommand/hasDirtRelease.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasNextSection","qualifiedName":"data.ScienceCommand.hasNextSection","href":"data/ScienceCommand/hasNextSection.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasNextTube","qualifiedName":"data.ScienceCommand.hasNextTube","href":"data/ScienceCommand/hasNextTube.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasPump1","qualifiedName":"data.ScienceCommand.hasPump1","href":"data/ScienceCommand/hasPump1.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasPump2","qualifiedName":"data.ScienceCommand.hasPump2","href":"data/ScienceCommand/hasPump2.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasPump3","qualifiedName":"data.ScienceCommand.hasPump3","href":"data/ScienceCommand/hasPump3.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasPump4","qualifiedName":"data.ScienceCommand.hasPump4","href":"data/ScienceCommand/hasPump4.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":"hasScienceLinear","qualifiedName":"data.ScienceCommand.hasScienceLinear","href":"data/ScienceCommand/hasScienceLinear.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":"hasVacuum","qualifiedName":"data.ScienceCommand.hasVacuum","href":"data/ScienceCommand/hasVacuum.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"hasVacuumLinear","qualifiedName":"data.ScienceCommand.hasVacuumLinear","href":"data/ScienceCommand/hasVacuumLinear.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":"nextSection","qualifiedName":"data.ScienceCommand.nextSection","href":"data/ScienceCommand/nextSection.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"nextTube","qualifiedName":"data.ScienceCommand.nextTube","href":"data/ScienceCommand/nextTube.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"pump1","qualifiedName":"data.ScienceCommand.pump1","href":"data/ScienceCommand/pump1.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Pumps","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"pump2","qualifiedName":"data.ScienceCommand.pump2","href":"data/ScienceCommand/pump2.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"pump3","qualifiedName":"data.ScienceCommand.pump3","href":"data/ScienceCommand/pump3.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"pump4","qualifiedName":"data.ScienceCommand.pump4","href":"data/ScienceCommand/pump4.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","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":"scienceLinear","qualifiedName":"data.ScienceCommand.scienceLinear","href":"data/ScienceCommand/scienceLinear.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":"vacuum","qualifiedName":"data.ScienceCommand.vacuum","href":"data/ScienceCommand/vacuum.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Vacuum","enclosedBy":{"name":"ScienceCommand","kind":3,"href":"data/ScienceCommand-class.html"}},{"name":"vacuumLinear","qualifiedName":"data.ScienceCommand.vacuumLinear","href":"data/ScienceCommand/vacuumLinear.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":"","enclosedBy":{"name":"data","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":"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":"clearMethane","qualifiedName":"data.ScienceData.clearMethane","href":"data/ScienceData/clearMethane.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"clearPH","qualifiedName":"data.ScienceData.clearPH","href":"data/ScienceData/clearPH.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":"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":"","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":"ScienceData.fromBuffer","qualifiedName":"data.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.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":"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":"hasMethane","qualifiedName":"data.ScienceData.hasMethane","href":"data/ScienceData/hasMethane.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"hasPH","qualifiedName":"data.ScienceData.hasPH","href":"data/ScienceData/hasPH.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":"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":"methane","qualifiedName":"data.ScienceData.methane","href":"data/ScienceData/methane.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceData","kind":3,"href":"data/ScienceData-class.html"}},{"name":"pH","qualifiedName":"data.ScienceData.pH","href":"data/ScienceData/pH.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":"","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":"ScienceMetrics","qualifiedName":"data.ScienceMetrics","href":"data/ScienceMetrics-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Metrics reported by the science subsystem.","enclosedBy":{"name":"data","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":"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":"ScienceResult","qualifiedName":"data.ScienceResult","href":"data/ScienceResult.html","kind":5,"overriddenDepth":0,"packageRank":0,"desc":"The result of a science test.","enclosedBy":{"name":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.ScienceResult.==","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":"ScienceResult","qualifiedName":"data.ScienceResult.ScienceResult","href":"data/ScienceResult/ScienceResult.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"ScienceResult","kind":5,"href":"data/ScienceResult.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":"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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.ScienceSensor.==","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":"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":"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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.ScienceSettings.==","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":"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.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":"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":"","enclosedBy":{"name":"data","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":"data","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":"data","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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.SensorReading.==","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":"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":"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":"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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.Settings.==","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":"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":"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":"Settings.fromJson","qualifiedName":"data.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":"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":"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":"data","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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.Severity.==","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":"Severity","qualifiedName":"data.Severity.Severity","href":"data/Severity/Severity.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"Severity","kind":5,"href":"data/Severity.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":"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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.SocketInfo.==","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":"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":"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":"SocketInfo.fromJson","qualifiedName":"data.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":"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":"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":"SocketInfo.raw","qualifiedName":"data.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":"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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.SplitMode.==","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":"SplitMode","qualifiedName":"data.SplitMode.SplitMode","href":"data/SplitMode/SplitMode.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"SplitMode","kind":5,"href":"data/SplitMode.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":"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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator ==","qualifiedName":"data.TaskbarMessage.==","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":"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":"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":"data","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":"data","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":"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":"Timestamp.fromBuffer","qualifiedName":"data.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":"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":"Timestamp.fromJson","qualifiedName":"data.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":"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":"data","kind":9,"href":"data/data-library.html"}},{"name":"operator +","qualifiedName":"data.TimestampUtils.+","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.-","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":"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":"UndefinedFilter","qualifiedName":"data.UndefinedFilter","href":"data/UndefinedFilter.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Utilities for a list of Protobuf enums.","enclosedBy":{"name":"data","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":"data","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":"data","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":"clearColor","qualifiedName":"data.UpdateSetting.clearColor","href":"data/UpdateSetting/clearColor.html","kind":10,"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":"color","qualifiedName":"data.UpdateSetting.color","href":"data/UpdateSetting/color.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"","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":"ensureColor","qualifiedName":"data.UpdateSetting.ensureColor","href":"data/UpdateSetting/ensureColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"UpdateSetting","kind":3,"href":"data/UpdateSetting-class.html"}},{"name":"UpdateSetting.fromBuffer","qualifiedName":"data.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.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":"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":"hasColor","qualifiedName":"data.UpdateSetting.hasColor","href":"data/UpdateSetting/hasColor.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":"VideoCommand","qualifiedName":"data.VideoCommand","href":"data/VideoCommand-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ Make changes to a camera feed.","enclosedBy":{"name":"data","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":"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":"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":"VideoCommand.fromBuffer","qualifiedName":"data.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.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":"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":"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":"VideoData","qualifiedName":"data.VideoData","href":"data/VideoData-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"/ Reports data about a camera.","enclosedBy":{"name":"data","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":"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":"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":"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":"VideoData.fromBuffer","qualifiedName":"data.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.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":"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":"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":"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":"VideoDataUtils","qualifiedName":"data.VideoDataUtils","href":"data/VideoDataUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Extensions for VideoData.","enclosedBy":{"name":"data","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":"WrappedMessage","qualifiedName":"data.WrappedMessage","href":"data/WrappedMessage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"data","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":"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":"WrappedMessage.fromBuffer","qualifiedName":"data.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.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":"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":"data","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":"data","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":"data","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":"data","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":"data","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":"data","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":"operator ==","qualifiedName":"errors.DashboardException.==","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":"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":"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":"models","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":"models","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":"updateIK","qualifiedName":"models.ArmControls.updateIK","href":"models/ArmControls/updateIK.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the IK coordinates by the given offsets.","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":"models","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":"models","kind":9,"href":"models/models-library.html"}},{"name":"operator ==","qualifiedName":"models.AutonomyCell.==","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":"AutonomyCell","qualifiedName":"models.AutonomyCell.AutonomyCell","href":"models/AutonomyCell/AutonomyCell.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"AutonomyCell","kind":5,"href":"models/AutonomyCell.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":"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":"models","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":"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":"models","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":"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":"models","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":"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":"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":"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":"models","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":"error","qualifiedName":"models.CameraDetailsBuilder.error","href":"models/CameraDetailsBuilder/error.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The error that occurrec 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":"models","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":"color","qualifiedName":"models.ColorBuilder.color","href":"models/ColorBuilder/color.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The color to show in the UI.","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":"isValid","qualifiedName":"models.ColorBuilder.isValid","href":"models/ColorBuilder/isValid.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Whether the value in the UI is valid.","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":"Sets the LED strip on the rover to the color in value.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"slider","qualifiedName":"models.ColorBuilder.slider","href":"models/ColorBuilder/slider.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value of the color slider in the UI.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"updateSlider","qualifiedName":"models.ColorBuilder.updateSlider","href":"models/ColorBuilder/updateSlider.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates color based on the slider value.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"value","qualifiedName":"models.ColorBuilder.value","href":"models/ColorBuilder/value.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The value being updated in the UI.","enclosedBy":{"name":"ColorBuilder","kind":3,"href":"models/ColorBuilder-class.html"}},{"name":"ColorUtils","qualifiedName":"models.ColorUtils","href":"models/ColorUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Utilities for color data.","enclosedBy":{"name":"models","kind":9,"href":"models/models-library.html"}},{"name":"fromColor","qualifiedName":"models.ColorUtils.fromColor","href":"models/ColorUtils/fromColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Creates a new ProtoColor from a Flutter Color.","enclosedBy":{"name":"ColorUtils","kind":6,"href":"models/ColorUtils.html"}},{"name":"toColor","qualifiedName":"models.ColorUtils.toColor","href":"models/ColorUtils/toColor.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Converts this message to a Flutter Color.","enclosedBy":{"name":"ColorUtils","kind":6,"href":"models/ColorUtils.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":"models","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":"gamepadIndex","qualifiedName":"models.Controller.gamepadIndex","href":"models/Controller/gamepadIndex.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The index of the gamepad to read from. Does not match Gamepad.controller.","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":"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":"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":"models","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":"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":"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":"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":"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":"DashboardView","qualifiedName":"models.DashboardView","href":"models/DashboardView-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A view in the UI.","enclosedBy":{"name":"models","kind":9,"href":"models/models-library.html"}},{"name":"operator ==","qualifiedName":"models.DashboardView.==","href":"models/DashboardView/operator_equals.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"The equality operator.","enclosedBy":{"name":"DashboardView","kind":3,"href":"models/DashboardView-class.html"}},{"name":"DashboardView","qualifiedName":"models.DashboardView.DashboardView","href":"models/DashboardView/DashboardView.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"DashboardView","kind":3,"href":"models/DashboardView-class.html"}},{"name":"blank","qualifiedName":"models.DashboardView.blank","href":"models/DashboardView/blank.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A blank view.","enclosedBy":{"name":"DashboardView","kind":3,"href":"models/DashboardView-class.html"}},{"name":"builder","qualifiedName":"models.DashboardView.builder","href":"models/DashboardView/builder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A function to build this view.","enclosedBy":{"name":"DashboardView","kind":3,"href":"models/DashboardView-class.html"}},{"name":"cameraViews","qualifiedName":"models.DashboardView.cameraViews","href":"models/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":"models/DashboardView-class.html"}},{"name":"flutterKey","qualifiedName":"models.DashboardView.flutterKey","href":"models/DashboardView/flutterKey.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The Flutter widget key for this view.","enclosedBy":{"name":"DashboardView","kind":3,"href":"models/DashboardView-class.html"}},{"name":"hashCode","qualifiedName":"models.DashboardView.hashCode","href":"models/DashboardView/hashCode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The hash code for this object.","enclosedBy":{"name":"DashboardView","kind":3,"href":"models/DashboardView-class.html"}},{"name":"key","qualifiedName":"models.DashboardView.key","href":"models/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":"models/DashboardView-class.html"}},{"name":"name","qualifiedName":"models.DashboardView.name","href":"models/DashboardView/name.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The name of the view.","enclosedBy":{"name":"DashboardView","kind":3,"href":"models/DashboardView-class.html"}},{"name":"noSuchMethod","qualifiedName":"models.DashboardView.noSuchMethod","href":"models/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":"models/DashboardView-class.html"}},{"name":"runtimeType","qualifiedName":"models.DashboardView.runtimeType","href":"models/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":"models/DashboardView-class.html"}},{"name":"toString","qualifiedName":"models.DashboardView.toString","href":"models/DashboardView/toString.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"A string representation of this object.","enclosedBy":{"name":"DashboardView","kind":3,"href":"models/DashboardView-class.html"}},{"name":"uiViews","qualifiedName":"models.DashboardView.uiViews","href":"models/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":"models/DashboardView-class.html"}},{"name":"DriveControls","qualifiedName":"models.DriveControls","href":"models/DriveControls-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A RoverControls that drives the rover.","enclosedBy":{"name":"models","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":"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":"EasterEggsSettingsBuilder","qualifiedName":"models.EasterEggsSettingsBuilder","href":"models/EasterEggsSettingsBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder that modifies an EasterEggsSettings.","enclosedBy":{"name":"models","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":"models","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 ScienceTestBuilders in 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":"models","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":"models","kind":9,"href":"models/models-library.html"}},{"name":"operator ==","qualifiedName":"models.GpsType.==","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":"GpsType","qualifiedName":"models.GpsType.GpsType","href":"models/GpsType/GpsType.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"GpsType","kind":5,"href":"models/GpsType.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":"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":"models","kind":9,"href":"models/models-library.html"}},{"name":"operator ==","qualifiedName":"models.GridOffset.==","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":"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":"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":"models","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":"models","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":"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":"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":"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":"models","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":"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":"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":"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":"models","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":"update","qualifiedName":"models.LogsViewModel.update","href":"models/LogsViewModel/update.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Updates the UI.","enclosedBy":{"name":"LogsViewModel","kind":3,"href":"models/LogsViewModel-class.html"}},{"name":"MarsControls","qualifiedName":"models.MarsControls","href":"models/MarsControls-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A RoverControls for the MARS subsystems.","enclosedBy":{"name":"models","kind":9,"href":"models/models-library.html"}},{"name":"MarsControls","qualifiedName":"models.MarsControls.MarsControls","href":"models/MarsControls/MarsControls.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MarsControls","kind":3,"href":"models/MarsControls-class.html"}},{"name":"buttonMapping","qualifiedName":"models.MarsControls.buttonMapping","href":"models/MarsControls/buttonMapping.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A human-readable explanation of what the controls are.","enclosedBy":{"name":"MarsControls","kind":3,"href":"models/MarsControls-class.html"}},{"name":"mode","qualifiedName":"models.MarsControls.mode","href":"models/MarsControls/mode.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The OperatingMode for these controls.","enclosedBy":{"name":"MarsControls","kind":3,"href":"models/MarsControls-class.html"}},{"name":"onDispose","qualifiedName":"models.MarsControls.onDispose","href":"models/MarsControls/onDispose.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A list of commands that disables the subsystem.","enclosedBy":{"name":"MarsControls","kind":3,"href":"models/MarsControls-class.html"}},{"name":"parseInputs","qualifiedName":"models.MarsControls.parseInputs","href":"models/MarsControls/parseInputs.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Return a list of commands based on the current state of the gamepad.","enclosedBy":{"name":"MarsControls","kind":3,"href":"models/MarsControls-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":"models","kind":9,"href":"models/models-library.html"}},{"name":"operator ==","qualifiedName":"models.MessagesModel.==","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":"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":"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":"models","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":"models","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":"NetworkSettingsBuilder","qualifiedName":"models.NetworkSettingsBuilder","href":"models/NetworkSettingsBuilder-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A ValueBuilder representing a NetworkSettings.","enclosedBy":{"name":"models","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":"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":"models","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":"models","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":"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":"models","kind":9,"href":"models/models-library.html"}},{"name":"operator ==","qualifiedName":"models.RequestNotAccepted.==","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":"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":"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":"models","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":"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":"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":"models","kind":9,"href":"models/models-library.html"}},{"name":"operator ==","qualifiedName":"models.RoverControls.==","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":"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":"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":"RoverControls.forMode","qualifiedName":"models.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":"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":"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":"models","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":"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":"ScienceAnalysis","qualifiedName":"models.ScienceAnalysis","href":"models/ScienceAnalysis-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"Analysis for one sample and sensor.","enclosedBy":{"name":"models","kind":9,"href":"models/models-library.html"}},{"name":"operator ==","qualifiedName":"models.ScienceAnalysis.==","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":"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":"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":"models","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":"models","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":"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":"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":"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":"models","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":"models","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":"models","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":"models","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":"models","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":"models","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":"models","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":"models","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":"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":"models","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":"models","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":"models","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":"models","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":"models","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":"models","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":"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 oldView with the newView.","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":"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":"ViewsSelector","qualifiedName":"models.ViewsSelector","href":"models/ViewsSelector-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A button for the user to select a new view.","enclosedBy":{"name":"models","kind":9,"href":"models/models-library.html"}},{"name":"ViewsSelector","qualifiedName":"models.ViewsSelector.ViewsSelector","href":"models/ViewsSelector/ViewsSelector.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"A const constructor.","enclosedBy":{"name":"ViewsSelector","kind":3,"href":"models/ViewsSelector-class.html"}},{"name":"build","qualifiedName":"models.ViewsSelector.build","href":"models/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":"models/ViewsSelector-class.html"}},{"name":"currentView","qualifiedName":"models.ViewsSelector.currentView","href":"models/ViewsSelector/currentView.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The current view to swap with the user's choice of view.","enclosedBy":{"name":"ViewsSelector","kind":3,"href":"models/ViewsSelector-class.html"}},{"name":"getCameraStatus","qualifiedName":"models.ViewsSelector.getCameraStatus","href":"models/ViewsSelector/getCameraStatus.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"An icon to indicate the status of the given camera.","enclosedBy":{"name":"ViewsSelector","kind":3,"href":"models/ViewsSelector-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":"maxColor","qualifiedName":"models.maxColor","href":"models/maxColor.html","kind":20,"overriddenDepth":0,"packageRank":0,"desc":"The rightmost color on the spectrum.","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":"minColor","qualifiedName":"models.minColor","href":"models/minColor.html","kind":20,"overriddenDepth":0,"packageRank":0,"desc":"The leftmost color on the spectrum.","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":"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":"pages","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":"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":"pages","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":"ElectricalPage","qualifiedName":"pages.ElectricalPage","href":"pages/ElectricalPage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The UI for the electrical subsystem.","enclosedBy":{"name":"pages","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":"","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":"HomePage","qualifiedName":"pages.HomePage","href":"pages/HomePage-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"The main dashboard page.","enclosedBy":{"name":"pages","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":"pages","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":"pages","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":"pages","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":"pages","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":"viewModel","qualifiedName":"pages.LogsOptions.viewModel","href":"pages/LogsOptions/viewModel.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view model for the whole page.","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":"pages","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":"pages","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":"pages","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":"","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":"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":"pages","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":"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":"operator ==","qualifiedName":"pages.Routes.==","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":"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":"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":"mars","qualifiedName":"pages.Routes.mars","href":"pages/Routes/mars-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The name of the MARS 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":"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":"pages","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":"","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":"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":"pages","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":"pages","kind":9,"href":"pages/pages-library.html"}},{"name":"operator ==","qualifiedName":"pages.SegaState.==","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":"SegaState","qualifiedName":"pages.SegaState.SegaState","href":"pages/SegaState/SegaState.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"SegaState","kind":5,"href":"pages/SegaState.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":"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":"pages","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":"pages","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":"pages","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":"pages","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":"pages","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":"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":"pages","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":"services","kind":9,"href":"services/services-library.html"}},{"name":"operator ==","qualifiedName":"services.DashboardSocket.==","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":"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":"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":"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":"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":"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":"services","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":"services","kind":9,"href":"services/services-library.html"}},{"name":"operator ==","qualifiedName":"services.FilesService.==","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":"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":"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":"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 an error to the Dashboard log file.","enclosedBy":{"name":"FilesService","kind":3,"href":"services/FilesService-class.html"}},{"name":"logFiles","qualifiedName":"services.FilesService.logFiles","href":"services/FilesService/logFiles.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A map from filename to an IOSink for faster writes.","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":"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":"GamepadNumbers","qualifiedName":"services.GamepadNumbers","href":"services/GamepadNumbers.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"An extension to do gamepad math.","enclosedBy":{"name":"services","kind":9,"href":"services/services-library.html"}},{"name":"normalizeJoystick","qualifiedName":"services.GamepadNumbers.normalizeJoystick","href":"services/GamepadNumbers/normalizeJoystick.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Normalizes joystick inputs to be between -1 and 1.","enclosedBy":{"name":"GamepadNumbers","kind":6,"href":"services/GamepadNumbers.html"}},{"name":"normalizeTrigger","qualifiedName":"services.GamepadNumbers.normalizeTrigger","href":"services/GamepadNumbers/normalizeTrigger.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Normalizes the trigger inputs to be between 0 and 1.","enclosedBy":{"name":"GamepadNumbers","kind":6,"href":"services/GamepadNumbers.html"}},{"name":"GamepadService","qualifiedName":"services.GamepadService","href":"services/GamepadService-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A service to receive input from a gamepad connected to the user's device.","enclosedBy":{"name":"services","kind":9,"href":"services/services-library.html"}},{"name":"operator ==","qualifiedName":"services.GamepadService.==","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":"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 to a gamepad and calls GamepadUtils.pulse.","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 all the Gamepads the user has 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":"ids","qualifiedName":"services.GamepadService.ids","href":"services/GamepadService/ids.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The set of all the Gamepad.controller IDs.","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":"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":"numGamepads","qualifiedName":"services.GamepadService.numGamepads","href":"services/GamepadService/numGamepads-constant.html","kind":1,"overriddenDepth":0,"packageRank":0,"desc":"The maximum number of gamepads we support.","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":"update","qualifiedName":"services.GamepadService.update","href":"services/GamepadService/update.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Checks the state of the controller and updates each Gamepad.state.","enclosedBy":{"name":"GamepadService","kind":3,"href":"services/GamepadService-class.html"}},{"name":"GamepadStateUtils","qualifiedName":"services.GamepadStateUtils","href":"services/GamepadStateUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"More user-friendly values from GamepadState.","enclosedBy":{"name":"services","kind":9,"href":"services/services-library.html"}},{"name":"normalDpadX","qualifiedName":"services.GamepadStateUtils.normalDpadX","href":"services/GamepadStateUtils/normalDpadX.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The signed value of the D-pad's horizontal axis. Left is -1, right is +1.","enclosedBy":{"name":"GamepadStateUtils","kind":6,"href":"services/GamepadStateUtils.html"}},{"name":"normalDpadY","qualifiedName":"services.GamepadStateUtils.normalDpadY","href":"services/GamepadStateUtils/normalDpadY.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The signed value of the D-pad's vertical axis. Up is +1, down is -1.","enclosedBy":{"name":"GamepadStateUtils","kind":6,"href":"services/GamepadStateUtils.html"}},{"name":"normalLeftTrigger","qualifiedName":"services.GamepadStateUtils.normalLeftTrigger","href":"services/GamepadStateUtils/normalLeftTrigger.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Returns a normalized value for the left trigger. See GamepadNumbers.normalizeTrigger.","enclosedBy":{"name":"GamepadStateUtils","kind":6,"href":"services/GamepadStateUtils.html"}},{"name":"normalLeftX","qualifiedName":"services.GamepadStateUtils.normalLeftX","href":"services/GamepadStateUtils/normalLeftX.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Returns a normalized value for the left joystick's X-axis. See GamepadNumbers.normalizeJoystick.","enclosedBy":{"name":"GamepadStateUtils","kind":6,"href":"services/GamepadStateUtils.html"}},{"name":"normalLeftY","qualifiedName":"services.GamepadStateUtils.normalLeftY","href":"services/GamepadStateUtils/normalLeftY.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Returns a normalized value for the left joystick's Y-axis. See GamepadNumbers.normalizeJoystick.","enclosedBy":{"name":"GamepadStateUtils","kind":6,"href":"services/GamepadStateUtils.html"}},{"name":"normalRightTrigger","qualifiedName":"services.GamepadStateUtils.normalRightTrigger","href":"services/GamepadStateUtils/normalRightTrigger.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Returns a normalized value for the right trigger. See GamepadNumbers.normalizeTrigger.","enclosedBy":{"name":"GamepadStateUtils","kind":6,"href":"services/GamepadStateUtils.html"}},{"name":"normalRightX","qualifiedName":"services.GamepadStateUtils.normalRightX","href":"services/GamepadStateUtils/normalRightX.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Returns a normalized value for the right joystick's X-axis. See GamepadNumbers.normalizeJoystick.","enclosedBy":{"name":"GamepadStateUtils","kind":6,"href":"services/GamepadStateUtils.html"}},{"name":"normalRightY","qualifiedName":"services.GamepadStateUtils.normalRightY","href":"services/GamepadStateUtils/normalRightY.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Returns a normalized value for the right joystick's Y-axis. See GamepadNumbers.normalizeJoystick.","enclosedBy":{"name":"GamepadStateUtils","kind":6,"href":"services/GamepadStateUtils.html"}},{"name":"normalShoulder","qualifiedName":"services.GamepadStateUtils.normalShoulder","href":"services/GamepadStateUtils/normalShoulder.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The signed value of the bumpers. The left bumper is negative, the right is positive.","enclosedBy":{"name":"GamepadStateUtils","kind":6,"href":"services/GamepadStateUtils.html"}},{"name":"normalTrigger","qualifiedName":"services.GamepadStateUtils.normalTrigger","href":"services/GamepadStateUtils/normalTrigger.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The signed value of the triggers. The left trigger is negative, the right is positive.","enclosedBy":{"name":"GamepadStateUtils","kind":6,"href":"services/GamepadStateUtils.html"}},{"name":"GamepadUtils","qualifiedName":"services.GamepadUtils","href":"services/GamepadUtils.html","kind":6,"overriddenDepth":0,"packageRank":0,"desc":"Convenience methods on Gamepad.","enclosedBy":{"name":"services","kind":9,"href":"services/services-library.html"}},{"name":"battery","qualifiedName":"services.GamepadUtils.battery","href":"services/GamepadUtils/battery.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"A shorthand to get the battery level of this controller.","enclosedBy":{"name":"GamepadUtils","kind":6,"href":"services/GamepadUtils.html"}},{"name":"pulse","qualifiedName":"services.GamepadUtils.pulse","href":"services/GamepadUtils/pulse.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"Makes the gamepad vibrate a small \"pulse\"","enclosedBy":{"name":"GamepadUtils","kind":6,"href":"services/GamepadUtils.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":"services","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":"MockGamepad","qualifiedName":"services.MockGamepad","href":"services/MockGamepad-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"An \"implementation\" of package:win32_gamepad for non-supported platforms.","enclosedBy":{"name":"services","kind":9,"href":"services/services-library.html"}},{"name":"MockGamepad","qualifiedName":"services.MockGamepad.MockGamepad","href":"services/MockGamepad/MockGamepad.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"","enclosedBy":{"name":"MockGamepad","kind":3,"href":"services/MockGamepad-class.html"}},{"name":"appHasFocus","qualifiedName":"services.MockGamepad.appHasFocus","href":"services/MockGamepad/appHasFocus.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Controls whether the gamepad is active.","enclosedBy":{"name":"MockGamepad","kind":3,"href":"services/MockGamepad-class.html"}},{"name":"controller","qualifiedName":"services.MockGamepad.controller","href":"services/MockGamepad/controller.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The identifier for the current controller.","enclosedBy":{"name":"MockGamepad","kind":3,"href":"services/MockGamepad-class.html"}},{"name":"gamepadBatteryInfo","qualifiedName":"services.MockGamepad.gamepadBatteryInfo","href":"services/MockGamepad/gamepadBatteryInfo.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Get the battery type for the gamepad.","enclosedBy":{"name":"MockGamepad","kind":3,"href":"services/MockGamepad-class.html"}},{"name":"headsetBatteryInfo","qualifiedName":"services.MockGamepad.headsetBatteryInfo","href":"services/MockGamepad/headsetBatteryInfo.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Get the battery type for a headset attached to the gamepad, if there is\none.","enclosedBy":{"name":"MockGamepad","kind":3,"href":"services/MockGamepad-class.html"}},{"name":"isConnected","qualifiedName":"services.MockGamepad.isConnected","href":"services/MockGamepad/isConnected.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"Returns a value for whether the controller is connected.","enclosedBy":{"name":"MockGamepad","kind":3,"href":"services/MockGamepad-class.html"}},{"name":"state","qualifiedName":"services.MockGamepad.state","href":"services/MockGamepad/state.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The status of the buttons, triggers and thumbsticks on the gamepad.","enclosedBy":{"name":"MockGamepad","kind":3,"href":"services/MockGamepad-class.html"}},{"name":"updateState","qualifiedName":"services.MockGamepad.updateState","href":"services/MockGamepad/updateState.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Get the current state of the current controller.","enclosedBy":{"name":"MockGamepad","kind":3,"href":"services/MockGamepad-class.html"}},{"name":"vibrate","qualifiedName":"services.MockGamepad.vibrate","href":"services/MockGamepad/vibrate.html","kind":10,"overriddenDepth":1,"packageRank":0,"desc":"Activate a gamepad controller's vibration motors.","enclosedBy":{"name":"MockGamepad","kind":3,"href":"services/MockGamepad-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":"services","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":"services","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":"services","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":"services","kind":9,"href":"services/services-library.html"}},{"name":"operator ==","qualifiedName":"services.SerialDevice.==","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":"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":"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":"services","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":"services","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":"services","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":"operator ==","qualifiedName":"services.Services.==","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":"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":"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":"connectionIncrement","qualifiedName":"services.connectionIncrement","href":"services/connectionIncrement-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"How much each successful/missed handshake is worth, as a percent.","enclosedBy":{"name":"services","kind":9,"href":"services/services-library.html"}},{"name":"epsilon","qualifiedName":"services.epsilon","href":"services/epsilon-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The \"deadzone\" of the gamepad.","enclosedBy":{"name":"services","kind":9,"href":"services/services-library.html"}},{"name":"heartbeatWaitDelay","qualifiedName":"services.heartbeatWaitDelay","href":"services/heartbeatWaitDelay-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"How long to wait for incoming heartbeats after sending them out.","enclosedBy":{"name":"services","kind":9,"href":"services/services-library.html"}},{"name":"maxGamepads","qualifiedName":"services.maxGamepads","href":"services/maxGamepads-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The maximum amount of gamepads a user can have.","enclosedBy":{"name":"services","kind":9,"href":"services/services-library.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":"vibrateIntensity","qualifiedName":"services.vibrateIntensity","href":"services/vibrateIntensity-constant.html","kind":19,"overriddenDepth":0,"packageRank":0,"desc":"The default vibration intensity.","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":"widgets","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":"","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":"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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"widgets","kind":9,"href":"widgets/widgets-library.html"}},{"name":"operator ==","qualifiedName":"widgets.ImageLoader.==","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":"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":"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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"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":"widgets","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":"widgets","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":"getNetworkIcon","qualifiedName":"widgets.StatusIcons.getNetworkIcon","href":"widgets/StatusIcons/getNetworkIcon.html","kind":10,"overriddenDepth":0,"packageRank":0,"desc":"An appropriate WiFi icon in increments of 1/5 connection strength.","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":"widgets","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":"widgets","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":"widgets","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":"widgets","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":"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":"widgets","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":"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":"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":"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":"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":"ViewWidget","qualifiedName":"widgets.ViewWidget","href":"widgets/ViewWidget-class.html","kind":3,"overriddenDepth":0,"packageRank":0,"desc":"A widget to show one DashboardView.","enclosedBy":{"name":"widgets","kind":9,"href":"widgets/widgets-library.html"}},{"name":"ViewWidget","qualifiedName":"widgets.ViewWidget.ViewWidget","href":"widgets/ViewWidget/ViewWidget.html","kind":2,"overriddenDepth":0,"packageRank":0,"desc":"Shows a DashboardView.","enclosedBy":{"name":"ViewWidget","kind":3,"href":"widgets/ViewWidget-class.html"}},{"name":"createState","qualifiedName":"widgets.ViewWidget.createState","href":"widgets/ViewWidget/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":"ViewWidget","kind":3,"href":"widgets/ViewWidget-class.html"}},{"name":"view","qualifiedName":"widgets.ViewWidget.view","href":"widgets/ViewWidget/view.html","kind":16,"overriddenDepth":0,"packageRank":0,"desc":"The view to show.","enclosedBy":{"name":"ViewWidget","kind":3,"href":"widgets/ViewWidget-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":"widgets","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":"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":"widgets","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..6b471e41f6 --- /dev/null +++ b/docs/main/main-library.html @@ -0,0 +1,184 @@ + + + + + + + + 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..e6dcb5b0ab --- /dev/null +++ b/docs/main/main.html @@ -0,0 +1,141 @@ + + + + + + + + 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..a19ffdcd8f --- /dev/null +++ b/docs/main/networkErrors-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..cd417a11d9 --- /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..2d635eed65 --- /dev/null +++ b/docs/models/AddressBuilder-class.html @@ -0,0 +1,402 @@ + + + + + + + + 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<ValueBuilder> + + +
+
+ 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..30c6de8c63 --- /dev/null +++ b/docs/models/AddressBuilder/AddressBuilder.html @@ -0,0 +1,129 @@ + + + + + + + + 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..8320b2cf68 --- /dev/null +++ b/docs/models/AddressBuilder/regex.html @@ -0,0 +1,129 @@ + + + + + + + + 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..3a2368bd98 --- /dev/null +++ b/docs/models/AddressBuilder/update.html @@ -0,0 +1,153 @@ + + + + + + + + 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..dd96190e27 --- /dev/null +++ b/docs/models/ArmControls-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  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. updateIK
  38. +
  39. updateState
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/models/ArmControls-class.html b/docs/models/ArmControls-class.html new file mode 100644 index 0000000000..7052a45ca1 --- /dev/null +++ b/docs/models/ArmControls-class.html @@ -0,0 +1,390 @@ + + + + + + + + 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
+ +
+ +
+ updateIK(double x, double y, double z) + → List<Message> + + + +
+
+ Updates the IK coordinates by the given offsets. + + +
+ +
+ 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..9ee8591773 --- /dev/null +++ b/docs/models/ArmControls/ArmControls.html @@ -0,0 +1,121 @@ + + + + + + + + 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..0210e6313b --- /dev/null +++ b/docs/models/ArmControls/buttonMapping.html @@ -0,0 +1,171 @@ + + + + + + + + buttonMapping property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
buttonMapping
+ +
+ +
+
+
+ +
+
+ +

buttonMapping property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + 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 => {
+	// Arm
+	if (settings.useIK) ...{
+		// IK
+		"IK control": "Right joystick",
+		"IK depth": "Bumpers",
+	} else ...{
+		// 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..c93dc68e57 --- /dev/null +++ b/docs/models/ArmControls/ik.html @@ -0,0 +1,130 @@ + + + + + + + + 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..be1b04af80 --- /dev/null +++ b/docs/models/ArmControls/isAPressed.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c2fce28ce4 --- /dev/null +++ b/docs/models/ArmControls/isBPressed.html @@ -0,0 +1,129 @@ + + + + + + + + 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..0773ea2831 --- /dev/null +++ b/docs/models/ArmControls/isXPressed.html @@ -0,0 +1,129 @@ + + + + + + + + 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..67ee863f26 --- /dev/null +++ b/docs/models/ArmControls/isYPressed.html @@ -0,0 +1,129 @@ + + + + + + + + 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..539c263e1f --- /dev/null +++ b/docs/models/ArmControls/mode.html @@ -0,0 +1,142 @@ + + + + + + + + mode property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
mode
+ +
+ +
+
+
+ +
+
+ +

mode property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + 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..74e5ca1039 --- /dev/null +++ b/docs/models/ArmControls/onDispose.html @@ -0,0 +1,143 @@ + + + + + + + + onDispose property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
onDispose
+ +
+ +
+
+
+ +
+
+ +

onDispose property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + 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..57dfb7ab7f --- /dev/null +++ b/docs/models/ArmControls/parseInputs.html @@ -0,0 +1,170 @@ + + + + + + + + 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) => [
+	// Arm
+	if (settings.useIK) ...[
+		// IK
+		...updateIK(state.normalRightX * settings.ikIncrement, state.normalShoulder * settings.ikIncrement, state.normalRightY * settings.ikIncrement),
+	] else ...[
+		// Manual control
+		if (state.normalRightX != 0) ArmCommand(swivel: MotorCommand(moveRadians: state.normalRightX * settings.swivel)),
+		if (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..d09838bcc5 --- /dev/null +++ b/docs/models/ArmControls/settings.html @@ -0,0 +1,136 @@ + + + + + + + + settings property - ArmControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
settings
+ +
+ +
+
+
+ +
+
+ +

settings property +

+ + + +
+ +
+ + ArmSettings + settings + + +
+ + +
+

The user's arm settings.

+
+ + +
+

Implementation

+
ArmSettings get settings => models.settings.arm;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ArmControls/updateIK.html b/docs/models/ArmControls/updateIK.html new file mode 100644 index 0000000000..001c4bac94 --- /dev/null +++ b/docs/models/ArmControls/updateIK.html @@ -0,0 +1,139 @@ + + + + + + + + updateIK method - ArmControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
updateIK
+ +
+ +
+
+
+ +
+
+ +

updateIK method +

+ +
+ + +List<Message> +updateIK(
  1. double x,
  2. +
  3. double y,
  4. +
  5. double z
  6. +
) + + + +
+ +
+

Updates the IK coordinates by the given offsets.

+
+ + + +
+

Implementation

+
List<Message> updateIK(double x, double y, double z) {
+	if (x == 0 && y == 0 && z == 0) return [];
+	ik += Coordinates(x: x, y: y, z: z);
+	return [ArmCommand(ikX: 1, ikY: ik.y, ikZ: ik.z)];
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ArmControls/updateState.html b/docs/models/ArmControls/updateState.html new file mode 100644 index 0000000000..9cb5569958 --- /dev/null +++ b/docs/models/ArmControls/updateState.html @@ -0,0 +1,144 @@ + + + + + + + + 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..a18b86a299 --- /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..2a02c25e16 --- /dev/null +++ b/docs/models/ArmSettingsBuilder-class.html @@ -0,0 +1,455 @@ + + + + + + + + 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<ValueBuilder> + + +
+
+ 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..164b57818b --- /dev/null +++ b/docs/models/ArmSettingsBuilder/ArmSettingsBuilder.html @@ -0,0 +1,146 @@ + + + + + + + + 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..ba11fcd7ce --- /dev/null +++ b/docs/models/ArmSettingsBuilder/elbow.html @@ -0,0 +1,129 @@ + + + + + + + + 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..d10353da9d --- /dev/null +++ b/docs/models/ArmSettingsBuilder/ik.html @@ -0,0 +1,129 @@ + + + + + + + + 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..749c737562 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/isValid.html @@ -0,0 +1,149 @@ + + + + + + + + isValid property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..58ab7fed69 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/lift.html @@ -0,0 +1,129 @@ + + + + + + + + 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..6f2165bd5a --- /dev/null +++ b/docs/models/ArmSettingsBuilder/pinch.html @@ -0,0 +1,129 @@ + + + + + + + + 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..aa49d30d7c --- /dev/null +++ b/docs/models/ArmSettingsBuilder/rotate.html @@ -0,0 +1,129 @@ + + + + + + + + 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..501e50a509 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/shoulder.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2ae4b400ce --- /dev/null +++ b/docs/models/ArmSettingsBuilder/swivel.html @@ -0,0 +1,129 @@ + + + + + + + + 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..6801d37e41 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/updateIK.html @@ -0,0 +1,136 @@ + + + + + + + + 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..855e53acaf --- /dev/null +++ b/docs/models/ArmSettingsBuilder/useIK.html @@ -0,0 +1,129 @@ + + + + + + + + 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..cff146ab48 --- /dev/null +++ b/docs/models/ArmSettingsBuilder/value.html @@ -0,0 +1,151 @@ + + + + + + + + value property - ArmSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ ArmSettings + 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..7a767e9902 --- /dev/null +++ b/docs/models/AutonomyCell-enum-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. AutonomyCell
  4. + +
  5. Values
  6. +
  7. rover
  8. +
  9. destination
  10. +
  11. obstacle
  12. +
  13. path
  14. +
  15. empty
  16. +
  17. marker
  18. + + +
  19. + Properties +
  20. +
  21. hashCode
  22. +
  23. index
  24. +
  25. runtimeType
  26. + +
  27. Methods
  28. +
  29. noSuchMethod
  30. +
  31. toString
  32. + +
  33. Operators
  34. +
  35. operator ==
  36. + + + + + + +
  37. Constants
  38. +
  39. values
  40. +
diff --git a/docs/models/AutonomyCell.html b/docs/models/AutonomyCell.html new file mode 100644 index 0000000000..3497d6722b --- /dev/null +++ b/docs/models/AutonomyCell.html @@ -0,0 +1,336 @@ + + + + + + + + AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
AutonomyCell
+ +
+ +
+
+
+ +
+
+ + +

+ AutonomyCell + enum + + +

+
+ + +
+

Represents the state of a cell on the autonomy map.

+
+ + + + +
+

Constructors

+ +
+
+ AutonomyCell() +
+
+ +
const
+
+
+
+ +
+

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/AutonomyCell.html b/docs/models/AutonomyCell/AutonomyCell.html new file mode 100644 index 0000000000..826b779898 --- /dev/null +++ b/docs/models/AutonomyCell/AutonomyCell.html @@ -0,0 +1,121 @@ + + + + + + + + AutonomyCell constructor - AutonomyCell - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
AutonomyCell
+ +
+ +
+
+
+ +
+
+ +

AutonomyCell constructor +

+ +
+ const + AutonomyCell() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/AutonomyCell/hashCode.html b/docs/models/AutonomyCell/hashCode.html new file mode 100644 index 0000000000..d09be52db9 --- /dev/null +++ b/docs/models/AutonomyCell/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..8b1c15cba2 --- /dev/null +++ b/docs/models/AutonomyCell/index.html @@ -0,0 +1,140 @@ + + + + + + + + index property - AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
index
+ +
+ +
+
+
+ +
+
+

index property +

+ + + +
+ +
+ + int + 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..3e30e32929 --- /dev/null +++ b/docs/models/AutonomyCell/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..642a1738c2 --- /dev/null +++ b/docs/models/AutonomyCell/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..29eaf7c931 --- /dev/null +++ b/docs/models/AutonomyCell/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - AutonomyCell enum - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..96fbdddaf7 --- /dev/null +++ b/docs/models/AutonomyCell/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..1467a26524 --- /dev/null +++ b/docs/models/AutonomyCell/values-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..9f0ed4439d --- /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..318a8cfd3a --- /dev/null +++ b/docs/models/AutonomyCommandBuilder-class.html @@ -0,0 +1,434 @@ + + + + + + + + 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<ValueBuilder> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ 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..6506681f47 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/AutonomyCommandBuilder.html @@ -0,0 +1,128 @@ + + + + + + + + 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..0b54d83063 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/abort.html @@ -0,0 +1,150 @@ + + + + + + + + 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..8da3578157 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/dispose.html @@ -0,0 +1,147 @@ + + + + + + + + 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..b87de32b46 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/gps.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2fc9074adf --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/init.html @@ -0,0 +1,139 @@ + + + + + + + + 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..93435aecba --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/isLoading.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2ae0facd35 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/isValid.html @@ -0,0 +1,143 @@ + + + + + + + + isValid property - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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/submit.html b/docs/models/AutonomyCommandBuilder/submit.html new file mode 100644 index 0000000000..0dca29d18b --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/submit.html @@ -0,0 +1,146 @@ + + + + + + + + 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..68430a5dcf --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/task.html @@ -0,0 +1,129 @@ + + + + + + + + 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..53f8768741 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/updateTask.html @@ -0,0 +1,136 @@ + + + + + + + + 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..e0ebffdbb6 --- /dev/null +++ b/docs/models/AutonomyCommandBuilder/value.html @@ -0,0 +1,145 @@ + + + + + + + + value property - AutonomyCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ AutonomyCommand + 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..3ceb794b62 --- /dev/null +++ b/docs/models/AutonomyModel-class-sidebar.html @@ -0,0 +1,58 @@ +
    + +
  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. recenterRover
  62. +
  63. removeListener
  64. +
  65. startBadApple
  66. +
  67. stopBadApple
  68. +
  69. toString
  70. +
  71. updateMarker
  72. +
  73. zoom
  74. + +
  75. Operators
  76. +
  77. operator ==
  78. + + + + + + +
  79. Constants
  80. +
  81. badAppleFps
  82. +
  83. badAppleLastFrame
  84. +
diff --git a/docs/models/AutonomyModel-class.html b/docs/models/AutonomyModel-class.html new file mode 100644 index 0000000000..5b9b9c4aa4 --- /dev/null +++ b/docs/models/AutonomyModel-class.html @@ -0,0 +1,641 @@ + + + + + + + + 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. + + +
+ +
+ 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..66d33e50e0 --- /dev/null +++ b/docs/models/AutonomyModel/AutonomyModel.html @@ -0,0 +1,128 @@ + + + + + + + + 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..5854d38b90 --- /dev/null +++ b/docs/models/AutonomyModel/badAppleAudioPlayer.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c2dcff18a7 --- /dev/null +++ b/docs/models/AutonomyModel/badAppleFps-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..46248026b5 --- /dev/null +++ b/docs/models/AutonomyModel/badAppleFrame.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a89ba73d3e --- /dev/null +++ b/docs/models/AutonomyModel/badAppleLastFrame-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..dde546c122 --- /dev/null +++ b/docs/models/AutonomyModel/badAppleTimer.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f5d8828f94 --- /dev/null +++ b/docs/models/AutonomyModel/clearMarkers.html @@ -0,0 +1,136 @@ + + + + + + + + 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..ff26db386b --- /dev/null +++ b/docs/models/AutonomyModel/data.html @@ -0,0 +1,129 @@ + + + + + + + + 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..fef710a616 --- /dev/null +++ b/docs/models/AutonomyModel/dispose.html @@ -0,0 +1,150 @@ + + + + + + + + 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..7ce45f2529 --- /dev/null +++ b/docs/models/AutonomyModel/empty.html @@ -0,0 +1,141 @@ + + + + + + + + empty property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
empty
+ +
+ +
+
+
+ +
+
+ +

empty property +

+ + + +
+ +
+ + List<List<(GpsCoordinates, AutonomyCell)>> + 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..01320b33c0 --- /dev/null +++ b/docs/models/AutonomyModel/gpsToBlock.html @@ -0,0 +1,133 @@ + + + + + + + + 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..26cad96d8f --- /dev/null +++ b/docs/models/AutonomyModel/grid.html @@ -0,0 +1,152 @@ + + + + + + + + grid property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
grid
+ +
+ +
+
+
+ +
+
+ +

grid property +

+ + + +
+ +
+ + List<List<(GpsCoordinates, AutonomyCell)>> + 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..4ae1906f17 --- /dev/null +++ b/docs/models/AutonomyModel/gridSize.html @@ -0,0 +1,130 @@ + + + + + + + + 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..02ca626ad3 --- /dev/null +++ b/docs/models/AutonomyModel/init.html @@ -0,0 +1,145 @@ + + + + + + + + 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..00479879d0 --- /dev/null +++ b/docs/models/AutonomyModel/isPlayingBadApple.html @@ -0,0 +1,129 @@ + + + + + + + + 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..31d3398ba8 --- /dev/null +++ b/docs/models/AutonomyModel/markCell.html @@ -0,0 +1,147 @@ + + + + + + + + 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 = 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..de98f660bf --- /dev/null +++ b/docs/models/AutonomyModel/markerBuilder.html @@ -0,0 +1,129 @@ + + + + + + + + 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..dd8ab47c20 --- /dev/null +++ b/docs/models/AutonomyModel/markers.html @@ -0,0 +1,129 @@ + + + + + + + + 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..3c5620a874 --- /dev/null +++ b/docs/models/AutonomyModel/offset.html @@ -0,0 +1,129 @@ + + + + + + + + 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..55ec864e91 --- /dev/null +++ b/docs/models/AutonomyModel/onNewData.html @@ -0,0 +1,137 @@ + + + + + + + + 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..c94bf15003 --- /dev/null +++ b/docs/models/AutonomyModel/placeMarker.html @@ -0,0 +1,136 @@ + + + + + + + + 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/recenterRover.html b/docs/models/AutonomyModel/recenterRover.html new file mode 100644 index 0000000000..b7e665c83b --- /dev/null +++ b/docs/models/AutonomyModel/recenterRover.html @@ -0,0 +1,147 @@ + + + + + + + + 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 - 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..28ec1466e1 --- /dev/null +++ b/docs/models/AutonomyModel/roverHeading.html @@ -0,0 +1,136 @@ + + + + + + + + roverHeading property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
roverHeading
+ +
+ +
+
+
+ +
+
+ +

roverHeading property +

+ + + +
+ +
+ + double + 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..28c00f0b1c --- /dev/null +++ b/docs/models/AutonomyModel/roverPosition.html @@ -0,0 +1,136 @@ + + + + + + + + roverPosition property - AutonomyModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
roverPosition
+ +
+ +
+
+
+ +
+
+ +

roverPosition property +

+ + + +
+ +
+ + GpsCoordinates + 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..168084e770 --- /dev/null +++ b/docs/models/AutonomyModel/startBadApple.html @@ -0,0 +1,140 @@ + + + + + + + + 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..9598e20fe2 --- /dev/null +++ b/docs/models/AutonomyModel/stopBadApple.html @@ -0,0 +1,139 @@ + + + + + + + + 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..aa91b58b29 --- /dev/null +++ b/docs/models/AutonomyModel/updateMarker.html @@ -0,0 +1,139 @@ + + + + + + + + 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..6e284a2c95 --- /dev/null +++ b/docs/models/AutonomyModel/zoom.html @@ -0,0 +1,136 @@ + + + + + + + + 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..2c971bda43 --- /dev/null +++ b/docs/models/CameraControls-class-sidebar.html @@ -0,0 +1,31 @@ +
    + +
  1. Constructors
  2. +
  3. CameraControls
  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/CameraControls-class.html b/docs/models/CameraControls-class.html new file mode 100644 index 0000000000..63c254c56d --- /dev/null +++ b/docs/models/CameraControls-class.html @@ -0,0 +1,305 @@ + + + + + + + + CameraControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
CameraControls
+ +
+ +
+
+
+ +
+
+ +

CameraControls class + +

+ + +
+

A RoverControls for the rover's front and rear cameras.

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

Constructors

+ +
+
+ CameraControls() +
+
+ +
+
+
+ +
+

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/CameraControls/CameraControls.html b/docs/models/CameraControls/CameraControls.html new file mode 100644 index 0000000000..d97bea3267 --- /dev/null +++ b/docs/models/CameraControls/CameraControls.html @@ -0,0 +1,121 @@ + + + + + + + + CameraControls constructor - CameraControls - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
CameraControls
+ +
+ +
+
+
+ +
+
+ +

CameraControls constructor +

+ +
+ + CameraControls() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/CameraControls/buttonMapping.html b/docs/models/CameraControls/buttonMapping.html new file mode 100644 index 0000000000..60e4036347 --- /dev/null +++ b/docs/models/CameraControls/buttonMapping.html @@ -0,0 +1,147 @@ + + + + + + + + buttonMapping property - CameraControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
buttonMapping
+ +
+ +
+
+
+ +
+
+ +

buttonMapping property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + 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",
+	"MARS swivel": "D-pad (horizontal)",
+};
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/CameraControls/mode.html b/docs/models/CameraControls/mode.html new file mode 100644 index 0000000000..7d4a7a47e7 --- /dev/null +++ b/docs/models/CameraControls/mode.html @@ -0,0 +1,142 @@ + + + + + + + + mode property - CameraControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
mode
+ +
+ +
+
+
+ +
+
+ +

mode property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + 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..7bc2b87925 --- /dev/null +++ b/docs/models/CameraControls/onDispose.html @@ -0,0 +1,143 @@ + + + + + + + + onDispose property - CameraControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
onDispose
+ +
+ +
+
+
+ +
+
+ +

onDispose property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + 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..b052821f4f --- /dev/null +++ b/docs/models/CameraControls/parseInputs.html @@ -0,0 +1,149 @@ + + + + + + + + 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) => [
+	if (state.normalRightTrigger.abs() > 0.75) ...[
+		DriveCommand(frontSwivel: 90 - state.normalRightX * 90),
+		DriveCommand(frontTilt: 90 - state.normalRightY * 90),
+	],
+	if (state.normalLeftTrigger.abs() > 0.75) ...[
+		DriveCommand(rearSwivel: 90 - state.normalLeftX * 90),
+		DriveCommand(rearTilt: 90 + state.normalLeftY * 90),
+	],
+	if (state.normalDpadX != 0) MarsCommand(swivel: state.normalDpadX * pi / 50),
+];
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder-class-sidebar.html b/docs/models/CameraDetailsBuilder-class-sidebar.html new file mode 100644 index 0000000000..19df2b57de --- /dev/null +++ b/docs/models/CameraDetailsBuilder-class-sidebar.html @@ -0,0 +1,46 @@ +
    + +
  1. Constructors
  2. +
  3. CameraDetailsBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. error
  8. +
  9. fps
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. isLoading
  16. +
  17. isValid
  18. +
  19. name
  20. +
  21. otherBuilders
  22. +
  23. quality
  24. +
  25. resolutionHeight
  26. +
  27. resolutionWidth
  28. +
  29. runtimeType
  30. +
  31. status
  32. +
  33. value
  34. + +
  35. Methods
  36. +
  37. addListener
  38. +
  39. dispose
  40. +
  41. noSuchMethod
  42. +
  43. notifyListeners
  44. +
  45. removeListener
  46. +
  47. saveSettings
  48. +
  49. toString
  50. +
  51. updateStatus
  52. + +
  53. Operators
  54. +
  55. operator ==
  56. + + + + + + +
  57. Constants
  58. +
  59. okStatuses
  60. +
diff --git a/docs/models/CameraDetailsBuilder-class.html b/docs/models/CameraDetailsBuilder-class.html new file mode 100644 index 0000000000..d7cef9a89d --- /dev/null +++ b/docs/models/CameraDetailsBuilder-class.html @@ -0,0 +1,486 @@ + + + + + + + + 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

+
+
+ error + ↔ String? + + +
+
+ The error that occurrec 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..e704fe2538 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/CameraDetailsBuilder.html @@ -0,0 +1,135 @@ + + + + + + + + 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;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/CameraDetailsBuilder/error.html b/docs/models/CameraDetailsBuilder/error.html new file mode 100644 index 0000000000..e10166babc --- /dev/null +++ b/docs/models/CameraDetailsBuilder/error.html @@ -0,0 +1,129 @@ + + + + + + + + error property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
error
+ +
+ +
+
+
+ +
+
+ +

error property +

+ +
+ + String? + error +
getter/setter pair
+ +
+ +
+

The error that occurrec 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..9c1a01a02c --- /dev/null +++ b/docs/models/CameraDetailsBuilder/fps.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2150d3a4ba --- /dev/null +++ b/docs/models/CameraDetailsBuilder/isLoading.html @@ -0,0 +1,129 @@ + + + + + + + + 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..4cc0d9c2c6 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/isValid.html @@ -0,0 +1,147 @@ + + + + + + + + isValid property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..6e15a28eb7 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/name.html @@ -0,0 +1,131 @@ + + + + + + + + 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..c979f15a34 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/okStatuses-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..dd154b0b10 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/otherBuilders.html @@ -0,0 +1,142 @@ + + + + + + + + otherBuilders property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
otherBuilders
+ +
+ +
+
+
+ +
+
+ +

otherBuilders property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<ValueBuilder> + 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..4c0b941740 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/quality.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2a00b7840a --- /dev/null +++ b/docs/models/CameraDetailsBuilder/resolutionHeight.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a8456082dd --- /dev/null +++ b/docs/models/CameraDetailsBuilder/resolutionWidth.html @@ -0,0 +1,129 @@ + + + + + + + + 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..8fbe9664e9 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/saveSettings.html @@ -0,0 +1,145 @@ + + + + + + + + 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..fcdd0d34fb --- /dev/null +++ b/docs/models/CameraDetailsBuilder/status.html @@ -0,0 +1,130 @@ + + + + + + + + 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..59c3d92029 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/updateStatus.html @@ -0,0 +1,144 @@ + + + + + + + + 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..aabf1b61f1 --- /dev/null +++ b/docs/models/CameraDetailsBuilder/value.html @@ -0,0 +1,149 @@ + + + + + + + + value property - CameraDetailsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ CameraDetails + 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,
+);
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ColorBuilder-class-sidebar.html b/docs/models/ColorBuilder-class-sidebar.html new file mode 100644 index 0000000000..955a6ea7ff --- /dev/null +++ b/docs/models/ColorBuilder-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. ColorBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. color
  8. +
  9. errorText
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. isLoading
  16. +
  17. isValid
  18. +
  19. otherBuilders
  20. +
  21. runtimeType
  22. +
  23. slider
  24. +
  25. value
  26. + +
  27. Methods
  28. +
  29. addListener
  30. +
  31. dispose
  32. +
  33. noSuchMethod
  34. +
  35. notifyListeners
  36. +
  37. removeListener
  38. +
  39. setColor
  40. +
  41. toString
  42. +
  43. updateSlider
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/models/ColorBuilder-class.html b/docs/models/ColorBuilder-class.html new file mode 100644 index 0000000000..e79d7494ad --- /dev/null +++ b/docs/models/ColorBuilder-class.html @@ -0,0 +1,420 @@ + + + + + + + + ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ColorBuilder
+ +
+ +
+
+
+ +
+
+ +

ColorBuilder class + +

+ + +
+

A view model to modify a color and send it to the rover.

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

Constructors

+ +
+
+ ColorBuilder() +
+
+ Sets color to the rover's current color. +
+
+
+ +
+

Properties

+
+
+ color + Color + + +
+
+ The color to show in the UI. +
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
+ +
+ +
+ isValid + → bool + + +
+
+ Whether the value in the UI is valid. +
no setteroverride
+ +
+ +
+ otherBuilders + → List<ValueBuilder> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ slider + ↔ double + + +
+
+ The value of the color slider in the UI. +
getter/setter pair
+ +
+ +
+ value + Color + + +
+
+ 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
+ +
+ +
+ setColor() + → Future<bool> + + + +
+
+ Sets the LED strip on the rover to the color in value. + + +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateSlider(double value) + → void + + + +
+
+ Updates color based on the slider value. + + +
+ +
+
+ +
+

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..67ac55d01b --- /dev/null +++ b/docs/models/ColorBuilder/ColorBuilder.html @@ -0,0 +1,128 @@ + + + + + + + + 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.settings.settings.color.toColor();
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ColorBuilder/color.html b/docs/models/ColorBuilder/color.html new file mode 100644 index 0000000000..38469254ec --- /dev/null +++ b/docs/models/ColorBuilder/color.html @@ -0,0 +1,129 @@ + + + + + + + + color property - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
color
+ +
+ +
+
+
+ +
+
+ +

color property +

+ +
+ + Color + color +
getter/setter pair
+ +
+ +
+

The color to show in the UI.

+
+ + +
+

Implementation

+
Color color;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ColorBuilder/errorText.html b/docs/models/ColorBuilder/errorText.html new file mode 100644 index 0000000000..9c689a5714 --- /dev/null +++ b/docs/models/ColorBuilder/errorText.html @@ -0,0 +1,129 @@ + + + + + + + + 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..7edc634047 --- /dev/null +++ b/docs/models/ColorBuilder/isLoading.html @@ -0,0 +1,129 @@ + + + + + + + + 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/isValid.html b/docs/models/ColorBuilder/isValid.html new file mode 100644 index 0000000000..7ca2d386b7 --- /dev/null +++ b/docs/models/ColorBuilder/isValid.html @@ -0,0 +1,143 @@ + + + + + + + + isValid property - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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/ColorBuilder/setColor.html b/docs/models/ColorBuilder/setColor.html new file mode 100644 index 0000000000..6cabbe9574 --- /dev/null +++ b/docs/models/ColorBuilder/setColor.html @@ -0,0 +1,141 @@ + + + + + + + + setColor method - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
setColor
+ +
+ +
+
+
+ +
+
+ +

setColor method +

+ +
+ + +Future<bool> +setColor() + + + +
+ +
+

Sets the LED strip on the rover to the color in value.

+
+ + + +
+

Implementation

+
Future<bool> setColor() async {
+	isLoading = true;
+	notifyListeners();
+	final color = ProtoColor().fromColor(value);
+	final result = await models.rover.settings.setColor(color);
+	errorText = result ? null : "The rover did not accept this command";
+	isLoading = false;
+	notifyListeners();
+	return result;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ColorBuilder/slider.html b/docs/models/ColorBuilder/slider.html new file mode 100644 index 0000000000..559b9bb9cb --- /dev/null +++ b/docs/models/ColorBuilder/slider.html @@ -0,0 +1,130 @@ + + + + + + + + slider property - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
slider
+ +
+ +
+
+
+ +
+
+ +

slider property +

+ +
+ + double + slider +
getter/setter pair
+ +
+ +
+

The value of the color slider in the UI.

+

This will not match color on startup but that's okay.

+
+ + +
+

Implementation

+
double slider = 0;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ColorBuilder/updateSlider.html b/docs/models/ColorBuilder/updateSlider.html new file mode 100644 index 0000000000..59a43e3b22 --- /dev/null +++ b/docs/models/ColorBuilder/updateSlider.html @@ -0,0 +1,137 @@ + + + + + + + + updateSlider method - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
updateSlider
+ +
+ +
+
+
+ +
+
+ +

updateSlider method +

+ +
+ + +void +updateSlider(
  1. double value
  2. +
) + + + +
+ +
+

Updates color based on the slider value.

+
+ + + +
+

Implementation

+
void updateSlider(double value) {
+	color = HSVColor.lerp(minColor, maxColor, value)!.toColor();
+	slider = value;
+	notifyListeners();
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ColorBuilder/value.html b/docs/models/ColorBuilder/value.html new file mode 100644 index 0000000000..dc895fbba3 --- /dev/null +++ b/docs/models/ColorBuilder/value.html @@ -0,0 +1,142 @@ + + + + + + + + value property - ColorBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ Color + value +
override
+ +
+ + +
+

The value being updated in the UI.

+
+ + +
+

Implementation

+
@override
+Color get value => color;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ColorUtils-extension-sidebar.html b/docs/models/ColorUtils-extension-sidebar.html new file mode 100644 index 0000000000..6f3e4ac709 --- /dev/null +++ b/docs/models/ColorUtils-extension-sidebar.html @@ -0,0 +1,17 @@ +
    + + + + + + + +
  1. Methods
  2. +
  3. fromColor
  4. +
  5. toColor
  6. + + + + + +
diff --git a/docs/models/ColorUtils.html b/docs/models/ColorUtils.html new file mode 100644 index 0000000000..c6d918b201 --- /dev/null +++ b/docs/models/ColorUtils.html @@ -0,0 +1,170 @@ + + + + + + + + ColorUtils extension - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ColorUtils
+ +
+ +
+
+
+
+
+ +

ColorUtils extension + +

+ + +
+

Utilities for color data.

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

Methods

+
+
+ fromColor(Color other) + ProtoColor + + + +
+
+ Creates a new ProtoColor from a Flutter Color. + + +
+ +
+ toColor() + Color + + + +
+
+ Converts this message to a Flutter Color. + + +
+ +
+
+ + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + + + diff --git a/docs/models/ColorUtils/fromColor.html b/docs/models/ColorUtils/fromColor.html new file mode 100644 index 0000000000..db15b2e1c3 --- /dev/null +++ b/docs/models/ColorUtils/fromColor.html @@ -0,0 +1,137 @@ + + + + + + + + fromColor method - ColorUtils extension - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
fromColor
+ +
+ +
+
+
+ +
+
+ +

fromColor method +

+ +
+ + +ProtoColor +fromColor(
  1. Color other
  2. +
) + + + +
+ +
+

Creates a new ProtoColor from a Flutter Color.

+
+ + + +
+

Implementation

+
ProtoColor fromColor(Color other) => ProtoColor(
+	red: other.red / 255,
+	green: other.green / 255,
+	blue: other.blue / 255,
+);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ColorUtils/toColor.html b/docs/models/ColorUtils/toColor.html new file mode 100644 index 0000000000..affd7c0dbd --- /dev/null +++ b/docs/models/ColorUtils/toColor.html @@ -0,0 +1,134 @@ + + + + + + + + toColor method - ColorUtils extension - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
toColor
+ +
+ +
+
+
+ +
+
+ +

toColor method +

+ +
+ + +Color +toColor() + + + +
+ +
+

Converts this message to a Flutter Color.

+
+ + + +
+

Implementation

+
Color toColor() => Color.fromARGB(
+	255, (red*255).toInt(), (green*255).toInt(), (blue*255).toInt(),
+);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/Controller-class-sidebar.html b/docs/models/Controller-class-sidebar.html new file mode 100644 index 0000000000..5b41271da9 --- /dev/null +++ b/docs/models/Controller-class-sidebar.html @@ -0,0 +1,41 @@ +
    + +
  1. Constructors
  2. +
  3. Controller
  4. + + + +
  5. + Properties +
  6. +
  7. controls
  8. +
  9. gamepad
  10. +
  11. gamepadIndex
  12. +
  13. gamepadTimer
  14. +
  15. hashCode
  16. +
  17. hasListeners
  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. removeListener
  40. +
  41. setMode
  42. +
  43. setModeIndex
  44. +
  45. toString
  46. + +
  47. Operators
  48. +
  49. operator ==
  50. + + + + + + +
diff --git a/docs/models/Controller-class.html b/docs/models/Controller-class.html new file mode 100644 index 0000000000..be666e7a5f --- /dev/null +++ b/docs/models/Controller-class.html @@ -0,0 +1,439 @@ + + + + + + + + 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 gamepadIndex, 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
+ +
+ +
+ gamepadIndex + → int + + +
+
+ The index of the gamepad to read from. Does not match Gamepad.controller. +
final
+ +
+ +
+ 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
+ +
+ +
+ 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
+ +
+ +
+ 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..b3f86bc7d2 --- /dev/null +++ b/docs/models/Controller/Controller.html @@ -0,0 +1,130 @@ + + + + + + + + Controller constructor - Controller - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
Controller
+ +
+ +
+
+
+ +
+
+ +

Controller constructor +

+ +
+ + Controller(
  1. int gamepadIndex,
  2. +
  3. RoverControls controls
  4. +
) +
+ + +
+

Maps button presses on gamepad to controls.

+
+ + + +
+

Implementation

+
Controller(this.gamepadIndex, this.controls);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/Controller/connect.html b/docs/models/Controller/connect.html new file mode 100644 index 0000000000..5d0497744c --- /dev/null +++ b/docs/models/Controller/connect.html @@ -0,0 +1,140 @@ + + + + + + + + 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(gamepadIndex);
+	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..f705f5e4da --- /dev/null +++ b/docs/models/Controller/controls.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c477e51f80 --- /dev/null +++ b/docs/models/Controller/dispose.html @@ -0,0 +1,149 @@ + + + + + + + + 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..f4c32f005d --- /dev/null +++ b/docs/models/Controller/gamepad.html @@ -0,0 +1,136 @@ + + + + + + + + gamepad property - Controller class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
gamepad
+ +
+ +
+
+
+ +
+
+ +

gamepad property +

+ + + +
+ +
+ + Gamepad + gamepad + + +
+ + +
+

The gamepad to read from.

+
+ + +
+

Implementation

+
Gamepad get gamepad => services.gamepad.gamepads[gamepadIndex];
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/Controller/gamepadIndex.html b/docs/models/Controller/gamepadIndex.html new file mode 100644 index 0000000000..309086c9de --- /dev/null +++ b/docs/models/Controller/gamepadIndex.html @@ -0,0 +1,129 @@ + + + + + + + + gamepadIndex property - Controller class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
gamepadIndex
+ +
+ +
+
+
+ +
+
+ +

gamepadIndex property +

+ +
+ + int + gamepadIndex +
final
+ +
+ +
+

The index of the gamepad to read from. Does not match Gamepad.controller.

+
+ + +
+

Implementation

+
final int gamepadIndex;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/Controller/gamepadTimer.html b/docs/models/Controller/gamepadTimer.html new file mode 100644 index 0000000000..e65d0da8fe --- /dev/null +++ b/docs/models/Controller/gamepadTimer.html @@ -0,0 +1,129 @@ + + + + + + + + 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/init.html b/docs/models/Controller/init.html new file mode 100644 index 0000000000..ee4be4bcc8 --- /dev/null +++ b/docs/models/Controller/init.html @@ -0,0 +1,141 @@ + + + + + + + + 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..a5e9bcbbc9 --- /dev/null +++ b/docs/models/Controller/isConnected.html @@ -0,0 +1,136 @@ + + + + + + + + isConnected property - Controller class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isConnected
+ +
+ +
+
+
+ +
+
+ +

isConnected property +

+ + + +
+ +
+ + bool + 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..a27b54da06 --- /dev/null +++ b/docs/models/Controller/mode.html @@ -0,0 +1,136 @@ + + + + + + + + mode property - Controller class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
mode
+ +
+ +
+
+
+ +
+
+ +

mode property +

+ + + +
+ +
+ + OperatingMode + mode + + +
+ + +
+

The current operating mode.

+
+ + +
+

Implementation

+
OperatingMode get mode => controls.mode;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/Controller/setMode.html b/docs/models/Controller/setMode.html new file mode 100644 index 0000000000..09bdc35a8a --- /dev/null +++ b/docs/models/Controller/setMode.html @@ -0,0 +1,139 @@ + + + + + + + + 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;
+	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..5bf4de89ef --- /dev/null +++ b/docs/models/Controller/setModeIndex.html @@ -0,0 +1,133 @@ + + + + + + + + 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..dcd3a4967a --- /dev/null +++ b/docs/models/DashboardSettingsBuilder-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  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. runtimeType
  20. +
  21. splitMode
  22. +
  23. themeMode
  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. updateSplitMode
  42. +
  43. updateThemeMode
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/models/DashboardSettingsBuilder-class.html b/docs/models/DashboardSettingsBuilder-class.html new file mode 100644 index 0000000000..98628fcd2a --- /dev/null +++ b/docs/models/DashboardSettingsBuilder-class.html @@ -0,0 +1,420 @@ + + + + + + + + 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<ValueBuilder> + + +
+
+ Other builders to listen to. +
no setterinherited
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ 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
+ +
+ +
+
+ +
+

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
+ +
+ +
+ updateSplitMode(SplitMode? mode) + → void + + + +
+
+ Updates the splitMode when a new one is selected. + + +
+ +
+ updateThemeMode(ThemeMode? input) + → void + + + +
+
+ Updates the themeMode. + + +
+ +
+
+ +
+

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..9a7a944aec --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/DashboardSettingsBuilder.html @@ -0,0 +1,133 @@ + + + + + + + + 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,
+    themeMode = initial.themeMode;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DashboardSettingsBuilder/blockSize.html b/docs/models/DashboardSettingsBuilder/blockSize.html new file mode 100644 index 0000000000..c071cfdb06 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/blockSize.html @@ -0,0 +1,129 @@ + + + + + + + + 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..4f534850d8 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/fps.html @@ -0,0 +1,129 @@ + + + + + + + + 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..500998c1da --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/isValid.html @@ -0,0 +1,143 @@ + + + + + + + + isValid property - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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/splitMode.html b/docs/models/DashboardSettingsBuilder/splitMode.html new file mode 100644 index 0000000000..5440991c6c --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/splitMode.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c1f897d49b --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/themeMode.html @@ -0,0 +1,129 @@ + + + + + + + + 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/updateSplitMode.html b/docs/models/DashboardSettingsBuilder/updateSplitMode.html new file mode 100644 index 0000000000..ce63ccb9e7 --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/updateSplitMode.html @@ -0,0 +1,137 @@ + + + + + + + + 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/updateThemeMode.html b/docs/models/DashboardSettingsBuilder/updateThemeMode.html new file mode 100644 index 0000000000..71ce92982b --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/updateThemeMode.html @@ -0,0 +1,137 @@ + + + + + + + + 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/value.html b/docs/models/DashboardSettingsBuilder/value.html new file mode 100644 index 0000000000..7034a2000e --- /dev/null +++ b/docs/models/DashboardSettingsBuilder/value.html @@ -0,0 +1,147 @@ + + + + + + + + value property - DashboardSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ DashboardSettings + 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,
+);
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DashboardView-class-sidebar.html b/docs/models/DashboardView-class-sidebar.html new file mode 100644 index 0000000000..0c02df6122 --- /dev/null +++ b/docs/models/DashboardView-class-sidebar.html @@ -0,0 +1,34 @@ +
    + +
  1. Constructors
  2. +
  3. DashboardView
  4. + + + +
  5. + Properties +
  6. +
  7. builder
  8. +
  9. flutterKey
  10. +
  11. hashCode
  12. +
  13. key
  14. +
  15. name
  16. +
  17. runtimeType
  18. + +
  19. Methods
  20. +
  21. noSuchMethod
  22. +
  23. toString
  24. + +
  25. Operators
  26. +
  27. operator ==
  28. + + + + +
  29. Static properties
  30. +
  31. blank
  32. +
  33. cameraViews
  34. +
  35. uiViews
  36. + + +
diff --git a/docs/models/DashboardView-class.html b/docs/models/DashboardView-class.html new file mode 100644 index 0000000000..d199d85512 --- /dev/null +++ b/docs/models/DashboardView-class.html @@ -0,0 +1,312 @@ + + + + + + + + DashboardView class - models 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 WidgetBuilder builder, Object? key}) +
+
+ A const constructor. +
+
+
+ +
+

Properties

+
+
+ builder + WidgetBuilder + + +
+
+ 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
+ +
+ +
+ 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
+ +
+ +
+
+ + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DashboardView/DashboardView.html b/docs/models/DashboardView/DashboardView.html new file mode 100644 index 0000000000..0cf350ee67 --- /dev/null +++ b/docs/models/DashboardView/DashboardView.html @@ -0,0 +1,132 @@ + + + + + + + + DashboardView constructor - DashboardView - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
DashboardView
+ +
+ +
+
+
+ +
+
+ +

DashboardView constructor +

+ +
+ + DashboardView({
  1. required String name,
  2. +
  3. required WidgetBuilder builder,
  4. +
  5. Object? key,
  6. +
}) +
+ + +
+

A const constructor.

+
+ + + +
+

Implementation

+
DashboardView({required this.name, required this.builder, this.key}) :
+    flutterKey = UniqueKey();
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DashboardView/blank.html b/docs/models/DashboardView/blank.html new file mode 100644 index 0000000000..74163b60a1 --- /dev/null +++ b/docs/models/DashboardView/blank.html @@ -0,0 +1,144 @@ + + + + + + + + blank property - DashboardView class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
blank
+ +
+ +
+
+
+ +
+
+ +

blank property +

+ +
+ + DashboardView + blank +
final
+ +
+ +
+

A blank view.

+
+ + +
+

Implementation

+
static final blank = DashboardView(
+	name: Routes.blank,
+	builder: (context) => ColoredBox(
+		color: context.colorScheme.brightness == Brightness.light
+			? Colors.blueGrey
+			: Colors.blueGrey[700]!,
+		child: const Column(
+			children: [
+				Row(children: [Spacer(), ViewsSelector(currentView: Routes.blank)]),
+				Spacer(),
+				Text("Choose a view"),
+				Spacer(),
+			],
+		),
+	),
+);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DashboardView/builder.html b/docs/models/DashboardView/builder.html new file mode 100644 index 0000000000..e99d64b491 --- /dev/null +++ b/docs/models/DashboardView/builder.html @@ -0,0 +1,129 @@ + + + + + + + + builder property - DashboardView class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
builder
+ +
+ +
+
+
+ +
+
+ +

builder property +

+ +
+ + WidgetBuilder + builder +
final
+ +
+ +
+

A function to build this view.

+
+ + +
+

Implementation

+
final WidgetBuilder builder;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DashboardView/cameraViews.html b/docs/models/DashboardView/cameraViews.html new file mode 100644 index 0000000000..9a360e1a48 --- /dev/null +++ b/docs/models/DashboardView/cameraViews.html @@ -0,0 +1,136 @@ + + + + + + + + cameraViews property - DashboardView class - models 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,
+			builder: (context) => VideoFeed(name: name),
+		),
+];
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DashboardView/flutterKey.html b/docs/models/DashboardView/flutterKey.html new file mode 100644 index 0000000000..18dfbda9f0 --- /dev/null +++ b/docs/models/DashboardView/flutterKey.html @@ -0,0 +1,129 @@ + + + + + + + + flutterKey property - DashboardView class - models 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/models/DashboardView/hashCode.html b/docs/models/DashboardView/hashCode.html new file mode 100644 index 0000000000..3cd59c56f8 --- /dev/null +++ b/docs/models/DashboardView/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - DashboardView class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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/DashboardView/key.html b/docs/models/DashboardView/key.html new file mode 100644 index 0000000000..afc4cbc0b7 --- /dev/null +++ b/docs/models/DashboardView/key.html @@ -0,0 +1,129 @@ + + + + + + + + key property - DashboardView class - models 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/models/DashboardView/name.html b/docs/models/DashboardView/name.html new file mode 100644 index 0000000000..58f8f04dd0 --- /dev/null +++ b/docs/models/DashboardView/name.html @@ -0,0 +1,129 @@ + + + + + + + + name property - DashboardView class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
name
+ +
+ +
+
+
+ +
+
+ +

name property +

+ +
+ + String + name +
final
+ +
+ +
+

The name of the view.

+
+ + +
+

Implementation

+
final String name;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DashboardView/noSuchMethod.html b/docs/models/DashboardView/noSuchMethod.html new file mode 100644 index 0000000000..8040b58828 --- /dev/null +++ b/docs/models/DashboardView/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + noSuchMethod method - DashboardView 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/DashboardView/operator_equals.html b/docs/models/DashboardView/operator_equals.html new file mode 100644 index 0000000000..8a5799685a --- /dev/null +++ b/docs/models/DashboardView/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + operator == method - DashboardView 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/DashboardView/runtimeType.html b/docs/models/DashboardView/runtimeType.html new file mode 100644 index 0000000000..91c4a1144d --- /dev/null +++ b/docs/models/DashboardView/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - DashboardView class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

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

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DashboardView/toString.html b/docs/models/DashboardView/toString.html new file mode 100644 index 0000000000..1a808ede4a --- /dev/null +++ b/docs/models/DashboardView/toString.html @@ -0,0 +1,140 @@ + + + + + + + + toString method - DashboardView 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/DashboardView/uiViews.html b/docs/models/DashboardView/uiViews.html new file mode 100644 index 0000000000..c1967edfeb --- /dev/null +++ b/docs/models/DashboardView/uiViews.html @@ -0,0 +1,134 @@ + + + + + + + + uiViews property - DashboardView class - models 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, builder: (context) => SciencePage()),
+	DashboardView(name: Routes.autonomy, builder: (context) => MapPage()),
+    DashboardView(name: Routes.electrical, builder: (context) => ElectricalPage()),
+    DashboardView(name: Routes.arm, builder: (context) => ArmPage()),
+];
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DriveControls-class-sidebar.html b/docs/models/DriveControls-class-sidebar.html new file mode 100644 index 0000000000..4fd1bd5452 --- /dev/null +++ b/docs/models/DriveControls-class-sidebar.html @@ -0,0 +1,31 @@ +
    + +
  1. Constructors
  2. +
  3. DriveControls
  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/DriveControls-class.html b/docs/models/DriveControls-class.html new file mode 100644 index 0000000000..960492e2b2 --- /dev/null +++ b/docs/models/DriveControls-class.html @@ -0,0 +1,305 @@ + + + + + + + + DriveControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
DriveControls
+ +
+ +
+
+
+ +
+
+ +

DriveControls class + +

+ + +
+

A RoverControls that drives the rover.

+
+ + +
+
+ +
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
+ +
+ +
+ 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/DriveControls/DriveControls.html b/docs/models/DriveControls/DriveControls.html new file mode 100644 index 0000000000..4e6860e3c3 --- /dev/null +++ b/docs/models/DriveControls/DriveControls.html @@ -0,0 +1,121 @@ + + + + + + + + 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..ec2fce8c20 --- /dev/null +++ b/docs/models/DriveControls/buttonMapping.html @@ -0,0 +1,148 @@ + + + + + + + + buttonMapping property - DriveControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
buttonMapping
+ +
+ +
+
+
+ +
+
+ +

buttonMapping property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + 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)",
+	// "Drive Straight": "Triggers",
+	// "Turn in place": "Bumpers",
+};
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DriveControls/mode.html b/docs/models/DriveControls/mode.html new file mode 100644 index 0000000000..44d86e7752 --- /dev/null +++ b/docs/models/DriveControls/mode.html @@ -0,0 +1,142 @@ + + + + + + + + mode property - DriveControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
mode
+ +
+ +
+
+
+ +
+
+ +

mode property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + 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..1cefb0a1ed --- /dev/null +++ b/docs/models/DriveControls/onDispose.html @@ -0,0 +1,147 @@ + + + + + + + + onDispose property - DriveControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
onDispose
+ +
+ +
+
+
+ +
+
+ +

onDispose property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + 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(setLeft: false, left: 0),
+];
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/DriveControls/parseInputs.html b/docs/models/DriveControls/parseInputs.html new file mode 100644 index 0000000000..7cd8709295 --- /dev/null +++ b/docs/models/DriveControls/parseInputs.html @@ -0,0 +1,142 @@ + + + + + + + + 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(setLeft: true, left: state.normalLeftY),
+	DriveCommand(setRight: true, right: -1*state.normalRightY),
+];
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/EasterEggsSettingsBuilder-class-sidebar.html b/docs/models/EasterEggsSettingsBuilder-class-sidebar.html new file mode 100644 index 0000000000..0a4250062d --- /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..6373f1a5cf --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder-class.html @@ -0,0 +1,446 @@ + + + + + + + + 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<ValueBuilder> + + +
+
+ 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..befeefbc90 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/EasterEggsSettingsBuilder.html @@ -0,0 +1,133 @@ + + + + + + + + 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..3b9104593f --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/badApple.html @@ -0,0 +1,129 @@ + + + + + + + + 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..41de12c267 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/enableClippy.html @@ -0,0 +1,129 @@ + + + + + + + + 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..ee991ffda0 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/isValid.html @@ -0,0 +1,143 @@ + + + + + + + + isValid property - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..161106760f --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/segaIntro.html @@ -0,0 +1,129 @@ + + + + + + + + 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..d60c1461f6 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/segaSound.html @@ -0,0 +1,129 @@ + + + + + + + + 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..7e9d3d2134 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/updateBadApple.html @@ -0,0 +1,136 @@ + + + + + + + + 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..dc059b9c28 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/updateClippy.html @@ -0,0 +1,136 @@ + + + + + + + + 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..0962e23c35 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/updateSegaIntro.html @@ -0,0 +1,136 @@ + + + + + + + + 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..d149ffb8e8 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/updateSegaSound.html @@ -0,0 +1,136 @@ + + + + + + + + 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..690f3c80d7 --- /dev/null +++ b/docs/models/EasterEggsSettingsBuilder/value.html @@ -0,0 +1,147 @@ + + + + + + + + value property - EasterEggsSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ EasterEggsSettings + 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..c359ce9650 --- /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..6d3291825b --- /dev/null +++ b/docs/models/ElectricalModel-class.html @@ -0,0 +1,448 @@ + + + + + + + + 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 ScienceTestBuilders in 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..4b93dec3f6 --- /dev/null +++ b/docs/models/ElectricalModel/ElectricalModel.html @@ -0,0 +1,131 @@ + + + + + + + + ElectricalModel constructor - ElectricalModel - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ElectricalModel
+ +
+ +
+
+
+ +
+
+ +

ElectricalModel constructor +

+ +
+ + ElectricalModel() +
+ + +
+

Listens to all the ScienceTestBuilders in 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..6ed83c37e6 --- /dev/null +++ b/docs/models/ElectricalModel/axis.html @@ -0,0 +1,129 @@ + + + + + + + + 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..de5cf395b5 --- /dev/null +++ b/docs/models/ElectricalModel/changeDirection.html @@ -0,0 +1,135 @@ + + + + + + + + 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..a7952a4899 --- /dev/null +++ b/docs/models/ElectricalModel/clear.html @@ -0,0 +1,139 @@ + + + + + + + + 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..663b3d552a --- /dev/null +++ b/docs/models/ElectricalModel/currentReadings.html @@ -0,0 +1,129 @@ + + + + + + + + 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..78bcb9e960 --- /dev/null +++ b/docs/models/ElectricalModel/dispose.html @@ -0,0 +1,148 @@ + + + + + + + + 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..98109fb19b --- /dev/null +++ b/docs/models/ElectricalModel/firstTimestamp.html @@ -0,0 +1,129 @@ + + + + + + + + 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..5617b4d760 --- /dev/null +++ b/docs/models/ElectricalModel/leftSpeeds.html @@ -0,0 +1,129 @@ + + + + + + + + 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..93574cfbf7 --- /dev/null +++ b/docs/models/ElectricalModel/maxReadings-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f464528afe --- /dev/null +++ b/docs/models/ElectricalModel/metrics.html @@ -0,0 +1,136 @@ + + + + + + + + metrics property - ElectricalModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
metrics
+ +
+ +
+
+
+ +
+
+ +

metrics property +

+ + + +
+ +
+ + DriveMetrics + 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..0aad33204f --- /dev/null +++ b/docs/models/ElectricalModel/rightSpeeds.html @@ -0,0 +1,129 @@ + + + + + + + + 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..93b2a9e82a --- /dev/null +++ b/docs/models/ElectricalModel/timer.html @@ -0,0 +1,129 @@ + + + + + + + + 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..9d2b8f47b7 --- /dev/null +++ b/docs/models/ElectricalModel/voltageReadings.html @@ -0,0 +1,129 @@ + + + + + + + + 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..11da2d786e --- /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..50bfdd4744 --- /dev/null +++ b/docs/models/GpsBuilder-class.html @@ -0,0 +1,480 @@ + + + + + + + + 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..348295ef35 --- /dev/null +++ b/docs/models/GpsBuilder/GpsBuilder.html @@ -0,0 +1,121 @@ + + + + + + + + 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..ba52986dbf --- /dev/null +++ b/docs/models/GpsBuilder/clear.html @@ -0,0 +1,143 @@ + + + + + + + + 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..2e10831686 --- /dev/null +++ b/docs/models/GpsBuilder/isValid.html @@ -0,0 +1,145 @@ + + + + + + + + isValid property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..6bef210172 --- /dev/null +++ b/docs/models/GpsBuilder/latDecimal.html @@ -0,0 +1,129 @@ + + + + + + + + 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..340f1c1766 --- /dev/null +++ b/docs/models/GpsBuilder/latDegrees.html @@ -0,0 +1,129 @@ + + + + + + + + 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..29f6ee44ea --- /dev/null +++ b/docs/models/GpsBuilder/latMinutes.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c90a4b357a --- /dev/null +++ b/docs/models/GpsBuilder/latSeconds.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f61047df58 --- /dev/null +++ b/docs/models/GpsBuilder/longDecimal.html @@ -0,0 +1,129 @@ + + + + + + + + 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..0e868ebea9 --- /dev/null +++ b/docs/models/GpsBuilder/longDegrees.html @@ -0,0 +1,129 @@ + + + + + + + + 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..e04a6e2b2b --- /dev/null +++ b/docs/models/GpsBuilder/longMinutes.html @@ -0,0 +1,129 @@ + + + + + + + + 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..4fd6742da1 --- /dev/null +++ b/docs/models/GpsBuilder/longSeconds.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a02568508c --- /dev/null +++ b/docs/models/GpsBuilder/otherBuilders.html @@ -0,0 +1,146 @@ + + + + + + + + otherBuilders property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
otherBuilders
+ +
+ +
+
+
+ +
+
+ +

otherBuilders property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<NumberBuilder> + 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..0dab4cb012 --- /dev/null +++ b/docs/models/GpsBuilder/type.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2622f2bdc9 --- /dev/null +++ b/docs/models/GpsBuilder/updateType.html @@ -0,0 +1,136 @@ + + + + + + + + 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..e4dba40c37 --- /dev/null +++ b/docs/models/GpsBuilder/value.html @@ -0,0 +1,148 @@ + + + + + + + + value property - GpsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ GpsCoordinates + 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..1a24a31c98 --- /dev/null +++ b/docs/models/GpsType-enum-sidebar.html @@ -0,0 +1,33 @@ +
    + +
  1. Constructors
  2. +
  3. GpsType
  4. + +
  5. Values
  6. +
  7. degrees
  8. +
  9. decimal
  10. + + +
  11. + Properties +
  12. +
  13. hashCode
  14. +
  15. humanName
  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/models/GpsType.html b/docs/models/GpsType.html new file mode 100644 index 0000000000..f7438ff142 --- /dev/null +++ b/docs/models/GpsType.html @@ -0,0 +1,301 @@ + + + + + + + + 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.

+
+ + + + +
+

Constructors

+ +
+
+ GpsType() +
+
+ +
const
+
+
+
+ +
+

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/GpsType.html b/docs/models/GpsType/GpsType.html new file mode 100644 index 0000000000..ab0b9756f0 --- /dev/null +++ b/docs/models/GpsType/GpsType.html @@ -0,0 +1,121 @@ + + + + + + + + GpsType constructor - GpsType - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
GpsType
+ +
+ +
+
+
+ +
+
+ +

GpsType constructor +

+ +
+ const + GpsType() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/GpsType/hashCode.html b/docs/models/GpsType/hashCode.html new file mode 100644 index 0000000000..2131f7ed59 --- /dev/null +++ b/docs/models/GpsType/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - GpsType enum - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..6846f07733 --- /dev/null +++ b/docs/models/GpsType/humanName.html @@ -0,0 +1,139 @@ + + + + + + + + humanName property - GpsType enum - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
humanName
+ +
+ +
+
+
+ +
+
+ +

humanName property +

+ + + +
+ +
+ + String + 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..35856c41cd --- /dev/null +++ b/docs/models/GpsType/index.html @@ -0,0 +1,140 @@ + + + + + + + + index property - GpsType enum - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
index
+ +
+ +
+
+
+ +
+
+

index property +

+ + + +
+ +
+ + int + 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..5047516c54 --- /dev/null +++ b/docs/models/GpsType/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..f9b7ec20f4 --- /dev/null +++ b/docs/models/GpsType/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..cbc71d86d9 --- /dev/null +++ b/docs/models/GpsType/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - GpsType enum - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..738708cfc4 --- /dev/null +++ b/docs/models/GpsType/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..3dc0050ccb --- /dev/null +++ b/docs/models/GpsType/values-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..55e46724ce --- /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..84845acb5b --- /dev/null +++ b/docs/models/GridOffset-class.html @@ -0,0 +1,249 @@ + + + + + + + + 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..a3f68b82b7 --- /dev/null +++ b/docs/models/GridOffset/GridOffset.html @@ -0,0 +1,130 @@ + + + + + + + + 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..2645b9fea7 --- /dev/null +++ b/docs/models/GridOffset/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - GridOffset class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..903638535c --- /dev/null +++ b/docs/models/GridOffset/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..1b16a84e51 --- /dev/null +++ b/docs/models/GridOffset/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..a3912d3507 --- /dev/null +++ b/docs/models/GridOffset/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - GridOffset class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..e71690defc --- /dev/null +++ b/docs/models/GridOffset/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..be725c0053 --- /dev/null +++ b/docs/models/GridOffset/x.html @@ -0,0 +1,129 @@ + + + + + + + + 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..75c04ed5c3 --- /dev/null +++ b/docs/models/GridOffset/y.html @@ -0,0 +1,129 @@ + + + + + + + + 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..1b0d1e02ae --- /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..5f218cfff7 --- /dev/null +++ b/docs/models/HomeModel-class.html @@ -0,0 +1,385 @@ + + + + + + + + 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..ef79e95390 --- /dev/null +++ b/docs/models/HomeModel/HomeModel.html @@ -0,0 +1,121 @@ + + + + + + + + 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..8118283d21 --- /dev/null +++ b/docs/models/HomeModel/clear.html @@ -0,0 +1,138 @@ + + + + + + + + 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..4069648090 --- /dev/null +++ b/docs/models/HomeModel/dispose.html @@ -0,0 +1,149 @@ + + + + + + + + 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..9396874b48 --- /dev/null +++ b/docs/models/HomeModel/init.html @@ -0,0 +1,143 @@ + + + + + + + + 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..922dc2f09a --- /dev/null +++ b/docs/models/HomeModel/message.html @@ -0,0 +1,129 @@ + + + + + + + + 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..744752a0eb --- /dev/null +++ b/docs/models/HomeModel/mission.html @@ -0,0 +1,129 @@ + + + + + + + + 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..736a165ec4 --- /dev/null +++ b/docs/models/HomeModel/setMessage.html @@ -0,0 +1,142 @@ + + + + + + + + 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..2492b431d0 --- /dev/null +++ b/docs/models/HomeModel/version.html @@ -0,0 +1,129 @@ + + + + + + + + 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..130f17cef9 --- /dev/null +++ b/docs/models/LogsModel-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. LogsModel
  4. + + + +
  5. + Properties +
  6. +
  7. allLogs
  8. +
  9. hashCode
  10. +
  11. hasListeners
  12. +
  13. runtimeType
  14. +
  15. saveToFileBuffer
  16. +
  17. saveToFileTimer
  18. + +
  19. Methods
  20. +
  21. addListener
  22. +
  23. clear
  24. +
  25. dispose
  26. +
  27. handleLog
  28. +
  29. init
  30. +
  31. noSuchMethod
  32. +
  33. notifyListeners
  34. +
  35. removeListener
  36. +
  37. saveToFile
  38. +
  39. toString
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
  45. Constants
  46. +
  47. saveToFileInterval
  48. +
diff --git a/docs/models/LogsModel-class.html b/docs/models/LogsModel-class.html new file mode 100644 index 0000000000..17b064de47 --- /dev/null +++ b/docs/models/LogsModel-class.html @@ -0,0 +1,419 @@ + + + + + + + + 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 the allLogs list 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
+ +
+ +
+ 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
+ +
+ +
+
+ +
+

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
+ +
+ +
+ 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..18b72eec03 --- /dev/null +++ b/docs/models/LogsModel/LogsModel.html @@ -0,0 +1,121 @@ + + + + + + + + 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..469274c35a --- /dev/null +++ b/docs/models/LogsModel/allLogs.html @@ -0,0 +1,129 @@ + + + + + + + + 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/clear.html b/docs/models/LogsModel/clear.html new file mode 100644 index 0000000000..e1bb3954a6 --- /dev/null +++ b/docs/models/LogsModel/clear.html @@ -0,0 +1,136 @@ + + + + + + + + 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();
+  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..f7f1787776 --- /dev/null +++ b/docs/models/LogsModel/handleLog.html @@ -0,0 +1,149 @@ + + + + + + + + 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);
+  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..a5aabe4e7d --- /dev/null +++ b/docs/models/LogsModel/init.html @@ -0,0 +1,141 @@ + + + + + + + + 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/saveToFile.html b/docs/models/LogsModel/saveToFile.html new file mode 100644 index 0000000000..8582e57af6 --- /dev/null +++ b/docs/models/LogsModel/saveToFile.html @@ -0,0 +1,139 @@ + + + + + + + + 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..40a247f513 --- /dev/null +++ b/docs/models/LogsModel/saveToFileBuffer.html @@ -0,0 +1,129 @@ + + + + + + + + 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..ff30b1c77a --- /dev/null +++ b/docs/models/LogsModel/saveToFileInterval-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..181612e594 --- /dev/null +++ b/docs/models/LogsModel/saveToFileTimer.html @@ -0,0 +1,129 @@ + + + + + + + + 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/LogsOptionsViewModel-class-sidebar.html b/docs/models/LogsOptionsViewModel-class-sidebar.html new file mode 100644 index 0000000000..3b9101065c --- /dev/null +++ b/docs/models/LogsOptionsViewModel-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  1. Constructors
  2. +
  3. LogsOptionsViewModel
  4. + + + +
  5. + Properties +
  6. +
  7. autoscroll
  8. +
  9. deviceFilter
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. levelFilter
  16. +
  17. runtimeType
  18. + +
  19. Methods
  20. +
  21. addListener
  22. +
  23. dispose
  24. +
  25. noSuchMethod
  26. +
  27. notifyListeners
  28. +
  29. removeListener
  30. +
  31. resetDevice
  32. +
  33. setAutoscroll
  34. +
  35. setDeviceFilter
  36. +
  37. setLevelFilter
  38. +
  39. toString
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/models/LogsOptionsViewModel-class.html b/docs/models/LogsOptionsViewModel-class.html new file mode 100644 index 0000000000..967bcad079 --- /dev/null +++ b/docs/models/LogsOptionsViewModel-class.html @@ -0,0 +1,398 @@ + + + + + + + + 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
+ +
+ +
+ 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
+ +
+ +
+ 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
+ +
+ +
+ 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. + + +
+ +
+ 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..3dc48fa7dc --- /dev/null +++ b/docs/models/LogsOptionsViewModel/LogsOptionsViewModel.html @@ -0,0 +1,121 @@ + + + + + + + + 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..5309287c9f --- /dev/null +++ b/docs/models/LogsOptionsViewModel/autoscroll.html @@ -0,0 +1,130 @@ + + + + + + + + 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..ca7f16e452 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/deviceFilter.html @@ -0,0 +1,129 @@ + + + + + + + + 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/levelFilter.html b/docs/models/LogsOptionsViewModel/levelFilter.html new file mode 100644 index 0000000000..8bd898b1f2 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/levelFilter.html @@ -0,0 +1,129 @@ + + + + + + + + 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/resetDevice.html b/docs/models/LogsOptionsViewModel/resetDevice.html new file mode 100644 index 0000000000..70ac0e7ff3 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/resetDevice.html @@ -0,0 +1,143 @@ + + + + + + + + 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,
+  };
+  final message = UpdateSetting(status: RoverStatus.RESTART);
+  socket?.sendMessage(message);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/LogsOptionsViewModel/setAutoscroll.html b/docs/models/LogsOptionsViewModel/setAutoscroll.html new file mode 100644 index 0000000000..4d897cecd3 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/setAutoscroll.html @@ -0,0 +1,137 @@ + + + + + + + + setAutoscroll method - LogsOptionsViewModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
setAutoscroll
+ +
+ +
+
+
+ +
+
+ +

setAutoscroll method +

+ +
+ + +void +setAutoscroll({
  1. bool? input,
  2. +
}) + + + +
+ +
+

Enables or disables autoscroll.

+
+ + + +
+

Implementation

+
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..251aa4da40 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/setDeviceFilter.html @@ -0,0 +1,136 @@ + + + + + + + + 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..8aa1676153 --- /dev/null +++ b/docs/models/LogsOptionsViewModel/setLevelFilter.html @@ -0,0 +1,137 @@ + + + + + + + + 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/LogsViewModel-class-sidebar.html b/docs/models/LogsViewModel-class-sidebar.html new file mode 100644 index 0000000000..1ecb189c38 --- /dev/null +++ b/docs/models/LogsViewModel-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  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. update
  40. + +
  41. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/models/LogsViewModel-class.html b/docs/models/LogsViewModel-class.html new file mode 100644 index 0000000000..c3d5a39cda --- /dev/null +++ b/docs/models/LogsViewModel-class.html @@ -0,0 +1,396 @@ + + + + + + + + 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
+ +
+ +
+ update() + → void + + + +
+
+ Updates the UI. + + +
+ +
+
+ +
+

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..4684e6570a --- /dev/null +++ b/docs/models/LogsViewModel/LogsViewModel.html @@ -0,0 +1,134 @@ + + + + + + + + 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);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/LogsViewModel/dispose.html b/docs/models/LogsViewModel/dispose.html new file mode 100644 index 0000000000..43ca74eb4e --- /dev/null +++ b/docs/models/LogsViewModel/dispose.html @@ -0,0 +1,147 @@ + + + + + + + + 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..f09c696d57 --- /dev/null +++ b/docs/models/LogsViewModel/jumpToBottom.html @@ -0,0 +1,135 @@ + + + + + + + + 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..3b8915dc64 --- /dev/null +++ b/docs/models/LogsViewModel/logs.html @@ -0,0 +1,144 @@ + + + + + + + + logs property - LogsViewModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
logs
+ +
+ +
+
+
+ +
+
+ +

logs property +

+ + + +
+ +
+ + List<BurtLog> + logs + + +
+ + +
+

The logs that should be shown, according to LogsOptionsViewModel.

+
+ + +
+

Implementation

+
List<BurtLog> get logs {
+  final result = <BurtLog>[];
+  for (final log in models.logs.allLogs) {
+    if (options.deviceFilter != null && log.device != options.deviceFilter) continue;
+    if (log.level.value > options.levelFilter.value) continue;
+    result.add(log);
+  }
+  return result.reversed.toList();
+}
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/LogsViewModel/onNewLog.html b/docs/models/LogsViewModel/onNewLog.html new file mode 100644 index 0000000000..6a7746ebed --- /dev/null +++ b/docs/models/LogsViewModel/onNewLog.html @@ -0,0 +1,136 @@ + + + + + + + + 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() {
+  notifyListeners();
+  if (!scrollController.hasClients) return;
+  scrollController.jumpTo(options.autoscroll ? 0 : scrollController.offset + 64);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/LogsViewModel/onScroll.html b/docs/models/LogsViewModel/onScroll.html new file mode 100644 index 0000000000..a5ca05ae5b --- /dev/null +++ b/docs/models/LogsViewModel/onScroll.html @@ -0,0 +1,135 @@ + + + + + + + + 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 enableAutoscroll = scrollController.position.pixels == 0;
+  options.setAutoscroll(input: enableAutoscroll);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/LogsViewModel/options.html b/docs/models/LogsViewModel/options.html new file mode 100644 index 0000000000..c8980cf8cb --- /dev/null +++ b/docs/models/LogsViewModel/options.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a0866bcf96 --- /dev/null +++ b/docs/models/LogsViewModel/scrollController.html @@ -0,0 +1,129 @@ + + + + + + + + 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/LogsViewModel/update.html b/docs/models/LogsViewModel/update.html new file mode 100644 index 0000000000..eda2155a6e --- /dev/null +++ b/docs/models/LogsViewModel/update.html @@ -0,0 +1,132 @@ + + + + + + + + update method - LogsViewModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
update
+ +
+ +
+
+
+ +
+
+ +

update method +

+ +
+ + +void +update() + + + +
+ +
+

Updates the UI.

+
+ + + +
+

Implementation

+
void update() => notifyListeners();
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/MarsControls-class-sidebar.html b/docs/models/MarsControls-class-sidebar.html new file mode 100644 index 0000000000..37f6612e05 --- /dev/null +++ b/docs/models/MarsControls-class-sidebar.html @@ -0,0 +1,31 @@ +
    + +
  1. Constructors
  2. +
  3. MarsControls
  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/MarsControls-class.html b/docs/models/MarsControls-class.html new file mode 100644 index 0000000000..4362bb0b46 --- /dev/null +++ b/docs/models/MarsControls-class.html @@ -0,0 +1,305 @@ + + + + + + + + MarsControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
MarsControls
+ +
+ +
+
+
+ +
+
+ +

MarsControls class + +

+ + +
+

A RoverControls for the MARS subsystems.

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

Constructors

+ +
+
+ MarsControls() +
+
+ +
+
+
+ +
+

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/MarsControls/MarsControls.html b/docs/models/MarsControls/MarsControls.html new file mode 100644 index 0000000000..38fb4a335c --- /dev/null +++ b/docs/models/MarsControls/MarsControls.html @@ -0,0 +1,121 @@ + + + + + + + + MarsControls constructor - MarsControls - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
MarsControls
+ +
+ +
+
+
+ +
+
+ +

MarsControls constructor +

+ +
+ + MarsControls() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/MarsControls/buttonMapping.html b/docs/models/MarsControls/buttonMapping.html new file mode 100644 index 0000000000..53f1b48fc7 --- /dev/null +++ b/docs/models/MarsControls/buttonMapping.html @@ -0,0 +1,146 @@ + + + + + + + + buttonMapping property - MarsControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
buttonMapping
+ +
+ +
+
+
+ +
+
+ +

buttonMapping property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + 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 => {
+	"Swivel": "Left joystick (horizontal)",
+	"Tilt": "Right joystick (vertical)",
+};
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/MarsControls/mode.html b/docs/models/MarsControls/mode.html new file mode 100644 index 0000000000..f4a5772a3b --- /dev/null +++ b/docs/models/MarsControls/mode.html @@ -0,0 +1,142 @@ + + + + + + + + mode property - MarsControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
mode
+ +
+ +
+
+
+ +
+
+ +

mode property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + mode +
override
+ +
+ + +
+

The OperatingMode for these controls.

+
+ + +
+

Implementation

+
@override
+OperatingMode get mode => OperatingMode.mars;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/MarsControls/onDispose.html b/docs/models/MarsControls/onDispose.html new file mode 100644 index 0000000000..7a555e51c0 --- /dev/null +++ b/docs/models/MarsControls/onDispose.html @@ -0,0 +1,143 @@ + + + + + + + + onDispose property - MarsControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
onDispose
+ +
+ +
+
+
+ +
+
+ +

onDispose property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + 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/MarsControls/parseInputs.html b/docs/models/MarsControls/parseInputs.html new file mode 100644 index 0000000000..2e79bef1ff --- /dev/null +++ b/docs/models/MarsControls/parseInputs.html @@ -0,0 +1,142 @@ + + + + + + + + parseInputs method - MarsControls 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 (state.normalLeftX != 0) MarsCommand(swivel: state.normalLeftX * pi / 50),
+	if (state.normalRightY != 0) MarsCommand(tilt: state.normalRightY * 5000),
+];
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/MessagesModel-class-sidebar.html b/docs/models/MessagesModel-class-sidebar.html new file mode 100644 index 0000000000..08e97fd005 --- /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..a673a14d9f --- /dev/null +++ b/docs/models/MessagesModel-class.html @@ -0,0 +1,296 @@ + + + + + + + + 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) + → 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..140cb9fb91 --- /dev/null +++ b/docs/models/MessagesModel/MessagesModel.html @@ -0,0 +1,121 @@ + + + + + + + + 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..93689a0732 --- /dev/null +++ b/docs/models/MessagesModel/allowedFallthrough-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..847584212a --- /dev/null +++ b/docs/models/MessagesModel/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..2ded34bbf1 --- /dev/null +++ b/docs/models/MessagesModel/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..6052335fa0 --- /dev/null +++ b/docs/models/MessagesModel/onMessage.html @@ -0,0 +1,144 @@ + + + + + + + + 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 {
+		try { return rawHandler(wrapper.data); }
+		on InvalidProtocolBufferException { /* Nothing we can do */ }
+	}
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/MessagesModel/operator_equals.html b/docs/models/MessagesModel/operator_equals.html new file mode 100644 index 0000000000..f842b4a27f --- /dev/null +++ b/docs/models/MessagesModel/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..1cddebe3fb --- /dev/null +++ b/docs/models/MessagesModel/registerHandler.html @@ -0,0 +1,155 @@ + + + + + + + + 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..80a2ef3ed9 --- /dev/null +++ b/docs/models/MessagesModel/removeHandler.html @@ -0,0 +1,134 @@ + + + + + + + + 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..5cc9448626 --- /dev/null +++ b/docs/models/MessagesModel/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..3a11b4fd51 --- /dev/null +++ b/docs/models/MessagesModel/sendMessage.html @@ -0,0 +1,136 @@ + + + + + + + + sendMessage method - MessagesModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
sendMessage
+ +
+ +
+
+
+ +
+
+ +

sendMessage method +

+ +
+ + +void +sendMessage(
  1. Message message
  2. +
) + + + +
+ +
+

Sends a command over the network or over Serial.

+
+ + + +
+

Implementation

+
void sendMessage(Message message) {
+	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..3832bbb193 --- /dev/null +++ b/docs/models/MessagesModel/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..a1dd203108 --- /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..3038eeb2b4 --- /dev/null +++ b/docs/models/MissionTimer-class.html @@ -0,0 +1,409 @@ + + + + + + + + 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..a4c0821c18 --- /dev/null +++ b/docs/models/MissionTimer/MissionTimer.html @@ -0,0 +1,121 @@ + + + + + + + + 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..e7033f5e6d --- /dev/null +++ b/docs/models/MissionTimer/cancel.html @@ -0,0 +1,136 @@ + + + + + + + + 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..0149a78f9c --- /dev/null +++ b/docs/models/MissionTimer/isPaused.html @@ -0,0 +1,129 @@ + + + + + + + + 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..e9a9b73169 --- /dev/null +++ b/docs/models/MissionTimer/pause.html @@ -0,0 +1,136 @@ + + + + + + + + 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..c18ce95c69 --- /dev/null +++ b/docs/models/MissionTimer/resume.html @@ -0,0 +1,135 @@ + + + + + + + + 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..c9f8b13f7a --- /dev/null +++ b/docs/models/MissionTimer/start.html @@ -0,0 +1,141 @@ + + + + + + + + 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..2767fea5fe --- /dev/null +++ b/docs/models/MissionTimer/timeLeft.html @@ -0,0 +1,129 @@ + + + + + + + + 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..961341c5c9 --- /dev/null +++ b/docs/models/MissionTimer/title.html @@ -0,0 +1,129 @@ + + + + + + + + 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..fe0aefddb9 --- /dev/null +++ b/docs/models/MissionTimer/underMin.html @@ -0,0 +1,136 @@ + + + + + + + + underMin property - MissionTimer class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
underMin
+ +
+ +
+
+
+ +
+
+ +

underMin property +

+ + + +
+ +
+ + bool + 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..531008ffc3 --- /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..551cbc7f3e --- /dev/null +++ b/docs/models/Model-class.html @@ -0,0 +1,336 @@ + + + + + + + + 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..256dd3d34a --- /dev/null +++ b/docs/models/Model/Model.html @@ -0,0 +1,121 @@ + + + + + + + + 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..b347cdd736 --- /dev/null +++ b/docs/models/Model/init.html @@ -0,0 +1,132 @@ + + + + + + + + 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..7c4acc6f69 --- /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..3d9ee6a226 --- /dev/null +++ b/docs/models/Models-class.html @@ -0,0 +1,452 @@ + + + + + + + + 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..1856f78b9a --- /dev/null +++ b/docs/models/Models/Models.html @@ -0,0 +1,121 @@ + + + + + + + + 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..68851a1c29 --- /dev/null +++ b/docs/models/Models/dispose.html @@ -0,0 +1,154 @@ + + + + + + + + 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..c0a180ebee --- /dev/null +++ b/docs/models/Models/home.html @@ -0,0 +1,129 @@ + + + + + + + + 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..ac645bda1d --- /dev/null +++ b/docs/models/Models/init.html @@ -0,0 +1,151 @@ + + + + + + + + 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..2e77cdbaa9 --- /dev/null +++ b/docs/models/Models/isReady.html @@ -0,0 +1,129 @@ + + + + + + + + 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..7d91886af7 --- /dev/null +++ b/docs/models/Models/logs.html @@ -0,0 +1,129 @@ + + + + + + + + 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..d4df61eb90 --- /dev/null +++ b/docs/models/Models/messages.html @@ -0,0 +1,129 @@ + + + + + + + + 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..47bb4e2013 --- /dev/null +++ b/docs/models/Models/rover.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a2ce6b15fb --- /dev/null +++ b/docs/models/Models/serial.html @@ -0,0 +1,129 @@ + + + + + + + + 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..4a75037d1f --- /dev/null +++ b/docs/models/Models/settings.html @@ -0,0 +1,129 @@ + + + + + + + + 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..76927a1c15 --- /dev/null +++ b/docs/models/Models/sockets.html @@ -0,0 +1,129 @@ + + + + + + + + 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..666f4385ab --- /dev/null +++ b/docs/models/Models/video.html @@ -0,0 +1,129 @@ + + + + + + + + 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..1c5cdfc8b4 --- /dev/null +++ b/docs/models/Models/views.html @@ -0,0 +1,129 @@ + + + + + + + + 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/NetworkSettingsBuilder-class-sidebar.html b/docs/models/NetworkSettingsBuilder-class-sidebar.html new file mode 100644 index 0000000000..113efdc724 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  1. Constructors
  2. +
  3. NetworkSettingsBuilder
  4. + + + +
  5. + Properties +
  6. +
  7. autonomySocket
  8. +
  9. dataSocket
  10. +
  11. hashCode
  12. +
  13. hasListeners
  14. +
  15. isValid
  16. +
  17. otherBuilders
  18. +
  19. runtimeType
  20. +
  21. tankSocket
  22. +
  23. value
  24. +
  25. videoSocket
  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/NetworkSettingsBuilder-class.html b/docs/models/NetworkSettingsBuilder-class.html new file mode 100644 index 0000000000..a13b2e6cb0 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder-class.html @@ -0,0 +1,394 @@ + + + + + + + + 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
+ +
+ +
+ 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..4fa7ae09b4 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/NetworkSettingsBuilder.html @@ -0,0 +1,133 @@ + + + + + + + + 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);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder/autonomySocket.html b/docs/models/NetworkSettingsBuilder/autonomySocket.html new file mode 100644 index 0000000000..e926827572 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/autonomySocket.html @@ -0,0 +1,129 @@ + + + + + + + + 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/dataSocket.html b/docs/models/NetworkSettingsBuilder/dataSocket.html new file mode 100644 index 0000000000..70f40dce7e --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/dataSocket.html @@ -0,0 +1,129 @@ + + + + + + + + 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..8cc93152c7 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/isValid.html @@ -0,0 +1,146 @@ + + + + + + + + isValid property - NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..947af35b8f --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/otherBuilders.html @@ -0,0 +1,142 @@ + + + + + + + + otherBuilders property - NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
otherBuilders
+ +
+ +
+
+
+ +
+
+ +

otherBuilders property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<SocketBuilder> + 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..7835c89af8 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/tankSocket.html @@ -0,0 +1,130 @@ + + + + + + + + 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..d5a3e8c9f1 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/value.html @@ -0,0 +1,148 @@ + + + + + + + + value property - NetworkSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ NetworkSettings + 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: 5,
+);
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/NetworkSettingsBuilder/videoSocket.html b/docs/models/NetworkSettingsBuilder/videoSocket.html new file mode 100644 index 0000000000..9724ef3cc6 --- /dev/null +++ b/docs/models/NetworkSettingsBuilder/videoSocket.html @@ -0,0 +1,129 @@ + + + + + + + + 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..9ca2dfd2e7 --- /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..ae991bb230 --- /dev/null +++ b/docs/models/NoControls-class.html @@ -0,0 +1,305 @@ + + + + + + + + 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..0fe70e7fe7 --- /dev/null +++ b/docs/models/NoControls/NoControls.html @@ -0,0 +1,121 @@ + + + + + + + + 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..2846dc5f7f --- /dev/null +++ b/docs/models/NoControls/buttonMapping.html @@ -0,0 +1,143 @@ + + + + + + + + buttonMapping property - NoControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
buttonMapping
+ +
+ +
+
+
+ +
+
+ +

buttonMapping property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + 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..2f815d7e2f --- /dev/null +++ b/docs/models/NoControls/mode.html @@ -0,0 +1,142 @@ + + + + + + + + mode property - NoControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
mode
+ +
+ +
+
+
+ +
+
+ +

mode property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + 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..12cf8afee0 --- /dev/null +++ b/docs/models/NoControls/onDispose.html @@ -0,0 +1,143 @@ + + + + + + + + onDispose property - NoControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
onDispose
+ +
+ +
+
+
+ +
+
+ +

onDispose property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + 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..b91a5315ab --- /dev/null +++ b/docs/models/NoControls/parseInputs.html @@ -0,0 +1,139 @@ + + + + + + + + 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..ee57148336 --- /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..10537969de --- /dev/null +++ b/docs/models/NumberBuilder-class.html @@ -0,0 +1,434 @@ + + + + + + + + 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<ValueBuilder> + + +
+
+ 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..b92040d4ad --- /dev/null +++ b/docs/models/NumberBuilder/NumberBuilder.html @@ -0,0 +1,131 @@ + + + + + + + + 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..0706af2527 --- /dev/null +++ b/docs/models/NumberBuilder/clear.html @@ -0,0 +1,137 @@ + + + + + + + + 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..11ff75ae04 --- /dev/null +++ b/docs/models/NumberBuilder/isInteger.html @@ -0,0 +1,136 @@ + + + + + + + + isInteger property - NumberBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isInteger
+ +
+ +
+
+
+ +
+
+ +

isInteger property +

+ + + +
+ +
+ + bool + 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..82f0ca2472 --- /dev/null +++ b/docs/models/NumberBuilder/max.html @@ -0,0 +1,129 @@ + + + + + + + + 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..68fc56a6dc --- /dev/null +++ b/docs/models/NumberBuilder/min.html @@ -0,0 +1,129 @@ + + + + + + + + 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..ca5ae9cee9 --- /dev/null +++ b/docs/models/NumberBuilder/update.html @@ -0,0 +1,156 @@ + + + + + + + + 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/RequestNotAccepted-class-sidebar.html b/docs/models/RequestNotAccepted-class-sidebar.html new file mode 100644 index 0000000000..74aa8d8c16 --- /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..215af8992e --- /dev/null +++ b/docs/models/RequestNotAccepted-class.html @@ -0,0 +1,224 @@ + + + + + + + + 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..dcfbe70ed1 --- /dev/null +++ b/docs/models/RequestNotAccepted/RequestNotAccepted.html @@ -0,0 +1,121 @@ + + + + + + + + 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..26ae2ade4e --- /dev/null +++ b/docs/models/RequestNotAccepted/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - RequestNotAccepted class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..c3e23acae0 --- /dev/null +++ b/docs/models/RequestNotAccepted/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..829cbde20a --- /dev/null +++ b/docs/models/RequestNotAccepted/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..e950e2f6cb --- /dev/null +++ b/docs/models/RequestNotAccepted/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - RequestNotAccepted class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..7c1e108852 --- /dev/null +++ b/docs/models/RequestNotAccepted/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..4932256a6b --- /dev/null +++ b/docs/models/Rover-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. Rover
  4. + + + +
  5. + Properties +
  6. +
  7. controller1
  8. +
  9. controller2
  10. +
  11. controller3
  12. +
  13. hashCode
  14. +
  15. hasListeners
  16. +
  17. isConnected
  18. +
  19. metrics
  20. +
  21. runtimeType
  22. +
  23. settings
  24. +
  25. status
  26. + +
  27. Methods
  28. +
  29. addListener
  30. +
  31. dispose
  32. +
  33. init
  34. +
  35. noSuchMethod
  36. +
  37. notifyListeners
  38. +
  39. removeListener
  40. +
  41. toString
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/models/Rover-class.html b/docs/models/Rover-class.html new file mode 100644 index 0000000000..083f9f35cd --- /dev/null +++ b/docs/models/Rover-class.html @@ -0,0 +1,408 @@ + + + + + + + + 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
+ +
+ +
+ 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
+ +
+ +
+ 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..ce7a02459b --- /dev/null +++ b/docs/models/Rover/Rover.html @@ -0,0 +1,121 @@ + + + + + + + + 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..9a96e38d8f --- /dev/null +++ b/docs/models/Rover/controller1.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f02698651d --- /dev/null +++ b/docs/models/Rover/controller2.html @@ -0,0 +1,129 @@ + + + + + + + + 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..3ec2103ad5 --- /dev/null +++ b/docs/models/Rover/controller3.html @@ -0,0 +1,129 @@ + + + + + + + + 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, CameraControls());
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/Rover/dispose.html b/docs/models/Rover/dispose.html new file mode 100644 index 0000000000..3a1cabb4df --- /dev/null +++ b/docs/models/Rover/dispose.html @@ -0,0 +1,154 @@ + + + + + + + + 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..07cbd7a966 --- /dev/null +++ b/docs/models/Rover/init.html @@ -0,0 +1,147 @@ + + + + + + + + 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 {
+	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..d9668cd13a --- /dev/null +++ b/docs/models/Rover/isConnected.html @@ -0,0 +1,136 @@ + + + + + + + + isConnected property - Rover class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isConnected
+ +
+ +
+
+
+ +
+
+ +

isConnected property +

+ + + +
+ +
+ + bool + 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..a3c56bc5e9 --- /dev/null +++ b/docs/models/Rover/metrics.html @@ -0,0 +1,129 @@ + + + + + + + + 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/settings.html b/docs/models/Rover/settings.html new file mode 100644 index 0000000000..cc869b455b --- /dev/null +++ b/docs/models/Rover/settings.html @@ -0,0 +1,129 @@ + + + + + + + + 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..89338ddf61 --- /dev/null +++ b/docs/models/Rover/status.html @@ -0,0 +1,129 @@ + + + + + + + + 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..3d803fb105 --- /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..6e42fc2d4e --- /dev/null +++ b/docs/models/RoverControls-class.html @@ -0,0 +1,317 @@ + + + + + + + + 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..272436a01b --- /dev/null +++ b/docs/models/RoverControls/RoverControls.forMode.html @@ -0,0 +1,138 @@ + + + + + + + + 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) {
+		case OperatingMode.arm: return ArmControls();
+		case OperatingMode.science: return ScienceControls();
+		case OperatingMode.drive: return DriveControls();
+		case OperatingMode.mars: return MarsControls();
+		case OperatingMode.none: return NoControls();
+		case OperatingMode.cameras: return CameraControls();
+	}
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/RoverControls/RoverControls.html b/docs/models/RoverControls/RoverControls.html new file mode 100644 index 0000000000..4a3aa65d75 --- /dev/null +++ b/docs/models/RoverControls/RoverControls.html @@ -0,0 +1,128 @@ + + + + + + + + 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..c09fff3821 --- /dev/null +++ b/docs/models/RoverControls/buttonMapping.html @@ -0,0 +1,137 @@ + + + + + + + + buttonMapping property - RoverControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
buttonMapping
+ +
+ +
+
+
+ +
+
+ +

buttonMapping property +

+ + + +
+ +
+ + Map<String, String> + 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..3a64d8a691 --- /dev/null +++ b/docs/models/RoverControls/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - RoverControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..3bc3167faa --- /dev/null +++ b/docs/models/RoverControls/mode.html @@ -0,0 +1,136 @@ + + + + + + + + mode property - RoverControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
mode
+ +
+ +
+
+
+ +
+
+ +

mode property +

+ + + +
+ +
+ + OperatingMode + 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..dc854b2cfc --- /dev/null +++ b/docs/models/RoverControls/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..cea93c83bc --- /dev/null +++ b/docs/models/RoverControls/onDispose.html @@ -0,0 +1,137 @@ + + + + + + + + onDispose property - RoverControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
onDispose
+ +
+ +
+
+
+ +
+
+ +

onDispose property +

+ + + +
+ +
+ + Iterable<Message> + 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..e6706234ec --- /dev/null +++ b/docs/models/RoverControls/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..70103befd8 --- /dev/null +++ b/docs/models/RoverControls/parseInputs.html @@ -0,0 +1,133 @@ + + + + + + + + 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..39e96696c6 --- /dev/null +++ b/docs/models/RoverControls/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - RoverControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..8d69a4c3cf --- /dev/null +++ b/docs/models/RoverControls/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..82dc05bb0a --- /dev/null +++ b/docs/models/RoverControls/updateState.html @@ -0,0 +1,133 @@ + + + + + + + + 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..f783949685 --- /dev/null +++ b/docs/models/RoverMetrics-class-sidebar.html @@ -0,0 +1,38 @@ +
    + +
  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. position
  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. Operators
  42. +
  43. operator ==
  44. + + + + + + +
diff --git a/docs/models/RoverMetrics-class.html b/docs/models/RoverMetrics-class.html new file mode 100644 index 0000000000..e9e7bc64fd --- /dev/null +++ b/docs/models/RoverMetrics-class.html @@ -0,0 +1,395 @@ + + + + + + + + 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
+ +
+ +
+ 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
+ +
+ +
+
+ +
+

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
+ +
+ +
+
+ +
+

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..2d45aefedb --- /dev/null +++ b/docs/models/RoverMetrics/RoverMetrics.html @@ -0,0 +1,121 @@ + + + + + + + + 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..b0b3bb0e8e --- /dev/null +++ b/docs/models/RoverMetrics/allMetrics.html @@ -0,0 +1,138 @@ + + + + + + + + allMetrics property - RoverMetrics class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
allMetrics
+ +
+ +
+
+
+ +
+
+ +

allMetrics property +

+ + + +
+ +
+ + List<Metrics<Message>> + 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 => [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..0d67f36e6c --- /dev/null +++ b/docs/models/RoverMetrics/arm.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c1e7ef605a --- /dev/null +++ b/docs/models/RoverMetrics/drive.html @@ -0,0 +1,129 @@ + + + + + + + + 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..e4fe3d1497 --- /dev/null +++ b/docs/models/RoverMetrics/gripper.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a2c53bad1f --- /dev/null +++ b/docs/models/RoverMetrics/init.html @@ -0,0 +1,164 @@ + + + + + + + + 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,
+	);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/RoverMetrics/position.html b/docs/models/RoverMetrics/position.html new file mode 100644 index 0000000000..bd2118c7be --- /dev/null +++ b/docs/models/RoverMetrics/position.html @@ -0,0 +1,129 @@ + + + + + + + + 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..d430ca3d69 --- /dev/null +++ b/docs/models/RoverMetrics/science.html @@ -0,0 +1,129 @@ + + + + + + + + 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/ScienceAnalysis-class-sidebar.html b/docs/models/ScienceAnalysis-class-sidebar.html new file mode 100644 index 0000000000..5f72ac1a6a --- /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..7a9c6023cc --- /dev/null +++ b/docs/models/ScienceAnalysis-class.html @@ -0,0 +1,295 @@ + + + + + + + + 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..c15b45ab01 --- /dev/null +++ b/docs/models/ScienceAnalysis/ScienceAnalysis.html @@ -0,0 +1,129 @@ + + + + + + + + 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..d30f28966b --- /dev/null +++ b/docs/models/ScienceAnalysis/addReading.html @@ -0,0 +1,137 @@ + + + + + + + + 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..63743c5248 --- /dev/null +++ b/docs/models/ScienceAnalysis/clear.html @@ -0,0 +1,135 @@ + + + + + + + + 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..b3d79433a6 --- /dev/null +++ b/docs/models/ScienceAnalysis/data.html @@ -0,0 +1,129 @@ + + + + + + + + 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..44be9af949 --- /dev/null +++ b/docs/models/ScienceAnalysis/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..5e08c9f203 --- /dev/null +++ b/docs/models/ScienceAnalysis/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..72a9b8bd3e --- /dev/null +++ b/docs/models/ScienceAnalysis/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..b859249b2b --- /dev/null +++ b/docs/models/ScienceAnalysis/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..4200c700df --- /dev/null +++ b/docs/models/ScienceAnalysis/sensor.html @@ -0,0 +1,129 @@ + + + + + + + + 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..4582fc3912 --- /dev/null +++ b/docs/models/ScienceAnalysis/testBuilder.html @@ -0,0 +1,129 @@ + + + + + + + + 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..98b791d2e0 --- /dev/null +++ b/docs/models/ScienceAnalysis/testResult.html @@ -0,0 +1,141 @@ + + + + + + + + testResult property - ScienceAnalysis class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
testResult
+ +
+ +
+
+
+ +
+
+ +

testResult property +

+ + + +
+ +
+ + ScienceResult + 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..238a4019b2 --- /dev/null +++ b/docs/models/ScienceAnalysis/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..7b2b8d63d5 --- /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..f2a72d8de5 --- /dev/null +++ b/docs/models/ScienceCommandBuilder-class.html @@ -0,0 +1,396 @@ + + + + + + + + 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..62f2e6f68a --- /dev/null +++ b/docs/models/ScienceCommandBuilder/ScienceCommandBuilder.html @@ -0,0 +1,121 @@ + + + + + + + + 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..606a0d2f1a --- /dev/null +++ b/docs/models/ScienceCommandBuilder/isValid.html @@ -0,0 +1,143 @@ + + + + + + + + isValid property - ScienceCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..2fe12366d6 --- /dev/null +++ b/docs/models/ScienceCommandBuilder/otherBuilders.html @@ -0,0 +1,142 @@ + + + + + + + + otherBuilders property - ScienceCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
otherBuilders
+ +
+ +
+
+
+ +
+
+ +

otherBuilders property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<ValueBuilder> + 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..3735b707d7 --- /dev/null +++ b/docs/models/ScienceCommandBuilder/sample.html @@ -0,0 +1,129 @@ + + + + + + + + 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..7bce065aaa --- /dev/null +++ b/docs/models/ScienceCommandBuilder/send.html @@ -0,0 +1,135 @@ + + + + + + + + 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..e56824e28e --- /dev/null +++ b/docs/models/ScienceCommandBuilder/state.html @@ -0,0 +1,129 @@ + + + + + + + + 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..17ec12e8a3 --- /dev/null +++ b/docs/models/ScienceCommandBuilder/updateState.html @@ -0,0 +1,136 @@ + + + + + + + + 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..d5f4388f6b --- /dev/null +++ b/docs/models/ScienceCommandBuilder/value.html @@ -0,0 +1,145 @@ + + + + + + + + value property - ScienceCommandBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ ScienceCommand + 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..0ed4df79ea --- /dev/null +++ b/docs/models/ScienceControls-class-sidebar.html @@ -0,0 +1,31 @@ +
    + +
  1. Constructors
  2. +
  3. ScienceControls
  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/ScienceControls-class.html b/docs/models/ScienceControls-class.html new file mode 100644 index 0000000000..0b12612f79 --- /dev/null +++ b/docs/models/ScienceControls-class.html @@ -0,0 +1,305 @@ + + + + + + + + ScienceControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ScienceControls
+ +
+ +
+
+
+ +
+
+ +

ScienceControls class + +

+ + +
+

A RoverControls that controls the science chamber.

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

Constructors

+ +
+
+ ScienceControls() +
+
+ +
+
+
+ +
+

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/ScienceControls/ScienceControls.html b/docs/models/ScienceControls/ScienceControls.html new file mode 100644 index 0000000000..82c072ffee --- /dev/null +++ b/docs/models/ScienceControls/ScienceControls.html @@ -0,0 +1,121 @@ + + + + + + + + ScienceControls constructor - ScienceControls - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ScienceControls
+ +
+ +
+
+
+ +
+
+ +

ScienceControls constructor +

+ +
+ + ScienceControls() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ScienceControls/buttonMapping.html b/docs/models/ScienceControls/buttonMapping.html new file mode 100644 index 0000000000..9ba7777611 --- /dev/null +++ b/docs/models/ScienceControls/buttonMapping.html @@ -0,0 +1,151 @@ + + + + + + + + buttonMapping property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
buttonMapping
+ +
+ +
+
+
+ +
+
+ +

buttonMapping property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ Map<String, String> + 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 => {
+	"Vacuum Linear": "Left Stick (vertical)",
+	"Science Linear": "Right Stick (vertical)",
+	"Dirt Linear": "D-pad left/right",
+	"Dirt carousel": "Bumpers",
+	"Vacuum power": "Left Trigger",
+	"Vacuum release": "D-pad up/down",
+	"Pumps": "A/B/X/Y",
+};
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ScienceControls/mode.html b/docs/models/ScienceControls/mode.html new file mode 100644 index 0000000000..d25aa9b6a8 --- /dev/null +++ b/docs/models/ScienceControls/mode.html @@ -0,0 +1,142 @@ + + + + + + + + mode property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
mode
+ +
+ +
+
+
+ +
+
+ +

mode property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ OperatingMode + 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..3ccd969914 --- /dev/null +++ b/docs/models/ScienceControls/onDispose.html @@ -0,0 +1,143 @@ + + + + + + + + onDispose property - ScienceControls class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
onDispose
+ +
+ +
+
+
+ +
+
+ +

onDispose property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<Message> + 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..a46f6476fd --- /dev/null +++ b/docs/models/ScienceControls/parseInputs.html @@ -0,0 +1,161 @@ + + + + + + + + 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 (state.normalLeftY != 0) ScienceCommand(vacuumLinear: state.normalLeftY*1000),
+	if (state.normalRightY != 0) ScienceCommand(scienceLinear: state.normalRightY*-10000),
+	if (state.normalDpadX != 0) ScienceCommand(dirtLinear: state.normalDpadX * 10000),
+	if (state.dpadUp) ScienceCommand(dirtRelease: DirtReleaseState.CLOSE_DIRT),
+	if (state.dpadDown) ScienceCommand(dirtRelease: DirtReleaseState.OPEN_DIRT),
+	if (state.leftShoulder) ScienceCommand(dirtCarousel: -1000),
+	if (state.rightShoulder) ScienceCommand(dirtCarousel: 1000),
+	// These must be sent at all times to allow sending zero values
+	if (state.buttonA) ScienceCommand(pump1: PumpState.PUMP_ON)
+	else ScienceCommand(pump1: PumpState.PUMP_OFF),
+	if (state.buttonB) ScienceCommand(pump2: PumpState.PUMP_ON)
+	else ScienceCommand(pump2: PumpState.PUMP_OFF),
+	if (state.buttonX) ScienceCommand(pump3: PumpState.PUMP_ON)
+	else ScienceCommand(pump3: PumpState.PUMP_OFF),
+	if (state.buttonY) ScienceCommand(pump4: PumpState.PUMP_ON)
+	else ScienceCommand(pump4: PumpState.PUMP_OFF),
+	if (state.normalTrigger != 0) ScienceCommand(vacuum: PumpState.PUMP_ON)
+	else ScienceCommand(vacuum: PumpState.PUMP_OFF),
+
+	if (state.buttonStart) ScienceCommand(calibrate: true),
+	if (state.buttonBack) ScienceCommand(stop: true),
+];
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ScienceModel-class-sidebar.html b/docs/models/ScienceModel-class-sidebar.html new file mode 100644 index 0000000000..85e7bb89a4 --- /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..ae20e9e309 --- /dev/null +++ b/docs/models/ScienceModel-class.html @@ -0,0 +1,482 @@ + + + + + + + + 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..6ba9f2b49a --- /dev/null +++ b/docs/models/ScienceModel/ScienceModel.html @@ -0,0 +1,133 @@ + + + + + + + + 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..d1a8ba15e0 --- /dev/null +++ b/docs/models/ScienceModel/addMessage.html @@ -0,0 +1,142 @@ + + + + + + + + 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..b20e0999f7 --- /dev/null +++ b/docs/models/ScienceModel/addReading.html @@ -0,0 +1,137 @@ + + + + + + + + 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..021abd7ea5 --- /dev/null +++ b/docs/models/ScienceModel/allSamples.html @@ -0,0 +1,134 @@ + + + + + + + + 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..331107a835 --- /dev/null +++ b/docs/models/ScienceModel/analysesForSample.html @@ -0,0 +1,138 @@ + + + + + + + + analysesForSample property - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
analysesForSample
+ +
+ +
+
+
+ +
+
+ +

analysesForSample property +

+ + + +
+ +
+ + List<ScienceAnalysis> + 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..1d9f32b68b --- /dev/null +++ b/docs/models/ScienceModel/clear.html @@ -0,0 +1,140 @@ + + + + + + + + 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..3d80a0bb0f --- /dev/null +++ b/docs/models/ScienceModel/dispose.html @@ -0,0 +1,150 @@ + + + + + + + + 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..e60a5f491f --- /dev/null +++ b/docs/models/ScienceModel/errorText.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2039b7b64c --- /dev/null +++ b/docs/models/ScienceModel/isListening.html @@ -0,0 +1,129 @@ + + + + + + + + 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..45b8261228 --- /dev/null +++ b/docs/models/ScienceModel/isLoading.html @@ -0,0 +1,129 @@ + + + + + + + + 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..12b24e4b62 --- /dev/null +++ b/docs/models/ScienceModel/loadFile.html @@ -0,0 +1,163 @@ + + + + + + + + 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..e7b9f4f02e --- /dev/null +++ b/docs/models/ScienceModel/metrics.html @@ -0,0 +1,136 @@ + + + + + + + + metrics property - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
metrics
+ +
+ +
+
+
+ +
+
+ +

metrics property +

+ + + +
+ +
+ + ScienceMetrics + 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..579097b4e0 --- /dev/null +++ b/docs/models/ScienceModel/numSamples.html @@ -0,0 +1,136 @@ + + + + + + + + numSamples property - ScienceModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
numSamples
+ +
+ +
+
+
+ +
+
+ +

numSamples property +

+ + + +
+ +
+ + int + 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..af54ef969c --- /dev/null +++ b/docs/models/ScienceModel/sample.html @@ -0,0 +1,129 @@ + + + + + + + + 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..38ff2f895f --- /dev/null +++ b/docs/models/ScienceModel/updateData.html @@ -0,0 +1,136 @@ + + + + + + + + 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..2ff558d4a5 --- /dev/null +++ b/docs/models/ScienceModel/updateSample.html @@ -0,0 +1,137 @@ + + + + + + + + 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..564d92d4d5 --- /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..c62cf2c40a --- /dev/null +++ b/docs/models/ScienceSettingsBuilder-class.html @@ -0,0 +1,383 @@ + + + + + + + + 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<ValueBuilder> + + +
+
+ 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..0d645f1c28 --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/ScienceSettingsBuilder.html @@ -0,0 +1,131 @@ + + + + + + + + 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..ece10be1fa --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/isValid.html @@ -0,0 +1,143 @@ + + + + + + + + isValid property - ScienceSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..1ed6b174c4 --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/numSamples.html @@ -0,0 +1,129 @@ + + + + + + + + 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..3e55ed2950 --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/scrollableGraphs.html @@ -0,0 +1,129 @@ + + + + + + + + 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..fad8d45358 --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/updateScrollableGraphs.html @@ -0,0 +1,136 @@ + + + + + + + + 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..87dffeb874 --- /dev/null +++ b/docs/models/ScienceSettingsBuilder/value.html @@ -0,0 +1,145 @@ + + + + + + + + value property - ScienceSettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ ScienceSettings + 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..eb14fb8427 --- /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..70c4ef3468 --- /dev/null +++ b/docs/models/ScienceTestBuilder-class.html @@ -0,0 +1,357 @@ + + + + + + + + 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..98bb4615d6 --- /dev/null +++ b/docs/models/ScienceTestBuilder/ScienceTestBuilder.html @@ -0,0 +1,132 @@ + + + + + + + + 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..a698d591fb --- /dev/null +++ b/docs/models/ScienceTestBuilder/average.html @@ -0,0 +1,129 @@ + + + + + + + + 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..5fdb3937c9 --- /dev/null +++ b/docs/models/ScienceTestBuilder/dispose.html @@ -0,0 +1,149 @@ + + + + + + + + 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..55fa9e089d --- /dev/null +++ b/docs/models/ScienceTestBuilder/max.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a522478265 --- /dev/null +++ b/docs/models/ScienceTestBuilder/min.html @@ -0,0 +1,129 @@ + + + + + + + + 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..90ae240548 --- /dev/null +++ b/docs/models/ScienceTestBuilder/update.html @@ -0,0 +1,141 @@ + + + + + + + + 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..6739335fae --- /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..155beb4452 --- /dev/null +++ b/docs/models/SerialModel-class.html @@ -0,0 +1,417 @@ + + + + + + + + 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..44e3d6fac5 --- /dev/null +++ b/docs/models/SerialModel/SerialModel.html @@ -0,0 +1,121 @@ + + + + + + + + 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..d9ecd4d39d --- /dev/null +++ b/docs/models/SerialModel/connect.html @@ -0,0 +1,148 @@ + + + + + + + + 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..b193f600f5 --- /dev/null +++ b/docs/models/SerialModel/devices.html @@ -0,0 +1,130 @@ + + + + + + + + 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..04e251c6ce --- /dev/null +++ b/docs/models/SerialModel/disconnect.html @@ -0,0 +1,140 @@ + + + + + + + + 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..7fe10f1d36 --- /dev/null +++ b/docs/models/SerialModel/hasDevice.html @@ -0,0 +1,136 @@ + + + + + + + + hasDevice property - SerialModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasDevice
+ +
+ +
+
+
+ +
+
+ +

hasDevice property +

+ + + +
+ +
+ + bool + 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..dcca77f615 --- /dev/null +++ b/docs/models/SerialModel/init.html @@ -0,0 +1,138 @@ + + + + + + + + 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..98d1de2f7c --- /dev/null +++ b/docs/models/SerialModel/isConnected.html @@ -0,0 +1,133 @@ + + + + + + + + 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..80c52eaa35 --- /dev/null +++ b/docs/models/SerialModel/sendMessage.html @@ -0,0 +1,138 @@ + + + + + + + + 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..e2c7f4793e --- /dev/null +++ b/docs/models/SerialModel/toggle.html @@ -0,0 +1,133 @@ + + + + + + + + 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..492db1b57f --- /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..d74aab8e7c --- /dev/null +++ b/docs/models/SettingsBuilder-class.html @@ -0,0 +1,431 @@ + + + + + + + + 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<ValueBuilder> + + +
+
+ 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..9ccab937b6 --- /dev/null +++ b/docs/models/SettingsBuilder/SettingsBuilder.html @@ -0,0 +1,140 @@ + + + + + + + + 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..4151ae4b08 --- /dev/null +++ b/docs/models/SettingsBuilder/arm.html @@ -0,0 +1,129 @@ + + + + + + + + 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..70c37b0b35 --- /dev/null +++ b/docs/models/SettingsBuilder/dashboard.html @@ -0,0 +1,129 @@ + + + + + + + + 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..578dfa5d3b --- /dev/null +++ b/docs/models/SettingsBuilder/easterEggs.html @@ -0,0 +1,129 @@ + + + + + + + + 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..ad0943c72c --- /dev/null +++ b/docs/models/SettingsBuilder/isLoading.html @@ -0,0 +1,129 @@ + + + + + + + + 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..653be51c2a --- /dev/null +++ b/docs/models/SettingsBuilder/isValid.html @@ -0,0 +1,147 @@ + + + + + + + + isValid property - SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..1cecf565e5 --- /dev/null +++ b/docs/models/SettingsBuilder/network.html @@ -0,0 +1,129 @@ + + + + + + + + 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..1bd21bf643 --- /dev/null +++ b/docs/models/SettingsBuilder/save.html @@ -0,0 +1,140 @@ + + + + + + + + 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();
+	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..a6c26ae589 --- /dev/null +++ b/docs/models/SettingsBuilder/science.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f1f3eca56f --- /dev/null +++ b/docs/models/SettingsBuilder/value.html @@ -0,0 +1,148 @@ + + + + + + + + value property - SettingsBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ Settings + 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..e5774dc175 --- /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..69a8c7384f --- /dev/null +++ b/docs/models/SettingsModel-class.html @@ -0,0 +1,408 @@ + + + + + + + + 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..4bbd3bdf2c --- /dev/null +++ b/docs/models/SettingsModel/SettingsModel.html @@ -0,0 +1,121 @@ + + + + + + + + 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..8e1f08e83e --- /dev/null +++ b/docs/models/SettingsModel/all.html @@ -0,0 +1,129 @@ + + + + + + + + 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..9b61a0d2a1 --- /dev/null +++ b/docs/models/SettingsModel/arm.html @@ -0,0 +1,136 @@ + + + + + + + + arm property - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
arm
+ +
+ +
+
+
+ +
+
+ +

arm property +

+ + + +
+ +
+ + ArmSettings + 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..5e48152fd4 --- /dev/null +++ b/docs/models/SettingsModel/dashboard.html @@ -0,0 +1,136 @@ + + + + + + + + dashboard property - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
dashboard
+ +
+ +
+
+
+ +
+
+ +

dashboard property +

+ + + +
+ +
+ + DashboardSettings + 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..d8f7fc14b1 --- /dev/null +++ b/docs/models/SettingsModel/easterEggs.html @@ -0,0 +1,136 @@ + + + + + + + + easterEggs property - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
easterEggs
+ +
+ +
+
+
+ +
+
+ +

easterEggs property +

+ + + +
+ +
+ + EasterEggsSettings + 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..a545f48297 --- /dev/null +++ b/docs/models/SettingsModel/init.html @@ -0,0 +1,140 @@ + + + + + + + + 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();
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/SettingsModel/network.html b/docs/models/SettingsModel/network.html new file mode 100644 index 0000000000..79f2da405b --- /dev/null +++ b/docs/models/SettingsModel/network.html @@ -0,0 +1,136 @@ + + + + + + + + network property - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
network
+ +
+ +
+
+
+ +
+
+ +

network property +

+ + + +
+ +
+ + NetworkSettings + 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..da9c08d153 --- /dev/null +++ b/docs/models/SettingsModel/science.html @@ -0,0 +1,136 @@ + + + + + + + + science property - SettingsModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
science
+ +
+ +
+
+
+ +
+
+ +

science property +

+ + + +
+ +
+ + ScienceSettings + 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..dc70b7c25a --- /dev/null +++ b/docs/models/SettingsModel/update.html @@ -0,0 +1,141 @@ + + + + + + + + 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..4f12e94903 --- /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..17d971e352 --- /dev/null +++ b/docs/models/SocketBuilder-class.html @@ -0,0 +1,370 @@ + + + + + + + + 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<ValueBuilder> + + +
+
+ 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..dc992a1eeb --- /dev/null +++ b/docs/models/SocketBuilder/SocketBuilder.html @@ -0,0 +1,135 @@ + + + + + + + + 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..3174acb1cc --- /dev/null +++ b/docs/models/SocketBuilder/address.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c5aba3fa68 --- /dev/null +++ b/docs/models/SocketBuilder/isValid.html @@ -0,0 +1,143 @@ + + + + + + + + isValid property - SocketBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..a4b792440b --- /dev/null +++ b/docs/models/SocketBuilder/port.html @@ -0,0 +1,129 @@ + + + + + + + + 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..851ec47d2a --- /dev/null +++ b/docs/models/SocketBuilder/value.html @@ -0,0 +1,142 @@ + + + + + + + + value property - SocketBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ SocketInfo + 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..9b9d9d7210 --- /dev/null +++ b/docs/models/Sockets-class-sidebar.html @@ -0,0 +1,44 @@ +
    + +
  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. toString
  50. +
  51. updateSockets
  52. + +
  53. Operators
  54. +
  55. operator ==
  56. + + + + + + +
diff --git a/docs/models/Sockets-class.html b/docs/models/Sockets-class.html new file mode 100644 index 0000000000..708acd00f6 --- /dev/null +++ b/docs/models/Sockets-class.html @@ -0,0 +1,472 @@ + + + + + + + + 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. + + +
+ +
+ 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..8f4dd2e735 --- /dev/null +++ b/docs/models/Sockets/Sockets.html @@ -0,0 +1,121 @@ + + + + + + + + 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..d986a09e4e --- /dev/null +++ b/docs/models/Sockets/addressOverride.html @@ -0,0 +1,140 @@ + + + + + + + + addressOverride property - Sockets class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
addressOverride
+ +
+ +
+
+
+ +
+
+ +

addressOverride property +

+ + + +
+ +
+ + InternetAddress? + 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..8705f8b6dc --- /dev/null +++ b/docs/models/Sockets/autonomy.html @@ -0,0 +1,134 @@ + + + + + + + + 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..d1ff4b2577 --- /dev/null +++ b/docs/models/Sockets/connectionSummary.html @@ -0,0 +1,142 @@ + + + + + + + + connectionSummary property - Sockets class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
connectionSummary
+ +
+ +
+
+
+ +
+
+ +

connectionSummary property +

+ + + +
+ +
+ + String + 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..cefe67de3b --- /dev/null +++ b/docs/models/Sockets/data.html @@ -0,0 +1,134 @@ + + + + + + + + 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..510d282fc0 --- /dev/null +++ b/docs/models/Sockets/dispose.html @@ -0,0 +1,149 @@ + + + + + + + + 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..3348ae2d45 --- /dev/null +++ b/docs/models/Sockets/init.html @@ -0,0 +1,146 @@ + + + + + + + + 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..a282554788 --- /dev/null +++ b/docs/models/Sockets/onConnect.html @@ -0,0 +1,141 @@ + + + + + + + + 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();
+    }
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/Sockets/onDisconnect.html b/docs/models/Sockets/onDisconnect.html new file mode 100644 index 0000000000..30ffefd750 --- /dev/null +++ b/docs/models/Sockets/onDisconnect.html @@ -0,0 +1,137 @@ + + + + + + + + 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();
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/Sockets/reset.html b/docs/models/Sockets/reset.html new file mode 100644 index 0000000000..b2bf1ddc1c --- /dev/null +++ b/docs/models/Sockets/reset.html @@ -0,0 +1,141 @@ + + + + + + + + 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..b1b929d133 --- /dev/null +++ b/docs/models/Sockets/rover.html @@ -0,0 +1,129 @@ + + + + + + + + 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..7d46e5fd92 --- /dev/null +++ b/docs/models/Sockets/setRover.html @@ -0,0 +1,139 @@ + + + + + + + + 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/sockets.html b/docs/models/Sockets/sockets.html new file mode 100644 index 0000000000..fa54ea6d86 --- /dev/null +++ b/docs/models/Sockets/sockets.html @@ -0,0 +1,136 @@ + + + + + + + + sockets property - Sockets class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
sockets
+ +
+ +
+
+
+ +
+
+ +

sockets property +

+ + + +
+ +
+ + List<DashboardSocket> + 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..aac84be91b --- /dev/null +++ b/docs/models/Sockets/updateSockets.html @@ -0,0 +1,137 @@ + + + + + + + + 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..7a9b092829 --- /dev/null +++ b/docs/models/Sockets/video.html @@ -0,0 +1,134 @@ + + + + + + + + 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..88ae181e26 --- /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..ba7778fd59 --- /dev/null +++ b/docs/models/TextBuilder-class.html @@ -0,0 +1,389 @@ + + + + + + + + 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<ValueBuilder> + + +
+
+ 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..a379e2b519 --- /dev/null +++ b/docs/models/TextBuilder/TextBuilder.html @@ -0,0 +1,132 @@ + + + + + + + + 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..3db54a8edc --- /dev/null +++ b/docs/models/TextBuilder/controller.html @@ -0,0 +1,130 @@ + + + + + + + + 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..a8dff829bb --- /dev/null +++ b/docs/models/TextBuilder/error.html @@ -0,0 +1,129 @@ + + + + + + + + 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..71766d62c7 --- /dev/null +++ b/docs/models/TextBuilder/isValid.html @@ -0,0 +1,143 @@ + + + + + + + + isValid property - TextBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..d13aeaa668 --- /dev/null +++ b/docs/models/TextBuilder/update.html @@ -0,0 +1,135 @@ + + + + + + + + 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..170330efde --- /dev/null +++ b/docs/models/TextBuilder/value.html @@ -0,0 +1,135 @@ + + + + + + + + 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..19d304b4d1 --- /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..cf46eaba8d --- /dev/null +++ b/docs/models/ThrottleBuilder-class.html @@ -0,0 +1,369 @@ + + + + + + + + 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..6b16783624 --- /dev/null +++ b/docs/models/ThrottleBuilder/ThrottleBuilder.html @@ -0,0 +1,121 @@ + + + + + + + + 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..b6b61aec41 --- /dev/null +++ b/docs/models/ThrottleBuilder/controller.html @@ -0,0 +1,129 @@ + + + + + + + + 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..952d12e212 --- /dev/null +++ b/docs/models/ThrottleBuilder/errorText.html @@ -0,0 +1,129 @@ + + + + + + + + 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..ae27f748b5 --- /dev/null +++ b/docs/models/ThrottleBuilder/isLoading.html @@ -0,0 +1,129 @@ + + + + + + + + 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..785a581f16 --- /dev/null +++ b/docs/models/ThrottleBuilder/isValid.html @@ -0,0 +1,136 @@ + + + + + + + + isValid property - ThrottleBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ + bool + 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..646340c17c --- /dev/null +++ b/docs/models/ThrottleBuilder/save.html @@ -0,0 +1,141 @@ + + + + + + + + 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..b1d5383397 --- /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..e1f5955ded --- /dev/null +++ b/docs/models/TimerBuilder-class.html @@ -0,0 +1,396 @@ + + + + + + + + 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..fa160cb7eb --- /dev/null +++ b/docs/models/TimerBuilder/TimerBuilder.html @@ -0,0 +1,121 @@ + + + + + + + + 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..066de75ce0 --- /dev/null +++ b/docs/models/TimerBuilder/duration.html @@ -0,0 +1,129 @@ + + + + + + + + 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..58a66173fc --- /dev/null +++ b/docs/models/TimerBuilder/isValid.html @@ -0,0 +1,143 @@ + + + + + + + + isValid property - TimerBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..12087cca19 --- /dev/null +++ b/docs/models/TimerBuilder/nameController.html @@ -0,0 +1,129 @@ + + + + + + + + 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..86aeb12d38 --- /dev/null +++ b/docs/models/TimerBuilder/otherBuilders.html @@ -0,0 +1,142 @@ + + + + + + + + otherBuilders property - TimerBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
otherBuilders
+ +
+ +
+
+
+ +
+
+ +

otherBuilders property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ List<NumberBuilder<num>> + 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..76c1358482 --- /dev/null +++ b/docs/models/TimerBuilder/start.html @@ -0,0 +1,134 @@ + + + + + + + + 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..c9dd8262e0 --- /dev/null +++ b/docs/models/TimerBuilder/update.html @@ -0,0 +1,133 @@ + + + + + + + + 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..cb64071449 --- /dev/null +++ b/docs/models/TimerBuilder/value.html @@ -0,0 +1,142 @@ + + + + + + + + value property - TimerBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ void + 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..a224b18e36 --- /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..3865b468c6 --- /dev/null +++ b/docs/models/ValueBuilder-class.html @@ -0,0 +1,364 @@ + + + + + + + + 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<ValueBuilder> + + +
+
+ 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..081a6482dd --- /dev/null +++ b/docs/models/ValueBuilder/ValueBuilder.html @@ -0,0 +1,132 @@ + + + + + + + + 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..fbe1676cea --- /dev/null +++ b/docs/models/ValueBuilder/dispose.html @@ -0,0 +1,149 @@ + + + + + + + + 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..b5b684f15a --- /dev/null +++ b/docs/models/ValueBuilder/isValid.html @@ -0,0 +1,137 @@ + + + + + + + + isValid property - ValueBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isValid
+ +
+ +
+
+
+ +
+
+ +

isValid property +

+ + + +
+ +
+ + bool + 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..0ece0fa169 --- /dev/null +++ b/docs/models/ValueBuilder/otherBuilders.html @@ -0,0 +1,136 @@ + + + + + + + + otherBuilders property - ValueBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
otherBuilders
+ +
+ +
+
+
+ +
+
+ +

otherBuilders property +

+ + + +
+ +
+ + List<ValueBuilder> + otherBuilders + + +
+ + +
+

Other builders to listen to.

+
+ + +
+

Implementation

+
List<ValueBuilder<dynamic>> get otherBuilders => [];
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ValueBuilder/value.html b/docs/models/ValueBuilder/value.html new file mode 100644 index 0000000000..2ba0e1161c --- /dev/null +++ b/docs/models/ValueBuilder/value.html @@ -0,0 +1,136 @@ + + + + + + + + value property - ValueBuilder class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
value
+ +
+ +
+
+
+ +
+
+ +

value property +

+ + + +
+ +
+ + T + 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..1d0c9aaa84 --- /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..63644571db --- /dev/null +++ b/docs/models/VideoModel-class.html @@ -0,0 +1,461 @@ + + + + + + + + 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) + → 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..e6286383bd --- /dev/null +++ b/docs/models/VideoModel/VideoModel.html @@ -0,0 +1,121 @@ + + + + + + + + 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..ef513c0a32 --- /dev/null +++ b/docs/models/VideoModel/dispose.html @@ -0,0 +1,148 @@ + + + + + + + + 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..ed4fb09e56 --- /dev/null +++ b/docs/models/VideoModel/feeds.html @@ -0,0 +1,136 @@ + + + + + + + + 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..f561852172 --- /dev/null +++ b/docs/models/VideoModel/fpsTimer.html @@ -0,0 +1,129 @@ + + + + + + + + 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..4a681925e4 --- /dev/null +++ b/docs/models/VideoModel/frameUpdater.html @@ -0,0 +1,130 @@ + + + + + + + + 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..ba4f9356e3 --- /dev/null +++ b/docs/models/VideoModel/framesThisSecond.html @@ -0,0 +1,133 @@ + + + + + + + + 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..68e46ab707 --- /dev/null +++ b/docs/models/VideoModel/handleData.html @@ -0,0 +1,152 @@ + + + + + + + + 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..89dec96c37 --- /dev/null +++ b/docs/models/VideoModel/init.html @@ -0,0 +1,151 @@ + + + + + + + + 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..25c75366de --- /dev/null +++ b/docs/models/VideoModel/networkFps.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a67aff2f67 --- /dev/null +++ b/docs/models/VideoModel/reset.html @@ -0,0 +1,143 @@ + + + + + + + + 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..e8af70db65 --- /dev/null +++ b/docs/models/VideoModel/resetNetworkFps.html @@ -0,0 +1,140 @@ + + + + + + + + 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..9593f677ff --- /dev/null +++ b/docs/models/VideoModel/saveFrame.html @@ -0,0 +1,138 @@ + + + + + + + + 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..24c4577d3f --- /dev/null +++ b/docs/models/VideoModel/toggleCamera.html @@ -0,0 +1,152 @@ + + + + + + + + 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..8a2c421ed5 --- /dev/null +++ b/docs/models/VideoModel/updateCamera.html @@ -0,0 +1,140 @@ + + + + + + + + updateCamera method - VideoModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
updateCamera
+ +
+ +
+
+
+ +
+
+ +

updateCamera method +

+ +
+ + +Future<void> +updateCamera(
  1. String id,
  2. +
  3. CameraDetails details
  4. +
) + + + +
+ +
+

Updates settings for the given camera.

+
+ + + +
+

Implementation

+
Future<void> updateCamera(String id, CameraDetails details) async {
+	_handshake = null;
+	final command = VideoCommand(id: id, details: details);
+	models.sockets.video.sendMessage(command);
+	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..9652872e98 --- /dev/null +++ b/docs/models/ViewsModel-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. ViewsModel
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. hasListeners
  10. +
  11. horizontalController1
  12. +
  13. horizontalController2
  14. +
  15. runtimeType
  16. +
  17. verticalController
  18. +
  19. views
  20. + +
  21. Methods
  22. +
  23. addListener
  24. +
  25. dispose
  26. +
  27. init
  28. +
  29. noSuchMethod
  30. +
  31. notifyListeners
  32. +
  33. removeListener
  34. +
  35. replaceView
  36. +
  37. resetSizes
  38. +
  39. setNumViews
  40. +
  41. toString
  42. + +
  43. Operators
  44. +
  45. operator ==
  46. + + + + + + +
diff --git a/docs/models/ViewsModel-class.html b/docs/models/ViewsModel-class.html new file mode 100644 index 0000000000..94a61b0295 --- /dev/null +++ b/docs/models/ViewsModel-class.html @@ -0,0 +1,410 @@ + + + + + + + + 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
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ verticalController + ResizableController + + +
+
+ The controller for the resizable column. +
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(String oldView, DashboardView newView) + → void + + + +
+
+ Replaces the oldView with the newView. + + +
+ +
+ 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..11982c60cd --- /dev/null +++ b/docs/models/ViewsModel/ViewsModel.html @@ -0,0 +1,121 @@ + + + + + + + + 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..243a59e431 --- /dev/null +++ b/docs/models/ViewsModel/dispose.html @@ -0,0 +1,150 @@ + + + + + + + + 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();
+  verticalController.dispose();
+  super.dispose();
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ViewsModel/horizontalController1.html b/docs/models/ViewsModel/horizontalController1.html new file mode 100644 index 0000000000..53e3af9faf --- /dev/null +++ b/docs/models/ViewsModel/horizontalController1.html @@ -0,0 +1,129 @@ + + + + + + + + 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..e4ad1ea7a1 --- /dev/null +++ b/docs/models/ViewsModel/horizontalController2.html @@ -0,0 +1,129 @@ + + + + + + + + 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/init.html b/docs/models/ViewsModel/init.html new file mode 100644 index 0000000000..f7a8d0e229 --- /dev/null +++ b/docs/models/ViewsModel/init.html @@ -0,0 +1,140 @@ + + + + + + + + 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..1a3983ec43 --- /dev/null +++ b/docs/models/ViewsModel/replaceView.html @@ -0,0 +1,142 @@ + + + + + + + + replaceView method - ViewsModel class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
replaceView
+ +
+ +
+
+
+ +
+
+ +

replaceView method +

+ +
+ + +void +replaceView(
  1. String oldView,
  2. +
  3. DashboardView newView
  4. +
) + + + +
+ +
+

Replaces the oldView with the newView.

+
+ + + +
+

Implementation

+
void replaceView(String oldView, DashboardView newView) {
+	if (views.contains(newView)) {
+		models.home.setMessage(severity: Severity.error, text: "That view is already on-screen");
+		return;
+	}
+	final index = views.indexWhere((view) => view.name == oldView);
+	views[index] = newView;
+	notifyListeners();
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ViewsModel/resetSizes.html b/docs/models/ViewsModel/resetSizes.html new file mode 100644 index 0000000000..3dc38734f1 --- /dev/null +++ b/docs/models/ViewsModel/resetSizes.html @@ -0,0 +1,144 @@ + + + + + + + + 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]);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ViewsModel/setNumViews.html b/docs/models/ViewsModel/setNumViews.html new file mode 100644 index 0000000000..d81c2f5f56 --- /dev/null +++ b/docs/models/ViewsModel/setNumViews.html @@ -0,0 +1,144 @@ + + + + + + + + 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 > 4 || 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);
+		}
+	}
+	notifyListeners();
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ViewsModel/verticalController.html b/docs/models/ViewsModel/verticalController.html new file mode 100644 index 0000000000..0e18be66cd --- /dev/null +++ b/docs/models/ViewsModel/verticalController.html @@ -0,0 +1,129 @@ + + + + + + + + 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/views.html b/docs/models/ViewsModel/views.html new file mode 100644 index 0000000000..56e6fb4f46 --- /dev/null +++ b/docs/models/ViewsModel/views.html @@ -0,0 +1,131 @@ + + + + + + + + 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/ViewsSelector-class-sidebar.html b/docs/models/ViewsSelector-class-sidebar.html new file mode 100644 index 0000000000..92cd3f0af0 --- /dev/null +++ b/docs/models/ViewsSelector-class-sidebar.html @@ -0,0 +1,37 @@ +
    + +
  1. Constructors
  2. +
  3. ViewsSelector
  4. + + + +
  5. + Properties +
  6. +
  7. currentView
  8. +
  9. hashCode
  10. +
  11. key
  12. +
  13. runtimeType
  14. + +
  15. Methods
  16. +
  17. build
  18. +
  19. createElement
  20. +
  21. debugDescribeChildren
  22. +
  23. debugFillProperties
  24. +
  25. getCameraStatus
  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/models/ViewsSelector-class.html b/docs/models/ViewsSelector-class.html new file mode 100644 index 0000000000..37f6633364 --- /dev/null +++ b/docs/models/ViewsSelector-class.html @@ -0,0 +1,389 @@ + + + + + + + + ViewsSelector class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ViewsSelector
+ +
+ +
+
+
+ +
+
+ +

ViewsSelector class + +

+ + +
+

A button for the user to select a new view.

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

Constructors

+ +
+
+ ViewsSelector({required String currentView}) +
+
+ A const constructor. +
const
+
+
+
+ +
+

Properties

+
+
+ currentView + → String + + +
+
+ The current view to swap with the user's choice of view. +
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
+ +
+ +
+
+ +
+

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
+ +
+ +
+ getCameraStatus(DashboardView view) + Widget + + + +
+
+ An icon to indicate the status of the given camera. + + +
+ +
+ 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/models/ViewsSelector/ViewsSelector.html b/docs/models/ViewsSelector/ViewsSelector.html new file mode 100644 index 0000000000..9fd7cebb18 --- /dev/null +++ b/docs/models/ViewsSelector/ViewsSelector.html @@ -0,0 +1,129 @@ + + + + + + + + ViewsSelector constructor - ViewsSelector - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ViewsSelector
+ +
+ +
+
+
+ +
+
+ +

ViewsSelector constructor +

+ +
+ const + ViewsSelector({
  1. required String currentView,
  2. +
}) +
+ + +
+

A const constructor.

+
+ + + +
+

Implementation

+
const ViewsSelector({required this.currentView});
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ViewsSelector/build.html b/docs/models/ViewsSelector/build.html new file mode 100644 index 0000000000..bbfbcfef16 --- /dev/null +++ b/docs/models/ViewsSelector/build.html @@ -0,0 +1,191 @@ + + + + + + + + build method - ViewsSelector class - models 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(currentView, view),
+	itemBuilder: (_) => [
+		const PopupMenuItem(enabled: false, child: Text("Cameras")),
+		for (final view in DashboardView.cameraViews) PopupMenuItem(
+			value: view,
+			child: Row(children: [
+				if (models.sockets.video.isConnected) ...[getCameraStatus(view), const SizedBox(width: 8)],
+				Text(view.name),
+			],),
+		),
+		const PopupMenuDivider(),
+		const PopupMenuItem(enabled: false, child: Text("Controls")),
+		for (final view in DashboardView.uiViews) PopupMenuItem(
+			value: view,
+			child: Text(view.name),
+		),
+	],
+);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ViewsSelector/currentView.html b/docs/models/ViewsSelector/currentView.html new file mode 100644 index 0000000000..691e2b0c03 --- /dev/null +++ b/docs/models/ViewsSelector/currentView.html @@ -0,0 +1,129 @@ + + + + + + + + currentView property - ViewsSelector class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
currentView
+ +
+ +
+
+
+ +
+
+ +

currentView property +

+ +
+ + String + currentView +
final
+ +
+ +
+

The current view to swap with the user's choice of view.

+
+ + +
+

Implementation

+
final String currentView;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/ViewsSelector/getCameraStatus.html b/docs/models/ViewsSelector/getCameraStatus.html new file mode 100644 index 0000000000..4943a73074 --- /dev/null +++ b/docs/models/ViewsSelector/getCameraStatus.html @@ -0,0 +1,149 @@ + + + + + + + + getCameraStatus method - ViewsSelector class - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
getCameraStatus
+ +
+ +
+
+
+ +
+
+ +

getCameraStatus method +

+ +
+ + +Widget +getCameraStatus(
  1. DashboardView view
  2. +
) + + + +
+ +
+

An icon to indicate the status of the given camera.

+
+ + + +
+

Implementation

+
Widget getCameraStatus(DashboardView view) {
+	final name = view.key! as CameraName;
+	final status = models.video.feeds[name]!.details.status;
+	const size = 12.0;
+	switch(status) {
+		case CameraStatus.CAMERA_STATUS_UNDEFINED: return const Icon(Icons.question_mark, size: size);
+		case CameraStatus.CAMERA_DISCONNECTED: return const Icon(Icons.circle, size: size, color: Colors.black);
+		case CameraStatus.CAMERA_ENABLED: return const Icon(Icons.circle, size: size, color: Colors.green);
+		case CameraStatus.CAMERA_LOADING: return const Icon(Icons.circle, size: size, color: Colors.blueGrey);
+		case CameraStatus.CAMERA_DISABLED: return const Icon(Icons.circle, size: size, color: Colors.orange);
+		case CameraStatus.CAMERA_NOT_RESPONDING: return const Icon(Icons.circle, size: size, color: Colors.red);
+		case CameraStatus.FRAME_TOO_LARGE: return const Icon(Icons.circle, size: size, color: Colors.orange);
+		case CameraStatus.CAMERA_HAS_NO_NAME: return const Icon(Icons.circle, size: size, color: Colors.black);  // won't happen
+	}
+	// Do not use `default` or you will lose exhaustiveness checking
+	throw ArgumentError("Unrecognized status: $status");
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/gamepadDelay-constant.html b/docs/models/gamepadDelay-constant.html new file mode 100644 index 0000000000..c2e6312f82 --- /dev/null +++ b/docs/models/gamepadDelay-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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: 10);
+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/maxColor.html b/docs/models/maxColor.html new file mode 100644 index 0000000000..4af0a5f9f5 --- /dev/null +++ b/docs/models/maxColor.html @@ -0,0 +1,129 @@ + + + + + + + + maxColor property - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
maxColor
+ +
+ +
+
+
+ +
+
+ +

maxColor top-level property + +

+ +
+ + HSVColor + maxColor +
getter/setter pair
+ +
+ +
+

The rightmost color on the spectrum.

+
+ + +
+

Implementation

+
HSVColor maxColor = HSVColor.fromColor(Colors.pink);
+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/maxLogCount-constant.html b/docs/models/maxLogCount-constant.html new file mode 100644 index 0000000000..eab81628fc --- /dev/null +++ b/docs/models/maxLogCount-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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/minColor.html b/docs/models/minColor.html new file mode 100644 index 0000000000..817f4238c1 --- /dev/null +++ b/docs/models/minColor.html @@ -0,0 +1,129 @@ + + + + + + + + minColor property - models library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
minColor
+ +
+ +
+
+
+ +
+
+ +

minColor top-level property + +

+ +
+ + HSVColor + minColor +
getter/setter pair
+ +
+ +
+

The leftmost color on the spectrum.

+
+ + +
+

Implementation

+
HSVColor minColor = HSVColor.fromColor(Colors.redAccent[700]!);
+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/models/models-library-sidebar.html b/docs/models/models-library-sidebar.html new file mode 100644 index 0000000000..eadc652fe1 --- /dev/null +++ b/docs/models/models-library-sidebar.html @@ -0,0 +1,75 @@ +
    +
  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. DashboardView
  24. +
  25. DriveControls
  26. +
  27. EasterEggsSettingsBuilder
  28. +
  29. ElectricalModel
  30. +
  31. GpsBuilder
  32. +
  33. GridOffset
  34. +
  35. HomeModel
  36. +
  37. LogsModel
  38. +
  39. LogsOptionsViewModel
  40. +
  41. LogsViewModel
  42. +
  43. MarsControls
  44. +
  45. MessagesModel
  46. +
  47. MissionTimer
  48. +
  49. Model
  50. +
  51. Models
  52. +
  53. NetworkSettingsBuilder
  54. +
  55. NoControls
  56. +
  57. NumberBuilder
  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. ViewsSelector
  100. + +
  101. Enums
  102. +
  103. AutonomyCell
  104. +
  105. GpsType
  106. + + + +
  107. Constants
  108. +
  109. gamepadDelay
  110. +
  111. maxLogCount
  112. + +
  113. Properties
  114. +
  115. maxColor
  116. +
  117. minColor
  118. +
  119. models
  120. + + + +
  121. Exceptions
  122. +
  123. RequestNotAccepted
  124. + +
  125. Extensions
  126. +
  127. ColorUtils
  128. +
diff --git a/docs/models/models-library.html b/docs/models/models-library.html new file mode 100644 index 0000000000..acf0533ace --- /dev/null +++ b/docs/models/models-library.html @@ -0,0 +1,669 @@ + + + + + + + + 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. +
+ +
+ DashboardView + +
+
+ A view in the UI. +
+ +
+ DriveControls + +
+
+ A RoverControls that drives the rover. +
+ +
+ 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. +
+ +
+ MarsControls + +
+
+ A RoverControls for the MARS subsystems. +
+ +
+ 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. +
+ +
+ NetworkSettingsBuilder + +
+
+ A ValueBuilder representing a NetworkSettings. +
+ +
+ NoControls + +
+
+ A RoverControls that does nothing. +
+ +
+ NumberBuilder<T extends num> + +
+
+ A specialized TextBuilder to handle numeric inputs. +
+ +
+ 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. +
+ +
+ ViewsSelector + +
+
+ A button for the user to select a new view. +
+ +
+
+ +
+

Enums

+ +
+
+ AutonomyCell + +
+
+ Represents the state of a cell on the autonomy map. +
+ +
+ GpsType + +
+
+ The format to enter a GPS coordinate. +
+ +
+
+ + + +
+

Extensions

+ +
+
+ ColorUtils + on ProtoColor + + +
+
+ Utilities for color data. +
+ + +
+
+ +
+

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

+ +
+
+ maxColor + HSVColor + + +
+
+ The rightmost color on the spectrum. +
getter/setter pair
+ +
+ +
+ minColor + HSVColor + + +
+
+ The leftmost color on the spectrum. +
getter/setter pair
+ +
+ +
+ 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..c9a1aaa29c --- /dev/null +++ b/docs/models/models.html @@ -0,0 +1,132 @@ + + + + + + + + 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/ChartsRow-class-sidebar.html b/docs/pages/ChartsRow-class-sidebar.html new file mode 100644 index 0000000000..1e4e42fdf2 --- /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..1f1823f053 --- /dev/null +++ b/docs/pages/ChartsRow-class.html @@ -0,0 +1,412 @@ + + + + + + + + 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..cf1ec3e410 --- /dev/null +++ b/docs/pages/ChartsRow/ChartsRow.html @@ -0,0 +1,138 @@ + + + + + + + + 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..a48e9084c7 --- /dev/null +++ b/docs/pages/ChartsRow/analyses.html @@ -0,0 +1,129 @@ + + + + + + + + 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..59f394f299 --- /dev/null +++ b/docs/pages/ChartsRow/build.html @@ -0,0 +1,182 @@ + + + + + + + + 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..96ca2f9e5f --- /dev/null +++ b/docs/pages/ChartsRow/builder.html @@ -0,0 +1,129 @@ + + + + + + + + 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..47dc9643d0 --- /dev/null +++ b/docs/pages/ChartsRow/height.html @@ -0,0 +1,129 @@ + + + + + + + + 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..ca3f098956 --- /dev/null +++ b/docs/pages/ChartsRow/title.html @@ -0,0 +1,129 @@ + + + + + + + + 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/DesktopScrollBehavior-class-sidebar.html b/docs/pages/DesktopScrollBehavior-class-sidebar.html new file mode 100644 index 0000000000..bcb6d4adab --- /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. multitouchDragStrategy
  12. +
  13. pointerAxisModifiers
  14. +
  15. runtimeType
  16. + +
  17. Methods
  18. +
  19. buildOverscrollIndicator
  20. +
  21. buildScrollbar
  22. +
  23. copyWith
  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..b51025278c --- /dev/null +++ b/docs/pages/DesktopScrollBehavior-class.html @@ -0,0 +1,378 @@ + + + + + + + + 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
+ +
+ +
+ multitouchDragStrategy + MultitouchDragStrategy + + +
+
+ Configure the multi-finger drag strategy on multi-touch devices. +
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
+ +
+ +
+ 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..09f29405e2 --- /dev/null +++ b/docs/pages/DesktopScrollBehavior/DesktopScrollBehavior.html @@ -0,0 +1,121 @@ + + + + + + + + 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..81d24a5f06 --- /dev/null +++ b/docs/pages/DesktopScrollBehavior/dragDevices.html @@ -0,0 +1,151 @@ + + + + + + + + dragDevices property - DesktopScrollBehavior class - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
dragDevices
+ +
+ +
+
+
+ +
+
+ +

dragDevices property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ Set<PointerDeviceKind> + 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/ElectricalPage-class-sidebar.html b/docs/pages/ElectricalPage-class-sidebar.html new file mode 100644 index 0000000000..9bb2ae7b91 --- /dev/null +++ b/docs/pages/ElectricalPage-class-sidebar.html @@ -0,0 +1,39 @@ +
    + +
  1. Constructors
  2. +
  3. ElectricalPage
  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/ElectricalPage-class.html b/docs/pages/ElectricalPage-class.html new file mode 100644 index 0000000000..c16998c2df --- /dev/null +++ b/docs/pages/ElectricalPage-class.html @@ -0,0 +1,416 @@ + + + + + + + + ElectricalPage class - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ElectricalPage
+ +
+ +
+
+
+ +
+
+ +

ElectricalPage class + +

+ + +
+

The UI for the electrical subsystem.

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

Constructors

+ +
+
+ ElectricalPage() +
+
+ +
+
+
+ +
+

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, 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..2e78258151 --- /dev/null +++ b/docs/pages/ElectricalPage/ElectricalPage.html @@ -0,0 +1,121 @@ + + + + + + + + ElectricalPage constructor - ElectricalPage - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ElectricalPage
+ +
+ +
+
+
+ +
+
+ +

ElectricalPage constructor +

+ +
+ + ElectricalPage() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/ElectricalPage/build.html b/docs/pages/ElectricalPage/build.html new file mode 100644 index 0000000000..44441dcbf2 --- /dev/null +++ b/docs/pages/ElectricalPage/build.html @@ -0,0 +1,170 @@ + + + + + + + + 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),
+        const ViewsSelector(currentView: Routes.electrical),
+      ],),
+      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..82acbd096e --- /dev/null +++ b/docs/pages/ElectricalPage/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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/HomePage-class-sidebar.html b/docs/pages/HomePage-class-sidebar.html new file mode 100644 index 0000000000..75847a906c --- /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..93e144639a --- /dev/null +++ b/docs/pages/HomePage-class.html @@ -0,0 +1,364 @@ + + + + + + + + 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..d36e7292c7 --- /dev/null +++ b/docs/pages/HomePage/HomePage.html @@ -0,0 +1,121 @@ + + + + + + + + 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..6c37cb6f47 --- /dev/null +++ b/docs/pages/HomePage/createState.html @@ -0,0 +1,150 @@ + + + + + + + + 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..1010c461e6 --- /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..c3187fce23 --- /dev/null +++ b/docs/pages/HomePageState-class.html @@ -0,0 +1,451 @@ + + + + + + + + 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..8e7d059048 --- /dev/null +++ b/docs/pages/HomePageState/HomePageState.html @@ -0,0 +1,121 @@ + + + + + + + + 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..a05b0a557c --- /dev/null +++ b/docs/pages/HomePageState/build.html @@ -0,0 +1,275 @@ + + + + + + + + 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.aspect_ratio),
+          tooltip: "Reset view sizes",
+          onPressed: models.views.resetSizes,
+        ),
+			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..20b1383dd8 --- /dev/null +++ b/docs/pages/HomePageState/showSidebar.html @@ -0,0 +1,129 @@ + + + + + + + + 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..0976f7c581 --- /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..6a73c33934 --- /dev/null +++ b/docs/pages/LogWidget-class.html @@ -0,0 +1,388 @@ + + + + + + + + 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..a8095b1007 --- /dev/null +++ b/docs/pages/LogWidget/LogWidget.html @@ -0,0 +1,129 @@ + + + + + + + + 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..00cbda2183 --- /dev/null +++ b/docs/pages/LogWidget/build.html @@ -0,0 +1,175 @@ + + + + + + + + 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..0e24a714e4 --- /dev/null +++ b/docs/pages/LogWidget/icon.html @@ -0,0 +1,144 @@ + + + + + + + + icon property - LogWidget class - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
icon
+ +
+ +
+
+
+ +
+
+ +

icon property +

+ + + +
+ +
+ + Widget + 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..3760ef4947 --- /dev/null +++ b/docs/pages/LogWidget/log.html @@ -0,0 +1,129 @@ + + + + + + + + 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..0a5222db59 --- /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..8ae33e732d --- /dev/null +++ b/docs/pages/LogsBody-class.html @@ -0,0 +1,430 @@ + + + + + + + + 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..762386536d --- /dev/null +++ b/docs/pages/LogsBody/LogsBody.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f041af4370 --- /dev/null +++ b/docs/pages/LogsBody/build.html @@ -0,0 +1,147 @@ + + + + + + + + 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..8e64965108 --- /dev/null +++ b/docs/pages/LogsOptions-class-sidebar.html @@ -0,0 +1,41 @@ +
    + +
  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. viewModel
  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/pages/LogsOptions-class.html b/docs/pages/LogsOptions-class.html new file mode 100644 index 0000000000..552d7f997c --- /dev/null +++ b/docs/pages/LogsOptions-class.html @@ -0,0 +1,441 @@ + + + + + + + + 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(LogsViewModel viewModel) +
+
+ Listens to the view model without disposing it. +
+
+
+ +
+

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
+ +
+ +
+ viewModel + LogsViewModel + + +
+
+ The view model for the whole page. +
final
+ +
+ +
+
+ +
+

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
+ +
+ +
+ 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/LogsOptions/LogsOptions.html b/docs/pages/LogsOptions/LogsOptions.html new file mode 100644 index 0000000000..4772c76c5e --- /dev/null +++ b/docs/pages/LogsOptions/LogsOptions.html @@ -0,0 +1,129 @@ + + + + + + + + LogsOptions constructor - LogsOptions - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
LogsOptions
+ +
+ +
+
+
+ +
+
+ +

LogsOptions constructor +

+ +
+ + LogsOptions(
  1. LogsViewModel viewModel
  2. +
) +
+ + +
+

Listens to the view model without disposing it.

+
+ + + +
+

Implementation

+
LogsOptions(this.viewModel) : super(viewModel.options);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/LogsOptions/build.html b/docs/pages/LogsOptions/build.html new file mode 100644 index 0000000000..a3bf635c7a --- /dev/null +++ b/docs/pages/LogsOptions/build.html @@ -0,0 +1,192 @@ + + + + + + + + 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) => Wrap(
+  runAlignment: WrapAlignment.center,
+  alignment: WrapAlignment.center,
+  crossAxisAlignment: WrapCrossAlignment.center,
+  runSpacing: 8,
+  children: [  // Menu
+    for (final device in [Device.SUBSYSTEMS, Device.VIDEO, Device.AUTONOMY])  // Reset devices
+      SizedBox(width: 250, child: Card(
+        child: ListTile(
+          onTap: () => model.resetDevice(device),
+          leading: const Icon(Icons.restart_alt),
+          title: Text("Reset the ${device.humanName}"),
+          subtitle: const Text("The device will reboot"),
+        ),),
+      ),
+    DropdownMenu<Device?>(
+      label: const Text("Select device"),
+      initialSelection: model.deviceFilter,
+      onSelected: (input) {
+        model.setDeviceFilter(input);
+        viewModel.update();
+      },
+      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: (input) {
+        model.setLevelFilter(input);
+        viewModel.update();
+      },
+      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: (input) {
+        model.setAutoscroll(input: input);
+        if (input ?? false) viewModel.jumpToBottom();
+        viewModel.update();
+      },
+    ),),
+  ],
+);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/LogsOptions/viewModel.html b/docs/pages/LogsOptions/viewModel.html new file mode 100644 index 0000000000..a906da2711 --- /dev/null +++ b/docs/pages/LogsOptions/viewModel.html @@ -0,0 +1,129 @@ + + + + + + + + viewModel property - LogsOptions class - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
viewModel
+ +
+ +
+
+
+ +
+
+ +

viewModel property +

+ +
+ + LogsViewModel + viewModel +
final
+ +
+ +
+

The view model for the whole page.

+
+ + +
+

Implementation

+
final LogsViewModel viewModel;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/LogsPage-class-sidebar.html b/docs/pages/LogsPage-class-sidebar.html new file mode 100644 index 0000000000..08d6d885f1 --- /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..5c58d0214f --- /dev/null +++ b/docs/pages/LogsPage-class.html @@ -0,0 +1,364 @@ + + + + + + + + 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.

+
+ + +
+
+ +
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..19ad2b8df7 --- /dev/null +++ b/docs/pages/LogsPage/LogsPage.html @@ -0,0 +1,121 @@ + + + + + + + + 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..07b0cd3d47 --- /dev/null +++ b/docs/pages/LogsPage/createState.html @@ -0,0 +1,150 @@ + + + + + + + + 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..d263ac6e20 --- /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..44553e738a --- /dev/null +++ b/docs/pages/LogsState-class.html @@ -0,0 +1,451 @@ + + + + + + + + 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..2d2e1a0062 --- /dev/null +++ b/docs/pages/LogsState/LogsState.html @@ -0,0 +1,121 @@ + + + + + + + + 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..c3ec760cbb --- /dev/null +++ b/docs/pages/LogsState/build.html @@ -0,0 +1,288 @@ + + + + + + + + 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),
+    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..371eff3408 --- /dev/null +++ b/docs/pages/LogsState/model.html @@ -0,0 +1,129 @@ + + + + + + + + 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..cf76d2e79d --- /dev/null +++ b/docs/pages/MapPage-class-sidebar.html @@ -0,0 +1,41 @@ +
    + +
  1. Constructors
  2. +
  3. MapPage
  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. getColor
  32. +
  33. noSuchMethod
  34. +
  35. placeMarker
  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/pages/MapPage-class.html b/docs/pages/MapPage-class.html new file mode 100644 index 0000000000..a5da5f6d2c --- /dev/null +++ b/docs/pages/MapPage-class.html @@ -0,0 +1,443 @@ + + + + + + + + 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() +
+
+ +
+
+
+ +
+

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, 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..39c7d02dba --- /dev/null +++ b/docs/pages/MapPage/MapPage.html @@ -0,0 +1,121 @@ + + + + + + + + MapPage constructor - MapPage - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
MapPage
+ +
+ +
+
+
+ +
+
+ +

MapPage constructor +

+ +
+ + MapPage() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/MapPage/build.html b/docs/pages/MapPage/build.html new file mode 100644 index 0000000000..816c29849c --- /dev/null +++ b/docs/pages/MapPage/build.html @@ -0,0 +1,236 @@ + + + + + + + + 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(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(
+                height: double.infinity,
+                width: 24,
+                decoration: BoxDecoration(color: getColor(cell.$2), border: Border.all()),
+                child: cell.$2 != AutonomyCell.rover ? null : 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.clear), label: const Text("Clear all"), onPressed: model.clearMarkers),
+        const Spacer(),
+        AutonomyCommandEditor(),
+        const SizedBox(width: 8),
+      ],),
+      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(),
+        if (model.isPlayingBadApple)
+          Text("Autonomy status: Bad Apple", style: context.textTheme.headlineSmall)
+        else
+          Text("Autonomy status: ${model.data.state.humanName}, ${model.data.task.humanName}", style: context.textTheme.headlineSmall),
+        const VerticalDivider(),
+        const ViewsSelector(currentView: Routes.autonomy),
+      ],),
+    ),
+  ],);
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/MapPage/createModel.html b/docs/pages/MapPage/createModel.html new file mode 100644 index 0000000000..1511e65acd --- /dev/null +++ b/docs/pages/MapPage/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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..9d3658fcad --- /dev/null +++ b/docs/pages/MapPage/getColor.html @@ -0,0 +1,140 @@ + + + + + + + + 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.rover => Colors.blue,
+	AutonomyCell.destination => Colors.green,
+	AutonomyCell.obstacle => Colors.black,
+	AutonomyCell.path => Colors.blueGrey,
+	AutonomyCell.empty => Colors.white,
+	AutonomyCell.marker => Colors.red,
+};
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/MapPage/placeMarker.html b/docs/pages/MapPage/placeMarker.html new file mode 100644 index 0000000000..75fab0dd5b --- /dev/null +++ b/docs/pages/MapPage/placeMarker.html @@ -0,0 +1,150 @@ + + + + + + + + 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..d206f78fb0 --- /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..d2b5d5598a --- /dev/null +++ b/docs/pages/ResultsBox-class.html @@ -0,0 +1,400 @@ + + + + + + + + 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..142072ac65 --- /dev/null +++ b/docs/pages/ResultsBox/ResultsBox.html @@ -0,0 +1,129 @@ + + + + + + + + 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..79438efe14 --- /dev/null +++ b/docs/pages/ResultsBox/analysis.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c5b139212b --- /dev/null +++ b/docs/pages/ResultsBox/build.html @@ -0,0 +1,199 @@ + + + + + + + + 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..36072beb07 --- /dev/null +++ b/docs/pages/ResultsBox/color.html @@ -0,0 +1,144 @@ + + + + + + + + color property - ResultsBox class - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
color
+ +
+ +
+
+
+ +
+
+ +

color property +

+ + + +
+ +
+ + Color? + 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..0e02b95307 --- /dev/null +++ b/docs/pages/ResultsBox/text.html @@ -0,0 +1,144 @@ + + + + + + + + text property - ResultsBox class - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
text
+ +
+ +
+
+
+ +
+
+ +

text property +

+ + + +
+ +
+ + String + 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/Routes-class-sidebar.html b/docs/pages/Routes-class-sidebar.html new file mode 100644 index 0000000000..242aa8f821 --- /dev/null +++ b/docs/pages/Routes-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  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. electrical
  30. +
  31. home
  32. +
  33. logs
  34. +
  35. mars
  36. +
  37. science
  38. +
  39. settings
  40. +
diff --git a/docs/pages/Routes-class.html b/docs/pages/Routes-class.html new file mode 100644 index 0000000000..dfcd1d8508 --- /dev/null +++ b/docs/pages/Routes-class.html @@ -0,0 +1,336 @@ + + + + + + + + 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. + + +
+ +
+ 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. + + +
+ +
+ mars + → const String + + +
+
+ The name of the MARS 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..56a6be635a --- /dev/null +++ b/docs/pages/Routes/Routes.html @@ -0,0 +1,121 @@ + + + + + + + + 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..25e7e4bd2f --- /dev/null +++ b/docs/pages/Routes/arm-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..31e36d809f --- /dev/null +++ b/docs/pages/Routes/autonomy-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..cfd6e59816 --- /dev/null +++ b/docs/pages/Routes/blank-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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 = "blank";
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/Routes/electrical-constant.html b/docs/pages/Routes/electrical-constant.html new file mode 100644 index 0000000000..27118745a8 --- /dev/null +++ b/docs/pages/Routes/electrical-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..4f82547e79 --- /dev/null +++ b/docs/pages/Routes/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - Routes class - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..dcfda7e86d --- /dev/null +++ b/docs/pages/Routes/home-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..b71802b4f9 --- /dev/null +++ b/docs/pages/Routes/logs-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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/mars-constant.html b/docs/pages/Routes/mars-constant.html new file mode 100644 index 0000000000..5209d46346 --- /dev/null +++ b/docs/pages/Routes/mars-constant.html @@ -0,0 +1,129 @@ + + + + + + + + mars constant - Routes class - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
mars
+ +
+ +
+
+
+ +
+
+ +

mars constant +

+ +
+ + String + const mars + + +
+ +
+

The name of the MARS page.

+
+ + +
+

Implementation

+
static const String mars = "MARS";
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/Routes/noSuchMethod.html b/docs/pages/Routes/noSuchMethod.html new file mode 100644 index 0000000000..1ab95c175a --- /dev/null +++ b/docs/pages/Routes/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..1c4d2d0d72 --- /dev/null +++ b/docs/pages/Routes/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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/runtimeType.html b/docs/pages/Routes/runtimeType.html new file mode 100644 index 0000000000..5bcb48cd49 --- /dev/null +++ b/docs/pages/Routes/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - Routes class - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..21e04f1769 --- /dev/null +++ b/docs/pages/Routes/science-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..9f326f0a6c --- /dev/null +++ b/docs/pages/Routes/settings-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..85b931a5ff --- /dev/null +++ b/docs/pages/Routes/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..d96ca0a618 --- /dev/null +++ b/docs/pages/SciencePage-class-sidebar.html @@ -0,0 +1,45 @@ +
    + +
  1. Constructors
  2. +
  3. SciencePage
  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. getBarChartData
  32. +
  33. getColor
  34. +
  35. getDetailsData
  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. + + + + +
  53. Static properties
  54. +
  55. purple
  56. +
  57. red
  58. + + +
diff --git a/docs/pages/SciencePage-class.html b/docs/pages/SciencePage-class.html new file mode 100644 index 0000000000..cc5dc6e4f4 --- /dev/null +++ b/docs/pages/SciencePage-class.html @@ -0,0 +1,485 @@ + + + + + + + + SciencePage class - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
SciencePage
+ +
+ +
+
+
+ +
+
+ +

SciencePage class + +

+ + +
+

The science analysis page.

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

Constructors

+ +
+
+ SciencePage() +
+
+ +
+
+
+ +
+

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, 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..49442a275d --- /dev/null +++ b/docs/pages/SciencePage/SciencePage.html @@ -0,0 +1,121 @@ + + + + + + + + SciencePage constructor - SciencePage - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
SciencePage
+ +
+ +
+
+
+ +
+
+ +

SciencePage constructor +

+ +
+ + SciencePage() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/SciencePage/build.html b/docs/pages/SciencePage/build.html new file mode 100644 index 0000000000..0867323439 --- /dev/null +++ b/docs/pages/SciencePage/build.html @@ -0,0 +1,198 @@ + + + + + + + + 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",
+      ),
+      const ViewsSelector(currentView: Routes.science),
+    ],),
+    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..b5e61bd225 --- /dev/null +++ b/docs/pages/SciencePage/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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..629d1e3f99 --- /dev/null +++ b/docs/pages/SciencePage/getBarChartData.html @@ -0,0 +1,154 @@ + + + + + + + + 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..0ec461f441 --- /dev/null +++ b/docs/pages/SciencePage/getColor.html @@ -0,0 +1,134 @@ + + + + + + + + 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..93fbf36163 --- /dev/null +++ b/docs/pages/SciencePage/getDetailsData.html @@ -0,0 +1,163 @@ + + + + + + + + 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/purple.html b/docs/pages/SciencePage/purple.html new file mode 100644 index 0000000000..9db549d6ea --- /dev/null +++ b/docs/pages/SciencePage/purple.html @@ -0,0 +1,129 @@ + + + + + + + + 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..57fae4a92c --- /dev/null +++ b/docs/pages/SciencePage/red.html @@ -0,0 +1,129 @@ + + + + + + + + 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..20fbbd25e6 --- /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..1d267c4a86 --- /dev/null +++ b/docs/pages/ScrollingRow-class.html @@ -0,0 +1,452 @@ + + + + + + + + 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..e3578bd7c8 --- /dev/null +++ b/docs/pages/ScrollingRow/ScrollingRow.html @@ -0,0 +1,130 @@ + + + + + + + + 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..a2f61a379f --- /dev/null +++ b/docs/pages/ScrollingRow/build.html @@ -0,0 +1,153 @@ + + + + + + + + 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..543f8a6d31 --- /dev/null +++ b/docs/pages/ScrollingRow/children.html @@ -0,0 +1,129 @@ + + + + + + + + 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..6befcb1e45 --- /dev/null +++ b/docs/pages/ScrollingRow/height.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2504c173f5 --- /dev/null +++ b/docs/pages/SegaState-enum-sidebar.html @@ -0,0 +1,33 @@ +
    + +
  1. Constructors
  2. +
  3. SegaState
  4. + +
  5. Values
  6. +
  7. partOne
  8. +
  9. partTwo
  10. +
  11. partThree
  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/pages/SegaState.html b/docs/pages/SegaState.html new file mode 100644 index 0000000000..dd462eacec --- /dev/null +++ b/docs/pages/SegaState.html @@ -0,0 +1,300 @@ + + + + + + + + SegaState enum - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
SegaState
+ +
+ +
+
+
+ +
+
+ + +

+ SegaState + enum + + +

+
+ + +
+

The state of the SEGA animation.

+
+ + + + +
+

Constructors

+ +
+
+ SegaState() +
+
+ +
const
+
+
+
+ +
+

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/SegaState.html b/docs/pages/SegaState/SegaState.html new file mode 100644 index 0000000000..baac0b9dc5 --- /dev/null +++ b/docs/pages/SegaState/SegaState.html @@ -0,0 +1,121 @@ + + + + + + + + SegaState constructor - SegaState - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
SegaState
+ +
+ +
+
+
+ +
+
+ +

SegaState constructor +

+ +
+ const + SegaState() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/SegaState/hashCode.html b/docs/pages/SegaState/hashCode.html new file mode 100644 index 0000000000..d3dfe5fe9c --- /dev/null +++ b/docs/pages/SegaState/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - SegaState enum - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..6c7193a4f8 --- /dev/null +++ b/docs/pages/SegaState/index.html @@ -0,0 +1,140 @@ + + + + + + + + index property - SegaState enum - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
index
+ +
+ +
+
+
+ +
+
+

index property +

+ + + +
+ +
+ + int + 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..da4bb52d10 --- /dev/null +++ b/docs/pages/SegaState/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..54f0235307 --- /dev/null +++ b/docs/pages/SegaState/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..d5559ffa0d --- /dev/null +++ b/docs/pages/SegaState/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - SegaState enum - pages library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..63391da9ea --- /dev/null +++ b/docs/pages/SegaState/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..cd3f716da1 --- /dev/null +++ b/docs/pages/SegaState/values-constant.html @@ -0,0 +1,125 @@ + + + + + + + + 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..85589822e5 --- /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..24be9b5f60 --- /dev/null +++ b/docs/pages/SettingsPage-class.html @@ -0,0 +1,416 @@ + + + + + + + + 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..afc88b4a5f --- /dev/null +++ b/docs/pages/SettingsPage/SettingsPage.html @@ -0,0 +1,121 @@ + + + + + + + + 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..ba03f96904 --- /dev/null +++ b/docs/pages/SettingsPage/build.html @@ -0,0 +1,345 @@ + + + + + + + + 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),
+              ListTile(
+                title: const Text("Restart the network sockets"),
+                subtitle: const Text("This only resets your computer's network, not the rover's"),
+                trailing: const Icon(Icons.refresh),
+                onTap: () async {
+                  await models.sockets.reset();
+                  if (context.mounted) {
+                    ScaffoldMessenger.of(context).showSnackBar(
+                      const SnackBar(content: Text("Network reset"), duration: Duration(milliseconds: 500)),
+                    );
+                  }
+                },
+              ),
+            ],
+          ),
+          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),
+              NumberEditor(name: "IK increment", model: model.arm.ik),
+              SwitchListTile(
+                title: const Text("Use IK?"),
+                subtitle: const Text("Move in millimeters in 3D space instead of radians"),
+                value: model.arm.useIK,
+                onChanged: model.arm.updateIK,
+              ),
+            ],
+          ),
+          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,
+              ),
+              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("Adjust throttle"),
+            subtitle: const Text("Sets the max speed on the rover"),
+            trailing: const Icon(Icons.speed),
+            onTap: () => showDialog<void>(
+              context: context,
+              builder: (_) => ThrottleEditor(),
+            ),
+          ),
+          ListTile(
+            title: const Text("Open session output"),
+            subtitle: const Text("Opens all files created by this session"),
+            trailing: const Icon(Icons.launch),
+            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.launch),
+            onTap: () => launchUrl(services.files.outputDir.uri),
+          ),
+          ListTile(
+            title: const Text("Change the LED strip color"),
+            subtitle: const Text("Opens an RGB picker"),
+            trailing: const Icon(Icons.launch),
+            onTap: () => showDialog<void>(context: context, builder: (_) => ColorEditor(ColorBuilder())),
+          ),
+          ListTile(
+            title: const Text("Set a timer"),
+            subtitle: const Text("Shows a timer for the current mission"),
+            trailing: const Icon(Icons.launch),
+            onTap: () => showDialog<void>(context: context, builder: (_) => TimerEditor()),
+          ),
+        ],
+      ),),
+      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..3d77098b23 --- /dev/null +++ b/docs/pages/SettingsPage/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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..01ee543510 --- /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..476565c8a7 --- /dev/null +++ b/docs/pages/SocketSwitcher-class.html @@ -0,0 +1,428 @@ + + + + + + + + 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..e6e666b773 --- /dev/null +++ b/docs/pages/SocketSwitcher/SocketSwitcher.html @@ -0,0 +1,128 @@ + + + + + + + + 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..56d271ab12 --- /dev/null +++ b/docs/pages/SocketSwitcher/build.html @@ -0,0 +1,150 @@ + + + + + + + + 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..e1cb69b425 --- /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..cccbede11f --- /dev/null +++ b/docs/pages/SplashPage-class.html @@ -0,0 +1,363 @@ + + + + + + + + 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..4357a93dbe --- /dev/null +++ b/docs/pages/SplashPage/SplashPage.html @@ -0,0 +1,121 @@ + + + + + + + + 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..ac67c27b5d --- /dev/null +++ b/docs/pages/SplashPage/createState.html @@ -0,0 +1,150 @@ + + + + + + + + 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..fb53f6694b --- /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..45aeb54d9b --- /dev/null +++ b/docs/pages/SplashPageState-class.html @@ -0,0 +1,513 @@ + + + + + + + + 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..8534c5d210 --- /dev/null +++ b/docs/pages/SplashPageState/SplashPageState.html @@ -0,0 +1,121 @@ + + + + + + + + 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..d4dca0a2f5 --- /dev/null +++ b/docs/pages/SplashPageState/audioPlayer.html @@ -0,0 +1,129 @@ + + + + + + + + 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..ed251e65d0 --- /dev/null +++ b/docs/pages/SplashPageState/build.html @@ -0,0 +1,288 @@ + + + + + + + + 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..daec517c3b --- /dev/null +++ b/docs/pages/SplashPageState/current.html @@ -0,0 +1,129 @@ + + + + + + + + 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..306d0c0cbc --- /dev/null +++ b/docs/pages/SplashPageState/dispose.html @@ -0,0 +1,191 @@ + + + + + + + + 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.

+

To release resources more eagerly, establish a platform channel +and use it to call runApp with a widget such as SizedBox.shrink when +the framework should dispose of the active widget tree.

+

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..81425d061c --- /dev/null +++ b/docs/pages/SplashPageState/errorText.html @@ -0,0 +1,129 @@ + + + + + + + + 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..94ded03175 --- /dev/null +++ b/docs/pages/SplashPageState/init.html @@ -0,0 +1,151 @@ + + + + + + + + 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..f743fa0172 --- /dev/null +++ b/docs/pages/SplashPageState/initAnimation.html @@ -0,0 +1,143 @@ + + + + + + + + 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..a34321c05f --- /dev/null +++ b/docs/pages/SplashPageState/initState.html @@ -0,0 +1,164 @@ + + + + + + + + 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..11fe028560 --- /dev/null +++ b/docs/pages/SplashPageState/state.html @@ -0,0 +1,129 @@ + + + + + + + + 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..1d79d59bd8 --- /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..fe7b72e3f1 --- /dev/null +++ b/docs/pages/ValueEditor-class.html @@ -0,0 +1,390 @@ + + + + + + + + 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..f714142e6f --- /dev/null +++ b/docs/pages/ValueEditor/ValueEditor.html @@ -0,0 +1,130 @@ + + + + + + + + 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..db9b3cd845 --- /dev/null +++ b/docs/pages/ValueEditor/build.html @@ -0,0 +1,186 @@ + + + + + + + + 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..c50f0fb657 --- /dev/null +++ b/docs/pages/ValueEditor/children.html @@ -0,0 +1,129 @@ + + + + + + + + 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..4655cb41f7 --- /dev/null +++ b/docs/pages/ValueEditor/name.html @@ -0,0 +1,129 @@ + + + + + + + + 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/criticalWidget.html b/docs/pages/criticalWidget.html new file mode 100644 index 0000000000..7a744a978d --- /dev/null +++ b/docs/pages/criticalWidget.html @@ -0,0 +1,129 @@ + + + + + + + + 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..dacfc8971c --- /dev/null +++ b/docs/pages/debugWidget-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c8c461828f --- /dev/null +++ b/docs/pages/errorWidget-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..475d5cc272 --- /dev/null +++ b/docs/pages/getTitles.html @@ -0,0 +1,136 @@ + + + + + + + + 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..5342651365 --- /dev/null +++ b/docs/pages/infoWidget.html @@ -0,0 +1,129 @@ + + + + + + + + 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..f80b058088 --- /dev/null +++ b/docs/pages/pages-library-sidebar.html @@ -0,0 +1,44 @@ +
    +
  1. Classes
  2. +
  3. ChartsRow
  4. +
  5. DesktopScrollBehavior
  6. +
  7. ElectricalPage
  8. +
  9. HomePage
  10. +
  11. HomePageState
  12. +
  13. LogsBody
  14. +
  15. LogsOptions
  16. +
  17. LogsPage
  18. +
  19. LogsState
  20. +
  21. LogWidget
  22. +
  23. MapPage
  24. +
  25. ResultsBox
  26. +
  27. Routes
  28. +
  29. SciencePage
  30. +
  31. ScrollingRow
  32. +
  33. SettingsPage
  34. +
  35. SocketSwitcher
  36. +
  37. SplashPage
  38. +
  39. SplashPageState
  40. +
  41. ValueEditor
  42. + +
  43. Enums
  44. +
  45. SegaState
  46. + + + +
  47. Constants
  48. +
  49. debugWidget
  50. +
  51. errorWidget
  52. +
  53. traceWidget
  54. +
  55. warningWidget
  56. + +
  57. Properties
  58. +
  59. criticalWidget
  60. +
  61. infoWidget
  62. + +
  63. Functions
  64. +
  65. getTitles
  66. + + + +
diff --git a/docs/pages/pages-library.html b/docs/pages/pages-library.html new file mode 100644 index 0000000000..c5bbc3a652 --- /dev/null +++ b/docs/pages/pages-library.html @@ -0,0 +1,428 @@ + + + + + + + + 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

+ +
+
+ ChartsRow + +
+
+ A ScrollingRow of charts, using builder on each ScienceAnalysis in analyses. +
+ +
+ DesktopScrollBehavior + +
+
+ Allows desktop users to scroll with their mouse or other device. +
+ +
+ 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. +
+ +
+ 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. + + +
+ +
+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/pages/traceWidget-constant.html b/docs/pages/traceWidget-constant.html new file mode 100644 index 0000000000..4173eea14e --- /dev/null +++ b/docs/pages/traceWidget-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..708e401cfd --- /dev/null +++ b/docs/pages/warningWidget-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..5de9192ccf --- /dev/null +++ b/docs/search.html @@ -0,0 +1,108 @@ + + + + + + + + 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..936f1cbc67 --- /dev/null +++ b/docs/services/DashboardSocket-class-sidebar.html @@ -0,0 +1,48 @@ +
    + +
  1. Constructors
  2. +
  3. DashboardSocket
  4. + + + +
  5. + Properties +
  6. +
  7. connectionStrength
  8. +
  9. destination
  10. +
  11. device
  12. +
  13. hashCode
  14. +
  15. heartbeatInterval
  16. +
  17. heartbeatTimer
  18. +
  19. isConnected
  20. +
  21. logger
  22. +
  23. messageHandler
  24. +
  25. onConnect
  26. +
  27. onDisconnect
  28. +
  29. port
  30. +
  31. quiet
  32. +
  33. runtimeType
  34. + +
  35. Methods
  36. +
  37. checkHeartbeats
  38. +
  39. dispose
  40. +
  41. init
  42. +
  43. noSuchMethod
  44. +
  45. onData
  46. +
  47. onHeartbeat
  48. +
  49. onMessage
  50. +
  51. onWrapper
  52. +
  53. sendData
  54. +
  55. sendMessage
  56. +
  57. sendWrapper
  58. +
  59. toString
  60. + +
  61. Operators
  62. +
  63. operator ==
  64. + + + + + + +
diff --git a/docs/services/DashboardSocket-class.html b/docs/services/DashboardSocket-class.html new file mode 100644 index 0000000000..9dc28bafc7 --- /dev/null +++ b/docs/services/DashboardSocket-class.html @@ -0,0 +1,506 @@ + + + + + + + + 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:

+ +
+ + + + +
+

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

+
+
+ 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
+ +
+ +
+ 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
+ +
+ +
+ 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..8e86fe6978 --- /dev/null +++ b/docs/services/DashboardSocket/DashboardSocket.html @@ -0,0 +1,142 @@ + + + + + + + + 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..973174529b --- /dev/null +++ b/docs/services/DashboardSocket/checkHeartbeats.html @@ -0,0 +1,159 @@ + + + + + + + + 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/connectionStrength.html b/docs/services/DashboardSocket/connectionStrength.html new file mode 100644 index 0000000000..0c73ac806d --- /dev/null +++ b/docs/services/DashboardSocket/connectionStrength.html @@ -0,0 +1,129 @@ + + + + + + + + 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..b00a162f73 --- /dev/null +++ b/docs/services/DashboardSocket/destination.html @@ -0,0 +1,130 @@ + + + + + + + + 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..385acaef86 --- /dev/null +++ b/docs/services/DashboardSocket/device.html @@ -0,0 +1,128 @@ + + + + + + + + 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..d976bdd55a --- /dev/null +++ b/docs/services/DashboardSocket/dispose.html @@ -0,0 +1,140 @@ + + + + + + + + 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/hashCode.html b/docs/services/DashboardSocket/hashCode.html new file mode 100644 index 0000000000..646f4585cf --- /dev/null +++ b/docs/services/DashboardSocket/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..39e1392fe3 --- /dev/null +++ b/docs/services/DashboardSocket/heartbeatInterval.html @@ -0,0 +1,142 @@ + + + + + + + + heartbeatInterval property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
heartbeatInterval
+ +
+ +
+
+
+ +
+
+ +

heartbeatInterval property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ Duration + heartbeatInterval + + +
+ + +
+

How often to check for heartbeats.

+
+ + +
+

Implementation

+
@override
+Duration get heartbeatInterval => const Duration(milliseconds: 200);
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/DashboardSocket/heartbeatTimer.html b/docs/services/DashboardSocket/heartbeatTimer.html new file mode 100644 index 0000000000..4acb2d66b6 --- /dev/null +++ b/docs/services/DashboardSocket/heartbeatTimer.html @@ -0,0 +1,128 @@ + + + + + + + + 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/init.html b/docs/services/DashboardSocket/init.html new file mode 100644 index 0000000000..7ec74c7c96 --- /dev/null +++ b/docs/services/DashboardSocket/init.html @@ -0,0 +1,140 @@ + + + + + + + + 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..cff8bad352 --- /dev/null +++ b/docs/services/DashboardSocket/isConnected.html @@ -0,0 +1,142 @@ + + + + + + + + isConnected property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isConnected
+ +
+ +
+
+
+ +
+
+ +

isConnected property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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..cf149c630a --- /dev/null +++ b/docs/services/DashboardSocket/logger.html @@ -0,0 +1,128 @@ + + + + + + + + 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..97e47d3202 --- /dev/null +++ b/docs/services/DashboardSocket/messageHandler.html @@ -0,0 +1,129 @@ + + + + + + + + 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..dfe72a244b --- /dev/null +++ b/docs/services/DashboardSocket/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..20f05dc1be --- /dev/null +++ b/docs/services/DashboardSocket/onConnect.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a89c6f3371 --- /dev/null +++ b/docs/services/DashboardSocket/onData.html @@ -0,0 +1,142 @@ + + + + + + + + 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..96fcf3eb9d --- /dev/null +++ b/docs/services/DashboardSocket/onDisconnect.html @@ -0,0 +1,129 @@ + + + + + + + + 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..9d6202889d --- /dev/null +++ b/docs/services/DashboardSocket/onHeartbeat.html @@ -0,0 +1,140 @@ + + + + + + + + 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..7ade065d51 --- /dev/null +++ b/docs/services/DashboardSocket/onMessage.html @@ -0,0 +1,139 @@ + + + + + + + + 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..e7143d857e --- /dev/null +++ b/docs/services/DashboardSocket/onWrapper.html @@ -0,0 +1,148 @@ + + + + + + + + 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..c9df773dec --- /dev/null +++ b/docs/services/DashboardSocket/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..957d2a7df2 --- /dev/null +++ b/docs/services/DashboardSocket/port.html @@ -0,0 +1,128 @@ + + + + + + + + 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..8717bab1c0 --- /dev/null +++ b/docs/services/DashboardSocket/quiet.html @@ -0,0 +1,128 @@ + + + + + + + + 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..4b93251d0e --- /dev/null +++ b/docs/services/DashboardSocket/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - DashboardSocket class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..2139b4218d --- /dev/null +++ b/docs/services/DashboardSocket/sendData.html @@ -0,0 +1,140 @@ + + + + + + + + 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..1f159c1d87 --- /dev/null +++ b/docs/services/DashboardSocket/sendMessage.html @@ -0,0 +1,134 @@ + + + + + + + + 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..8bd3bafc24 --- /dev/null +++ b/docs/services/DashboardSocket/sendWrapper.html @@ -0,0 +1,135 @@ + + + + + + + + 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..a7f796346f --- /dev/null +++ b/docs/services/DashboardSocket/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..8b56dffca5 --- /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..6d19d8c9c2 --- /dev/null +++ b/docs/services/DeviceNotConnected-class.html @@ -0,0 +1,244 @@ + + + + + + + + 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..768b2f3f4c --- /dev/null +++ b/docs/services/DeviceNotConnected/DeviceNotConnected.html @@ -0,0 +1,121 @@ + + + + + + + + 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..f08357072a --- /dev/null +++ b/docs/services/DeviceNotConnected/toString.html @@ -0,0 +1,147 @@ + + + + + + + + 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..7da5d8fd26 --- /dev/null +++ b/docs/services/FilesService-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  1. Constructors
  2. +
  3. FilesService
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. logFiles
  10. +
  11. loggingDir
  12. +
  13. outputDir
  14. +
  15. runtimeType
  16. +
  17. screenshotsDir
  18. +
  19. settingsFile
  20. + +
  21. Methods
  22. +
  23. dispose
  24. +
  25. init
  26. +
  27. logData
  28. +
  29. logError
  30. +
  31. logMessage
  32. +
  33. noSuchMethod
  34. +
  35. readLogs
  36. +
  37. readSettings
  38. +
  39. toString
  40. +
  41. writeImage
  42. +
  43. writeSettings
  44. + +
  45. Operators
  46. +
  47. operator ==
  48. + + + + + + +
diff --git a/docs/services/FilesService-class.html b/docs/services/FilesService-class.html new file mode 100644 index 0000000000..3df793d88c --- /dev/null +++ b/docs/services/FilesService-class.html @@ -0,0 +1,400 @@ + + + + + + + + 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

+
+
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ logFiles + → Map<String, IOSink> + + +
+
+ A map from filename to an IOSink for faster writes. +
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. + + +
+ +
+ logData(Message message) + → Future<void> + + + +
+
+ Outputs log data to the correct file based on message + + +
+ +
+ logError(Object error, StackTrace stack) + → Future<void> + + + +
+
+ Outputs an error to the Dashboard 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..ab0b54ca73 --- /dev/null +++ b/docs/services/FilesService/FilesService.html @@ -0,0 +1,121 @@ + + + + + + + + FilesService constructor - FilesService - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
FilesService
+ +
+ +
+
+
+ +
+
+ +

FilesService constructor +

+ +
+ + FilesService() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/FilesService/dispose.html b/docs/services/FilesService/dispose.html new file mode 100644 index 0000000000..c2f1cdc275 --- /dev/null +++ b/docs/services/FilesService/dispose.html @@ -0,0 +1,138 @@ + + + + + + + + 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 { }
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/FilesService/hashCode.html b/docs/services/FilesService/hashCode.html new file mode 100644 index 0000000000..b97130aba7 --- /dev/null +++ b/docs/services/FilesService/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - FilesService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..fc2fe24e3a --- /dev/null +++ b/docs/services/FilesService/init.html @@ -0,0 +1,144 @@ + + + + + + + + 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);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/FilesService/logData.html b/docs/services/FilesService/logData.html new file mode 100644 index 0000000000..02c5170f21 --- /dev/null +++ b/docs/services/FilesService/logData.html @@ -0,0 +1,138 @@ + + + + + + + + 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 {
+  final name = message.messageName;
+  final wrapper = message.wrap();
+  final content = base64Encode(wrapper.writeToBuffer());
+  await _log(name, content);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/FilesService/logError.html b/docs/services/FilesService/logError.html new file mode 100644 index 0000000000..273942e095 --- /dev/null +++ b/docs/services/FilesService/logError.html @@ -0,0 +1,137 @@ + + + + + + + + logError method - FilesService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
logError
+ +
+ +
+
+
+ +
+
+ +

logError method +

+ +
+ + +Future<void> +logError(
  1. Object error,
  2. +
  3. StackTrace stack
  4. +
) + + + +
+ +
+

Outputs an error to the Dashboard log file.

+
+ + + +
+

Implementation

+
Future<void> logError(Object error, StackTrace stack) async{
+  final content = "${DateTime.now().timeStamp} $error\n  $stack\n";
+  await _log("Dashboard", content);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/FilesService/logFiles.html b/docs/services/FilesService/logFiles.html new file mode 100644 index 0000000000..5e1a0e75f7 --- /dev/null +++ b/docs/services/FilesService/logFiles.html @@ -0,0 +1,129 @@ + + + + + + + + logFiles property - FilesService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
logFiles
+ +
+ +
+
+
+ +
+
+ +

logFiles property +

+ +
+ + Map<String, IOSink> + logFiles +
final
+ +
+ +
+

A map from filename to an IOSink for faster writes.

+
+ + +
+

Implementation

+
final Map<String, IOSink> logFiles = {};
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/FilesService/logMessage.html b/docs/services/FilesService/logMessage.html new file mode 100644 index 0000000000..3301085a80 --- /dev/null +++ b/docs/services/FilesService/logMessage.html @@ -0,0 +1,137 @@ + + + + + + + + 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 name = log.device.humanName;
+  final content = log.format();
+  await _log(name, content);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/FilesService/loggingDir.html b/docs/services/FilesService/loggingDir.html new file mode 100644 index 0000000000..45257aa714 --- /dev/null +++ b/docs/services/FilesService/loggingDir.html @@ -0,0 +1,130 @@ + + + + + + + + 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..c491b43910 --- /dev/null +++ b/docs/services/FilesService/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..4d1ee6e4d5 --- /dev/null +++ b/docs/services/FilesService/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..8ae48441b5 --- /dev/null +++ b/docs/services/FilesService/outputDir.html @@ -0,0 +1,132 @@ + + + + + + + + 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..ca684ab2b0 --- /dev/null +++ b/docs/services/FilesService/readLogs.html @@ -0,0 +1,136 @@ + + + + + + + + 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..ba5f1e0aca --- /dev/null +++ b/docs/services/FilesService/readSettings.html @@ -0,0 +1,148 @@ + + + + + + + + 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..46438da745 --- /dev/null +++ b/docs/services/FilesService/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - FilesService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..c21e8d791c --- /dev/null +++ b/docs/services/FilesService/screenshotsDir.html @@ -0,0 +1,137 @@ + + + + + + + + screenshotsDir property - FilesService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
screenshotsDir
+ +
+ +
+
+
+ +
+
+ +

screenshotsDir property +

+ + + +
+ +
+ + Directory + 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..e719d6a630 --- /dev/null +++ b/docs/services/FilesService/settingsFile.html @@ -0,0 +1,138 @@ + + + + + + + + settingsFile property - FilesService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
settingsFile
+ +
+ +
+
+
+ +
+
+ +

settingsFile property +

+ + + +
+ +
+ + File + 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..9817798125 --- /dev/null +++ b/docs/services/FilesService/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..eba18c6a4a --- /dev/null +++ b/docs/services/FilesService/writeImage.html @@ -0,0 +1,139 @@ + + + + + + + + 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..5e1a34df17 --- /dev/null +++ b/docs/services/FilesService/writeSettings.html @@ -0,0 +1,136 @@ + + + + + + + + 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 = jsonEncode(value?.toJson() ?? {});
+  await settingsFile.writeAsString(json);
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadNumbers-extension-sidebar.html b/docs/services/GamepadNumbers-extension-sidebar.html new file mode 100644 index 0000000000..bb513efd6c --- /dev/null +++ b/docs/services/GamepadNumbers-extension-sidebar.html @@ -0,0 +1,17 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. normalizeJoystick
  4. +
  5. normalizeTrigger
  6. + + + + + + +
diff --git a/docs/services/GamepadNumbers.html b/docs/services/GamepadNumbers.html new file mode 100644 index 0000000000..8a2fad829c --- /dev/null +++ b/docs/services/GamepadNumbers.html @@ -0,0 +1,168 @@ + + + + + + + + GamepadNumbers extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
GamepadNumbers
+ +
+ +
+
+
+
+
+ +

GamepadNumbers extension + +

+ + +
+

An extension to do gamepad math.

+
+ +
+
+
on
+
+
    +
  • num
  • +
+
+
+ + + +
+ + +
+

Properties

+
+
+ normalizeJoystick + → double + + +
+
+ Normalizes joystick inputs to be between -1 and 1. +
no setter
+ +
+ +
+ normalizeTrigger + → double + + +
+
+ Normalizes the trigger inputs to be between 0 and 1. +
no setter
+ +
+ +
+
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + + + diff --git a/docs/services/GamepadNumbers/normalizeJoystick.html b/docs/services/GamepadNumbers/normalizeJoystick.html new file mode 100644 index 0000000000..95b82118f7 --- /dev/null +++ b/docs/services/GamepadNumbers/normalizeJoystick.html @@ -0,0 +1,139 @@ + + + + + + + + normalizeJoystick property - GamepadNumbers extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalizeJoystick
+ +
+ +
+
+
+ +
+
+ +

normalizeJoystick property +

+ + + +
+ +
+ + double + normalizeJoystick + + +
+ + +
+

Normalizes joystick inputs to be between -1 and 1.

+
+ + +
+

Implementation

+
double get normalizeJoystick {
+  final value = (this - 128) / 32768;
+  return (value.abs() < epsilon) ? 0 : value.clamp(-1, 1);
+}
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadNumbers/normalizeTrigger.html b/docs/services/GamepadNumbers/normalizeTrigger.html new file mode 100644 index 0000000000..742752676d --- /dev/null +++ b/docs/services/GamepadNumbers/normalizeTrigger.html @@ -0,0 +1,139 @@ + + + + + + + + normalizeTrigger property - GamepadNumbers extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalizeTrigger
+ +
+ +
+
+
+ +
+
+ +

normalizeTrigger property +

+ + + +
+ +
+ + double + normalizeTrigger + + +
+ + +
+

Normalizes the trigger inputs to be between 0 and 1.

+
+ + +
+

Implementation

+
double get normalizeTrigger {
+  final value = this / 256;
+  return (value.abs() < epsilon) ? 0 : value.clamp(0, 1);
+}
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadService-class-sidebar.html b/docs/services/GamepadService-class-sidebar.html new file mode 100644 index 0000000000..71907b04f3 --- /dev/null +++ b/docs/services/GamepadService-class-sidebar.html @@ -0,0 +1,34 @@ +
    + +
  1. Constructors
  2. +
  3. GamepadService
  4. + + + +
  5. + Properties +
  6. +
  7. gamepads
  8. +
  9. hashCode
  10. +
  11. ids
  12. +
  13. runtimeType
  14. + +
  15. Methods
  16. +
  17. connect
  18. +
  19. dispose
  20. +
  21. init
  22. +
  23. noSuchMethod
  24. +
  25. toString
  26. +
  27. update
  28. + +
  29. Operators
  30. +
  31. operator ==
  32. + + + + + + +
  33. Constants
  34. +
  35. numGamepads
  36. +
diff --git a/docs/services/GamepadService-class.html b/docs/services/GamepadService-class.html new file mode 100644 index 0000000000..7c25a1c513 --- /dev/null +++ b/docs/services/GamepadService-class.html @@ -0,0 +1,322 @@ + + + + + + + + GamepadService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
GamepadService
+ +
+ +
+
+
+ +
+
+ +

GamepadService class + +

+ + +
+

A service to receive input from a gamepad connected to the user's device.

+

This service uses package:win32_gamepad, to read +controller inputs, which works with XInput-compliant devices. At the time of writing, there +are no gamepad plugins on pub.dev available for MacOS or Linux -- this uses Win32 libraries.

+

To read the state of the controller, check Gamepad.state, which will always be available, even +when the controller is disconnected (all its fields will be zero). To check for a connection, use +Gamepad.isConnected. No action is needed to check for a new gamepad, but you must call +update to read any button presses, or else Gamepad.state will never update.

+
+ + + + +
+

Constructors

+ +
+
+ GamepadService() +
+
+ +
+
+
+ +
+

Properties

+
+
+ gamepads + → List<Gamepad> + + +
+
+ A list of all the Gamepads the user has connected. +
final
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ ids + → Set<int> + + +
+
+ The set of all the Gamepad.controller IDs. +
no setter
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+
+ +
+

Methods

+
+
+ connect(int index) + → Future<void> + + + +
+
+ Connects to a gamepad and calls GamepadUtils.pulse. + + +
+ +
+ 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
+ +
+ +
+ update() + → void + + + +
+
+ Checks the state of the controller and updates each Gamepad.state. + + +
+ +
+
+ +
+

Operators

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

Constants

+ +
+
+ numGamepads + → const int + + +
+
+ The maximum number of gamepads we support. + + +
+ +
+
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadService/GamepadService.html b/docs/services/GamepadService/GamepadService.html new file mode 100644 index 0000000000..50acabb2a4 --- /dev/null +++ b/docs/services/GamepadService/GamepadService.html @@ -0,0 +1,121 @@ + + + + + + + + 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..6a5af4c6ad --- /dev/null +++ b/docs/services/GamepadService/connect.html @@ -0,0 +1,144 @@ + + + + + + + + connect method - GamepadService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
connect
+ +
+ +
+
+
+ +
+
+ +

connect method +

+ +
+ + +Future<void> +connect(
  1. int index
  2. +
) + + + +
+ +
+

Connects to a gamepad and calls GamepadUtils.pulse.

+
+ + + +
+

Implementation

+
Future<void> connect(int index) async {
+  if (!Platform.isWindows) return;
+  gamepads[index] = MockGamepad();
+  for (var i = 0; i < maxGamepads; i++) {
+    final gamepad = Gamepad(i);
+    if (!gamepad.isConnected) continue;
+    if (ids.contains(i)) continue;
+    gamepads[index] = gamepad;
+    gamepad.pulse();
+    return;
+  }
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadService/dispose.html b/docs/services/GamepadService/dispose.html new file mode 100644 index 0000000000..858bd6597f --- /dev/null +++ b/docs/services/GamepadService/dispose.html @@ -0,0 +1,138 @@ + + + + + + + + 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 {}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadService/gamepads.html b/docs/services/GamepadService/gamepads.html new file mode 100644 index 0000000000..b46e6e1676 --- /dev/null +++ b/docs/services/GamepadService/gamepads.html @@ -0,0 +1,133 @@ + + + + + + + + gamepads property - GamepadService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
gamepads
+ +
+ +
+
+
+ +
+
+ +

gamepads property +

+ +
+ + List<Gamepad> + gamepads +
final
+ +
+ +
+

A list of all the Gamepads the user has connected.

+

Non-connected gamepads are represented with MockGamepads, which has the nice benefit of +automatically handling the case where the user is on a non-supported platform.

+
+ + +
+

Implementation

+
final List<Gamepad> gamepads = [
+  for (int i = 0; i < numGamepads; i++) MockGamepad(),
+];
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadService/hashCode.html b/docs/services/GamepadService/hashCode.html new file mode 100644 index 0000000000..4a62bfb68d --- /dev/null +++ b/docs/services/GamepadService/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - GamepadService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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/ids.html b/docs/services/GamepadService/ids.html new file mode 100644 index 0000000000..a2232831c5 --- /dev/null +++ b/docs/services/GamepadService/ids.html @@ -0,0 +1,138 @@ + + + + + + + + ids property - GamepadService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ids
+ +
+ +
+
+
+ +
+
+ +

ids property +

+ + + +
+ +
+ + Set<int> + ids + + +
+ + +
+

The set of all the Gamepad.controller IDs.

+
+ + +
+

Implementation

+
Set<int> get ids => {
+  for (final gamepad in gamepads) gamepad.controller,
+};
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadService/init.html b/docs/services/GamepadService/init.html new file mode 100644 index 0000000000..1e9d9a29a8 --- /dev/null +++ b/docs/services/GamepadService/init.html @@ -0,0 +1,142 @@ + + + + + + + + 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 {
+  for (var i = 0; i < numGamepads; i++) {
+    await connect(i);
+  }
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadService/noSuchMethod.html b/docs/services/GamepadService/noSuchMethod.html new file mode 100644 index 0000000000..71b0be9ee7 --- /dev/null +++ b/docs/services/GamepadService/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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/numGamepads-constant.html b/docs/services/GamepadService/numGamepads-constant.html new file mode 100644 index 0000000000..7b9b021bf6 --- /dev/null +++ b/docs/services/GamepadService/numGamepads-constant.html @@ -0,0 +1,129 @@ + + + + + + + + numGamepads constant - GamepadService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
numGamepads
+ +
+ +
+
+
+ +
+
+ +

numGamepads constant +

+ +
+ + int + const numGamepads + + +
+ +
+

The maximum number of gamepads we support.

+
+ + +
+

Implementation

+
static const int numGamepads = 3;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadService/operator_equals.html b/docs/services/GamepadService/operator_equals.html new file mode 100644 index 0000000000..c3433d6e8b --- /dev/null +++ b/docs/services/GamepadService/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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/runtimeType.html b/docs/services/GamepadService/runtimeType.html new file mode 100644 index 0000000000..05bd512d70 --- /dev/null +++ b/docs/services/GamepadService/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - GamepadService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..d83668fdcd --- /dev/null +++ b/docs/services/GamepadService/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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/GamepadService/update.html b/docs/services/GamepadService/update.html new file mode 100644 index 0000000000..4c8bc62438 --- /dev/null +++ b/docs/services/GamepadService/update.html @@ -0,0 +1,138 @@ + + + + + + + + update method - GamepadService class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
update
+ +
+ +
+
+
+ +
+
+ +

update method +

+ +
+ + +void +update() + + + +
+ +
+

Checks the state of the controller and updates each Gamepad.state.

+

New button presses will not be recorded until this is called, so you should try to do +so in a way that it is called periodically, either via a timer or Flutter's build function.

+
+ + + +
+

Implementation

+
void update() {
+  for (final gamepad in gamepads) {
+    gamepad.updateState();
+  }
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadStateUtils-extension-sidebar.html b/docs/services/GamepadStateUtils-extension-sidebar.html new file mode 100644 index 0000000000..a24f4ba2e9 --- /dev/null +++ b/docs/services/GamepadStateUtils-extension-sidebar.html @@ -0,0 +1,25 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. normalDpadX
  4. +
  5. normalDpadY
  6. +
  7. normalLeftTrigger
  8. +
  9. normalLeftX
  10. +
  11. normalLeftY
  12. +
  13. normalRightTrigger
  14. +
  15. normalRightX
  16. +
  17. normalRightY
  18. +
  19. normalShoulder
  20. +
  21. normalTrigger
  22. + + + + + + +
diff --git a/docs/services/GamepadStateUtils.html b/docs/services/GamepadStateUtils.html new file mode 100644 index 0000000000..1b952e071d --- /dev/null +++ b/docs/services/GamepadStateUtils.html @@ -0,0 +1,264 @@ + + + + + + + + GamepadStateUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
GamepadStateUtils
+ +
+ +
+
+
+
+
+ +

GamepadStateUtils extension + +

+ + +
+

More user-friendly values from GamepadState.

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

Properties

+
+
+ normalDpadX + → double + + +
+
+ The signed value of the D-pad's horizontal axis. Left is -1, right is +1. +
no setter
+ +
+ +
+ normalDpadY + → double + + +
+
+ The signed value of the D-pad's vertical axis. Up is +1, down is -1. +
no setter
+ +
+ +
+ normalLeftTrigger + → double + + +
+
+ Returns a normalized value for the left trigger. See GamepadNumbers.normalizeTrigger. +
no setter
+ +
+ +
+ normalLeftX + → double + + +
+
+ Returns a normalized value for the left joystick's X-axis. See GamepadNumbers.normalizeJoystick. +
no setter
+ +
+ +
+ normalLeftY + → double + + +
+
+ Returns a normalized value for the left joystick's Y-axis. See GamepadNumbers.normalizeJoystick. +
no setter
+ +
+ +
+ normalRightTrigger + → double + + +
+
+ Returns a normalized value for the right trigger. See GamepadNumbers.normalizeTrigger. +
no setter
+ +
+ +
+ normalRightX + → double + + +
+
+ Returns a normalized value for the right joystick's X-axis. See GamepadNumbers.normalizeJoystick. +
no setter
+ +
+ +
+ normalRightY + → double + + +
+
+ Returns a normalized value for the right joystick's Y-axis. See GamepadNumbers.normalizeJoystick. +
no setter
+ +
+ +
+ normalShoulder + → double + + +
+
+ The signed value of the bumpers. The left bumper is negative, the right is positive. +
no setter
+ +
+ +
+ normalTrigger + → double + + +
+
+ The signed value of the triggers. The left trigger is negative, the right is positive. +
no setter
+ +
+ +
+
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + + + diff --git a/docs/services/GamepadStateUtils/normalDpadX.html b/docs/services/GamepadStateUtils/normalDpadX.html new file mode 100644 index 0000000000..eb87bddf86 --- /dev/null +++ b/docs/services/GamepadStateUtils/normalDpadX.html @@ -0,0 +1,140 @@ + + + + + + + + normalDpadX property - GamepadStateUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalDpadX
+ +
+ +
+
+
+ +
+
+ +

normalDpadX property +

+ + + +
+ +
+ + double + normalDpadX + + +
+ + +
+

The signed value of the D-pad's horizontal axis. Left is -1, right is +1.

+
+ + +
+

Implementation

+
double get normalDpadX {
+  if (dpadLeft) return -1;
+  if (dpadRight) return 1;
+  return 0;
+}
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadStateUtils/normalDpadY.html b/docs/services/GamepadStateUtils/normalDpadY.html new file mode 100644 index 0000000000..44da1a32c7 --- /dev/null +++ b/docs/services/GamepadStateUtils/normalDpadY.html @@ -0,0 +1,140 @@ + + + + + + + + normalDpadY property - GamepadStateUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalDpadY
+ +
+ +
+
+
+ +
+
+ +

normalDpadY property +

+ + + +
+ +
+ + double + normalDpadY + + +
+ + +
+

The signed value of the D-pad's vertical axis. Up is +1, down is -1.

+
+ + +
+

Implementation

+
double get normalDpadY {
+  if (dpadUp) return 1;
+  if (dpadDown) return -1;
+  return 0;
+}
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadStateUtils/normalLeftTrigger.html b/docs/services/GamepadStateUtils/normalLeftTrigger.html new file mode 100644 index 0000000000..5f2d4618cb --- /dev/null +++ b/docs/services/GamepadStateUtils/normalLeftTrigger.html @@ -0,0 +1,136 @@ + + + + + + + + normalLeftTrigger property - GamepadStateUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalLeftTrigger
+ +
+ +
+
+
+ +
+
+ +

normalLeftTrigger property +

+ + + +
+ +
+ + double + normalLeftTrigger + + +
+ + +
+

Returns a normalized value for the left trigger. See GamepadNumbers.normalizeTrigger.

+
+ + +
+

Implementation

+
double get normalLeftTrigger => leftTrigger.normalizeTrigger;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadStateUtils/normalLeftX.html b/docs/services/GamepadStateUtils/normalLeftX.html new file mode 100644 index 0000000000..c12191a9ec --- /dev/null +++ b/docs/services/GamepadStateUtils/normalLeftX.html @@ -0,0 +1,136 @@ + + + + + + + + normalLeftX property - GamepadStateUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalLeftX
+ +
+ +
+
+
+ +
+
+ +

normalLeftX property +

+ + + +
+ +
+ + double + normalLeftX + + +
+ + +
+

Returns a normalized value for the left joystick's X-axis. See GamepadNumbers.normalizeJoystick.

+
+ + +
+

Implementation

+
double get normalLeftX => leftThumbstickX.normalizeJoystick;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadStateUtils/normalLeftY.html b/docs/services/GamepadStateUtils/normalLeftY.html new file mode 100644 index 0000000000..31c56fc17d --- /dev/null +++ b/docs/services/GamepadStateUtils/normalLeftY.html @@ -0,0 +1,136 @@ + + + + + + + + normalLeftY property - GamepadStateUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalLeftY
+ +
+ +
+
+
+ +
+
+ +

normalLeftY property +

+ + + +
+ +
+ + double + normalLeftY + + +
+ + +
+

Returns a normalized value for the left joystick's Y-axis. See GamepadNumbers.normalizeJoystick.

+
+ + +
+

Implementation

+
double get normalLeftY => leftThumbstickY.normalizeJoystick;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadStateUtils/normalRightTrigger.html b/docs/services/GamepadStateUtils/normalRightTrigger.html new file mode 100644 index 0000000000..011628323c --- /dev/null +++ b/docs/services/GamepadStateUtils/normalRightTrigger.html @@ -0,0 +1,136 @@ + + + + + + + + normalRightTrigger property - GamepadStateUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalRightTrigger
+ +
+ +
+
+
+ +
+
+ +

normalRightTrigger property +

+ + + +
+ +
+ + double + normalRightTrigger + + +
+ + +
+

Returns a normalized value for the right trigger. See GamepadNumbers.normalizeTrigger.

+
+ + +
+

Implementation

+
double get normalRightTrigger => rightTrigger.normalizeTrigger;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadStateUtils/normalRightX.html b/docs/services/GamepadStateUtils/normalRightX.html new file mode 100644 index 0000000000..6e10185e0d --- /dev/null +++ b/docs/services/GamepadStateUtils/normalRightX.html @@ -0,0 +1,136 @@ + + + + + + + + normalRightX property - GamepadStateUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalRightX
+ +
+ +
+
+
+ +
+
+ +

normalRightX property +

+ + + +
+ +
+ + double + normalRightX + + +
+ + +
+

Returns a normalized value for the right joystick's X-axis. See GamepadNumbers.normalizeJoystick.

+
+ + +
+

Implementation

+
double get normalRightX => rightThumbstickX.normalizeJoystick;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadStateUtils/normalRightY.html b/docs/services/GamepadStateUtils/normalRightY.html new file mode 100644 index 0000000000..fa39240eaf --- /dev/null +++ b/docs/services/GamepadStateUtils/normalRightY.html @@ -0,0 +1,136 @@ + + + + + + + + normalRightY property - GamepadStateUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalRightY
+ +
+ +
+
+
+ +
+
+ +

normalRightY property +

+ + + +
+ +
+ + double + normalRightY + + +
+ + +
+

Returns a normalized value for the right joystick's Y-axis. See GamepadNumbers.normalizeJoystick.

+
+ + +
+

Implementation

+
double get normalRightY => rightThumbstickY.normalizeJoystick;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadStateUtils/normalShoulder.html b/docs/services/GamepadStateUtils/normalShoulder.html new file mode 100644 index 0000000000..44ace70833 --- /dev/null +++ b/docs/services/GamepadStateUtils/normalShoulder.html @@ -0,0 +1,140 @@ + + + + + + + + normalShoulder property - GamepadStateUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalShoulder
+ +
+ +
+
+
+ +
+
+ +

normalShoulder property +

+ + + +
+ +
+ + double + normalShoulder + + +
+ + +
+

The signed value of the bumpers. The left bumper is negative, the right is positive.

+
+ + +
+

Implementation

+
double get normalShoulder {
+  if (leftShoulder) return -1;
+  if (rightShoulder) return 1;
+  return 0;
+}
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadStateUtils/normalTrigger.html b/docs/services/GamepadStateUtils/normalTrigger.html new file mode 100644 index 0000000000..ff9511c3d3 --- /dev/null +++ b/docs/services/GamepadStateUtils/normalTrigger.html @@ -0,0 +1,140 @@ + + + + + + + + normalTrigger property - GamepadStateUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
normalTrigger
+ +
+ +
+
+
+ +
+
+ +

normalTrigger property +

+ + + +
+ +
+ + double + normalTrigger + + +
+ + +
+

The signed value of the triggers. The left trigger is negative, the right is positive.

+
+ + +
+

Implementation

+
double get normalTrigger {
+  if (leftTrigger > 0) return -normalLeftTrigger;
+  if (rightTrigger > 0) return normalRightTrigger;
+  return 0;
+}
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadUtils-extension-sidebar.html b/docs/services/GamepadUtils-extension-sidebar.html new file mode 100644 index 0000000000..b8f10f5466 --- /dev/null +++ b/docs/services/GamepadUtils-extension-sidebar.html @@ -0,0 +1,18 @@ +
    + + + + + + +
  1. Properties
  2. +
  3. battery
  4. + +
  5. Methods
  6. +
  7. pulse
  8. + + + + + +
diff --git a/docs/services/GamepadUtils.html b/docs/services/GamepadUtils.html new file mode 100644 index 0000000000..8daf2c843a --- /dev/null +++ b/docs/services/GamepadUtils.html @@ -0,0 +1,176 @@ + + + + + + + + GamepadUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
GamepadUtils
+ +
+ +
+
+
+
+
+ +

GamepadUtils extension + +

+ + +
+

Convenience methods on Gamepad.

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

Properties

+
+
+ battery + GamepadBatteryLevel + + +
+
+ A shorthand to get the battery level of this controller. +
no setter
+ +
+ +
+
+ +
+

Methods

+
+
+ pulse() + → void + + + +
+
+ Makes the gamepad vibrate a small "pulse" + + +
+ +
+
+ + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + + + diff --git a/docs/services/GamepadUtils/battery.html b/docs/services/GamepadUtils/battery.html new file mode 100644 index 0000000000..6611f28540 --- /dev/null +++ b/docs/services/GamepadUtils/battery.html @@ -0,0 +1,136 @@ + + + + + + + + battery property - GamepadUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
battery
+ +
+ +
+
+
+ +
+
+ +

battery property +

+ + + +
+ +
+ + GamepadBatteryLevel + battery + + +
+ + +
+

A shorthand to get the battery level of this controller.

+
+ + +
+

Implementation

+
GamepadBatteryLevel get battery => gamepadBatteryInfo.batteryLevel;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/GamepadUtils/pulse.html b/docs/services/GamepadUtils/pulse.html new file mode 100644 index 0000000000..fa701d9000 --- /dev/null +++ b/docs/services/GamepadUtils/pulse.html @@ -0,0 +1,141 @@ + + + + + + + + pulse method - GamepadUtils extension - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
pulse
+ +
+ +
+
+
+ +
+
+ +

pulse method +

+ +
+ + +void +pulse() + + + +
+ +
+

Makes the gamepad vibrate a small "pulse"

+
+ + + +
+

Implementation

+
void pulse() async {  // ignore: avoid_void_async, because this should not be awaited
+  if (!isConnected) return;
+  vibrate(leftMotorSpeed: vibrateIntensity, rightMotorSpeed: vibrateIntensity);
+  await Future<void>.delayed(const Duration(milliseconds: 200));
+  vibrate();  // default speed of 0
+  await Future<void>.delayed(const Duration(milliseconds: 100));
+  vibrate(leftMotorSpeed: vibrateIntensity, rightMotorSpeed: vibrateIntensity);
+  await Future<void>.delayed(const Duration(milliseconds: 200));
+  vibrate();  // default speed of 0
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/MalformedSerialPacket-class-sidebar.html b/docs/services/MalformedSerialPacket-class-sidebar.html new file mode 100644 index 0000000000..d7c5a1f90f --- /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..26c2a19ed7 --- /dev/null +++ b/docs/services/MalformedSerialPacket-class.html @@ -0,0 +1,259 @@ + + + + + + + + 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..22ba30f583 --- /dev/null +++ b/docs/services/MalformedSerialPacket/MalformedSerialPacket.html @@ -0,0 +1,129 @@ + + + + + + + + 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..a764530ca9 --- /dev/null +++ b/docs/services/MalformedSerialPacket/packet.html @@ -0,0 +1,129 @@ + + + + + + + + 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..faa2ff1c66 --- /dev/null +++ b/docs/services/MalformedSerialPacket/toString.html @@ -0,0 +1,147 @@ + + + + + + + + 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/MockGamepad-class-sidebar.html b/docs/services/MockGamepad-class-sidebar.html new file mode 100644 index 0000000000..3a0234aea9 --- /dev/null +++ b/docs/services/MockGamepad-class-sidebar.html @@ -0,0 +1,34 @@ +
    + +
  1. Constructors
  2. +
  3. MockGamepad
  4. + + + +
  5. + Properties +
  6. +
  7. appHasFocus
  8. +
  9. controller
  10. +
  11. gamepadBatteryInfo
  12. +
  13. hashCode
  14. +
  15. headsetBatteryInfo
  16. +
  17. isConnected
  18. +
  19. runtimeType
  20. +
  21. state
  22. + +
  23. Methods
  24. +
  25. noSuchMethod
  26. +
  27. toString
  28. +
  29. updateState
  30. +
  31. vibrate
  32. + +
  33. Operators
  34. +
  35. operator ==
  36. + + + + + + +
diff --git a/docs/services/MockGamepad-class.html b/docs/services/MockGamepad-class.html new file mode 100644 index 0000000000..2c90f5246d --- /dev/null +++ b/docs/services/MockGamepad-class.html @@ -0,0 +1,344 @@ + + + + + + + + MockGamepad class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
MockGamepad
+ +
+ +
+
+
+ +
+
+ +

MockGamepad class + +

+ + +
+

An "implementation" of package:win32_gamepad for non-supported platforms.

+
+ + +
+
+ + + +
Implemented types
+
+ +
+ + + +
Available Extensions
+
+ + + + +
+
+ + +
+

Constructors

+ +
+
+ MockGamepad() +
+
+ +
+
+
+ +
+

Properties

+
+
+ appHasFocus + ← bool + + +
+
+ Controls whether the gamepad is active. +
no getteroverride
+ +
+ +
+ controller + → int + + +
+
+ The identifier for the current controller. +
no setteroverride
+ +
+ +
+ gamepadBatteryInfo + GamepadBatteryInfo + + +
+
+ Get the battery type for the gamepad. +
no setteroverride
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ headsetBatteryInfo + GamepadBatteryInfo + + +
+
+ Get the battery type for a headset attached to the gamepad, if there is +one. +
no setteroverride
+ +
+ +
+ isConnected + → bool + + +
+
+ Returns a value for whether the controller is connected. +
no setteroverride
+ +
+ +
+ runtimeType + → Type + + +
+
+ A representation of the runtime type of the object. +
no setterinherited
+ +
+ +
+ state + GamepadState + + +
+
+ The status of the buttons, triggers and thumbsticks on the gamepad. +
getter/setter pairoverride
+ +
+ +
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a nonexistent method or property is accessed. +
inherited
+ +
+ +
+ toString() + → String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ updateState() + → void + + + +
+
+ Get the current state of the current controller. +
override
+ +
+ +
+ vibrate({int? leftMotorSpeed, int? rightMotorSpeed}) + → void + + + +
+
+ Activate a gamepad controller's vibration motors. +
override
+ +
+ +
+
+ +
+

Operators

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

MockGamepad constructor +

+ +
+ + MockGamepad() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/MockGamepad/appHasFocus.html b/docs/services/MockGamepad/appHasFocus.html new file mode 100644 index 0000000000..bba8101a48 --- /dev/null +++ b/docs/services/MockGamepad/appHasFocus.html @@ -0,0 +1,145 @@ + + + + + + + + appHasFocus property - MockGamepad class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
appHasFocus
+ +
+ +
+
+
+ +
+
+ +

appHasFocus property +

+ + + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ void + appHasFocus=(bool value) +
override
+ +
+ + +
+

Controls whether the gamepad is active.

+

This function is meant to be called when an app gains or loses focus. When +set to false, vibration effects will be stopped and calls to updateState +will be returned neutral values.

+
+ + +
+

Implementation

+
@override
+set appHasFocus(bool value) { }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/MockGamepad/controller.html b/docs/services/MockGamepad/controller.html new file mode 100644 index 0000000000..bd9dede389 --- /dev/null +++ b/docs/services/MockGamepad/controller.html @@ -0,0 +1,144 @@ + + + + + + + + controller property - MockGamepad class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
controller
+ +
+ +
+
+
+ +
+
+ +

controller property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ int + controller +
override
+ +
+ + +
+

The identifier for the current controller.

+

Up to four controllers may be connected to a system, numbered from 0 to +3.

+
+ + +
+

Implementation

+
@override
+int get controller => -1;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/MockGamepad/gamepadBatteryInfo.html b/docs/services/MockGamepad/gamepadBatteryInfo.html new file mode 100644 index 0000000000..bda0998cc3 --- /dev/null +++ b/docs/services/MockGamepad/gamepadBatteryInfo.html @@ -0,0 +1,142 @@ + + + + + + + + gamepadBatteryInfo property - MockGamepad class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
gamepadBatteryInfo
+ +
+ +
+
+
+ +
+
+ +

gamepadBatteryInfo property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ GamepadBatteryInfo + gamepadBatteryInfo +
override
+ +
+ + +
+

Get the battery type for the gamepad.

+
+ + +
+

Implementation

+
@override
+GamepadBatteryInfo get gamepadBatteryInfo => GamepadBatteryInfo(0, GamepadDeviceType.controller);
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/MockGamepad/headsetBatteryInfo.html b/docs/services/MockGamepad/headsetBatteryInfo.html new file mode 100644 index 0000000000..c24d854a2d --- /dev/null +++ b/docs/services/MockGamepad/headsetBatteryInfo.html @@ -0,0 +1,143 @@ + + + + + + + + headsetBatteryInfo property - MockGamepad class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
headsetBatteryInfo
+ +
+ +
+
+
+ +
+
+ +

headsetBatteryInfo property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ GamepadBatteryInfo + headsetBatteryInfo +
override
+ +
+ + +
+

Get the battery type for a headset attached to the gamepad, if there is +one.

+
+ + +
+

Implementation

+
@override
+GamepadBatteryInfo get headsetBatteryInfo => GamepadBatteryInfo(0, GamepadDeviceType.headset);
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/MockGamepad/isConnected.html b/docs/services/MockGamepad/isConnected.html new file mode 100644 index 0000000000..083ac9ddc6 --- /dev/null +++ b/docs/services/MockGamepad/isConnected.html @@ -0,0 +1,146 @@ + + + + + + + + isConnected property - MockGamepad class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
isConnected
+ +
+ +
+
+
+ +
+
+ +

isConnected property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + isConnected +
override
+ +
+ + +
+

Returns a value for whether the controller is connected.

+

This can be used to identify which controllers are connected to a system. +But a controller may be disconnected at any point, so a true value does +not guarantee that a following call will succeed. Instead, guard calls to +other functions to check that a DeviceNotConnectedError is not thrown.

+
+ + +
+

Implementation

+
@override
+bool get isConnected => false;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/MockGamepad/state.html b/docs/services/MockGamepad/state.html new file mode 100644 index 0000000000..b44857f8ad --- /dev/null +++ b/docs/services/MockGamepad/state.html @@ -0,0 +1,172 @@ + + + + + + + + state property - MockGamepad class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
state
+ +
+ +
+
+
+ +
+
+ +

state property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ GamepadState + state +
override
+ +
+ + +
+

The status of the buttons, triggers and thumbsticks on the gamepad.

+
+ + +
+

Implementation

+
@override
+GamepadState get state => GamepadState.disconnected();
+
+ +
+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ void + state=(GamepadState value) +
override
+ +
+ + +
+

The status of the buttons, triggers and thumbsticks on the gamepad.

+
+ + +
+

Implementation

+
@override
+set state(GamepadState value) { }
+
+ +
+ +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/MockGamepad/updateState.html b/docs/services/MockGamepad/updateState.html new file mode 100644 index 0000000000..c83c175db2 --- /dev/null +++ b/docs/services/MockGamepad/updateState.html @@ -0,0 +1,141 @@ + + + + + + + + updateState method - MockGamepad class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
updateState
+ +
+ +
+
+
+ +
+
+ +

updateState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ +void +updateState() + +
override
+ +
+ +
+

Get the current state of the current controller.

+

This function is designed to be called once for each pass on a game loop. +It can safely be called even if the gamepad is disconnected, at which +point neutral values will be returned for all buttons and thumbsticks.

+
+ + + +
+

Implementation

+
@override
+void updateState() { }
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/MockGamepad/vibrate.html b/docs/services/MockGamepad/vibrate.html new file mode 100644 index 0000000000..ee42cc32b4 --- /dev/null +++ b/docs/services/MockGamepad/vibrate.html @@ -0,0 +1,142 @@ + + + + + + + + vibrate method - MockGamepad class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
vibrate
+ +
+ +
+
+
+ +
+
+ +

vibrate method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ +void +vibrate({
  1. int? leftMotorSpeed,
  2. +
  3. int? rightMotorSpeed,
  4. +
}) + +
override
+ +
+ +
+

Activate a gamepad controller's vibration motors.

+

Either the left or right motor can be activated. The value should be +between 0 and 65535.

+
+ + + +
+

Implementation

+
@override
+void vibrate({int? leftMotorSpeed, int? rightMotorSpeed}) { }
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/MultipleDevicesFound-class-sidebar.html b/docs/services/MultipleDevicesFound-class-sidebar.html new file mode 100644 index 0000000000..10078e3f0d --- /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..353a46c245 --- /dev/null +++ b/docs/services/MultipleDevicesFound-class.html @@ -0,0 +1,257 @@ + + + + + + + + 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..aa16e8e0c1 --- /dev/null +++ b/docs/services/MultipleDevicesFound/MultipleDevicesFound.html @@ -0,0 +1,129 @@ + + + + + + + + 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..ce73cfa597 --- /dev/null +++ b/docs/services/MultipleDevicesFound/devices.html @@ -0,0 +1,129 @@ + + + + + + + + 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..6324327cc3 --- /dev/null +++ b/docs/services/MultipleDevicesFound/toString.html @@ -0,0 +1,147 @@ + + + + + + + + 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..57103167d6 --- /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..d18e162dec --- /dev/null +++ b/docs/services/NoDeviceFound-class.html @@ -0,0 +1,244 @@ + + + + + + + + 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..debd953220 --- /dev/null +++ b/docs/services/NoDeviceFound/NoDeviceFound.html @@ -0,0 +1,121 @@ + + + + + + + + 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..5af092af90 --- /dev/null +++ b/docs/services/NoDeviceFound/toString.html @@ -0,0 +1,147 @@ + + + + + + + + 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..355a7762fd --- /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..4f9a92d86f --- /dev/null +++ b/docs/services/SerialCannotOpen-class.html @@ -0,0 +1,258 @@ + + + + + + + + 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..5146857ebe --- /dev/null +++ b/docs/services/SerialCannotOpen/SerialCannotOpen.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c2c2d3fb0b --- /dev/null +++ b/docs/services/SerialCannotOpen/port.html @@ -0,0 +1,129 @@ + + + + + + + + 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..620f726183 --- /dev/null +++ b/docs/services/SerialCannotOpen/toString.html @@ -0,0 +1,147 @@ + + + + + + + + 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..fb246a48e5 --- /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..49df7c13f5 --- /dev/null +++ b/docs/services/SerialDevice-class.html @@ -0,0 +1,335 @@ + + + + + + + + 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..3f12f4d44e --- /dev/null +++ b/docs/services/SerialDevice/SerialDevice.html @@ -0,0 +1,130 @@ + + + + + + + + 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..b2856693e3 --- /dev/null +++ b/docs/services/SerialDevice/availablePorts.html @@ -0,0 +1,136 @@ + + + + + + + + availablePorts property - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
availablePorts
+ +
+ +
+
+
+ +
+
+ +

availablePorts property +

+ + + +
+ +
+ + List<String> + 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..2b1efab031 --- /dev/null +++ b/docs/services/SerialDevice/connect.html @@ -0,0 +1,136 @@ + + + + + + + + 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..77b1d8bd87 --- /dev/null +++ b/docs/services/SerialDevice/device.html @@ -0,0 +1,131 @@ + + + + + + + + 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..053d4b9563 --- /dev/null +++ b/docs/services/SerialDevice/dispose.html @@ -0,0 +1,135 @@ + + + + + + + + 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..3f2cf34a37 --- /dev/null +++ b/docs/services/SerialDevice/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..6754a15fcf --- /dev/null +++ b/docs/services/SerialDevice/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..0d90d1b122 --- /dev/null +++ b/docs/services/SerialDevice/onMessage.html @@ -0,0 +1,129 @@ + + + + + + + + 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..df5588c1b6 --- /dev/null +++ b/docs/services/SerialDevice/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..e771caffd9 --- /dev/null +++ b/docs/services/SerialDevice/port.html @@ -0,0 +1,129 @@ + + + + + + + + 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..c442e2bf5b --- /dev/null +++ b/docs/services/SerialDevice/resetCode-constant.html @@ -0,0 +1,129 @@ + + + + + + + + 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..8620890ffb --- /dev/null +++ b/docs/services/SerialDevice/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - SerialDevice class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..09b0f1f7ff --- /dev/null +++ b/docs/services/SerialDevice/sendMessage.html @@ -0,0 +1,140 @@ + + + + + + + + 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 ecpect. 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..d6411e3bef --- /dev/null +++ b/docs/services/SerialDevice/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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..3d7be0d09e --- /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..5568294bb5 --- /dev/null +++ b/docs/services/SerialException-class.html @@ -0,0 +1,254 @@ + + + + + + + + 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..7a49d63b90 --- /dev/null +++ b/docs/services/SerialException/SerialException.html @@ -0,0 +1,128 @@ + + + + + + + + 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..5b8aab1b97 --- /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..4dede2de2c --- /dev/null +++ b/docs/services/SerialHandshakeFailed-class.html @@ -0,0 +1,246 @@ + + + + + + + + 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..5b81f0aa86 --- /dev/null +++ b/docs/services/SerialHandshakeFailed/SerialHandshakeFailed.html @@ -0,0 +1,121 @@ + + + + + + + + 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..43f62011d7 --- /dev/null +++ b/docs/services/SerialHandshakeFailed/toString.html @@ -0,0 +1,147 @@ + + + + + + + + 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..fe10a73b20 --- /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..062499b3af --- /dev/null +++ b/docs/services/SerialIOError-class.html @@ -0,0 +1,258 @@ + + + + + + + + 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..2ffe024a67 --- /dev/null +++ b/docs/services/SerialIOError/SerialIOError.html @@ -0,0 +1,129 @@ + + + + + + + + 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..eaf6c8cd4d --- /dev/null +++ b/docs/services/SerialIOError/error.html @@ -0,0 +1,129 @@ + + + + + + + + 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..3f165fc3b9 --- /dev/null +++ b/docs/services/SerialIOError/toString.html @@ -0,0 +1,147 @@ + + + + + + + + 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..a817d8cae1 --- /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..a40edbf9b6 --- /dev/null +++ b/docs/services/Services-class.html @@ -0,0 +1,288 @@ + + + + + + + + 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..fdf99c4f76 --- /dev/null +++ b/docs/services/Services/Services.html @@ -0,0 +1,121 @@ + + + + + + + + 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..cf1d4ecaad --- /dev/null +++ b/docs/services/Services/dispose.html @@ -0,0 +1,141 @@ + + + + + + + + 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..1783ff46bd --- /dev/null +++ b/docs/services/Services/error.html @@ -0,0 +1,129 @@ + + + + + + + + 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..b38483f18d --- /dev/null +++ b/docs/services/Services/files.html @@ -0,0 +1,129 @@ + + + + + + + + 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..2a2729cc19 --- /dev/null +++ b/docs/services/Services/gamepad.html @@ -0,0 +1,129 @@ + + + + + + + + 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..3eb04c77a0 --- /dev/null +++ b/docs/services/Services/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - Services class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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..8dae681b4f --- /dev/null +++ b/docs/services/Services/init.html @@ -0,0 +1,141 @@ + + + + + + + + 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..ddc12cfc28 --- /dev/null +++ b/docs/services/Services/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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..603e601890 --- /dev/null +++ b/docs/services/Services/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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..dfb69d4868 --- /dev/null +++ b/docs/services/Services/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - Services class - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

+ + + +
+ +
+ + Type + 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..13af5d3038 --- /dev/null +++ b/docs/services/Services/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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/connectionIncrement-constant.html b/docs/services/connectionIncrement-constant.html new file mode 100644 index 0000000000..52bbda09de --- /dev/null +++ b/docs/services/connectionIncrement-constant.html @@ -0,0 +1,129 @@ + + + + + + + + connectionIncrement constant - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
connectionIncrement
+ +
+ +
+
+
+ +
+
+ +

connectionIncrement top-level constant + +

+ +
+ + double + const connectionIncrement + + +
+ +
+

How much each successful/missed handshake is worth, as a percent.

+
+ + +
+

Implementation

+
const connectionIncrement = 0.2;
+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/epsilon-constant.html b/docs/services/epsilon-constant.html new file mode 100644 index 0000000000..421fbb942e --- /dev/null +++ b/docs/services/epsilon-constant.html @@ -0,0 +1,129 @@ + + + + + + + + epsilon constant - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
epsilon
+ +
+ +
+
+
+ +
+
+ +

epsilon top-level constant + +

+ +
+ + double + const epsilon + + +
+ +
+

The "deadzone" of the gamepad.

+
+ + +
+

Implementation

+
const epsilon = 0.01;
+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/heartbeatWaitDelay-constant.html b/docs/services/heartbeatWaitDelay-constant.html new file mode 100644 index 0000000000..3b8cdf2b8b --- /dev/null +++ b/docs/services/heartbeatWaitDelay-constant.html @@ -0,0 +1,129 @@ + + + + + + + + heartbeatWaitDelay constant - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
heartbeatWaitDelay
+ +
+ +
+
+
+ +
+
+ +

heartbeatWaitDelay top-level constant + +

+ +
+ + Duration + const heartbeatWaitDelay + + +
+ +
+

How long to wait for incoming heartbeats after sending them out.

+
+ + +
+

Implementation

+
const heartbeatWaitDelay = Duration(milliseconds: 200);
+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/maxGamepads-constant.html b/docs/services/maxGamepads-constant.html new file mode 100644 index 0000000000..f1540a1d06 --- /dev/null +++ b/docs/services/maxGamepads-constant.html @@ -0,0 +1,129 @@ + + + + + + + + maxGamepads constant - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
maxGamepads
+ +
+ +
+
+
+ +
+
+ +

maxGamepads top-level constant + +

+ +
+ + int + const maxGamepads + + +
+ +
+

The maximum amount of gamepads a user can have.

+
+ + +
+

Implementation

+
const maxGamepads = 4;
+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/services/services-library-sidebar.html b/docs/services/services-library-sidebar.html new file mode 100644 index 0000000000..074930d1d1 --- /dev/null +++ b/docs/services/services-library-sidebar.html @@ -0,0 +1,49 @@ +
    +
  1. Classes
  2. +
  3. DashboardSocket
  4. +
  5. FilesService
  6. +
  7. Gamepad
  8. +
  9. GamepadBatteryInfo
  10. +
  11. GamepadCapabilities
  12. +
  13. GamepadService
  14. +
  15. GamepadState
  16. +
  17. MockGamepad
  18. +
  19. SerialDevice
  20. +
  21. Services
  22. + +
  23. Enums
  24. +
  25. Direction
  26. +
  27. GamepadBatteryLevel
  28. +
  29. GamepadBatteryType
  30. +
  31. GamepadDeviceType
  32. + + + +
  33. Constants
  34. +
  35. connectionIncrement
  36. +
  37. epsilon
  38. +
  39. heartbeatWaitDelay
  40. +
  41. maxGamepads
  42. +
  43. vibrateIntensity
  44. + +
  45. Properties
  46. +
  47. services
  48. + + + +
  49. Exceptions
  50. +
  51. DeviceNotConnected
  52. +
  53. DeviceNotConnectedError
  54. +
  55. MalformedSerialPacket
  56. +
  57. MultipleDevicesFound
  58. +
  59. NoDeviceFound
  60. +
  61. SerialCannotOpen
  62. +
  63. SerialException
  64. +
  65. SerialHandshakeFailed
  66. +
  67. SerialIOError
  68. + +
  69. Extensions
  70. +
  71. GamepadNumbers
  72. +
  73. GamepadStateUtils
  74. +
  75. GamepadUtils
  76. +
diff --git a/docs/services/services-library.html b/docs/services/services-library.html new file mode 100644 index 0000000000..c0911905f0 --- /dev/null +++ b/docs/services/services-library.html @@ -0,0 +1,478 @@ + + + + + + + + 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 + +
+
+ Represents a gamepad controller. +
+ +
+ GamepadBatteryInfo + +
+
+ Information about the battery state for a gamepad or headset. +
+ +
+ GamepadCapabilities + +
+
+ Information about what a gamepad supports: vibration, voice, navigation, +etc. +
+ +
+ GamepadService + +
+
+ A service to receive input from a gamepad connected to the user's device. +
+ +
+ GamepadState + +
+
+ The current status of a gamepad. +
+ +
+ MockGamepad + +
+
+ An "implementation" of package:win32_gamepad for non-supported platforms. +
+ +
+ SerialDevice + +
+
+ A service to connect to a single serial device. +
+ +
+ Services + +
+
+ A dependency injection service that manages the lifecycle of other services. +
+ +
+
+ +
+

Enums

+ +
+
+ Direction + +
+
+ The compass point represented by the directional pad. +
+ +
+ GamepadBatteryLevel + +
+
+ The charge state of the battery. +
+ +
+ GamepadBatteryType + +
+
+ The type of battery. +
+ +
+ GamepadDeviceType + +
+
+ Whether the specified device is the controller or an attached headset. +
+ +
+
+ + + +
+

Extensions

+ +
+
+ GamepadNumbers + on num + + +
+
+ An extension to do gamepad math. +
+ + +
+ GamepadStateUtils + on GamepadState + + +
+
+ More user-friendly values from GamepadState. +
+ + +
+ GamepadUtils + on Gamepad + + +
+
+ Convenience methods on Gamepad. +
+ + +
+
+ +
+

Constants

+ +
+
+ connectionIncrement + → const double + + +
+
+ How much each successful/missed handshake is worth, as a percent. + + +
+ +
+ epsilon + → const double + + +
+
+ The "deadzone" of the gamepad. + + +
+ +
+ heartbeatWaitDelay + → const Duration + + +
+
+ How long to wait for incoming heartbeats after sending them out. + + +
+ +
+ maxGamepads + → const int + + +
+
+ The maximum amount of gamepads a user can have. + + +
+ +
+ vibrateIntensity + → const int + + +
+
+ The default vibration intensity. + + +
+ +
+
+ +
+

Properties

+ +
+
+ services + Services + + +
+
+ The singleton instance of the Services class. +
final
+ +
+ +
+
+ + + +
+

Exceptions / Errors

+ +
+
+ DeviceNotConnected + +
+
+ Indicates that no device has been connected. +
+ +
+ DeviceNotConnectedError + +
+
+ Error occurring when an operation is attempted on a device that is not +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..87e918a49b --- /dev/null +++ b/docs/services/services.html @@ -0,0 +1,130 @@ + + + + + + + + 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/services/vibrateIntensity-constant.html b/docs/services/vibrateIntensity-constant.html new file mode 100644 index 0000000000..68d7b28c84 --- /dev/null +++ b/docs/services/vibrateIntensity-constant.html @@ -0,0 +1,130 @@ + + + + + + + + vibrateIntensity constant - services library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
vibrateIntensity
+ +
+ +
+
+
+ +
+
+ +

vibrateIntensity top-level constant + +

+ +
+ + int + const vibrateIntensity + + +
+ +
+

The default vibration intensity.

+

This value is stored in an unsigned 16-bit integer, so it's range is from 0-65,535.

+
+ + +
+

Implementation

+
const vibrateIntensity = 65000;
+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/docs/static-assets/docs.dart.js b/docs/static-assets/docs.dart.js new file mode 100644 index 0000000000..b745097cc9 --- /dev/null +++ b/docs/static-assets/docs.dart.js @@ -0,0 +1,4804 @@ +(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.G(a,0,4294967295,"length",null)) +return J.hR(new Array(a),b)}, +hQ(a,b){if(a<0)throw A.a(A.a_("Length must be a non-negative integer: "+a,null)) +return A.h(new Array(a),b.i("o<0>"))}, +eX(a,b){if(a<0)throw A.a(A.a_("Length must be a non-negative integer: "+a,null)) +return A.h(new Array(a),b.i("o<0>"))}, +hR(a,b){return J.eg(A.h(a,b.i("o<0>")))}, +eg(a){a.fixed$length=Array +return a}, +eY(a){a.fixed$length=Array +a.immutable$list=Array +return a}, +hS(a,b){return J.ht(a,b)}, +X(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.aP.prototype +return J.bI.prototype}if(typeof a=="string")return J.ah.prototype +if(a==null)return J.aQ.prototype +if(typeof a=="boolean")return J.bH.prototype +if(Array.isArray(a))return J.o.prototype +if(typeof a!="object"){if(typeof a=="function")return J.a1.prototype +if(typeof a=="symbol")return J.aU.prototype +if(typeof a=="bigint")return J.aS.prototype +return a}if(a instanceof A.l)return a +return J.eG(a)}, +an(a){if(typeof a=="string")return J.ah.prototype +if(a==null)return a +if(Array.isArray(a))return J.o.prototype +if(typeof a!="object"){if(typeof a=="function")return J.a1.prototype +if(typeof a=="symbol")return J.aU.prototype +if(typeof a=="bigint")return J.aS.prototype +return a}if(a instanceof A.l)return a +return J.eG(a)}, +e_(a){if(a==null)return a +if(Array.isArray(a))return J.o.prototype +if(typeof a!="object"){if(typeof a=="function")return J.a1.prototype +if(typeof a=="symbol")return J.aU.prototype +if(typeof a=="bigint")return J.aS.prototype +return a}if(a instanceof A.l)return a +return J.eG(a)}, +jI(a){if(typeof a=="number")return J.aR.prototype +if(typeof a=="string")return J.ah.prototype +if(a==null)return a +if(!(a instanceof A.l))return J.ax.prototype +return a}, +F(a,b){if(a==null)return b==null +if(typeof a!="object")return b!=null&&a===b +return J.X(a).F(a,b)}, +hq(a,b){if(typeof b==="number")if(Array.isArray(a)||typeof a=="string"||A.h3(a,a[v.dispatchPropertyName]))if(b>>>0===b&&b>>0===b&&b").b(a))return new A.b9(a,b.i("@<0>").A(c).i("b9<1,2>")) +return new A.ae(a,b.i("@<0>").A(c).i("ae<1,2>"))}, +e0(a){var s,r=a^48 +if(r<=9)return r +s=a|32 +if(97<=s&&s<=102)return s-87 +return-1}, +a6(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +en(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +cn(a,b,c){return a}, +eI(a){var s,r +for(s=$.ap.length,r=0;r").A(d).i("aM<1,2>")) +return new A.ai(a,b,c.i("@<0>").A(d).i("ai<1,2>"))}, +eV(){return new A.b5("No element")}, +a8:function a8(){}, +bA:function bA(a,b){this.a=a +this.$ti=b}, +ae:function ae(a,b){this.a=a +this.$ti=b}, +b9:function b9(a,b){this.a=a +this.$ti=b}, +b8:function b8(){}, +M:function M(a,b){this.a=a +this.$ti=b}, +aV:function aV(a){this.a=a}, +bB:function bB(a){this.a=a}, +cR:function cR(){}, +c:function c(){}, +I:function I(){}, +au:function au(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +ai:function ai(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aM:function aM(a,b,c){this.a=a +this.b=b +this.$ti=c}, +av:function av(a,b,c){var _=this +_.a=null +_.b=a +_.c=b +_.$ti=c}, +aj:function aj(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aO:function aO(){}, +c1:function c1(){}, +ay:function ay(){}, +a5:function a5(a){this.a=a}, +bp:function bp(){}, +hF(){throw A.a(A.T("Cannot modify unmodifiable Map"))}, +h8(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +h3(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.aq(a) +return s}, +bY(a){var s,r=$.f2 +if(r==null)r=$.f2=Symbol("identityHashCode") +s=a[r] +if(s==null){s=Math.random()*0x3fffffff|0 +a[r]=s}return s}, +f3(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.G(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)}, +cQ(a){return A.i_(a)}, +i_(a){var s,r,q,p +if(a instanceof A.l)return A.C(A.aG(a),null) +s=J.X(a) +if(s===B.I||s===B.K||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.aG(a),null)}, +f4(a){if(a==null||typeof a=="number"||A.ez(a))return J.aq(a) +if(typeof a=="string")return JSON.stringify(a) +if(a instanceof A.af)return a.h(0) +if(a instanceof A.bf)return a.aH(!0) +return"Instance of '"+A.cQ(a)+"'"}, +i2(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.G(a,0,1114111,null,null))}, +a3(a,b,c){var s,r,q={} +q.a=0 +s=[] +r=[] +q.a=b.length +B.b.aI(s,b) +q.b="" +if(c!=null&&c.a!==0)c.C(0,new A.cP(q,r,s)) +return J.hw(a,new A.cD(B.ac,0,s,r,0))}, +i0(a,b,c){var s,r,q +if(Array.isArray(b))s=c==null||c.a===0 +else s=!1 +if(s){r=b.length +if(r===0){if(!!a.$0)return a.$0()}else if(r===1){if(!!a.$1)return a.$1(b[0])}else if(r===2){if(!!a.$2)return a.$2(b[0],b[1])}else if(r===3){if(!!a.$3)return a.$3(b[0],b[1],b[2])}else if(r===4){if(!!a.$4)return a.$4(b[0],b[1],b[2],b[3])}else if(r===5)if(!!a.$5)return a.$5(b[0],b[1],b[2],b[3],b[4]) +q=a[""+"$"+r] +if(q!=null)return q.apply(a,b)}return A.hZ(a,b,c)}, +hZ(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g=Array.isArray(b)?b:A.bL(b,!0,t.z),f=g.length,e=a.$R +if(fn)return A.a3(a,g,null) +if(fe)return A.a3(a,g,c) +if(g===b)g=A.bL(g,!0,t.z) +l=Object.keys(q) +if(c==null)for(r=l.length,k=0;k=s)return A.eU(b,s,a,r) +return A.i3(b,r)}, +jF(a,b,c){if(a>c)return A.G(a,0,c,"start",null) +if(b!=null)if(bc)return A.G(b,a,c,"end",null) +return new A.K(!0,b,"end",null)}, +jy(a){return new A.K(!0,a,null,null)}, +a(a){return A.h2(new Error(),a)}, +h2(a,b){var s +if(b==null)b=new A.R() +a.dartException=b +s=A.k4 +if("defineProperty" in Object){Object.defineProperty(a,"message",{get:s}) +a.name=""}else a.toString=s +return a}, +k4(){return J.aq(this.dartException)}, +aH(a){throw A.a(a)}, +h7(a,b){throw A.h2(b,a)}, +co(a){throw A.a(A.as(a))}, +S(a){var s,r,q,p,o,n +a=A.jZ(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.cU(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)}, +cV(a){return function($expr$){var $argumentsExpr$="$arguments$" +try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, +fc(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, +ei(a,b){var s=b==null,r=s?null:b.method +return new A.bJ(a,r,s?null:b.receiver)}, +ad(a){if(a==null)return new A.cO(a) +if(a instanceof A.aN)return A.ac(a,a.a) +if(typeof a!=="object")return a +if("dartException" in a)return A.ac(a,a.dartException) +return A.jx(a)}, +ac(a,b){if(t.Q.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a +return b}, +jx(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.U(r,16)&8191)===10)switch(q){case 438:return A.ac(a,A.ei(A.i(s)+" (Error "+q+")",null)) +case 445:case 5007:A.i(s) +return A.ac(a,new A.b1())}}if(a instanceof TypeError){p=$.h9() +o=$.ha() +n=$.hb() +m=$.hc() +l=$.hf() +k=$.hg() +j=$.he() +$.hd() +i=$.hi() +h=$.hh() +g=p.D(s) +if(g!=null)return A.ac(a,A.ei(s,g)) +else{g=o.D(s) +if(g!=null){g.method="call" +return A.ac(a,A.ei(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.ac(a,new A.b1())}return A.ac(a,new A.c0(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.b4() +s=function(b){try{return String(b)}catch(f){}return null}(a) +return A.ac(a,new A.K(!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.b4() +return a}, +ao(a){var s +if(a instanceof A.aN)return a.b +if(a==null)return new A.bg(a) +s=a.$cachedTrace +if(s!=null)return s +s=new A.bg(a) +if(typeof a==="object")a.$cachedTrace=s +return s}, +h4(a){if(a==null)return J.Z(a) +if(typeof a=="object")return A.bY(a) +return J.Z(a)}, +jH(a,b){var s,r,q,p=a.length +for(s=0;s=0}, +jZ(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") +return a}, +fW(a){return a}, +k2(a,b,c,d){var s,r,q,p=new A.d3(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.fW(B.a.j(a,n,q)))+A.i(c.$1(s)) +n=q+r[0].length}p=m+A.i(A.fW(B.a.K(a,n))) +return p.charCodeAt(0)==0?p:p}, +cg:function cg(a,b){this.a=a +this.b=b}, +aL:function aL(a,b){this.a=a +this.$ti=b}, +aK:function aK(){}, +ag:function ag(a,b,c){this.a=a +this.b=b +this.$ti=c}, +cD:function cD(a,b,c,d,e){var _=this +_.a=a +_.c=b +_.d=c +_.e=d +_.f=e}, +cP:function cP(a,b,c){this.a=a +this.b=b +this.c=c}, +cU:function cU(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +b1:function b1(){}, +bJ:function bJ(a,b,c){this.a=a +this.b=b +this.c=c}, +c0:function c0(a){this.a=a}, +cO:function cO(a){this.a=a}, +aN:function aN(a,b){this.a=a +this.b=b}, +bg:function bg(a){this.a=a +this.b=null}, +af:function af(){}, +cs:function cs(){}, +ct:function ct(){}, +cT:function cT(){}, +cS:function cS(){}, +aJ:function aJ(a,b){this.a=a +this.b=b}, +c8:function c8(a){this.a=a}, +bZ:function bZ(a){this.a=a}, +dp:function dp(){}, +N:function N(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +cG:function cG(a){this.a=a}, +cJ:function cJ(a,b){this.a=a +this.b=b +this.c=null}, +O:function O(a,b){this.a=a +this.$ti=b}, +bK:function bK(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +e1:function e1(a){this.a=a}, +e2:function e2(a){this.a=a}, +e3:function e3(a){this.a=a}, +bf:function bf(){}, +cf:function cf(){}, +cE:function cE(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +ce:function ce(a){this.b=a}, +d3:function d3(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +j_(a){return a}, +hW(a){return new Int8Array(a)}, +hX(a){return new Uint8Array(a)}, +V(a,b,c){if(a>>>0!==a||a>=c)throw A.a(A.eF(b,a))}, +iW(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.jF(a,b,c)) +return b}, +bM:function bM(){}, +aZ:function aZ(){}, +bN:function bN(){}, +aw:function aw(){}, +aX:function aX(){}, +aY:function aY(){}, +bO:function bO(){}, +bP:function bP(){}, +bQ:function bQ(){}, +bR:function bR(){}, +bS:function bS(){}, +bT:function bT(){}, +bU:function bU(){}, +b_:function b_(){}, +b0:function b0(){}, +bb:function bb(){}, +bc:function bc(){}, +bd:function bd(){}, +be:function be(){}, +f7(a,b){var s=b.c +return s==null?b.c=A.er(a,b.x,!0):s}, +em(a,b){var s=b.c +return s==null?b.c=A.bj(a,"a0",[b.x]):s}, +f8(a){var s=a.w +if(s===6||s===7||s===8)return A.f8(a.x) +return s===12||s===13}, +i4(a){return a.as}, +bt(a){return A.ck(v.typeUniverse,a,!1)}, +aa(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.aa(a1,s,a3,a4) +if(r===s)return a2 +return A.fr(a1,r,!0) +case 7:s=a2.x +r=A.aa(a1,s,a3,a4) +if(r===s)return a2 +return A.er(a1,r,!0) +case 8:s=a2.x +r=A.aa(a1,s,a3,a4) +if(r===s)return a2 +return A.fp(a1,r,!0) +case 9:q=a2.y +p=A.aD(a1,q,a3,a4) +if(p===q)return a2 +return A.bj(a1,a2.x,p) +case 10:o=a2.x +n=A.aa(a1,o,a3,a4) +m=a2.y +l=A.aD(a1,m,a3,a4) +if(n===o&&l===m)return a2 +return A.ep(a1,n,l) +case 11:k=a2.x +j=a2.y +i=A.aD(a1,j,a3,a4) +if(i===j)return a2 +return A.fq(a1,k,i) +case 12:h=a2.x +g=A.aa(a1,h,a3,a4) +f=a2.y +e=A.ju(a1,f,a3,a4) +if(g===h&&e===f)return a2 +return A.fo(a1,g,e) +case 13:d=a2.y +a4+=d.length +c=A.aD(a1,d,a3,a4) +o=a2.x +n=A.aa(a1,o,a3,a4) +if(c===d&&n===o)return a2 +return A.eq(a1,n,c,!0) +case 14:b=a2.x +if(b") +for(r=1;r=0)p+=" "+r[q];++q}return p+"})"}, +fM(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=", " +if(a5!=null){s=a5.length +if(a4==null){a4=A.h([],t.s) +r=null}else r=a4.length +q=a4.length +for(p=s;p>0;--p)a4.push("T"+(q+p)) +for(o=t.X,n=t._,m="<",l="",p=0;p0){a0+=a1+"[" +for(a1="",p=0;p0){a0+=a1+"{" +for(a1="",p=0;p "+a}, +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.jw(a.x) +o=a.y +return o.length>0?p+("<"+A.fT(o,b)+">"):p}if(m===11)return A.jo(a,b) +if(m===12)return A.fM(a,b,null) +if(m===13)return A.fM(a.x,b,a.y) +if(m===14){n=a.x +return b[b.length-1-n]}return"?"}, +jw(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +iy(a,b){var s=a.tR[b] +for(;typeof s=="string";)s=a.tR[s] +return s}, +ix(a,b){var s,r,q,p,o,n=a.eT,m=n[b] +if(m==null)return A.ck(a,b,!1) +else if(typeof m=="number"){s=m +r=A.bk(a,5,"#") +q=A.dI(s) +for(p=0;p0)p+="<"+A.bi(c)+">" +s=a.eC.get(p) +if(s!=null)return s +r=new A.H(null,null) +r.w=9 +r.x=b +r.y=c +if(c.length>0)r.c=c[0] +r.as=p +q=A.U(a,r) +a.eC.set(p,q) +return q}, +ep(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.bi(r)+">") +p=a.eC.get(q) +if(p!=null)return p +o=new A.H(null,null) +o.w=10 +o.x=s +o.y=r +o.as=q +n=A.U(a,o) +a.eC.set(q,n) +return n}, +fq(a,b,c){var s,r,q="+"+(b+"("+A.bi(c)+")"),p=a.eC.get(q) +if(p!=null)return p +s=new A.H(null,null) +s.w=11 +s.x=b +s.y=c +s.as=q +r=A.U(a,s) +a.eC.set(q,r) +return r}, +fo(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.bi(m) +if(j>0){s=l>0?",":"" +g+=s+"["+A.bi(k)+"]"}if(h>0){s=l>0?",":"" +g+=s+"{"+A.ip(i)+"}"}r=n+(g+")") +q=a.eC.get(r) +if(q!=null)return q +p=new A.H(null,null) +p.w=12 +p.x=b +p.y=c +p.as=r +o=A.U(a,p) +a.eC.set(r,o) +return o}, +eq(a,b,c,d){var s,r=b.as+("<"+A.bi(c)+">"),q=a.eC.get(r) +if(q!=null)return q +s=A.ir(a,b,c,r,d) +a.eC.set(r,s) +return s}, +ir(a,b,c,d,e){var s,r,q,p,o,n,m,l +if(e){s=c.length +r=A.dI(s) +for(q=0,p=0;p0){n=A.aa(a,b,r,0) +m=A.aD(a,c,r,0) +return A.eq(a,n,m,c!==m)}}l=new A.H(null,null) +l.w=13 +l.x=b +l.y=c +l.as=d +return A.U(a,l)}, +fk(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, +fm(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.ih(r+1,q,l,k) +else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.fl(a,r,l,k,!1) +else if(q===46)r=A.fl(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.a9(a.u,a.e,k.pop())) +break +case 94:k.push(A.iu(a.u,k.pop())) +break +case 35:k.push(A.bk(a.u,5,"#")) +break +case 64:k.push(A.bk(a.u,2,"@")) +break +case 126:k.push(A.bk(a.u,3,"~")) +break +case 60:k.push(a.p) +a.p=k.length +break +case 62:A.ij(a,k) +break +case 38:A.ii(a,k) +break +case 42:p=a.u +k.push(A.fr(p,A.a9(p,a.e,k.pop()),a.n)) +break +case 63:p=a.u +k.push(A.er(p,A.a9(p,a.e,k.pop()),a.n)) +break +case 47:p=a.u +k.push(A.fp(p,A.a9(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.ig(a,k) +break +case 91:k.push(a.p) +a.p=k.length +break +case 93:o=k.splice(a.p) +A.fn(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.il(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.a9(a.u,a.e,m)}, +ih(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}, +fl(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.iy(s,o.x)[p] +if(n==null)A.aH('No "'+p+'" in "'+A.i4(o)+'"') +d.push(A.bl(s,o,n))}else d.push(p) +return m}, +ij(a,b){var s,r=a.u,q=A.fj(a,b),p=b.pop() +if(typeof p=="string")b.push(A.bj(r,p,q)) +else{s=A.a9(r,a.e,p) +switch(s.w){case 12:b.push(A.eq(r,s,q,a.n)) +break +default:b.push(A.ep(r,s,q)) +break}}}, +ig(a,b){var s,r,q,p,o,n=null,m=a.u,l=b.pop() +if(typeof l=="number")switch(l){case-1:s=b.pop() +r=n +break +case-2:r=b.pop() +s=n +break +default:b.push(l) +r=n +s=r +break}else{b.push(l) +r=n +s=r}q=A.fj(a,b) +l=b.pop() +switch(l){case-3:l=b.pop() +if(s==null)s=m.sEA +if(r==null)r=m.sEA +p=A.a9(m,a.e,l) +o=new A.cb() +o.a=q +o.b=s +o.c=r +b.push(A.fo(m,p,o)) +return +case-4:b.push(A.fq(m,b.pop(),q)) +return +default:throw A.a(A.by("Unexpected state under `()`: "+A.i(l)))}}, +ii(a,b){var s=b.pop() +if(0===s){b.push(A.bk(a.u,1,"0&")) +return}if(1===s){b.push(A.bk(a.u,4,"1&")) +return}throw A.a(A.by("Unexpected extended operation "+A.i(s)))}, +fj(a,b){var s=b.splice(a.p) +A.fn(a.u,a.e,s) +a.p=b.pop() +return s}, +a9(a,b,c){if(typeof c=="string")return A.bj(a,c,a.sEA) +else if(typeof c=="number"){b.toString +return A.ik(a,b,c)}else return c}, +fn(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}, +H:function H(a,b){var _=this +_.a=a +_.b=b +_.r=_.f=_.d=_.c=null +_.w=0 +_.as=_.Q=_.z=_.y=_.x=null}, +cb:function cb(){this.c=this.b=this.a=null}, +dA:function dA(a){this.a=a}, +ca:function ca(){}, +bh:function bh(a){this.a=a}, +ia(){var s,r,q={} +if(self.scheduleImmediate!=null)return A.jz() +if(self.MutationObserver!=null&&self.document!=null){s=self.document.createElement("div") +r=self.document.createElement("span") +q.a=null +new self.MutationObserver(A.aF(new A.d5(q),1)).observe(s,{childList:true}) +return new A.d4(q,s,r)}else if(self.setImmediate!=null)return A.jA() +return A.jB()}, +ib(a){self.scheduleImmediate(A.aF(new A.d6(a),0))}, +ic(a){self.setImmediate(A.aF(new A.d7(a),0))}, +id(a){A.im(0,a)}, +im(a,b){var s=new A.dy() +s.bf(a,b) +return s}, +fR(a){return new A.c5(new A.v($.r,a.i("v<0>")),a.i("c5<0>"))}, +fJ(a,b){a.$2(0,null) +b.b=!0 +return b.a}, +fG(a,b){A.iU(a,b)}, +fI(a,b){b.ad(a)}, +fH(a,b){b.ae(A.ad(a),A.ao(a))}, +iU(a,b){var s,r,q=new A.dK(b),p=new A.dL(b) +if(a instanceof A.v)a.aG(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.aG(q,p,s)}}}, +fY(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.b1(new A.dY(s))}, +cp(a,b){var s=A.cn(a,"error",t.K) +return new A.bz(s,b==null?A.eN(a):b)}, +eN(a){var s +if(t.Q.b(a)){s=a.gR() +if(s!=null)return s}return B.H}, +fi(a,b){var s,r +for(;s=a.a,(s&4)!==0;)a=a.c +s|=b.a&1 +a.a=s +if((s&24)!==0){r=b.aa() +b.S(a) +A.ba(b,r)}else{r=b.c +b.aE(a) +a.a9(r)}}, +ie(a,b){var s,r,q={},p=q.a=a +for(;s=p.a,(s&4)!==0;){p=p.c +q.a=p}if((s&24)===0){r=b.c +b.aE(p) +q.a.a9(r) +return}if((s&16)===0&&b.c==null){b.S(p) +return}b.a^=2 +A.aC(null,null,b.b,new A.dd(q,b))}, +ba(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.eB(f.a,f.b)}return}s.a=b +o=b.a +for(f=b;o!=null;f=o,o=n){f.a=null +A.ba(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.eB(m.a,m.b) +return}j=$.r +if(j!==k)$.r=k +else j=null +f=f.c +if((f&15)===8)new A.dk(s,g,p).$0() +else if(q){if((f&1)!==0)new A.dj(s,m).$0()}else if((f&2)!==0)new A.di(g,s).$0() +if(j!=null)$.r=j +f=s.c +if(f instanceof A.v){r=s.a.$ti +r=r.i("a0<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.T(h) +i.a=f.a&30|i.a&1 +i.c=f.c +g.a=f +continue}else A.fi(f,i) +return}}i=s.a.b +h=i.c +i.c=null +b=i.T(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}}, +jp(a,b){if(t.C.b(a))return b.b1(a) +if(t.v.b(a))return a +throw A.a(A.eM(a,"onError",u.c))}, +jm(){var s,r +for(s=$.aB;s!=null;s=$.aB){$.bs=null +r=s.b +$.aB=r +if(r==null)$.br=null +s.a.$0()}}, +jt(){$.eA=!0 +try{A.jm()}finally{$.bs=null +$.eA=!1 +if($.aB!=null)$.eL().$1(A.h_())}}, +fV(a){var s=new A.c6(a),r=$.br +if(r==null){$.aB=$.br=s +if(!$.eA)$.eL().$1(A.h_())}else $.br=r.b=s}, +js(a){var s,r,q,p=$.aB +if(p==null){A.fV(a) +$.bs=$.br +return}s=new A.c6(a) +r=$.bs +if(r==null){s.b=p +$.aB=$.bs=s}else{q=r.b +s.b=q +$.bs=r.b=s +if(q==null)$.br=s}}, +k_(a){var s=null,r=$.r +if(B.d===r){A.aC(s,s,B.d,a) +return}A.aC(s,s,r,r.aJ(a))}, +ka(a){A.cn(a,"stream",t.K) +return new A.ci()}, +eB(a,b){A.js(new A.dW(a,b))}, +fS(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}}, +jr(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}}, +jq(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}}, +aC(a,b,c,d){if(B.d!==c)d=c.aJ(d) +A.fV(d)}, +d5:function d5(a){this.a=a}, +d4:function d4(a,b,c){this.a=a +this.b=b +this.c=c}, +d6:function d6(a){this.a=a}, +d7:function d7(a){this.a=a}, +dy:function dy(){}, +dz:function dz(a,b){this.a=a +this.b=b}, +c5:function c5(a,b){this.a=a +this.b=!1 +this.$ti=b}, +dK:function dK(a){this.a=a}, +dL:function dL(a){this.a=a}, +dY:function dY(a){this.a=a}, +bz:function bz(a,b){this.a=a +this.b=b}, +c7:function c7(){}, +b7:function b7(a,b){this.a=a +this.$ti=b}, +az:function az(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}, +da:function da(a,b){this.a=a +this.b=b}, +dh:function dh(a,b){this.a=a +this.b=b}, +de:function de(a){this.a=a}, +df:function df(a){this.a=a}, +dg:function dg(a,b,c){this.a=a +this.b=b +this.c=c}, +dd:function dd(a,b){this.a=a +this.b=b}, +dc:function dc(a,b){this.a=a +this.b=b}, +db:function db(a,b,c){this.a=a +this.b=b +this.c=c}, +dk:function dk(a,b,c){this.a=a +this.b=b +this.c=c}, +dl:function dl(a){this.a=a}, +dj:function dj(a,b){this.a=a +this.b=b}, +di:function di(a,b){this.a=a +this.b=b}, +c6:function c6(a){this.a=a +this.b=null}, +ci:function ci(){}, +dJ:function dJ(){}, +dW:function dW(a,b){this.a=a +this.b=b}, +dq:function dq(){}, +dr:function dr(a,b){this.a=a +this.b=b}, +f_(a,b,c){return A.jH(a,new A.N(b.i("@<0>").A(c).i("N<1,2>")))}, +ej(a,b){return new A.N(a.i("@<0>").A(b).i("N<1,2>"))}, +ek(a){var s,r={} +if(A.eI(a))return"{...}" +s=new A.y("") +try{$.ap.push(a) +s.a+="{" +r.a=!0 +a.C(0,new A.cK(r,s)) +s.a+="}"}finally{$.ap.pop()}r=s.a +return r.charCodeAt(0)==0?r:r}, +e:function e(){}, +P:function P(){}, +cK:function cK(a,b){this.a=a +this.b=b}, +cl:function cl(){}, +aW:function aW(){}, +a7:function a7(a,b){this.a=a +this.$ti=b}, +bm:function bm(){}, +jn(a,b){var s,r,q,p=null +try{p=JSON.parse(a)}catch(r){s=A.ad(r) +q=A.z(String(s),null,null) +throw A.a(q)}q=A.dM(p) +return q}, +dM(a){var s +if(a==null)return null +if(typeof a!="object")return a +if(!Array.isArray(a))return new A.cc(a,Object.create(null)) +for(s=0;s")) +for(s=J.L(a);s.m();)r.push(s.gp()) +if(b)return r +return J.eg(r)}, +bL(a,b,c){var s=A.hT(a,c) +return s}, +hT(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.L(a);r.m();)s.push(r.gp()) +return s}, +fb(a,b,c){var s,r +A.f5(b,"start") +if(c!=null){s=c-b +if(s<0)throw A.a(A.G(c,b,null,"end",null)) +if(s===0)return""}r=A.i5(a,b,c) +return r}, +i5(a,b,c){var s=a.length +if(b>=s)return"" +return A.i2(a,b,c==null||c>s?s:c)}, +f6(a,b){return new A.cE(a,A.eZ(a,!1,b,!1,!1,!1))}, +fa(a,b,c){var s=J.L(b) +if(!s.m())return a +if(c.length===0){do a+=A.i(s.gp()) +while(s.m())}else{a+=A.i(s.gp()) +for(;s.m();)a=a+c+A.i(s.gp())}return a}, +f1(a,b){return new A.bV(a,b.gbN(),b.gbQ(),b.gbO())}, +fz(a,b,c,d){var s,r,q,p,o,n="0123456789ABCDEF" +if(c===B.e){s=$.hk() +s=s.b.test(b)}else s=!1 +if(s)return b +r=B.G.I(b) +for(s=r.length,q=0,p="";q>>4]&1<<(o&15))!==0)p+=A.Q(o) +else p=d&&o===32?p+"+":p+"%"+n[o>>>4&15]+n[o&15]}return p.charCodeAt(0)==0?p:p}, +iG(a){var s,r,q +if(!$.hl())return A.iH(a) +s=new URLSearchParams() +a.C(0,new A.dD(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":"~")}, +at(a){if(typeof a=="number"||A.ez(a)||a==null)return J.aq(a) +if(typeof a=="string")return JSON.stringify(a) +return A.f4(a)}, +hH(a,b){A.cn(a,"error",t.K) +A.cn(b,"stackTrace",t.l) +A.hG(a,b)}, +by(a){return new A.bx(a)}, +a_(a,b){return new A.K(!1,null,b,a)}, +eM(a,b,c){return new A.K(!0,a,b,c)}, +i3(a,b){return new A.b2(null,null,!0,a,b,"Value not in range")}, +G(a,b,c,d,e){return new A.b2(b,c,!0,a,d,"Invalid value")}, +b3(a,b,c){if(0>a||a>c)throw A.a(A.G(a,0,c,"start",null)) +if(b!=null){if(a>b||b>c)throw A.a(A.G(b,a,c,"end",null)) +return b}return c}, +f5(a,b){if(a<0)throw A.a(A.G(a,0,null,b,null)) +return a}, +eU(a,b,c,d){return new A.bF(b,!0,a,d,"Index out of range")}, +T(a){return new A.c2(a)}, +fd(a){return new A.c_(a)}, +f9(a){return new A.b5(a)}, +as(a){return new A.bD(a)}, +z(a,b,c){return new A.cw(a,b,c)}, +hO(a,b,c){var s,r +if(A.eI(a)){if(b==="("&&c===")")return"(...)" +return b+"..."+c}s=A.h([],t.s) +$.ap.push(a) +try{A.jk(a,s)}finally{$.ap.pop()}r=A.fa(b,s,", ")+c +return r.charCodeAt(0)==0?r:r}, +eW(a,b,c){var s,r +if(A.eI(a))return b+"..."+c +s=new A.y(b) +$.ap.push(a) +try{r=s +r.a=A.fa(r.a,a,", ")}finally{$.ap.pop()}s.a+=c +r=s.a +return r.charCodeAt(0)==0?r:r}, +jk(a,b){var s,r,q,p,o,n,m,l=a.gB(a),k=0,j=0 +while(!0){if(!(k<80||j<3))break +if(!l.m())return +s=A.i(l.gp()) +b.push(s) +k+=s.length+2;++j}if(!l.m()){if(j<=5)return +r=b.pop() +q=b.pop()}else{p=l.gp();++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.gp();++j +for(;l.m();p=o,o=n){n=l.gp();++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)}, +hY(a,b,c,d){var s +if(B.i===c){s=B.c.gn(a) +b=J.Z(b) +return A.en(A.a6(A.a6($.ee(),s),b))}if(B.i===d){s=B.c.gn(a) +b=J.Z(b) +c=J.Z(c) +return A.en(A.a6(A.a6(A.a6($.ee(),s),b),c))}s=B.c.gn(a) +b=J.Z(b) +c=J.Z(c) +d=J.Z(d) +d=A.en(A.a6(A.a6(A.a6(A.a6($.ee(),s),b),c),d)) +return d}, +c4(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.fe(a4=14)r[7]=a4 +q=r[1] +if(q>=0)if(A.fU(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){j=a3 +k=!1}else{i=o>0 +if(i&&o+1===n){j=a3 +k=!1}else{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){j=a3 +k=!1}else{if(!(mn+2&&B.a.v(a5,"/..",m-3) +else h=!0 +if(h)j=a3 +else 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) +q-=0 +i=s-0 +m+=i +l+=i +a4=a5.length +p=7 +o=7 +n=7}else if(n===m){++l +f=m+1 +a5=B.a.J(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.J(a5,o,n,"") +a4-=3 +n=e}j="http"}else j=a3 +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.J(a5,o,n,"") +a4-=3 +n=e}j="https"}else j=a3 +k=!h}}}else j=a3 +if(k){if(a40)j=A.iI(a5,0,q) +else{if(q===0)A.aA(a5,0,"Invalid empty scheme") +j=""}if(p>0){d=q+3 +c=d9)k.$2("invalid character",s)}else{if(q===3)k.$2(m,s) +o=A.e8(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.e8(B.a.j(a,r,c),null) +if(o>255)k.$2(l,r) +j[q]=o +return j}, +ff(a,b,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null,d=new A.cY(a),c=new A.cZ(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.y("") +if(r>>4]&1<<(o&15))!==0){if(p&&65<=o&&90>=o){if(q==null)q=new A.y("") +if(r>>4]&1<<(o&15))!==0)A.aA(a,s,"Invalid character") +else{if((o&64512)===55296&&s+1>>4]&1<<(q&15))!==0))A.aA(a,s,"Illegal scheme character") +if(65<=q&&q<=90)r=!0}a=B.a.j(a,b,c) +return A.iz(r?a.toLowerCase():a)}, +iz(a){if(a==="http")return"http" +if(a==="file")return"file" +if(a==="https")return"https" +if(a==="package")return"package" +return a}, +iJ(a,b,c){return A.bo(a,b,c,B.a8,!1,!1)}, +iE(a,b,c,d,e,f){var s,r=e==="file",q=r||f +if(a==null)return r?"/":"" +else s=A.bo(a,b,c,B.p,!0,!0) +if(s.length===0){if(r)return"/"}else if(q&&!B.a.u(s,"/"))s="/"+s +return A.iK(s,e,f)}, +iK(a,b,c){var s=b.length===0 +if(s&&!c&&!B.a.u(a,"/")&&!B.a.u(a,"\\"))return A.iM(a,!s||c) +return A.iN(a)}, +eu(a,b,c,d){if(a!=null){if(d!=null)throw A.a(A.a_("Both query and queryParameters specified",null)) +return A.bo(a,b,c,B.f,!0,!1)}if(d==null)return null +return A.iG(d)}, +iH(a){var s={},r=new A.y("") +s.a="" +a.C(0,new A.dB(new A.dC(s,r))) +s=r.a +return s.charCodeAt(0)==0?s:s}, +iC(a,b,c){return A.bo(a,b,c,B.f,!0,!1)}, +ev(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.e0(s) +p=A.e0(r) +if(q<0||p<0)return"%" +o=q*16+p +if(o<127&&(B.h[B.c.U(o,4)]&1<<(o&15))!==0)return A.Q(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}, +et(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.bv(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.fb(s,0,null)}, +bo(a,b,c,d,e,f){var s=A.fx(a,b,c,d,e,f) +return s==null?B.a.j(a,b,c):s}, +fx(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{if(o===37){n=A.ev(a,r,!1) +if(n==null){r+=3 +continue}if("%"===n){n="%25" +m=1}else m=3}else if(o===92&&f){n="/" +m=1}else if(s&&o<=93&&(B.r[o>>>4]&1<<(o&15))!==0){A.aA(a,r,"Invalid character") +m=i +n=m}else{if((o&64512)===55296){l=r+1 +if(l=2&&A.fv(a.charCodeAt(0)))for(s=1;s127||(B.o[r>>>4]&1<<(r&15))===0)break}return a}, +iB(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.a_("Invalid URL encoding",null))}}return s}, +ew(a,b,c,d,e){var s,r,q,p,o=b +while(!0){if(!(o127)throw A.a(A.a_("Illegal percent encoding in URI",null)) +if(r===37){if(o+3>q)throw A.a(A.a_("Truncated URI",null)) +p.push(A.iB(a,o+1)) +o+=2}else if(r===43)p.push(32) +else p.push(r)}}return B.ap.I(p)}, +fv(a){var s=a|32 +return 97<=s&&s<=122}, +fe(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.z(k,a,r)) +for(;p!==44;){j.push(r);++r +for(o=-1;r=0)j.push(o) +else{n=B.b.gZ(j) +if(p!==44||r!==n+7||!B.a.v(a,"base64",n+1))throw A.a(A.z("Expecting '='",a,r)) +break}}j.push(r) +m=r+1 +if((j.length&1)===1)a=B.x.bP(a,m,s) +else{l=A.fx(a,m,s,B.f,!0,!1) +if(l!=null)a=B.a.J(a,m,s,l)}return new A.cW(a,j,c)}, +iZ(){var s,r,q,p,o,n="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-._~!$&'()*+,;=",m=".",l=":",k="/",j="\\",i="?",h="#",g="/\\",f=J.eX(22,t.D) +for(s=0;s<22;++s)f[s]=new Uint8Array(96) +r=new A.dP(f) +q=new A.dQ() +p=new A.dR() +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}, +fU(a,b,c,d,e){var s,r,q,p,o=$.hp() +for(s=b;s95?31:q] +d=p&31 +e[p>>>5]=s}return d}, +cM:function cM(a,b){this.a=a +this.b=b}, +dD:function dD(a){this.a=a}, +d8:function d8(){}, +k:function k(){}, +bx:function bx(a){this.a=a}, +R:function R(){}, +K:function K(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b2:function b2(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.a=c +_.b=d +_.c=e +_.d=f}, +bF:function bF(a,b,c,d,e){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e}, +bV:function bV(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +c2:function c2(a){this.a=a}, +c_:function c_(a){this.a=a}, +b5:function b5(a){this.a=a}, +bD:function bD(a){this.a=a}, +bW:function bW(){}, +b4:function b4(){}, +d9:function d9(a){this.a=a}, +cw:function cw(a,b,c){this.a=a +this.b=b +this.c=c}, +n:function n(){}, +u:function u(){}, +l:function l(){}, +cj:function cj(){}, +y:function y(a){this.a=a}, +d_:function d_(a){this.a=a}, +cX:function cX(a){this.a=a}, +cY:function cY(a){this.a=a}, +cZ:function cZ(a,b){this.a=a +this.b=b}, +bn:function bn(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=$}, +dC:function dC(a,b){this.a=a +this.b=b}, +dB:function dB(a){this.a=a}, +cW:function cW(a,b,c){this.a=a +this.b=b +this.c=c}, +dP:function dP(a){this.a=a}, +dQ:function dQ(){}, +dR:function dR(){}, +ch:function ch(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}, +c9:function c9(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=$}, +iX(a){var s,r=a.$dart_jsFunction +if(r!=null)return r +s=function(b,c){return function(){return b(c,Array.prototype.slice.apply(arguments))}}(A.iV,a) +s[$.eK()]=a +a.$dart_jsFunction=s +return s}, +iV(a,b){return A.i0(a,b,null)}, +ab(a){if(typeof a=="function")return a +else return A.iX(a)}, +eb(a,b){var s=new A.v($.r,b.i("v<0>")),r=new A.b7(s,b.i("b7<0>")) +a.then(A.aF(new A.ec(r),1),A.aF(new A.ed(r),1)) +return s}, +ec:function ec(a){this.a=a}, +ed:function ed(a){this.a=a}, +cN:function cN(a){this.a=a}, +m:function m(a,b){this.a=a +this.b=b}, +hK(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.cu(A.fF(s.k(0,"name")),B.q[A.fD(s.k(0,"kind"))],A.fF(s.k(0,"href")))}else r=null +q=a.k(0,"name") +p=a.k(0,"qualifiedName") +o=A.fE(a.k(0,"packageRank")) +if(o==null)o=0 +n=a.k(0,"href") +m=B.q[A.fD(a.k(0,"kind"))] +l=A.fE(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}, +cz:function cz(a){this.a=a}, +cC:function cC(a,b){this.a=a +this.b=b}, +cA:function cA(){}, +cB:function cB(){}, +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}, +cu:function cu(a,b,c){this.a=a +this.b=b +this.c=c}, +jM(){var s=self,r=s.document.getElementById("search-box"),q=s.document.getElementById("search-body"),p=s.document.getElementById("search-sidebar") +A.eb(s.window.fetch($.bw()+"index.json"),t.m).aq(new A.e5(new A.e6(r,q,p),r,q,p),t.P)}, +eo(a){var s=A.h([],t.O),r=A.h([],t.M) +return new A.ds(a,A.c4(self.window.location.href),s,r)}, +iY(a,b){var s,r,q,p,o,n,m,l,k=self,j=k.document.createElement("div"),i=b.e +if(i==null)i="" +j.setAttribute("data-href",i) +j.classList.add("tt-suggestion") +s=k.document.createElement("span") +s.classList.add("tt-suggestion-title") +s.innerHTML=A.ex(b.a+" "+b.d.h(0).toLowerCase(),a) +j.appendChild(s) +r=b.w +i=r!=null +if(i){q=k.document.createElement("span") +q.classList.add("tt-suggestion-container") +q.innerHTML="(in "+A.ex(r.a,a)+")" +j.appendChild(q)}p=b.r +if(p!=null&&p.length!==0){o=k.document.createElement("blockquote") +o.classList.add("one-line-description") +q=k.document.createElement("textarea") +q.innerHTML=p +o.setAttribute("title",q.value) +o.innerHTML=A.ex(p,a) +j.appendChild(o)}q=t.g +j.addEventListener("mousedown",q.a(A.ab(new A.dN()))) +j.addEventListener("click",q.a(A.ab(new A.dO(b)))) +if(i){i=r.a +q=r.b.h(0) +n=r.c +m=k.document.createElement("div") +m.classList.add("tt-container") +l=k.document.createElement("p") +l.textContent="Results from " +l.classList.add("tt-container-text") +k=k.document.createElement("a") +k.setAttribute("href",n) +k.innerHTML=i+" "+q +l.appendChild(k) +m.appendChild(l) +A.jl(m,j)}return j}, +jl(a,b){var s,r=a.innerHTML +if(r.length===0)return +s=$.bq.k(0,r) +if(s!=null)s.appendChild(b) +else{a.appendChild(b) +$.bq.q(0,r,a)}}, +ex(a,b){return A.k2(a,A.f6(b,!1),new A.dS(),null)}, +dT:function dT(){}, +e6:function e6(a,b,c){this.a=a +this.b=b +this.c=c}, +e5:function e5(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ds:function ds(a,b,c,d){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=$ +_.f=null +_.r="" +_.w=c +_.x=d +_.y=-1}, +dt:function dt(a){this.a=a}, +du:function du(a,b){this.a=a +this.b=b}, +dv:function dv(a,b){this.a=a +this.b=b}, +dw:function dw(a,b){this.a=a +this.b=b}, +dx:function dx(a,b){this.a=a +this.b=b}, +dN:function dN(){}, +dO:function dO(a){this.a=a}, +dS:function dS(){}, +j5(){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=t.g.a(A.ab(new A.dU(q,p))) +if(p!=null)p.addEventListener("click",o) +if(r!=null)r.addEventListener("click",o)}, +j4(){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.fQ(q,p.getAttribute("data-above-sidebar"),o.document.getElementById("dartdoc-sidebar-left-content")) +A.fQ(q,p.getAttribute("data-below-sidebar"),o.document.getElementById("dartdoc-sidebar-right"))}, +fQ(a,b,c){if(b==null||b.length===0||c==null)return +A.eb(self.window.fetch(a+A.i(b)),t.m).aq(new A.dV(c,a),t.P)}, +fX(a,b){var s,r,q,p +if(b.nodeName.toLowerCase()==="a"){s=b.getAttribute("href") +if(s!=null)if(!A.c4(s).gaX())b.href=a+s}r=b.childNodes +for(q=0;q").A(b).i("M<1,2>"))}, +ac(a,b){if(!!a.fixed$length)A.aH(A.T("add")) +a.push(b)}, +aI(a,b){var s +if(!!a.fixed$length)A.aH(A.T("addAll")) +if(Array.isArray(b)){this.bg(a,b) +return}for(s=J.L(b);s.m();)a.push(s.gp())}, +bg(a,b){var s,r=b.length +if(r===0)return +if(a===b)throw A.a(A.as(a)) +for(s=0;ss)throw A.a(A.G(b,0,s,"start",null)) +if(cs)throw A.a(A.G(c,b,s,"end",null)) +if(b===c)return A.h([],A.al(a)) +return A.h(a.slice(b,c),A.al(a))}, +gbF(a){if(a.length>0)return a[0] +throw A.a(A.eV())}, +gZ(a){var s=a.length +if(s>0)return a[s-1] +throw A.a(A.eV())}, +bc(a,b){var s,r,q,p,o +if(!!a.immutable$list)A.aH(A.T("sort")) +s=a.length +if(s<2)return +if(b==null)b=J.j9() +if(s===2){r=a[0] +q=a[1] +if(b.$2(r,q)>0){a[0]=q +a[1]=r}return}if(A.al(a).c.b(null)){for(p=0,o=0;o0)this.bt(a,p)}, +bt(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.eW(a,"[","]")}, +gB(a){return new J.ar(a,a.length,A.al(a).i("ar<1>"))}, +gn(a){return A.bY(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.aR.prototype={ +aL(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}, +gn(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}, +a0(a,b){var s=a%b +if(s===0)return 0 +if(s>0)return s +return s+b}, +bw(a,b){return(a|0)===a?a/b|0:this.bx(a,b)}, +bx(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.T("Result of truncating division is "+A.i(s)+": "+A.i(a)+" ~/ "+b))}, +U(a,b){var s +if(a>0)s=this.aF(a,b) +else{s=b>31?31:b +s=a>>s>>>0}return s}, +bv(a,b){if(0>b)throw A.a(A.jy(b)) +return this.aF(a,b)}, +aF(a,b){return b>31?0:a>>>b}, +gt(a){return A.am(t.H)}, +$it:1} +J.aP.prototype={ +gt(a){return A.am(t.S)}, +$ij:1, +$ib:1} +J.bI.prototype={ +gt(a){return A.am(t.i)}, +$ij:1} +J.ah.prototype={ +b6(a,b){return a+b}, +J(a,b,c,d){var s=A.b3(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.G(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.b3(b,c,a.length))}, +K(a,b){return this.j(a,b,null)}, +b9(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.F) +for(s=a,r="";!0;){if((b&1)===1)r=s+r +b=b>>>1 +if(b===0)break +s+=s}return r}, +Y(a,b,c){var s +if(c<0||c>a.length)throw A.a(A.G(c,0,a.length,null,null)) +s=a.indexOf(b,c) +return s}, +aU(a,b){return this.Y(a,b,0)}, +af(a,b){return A.k1(a,b,0)}, +aL(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.am(t.N)}, +gl(a){return a.length}, +$ij:1, +$id:1} +A.a8.prototype={ +gB(a){var s=A.E(this) +return new A.bA(J.L(this.gN()),s.i("@<1>").A(s.y[1]).i("bA<1,2>"))}, +gl(a){return J.aI(this.gN())}, +E(a,b){return A.E(this).y[1].a(J.ef(this.gN(),b))}, +h(a){return J.aq(this.gN())}} +A.bA.prototype={ +m(){return this.a.m()}, +gp(){return this.$ti.y[1].a(this.a.gp())}} +A.ae.prototype={ +gN(){return this.a}} +A.b9.prototype={$ic:1} +A.b8.prototype={ +k(a,b){return this.$ti.y[1].a(J.hq(this.a,b))}, +q(a,b,c){J.hr(this.a,b,this.$ti.c.a(c))}, +$ic:1, +$if:1} +A.M.prototype={ +W(a,b){return new A.M(this.a,this.$ti.i("@<1>").A(b).i("M<1,2>"))}, +gN(){return this.a}} +A.aV.prototype={ +h(a){return"LateInitializationError: "+this.a}} +A.bB.prototype={ +gl(a){return this.a.length}, +k(a,b){return this.a.charCodeAt(b)}} +A.cR.prototype={} +A.c.prototype={} +A.I.prototype={ +gB(a){var s=this +return new A.au(s,s.gl(s),A.E(s).i("au"))}} +A.au.prototype={ +gp(){var s=this.d +return s==null?this.$ti.c.a(s):s}, +m(){var s,r=this,q=r.a,p=J.an(q),o=p.gl(q) +if(r.b!==o)throw A.a(A.as(q)) +s=r.c +if(s>=o){r.d=null +return!1}r.d=p.E(q,s);++r.c +return!0}} +A.ai.prototype={ +gB(a){var s=A.E(this) +return new A.av(J.L(this.a),this.b,s.i("@<1>").A(s.y[1]).i("av<1,2>"))}, +gl(a){return J.aI(this.a)}, +E(a,b){return this.b.$1(J.ef(this.a,b))}} +A.aM.prototype={$ic:1} +A.av.prototype={ +m(){var s=this,r=s.b +if(r.m()){s.a=s.c.$1(r.gp()) +return!0}s.a=null +return!1}, +gp(){var s=this.a +return s==null?this.$ti.y[1].a(s):s}} +A.aj.prototype={ +gl(a){return J.aI(this.a)}, +E(a,b){return this.b.$1(J.ef(this.a,b))}} +A.aO.prototype={} +A.c1.prototype={ +q(a,b,c){throw A.a(A.T("Cannot modify an unmodifiable list"))}} +A.ay.prototype={} +A.a5.prototype={ +gn(a){var s=this._hashCode +if(s!=null)return s +s=664597*B.a.gn(this.a)&536870911 +this._hashCode=s +return s}, +h(a){return'Symbol("'+this.a+'")'}, +F(a,b){if(b==null)return!1 +return b instanceof A.a5&&this.a===b.a}, +$ib6:1} +A.bp.prototype={} +A.cg.prototype={$r:"+item,matchPosition(1,2)",$s:1} +A.aL.prototype={} +A.aK.prototype={ +h(a){return A.ek(this)}, +q(a,b,c){A.hF()}, +$ix:1} +A.ag.prototype={ +gl(a){return this.b.length}, +gbq(){var s=this.$keys +if(s==null){s=Object.keys(this.a) +this.$keys=s}return s}, +H(a){if("__proto__"===a)return!1 +return this.a.hasOwnProperty(a)}, +k(a,b){if(!this.H(b))return null +return this.b[this.a[b]]}, +C(a,b){var s,r,q=this.gbq(),p=this.b +for(s=q.length,r=0;r>>0}, +h(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.cQ(this.a)+"'")}} +A.c8.prototype={ +h(a){return"Reading static variable '"+this.a+"' during its initialization"}} +A.bZ.prototype={ +h(a){return"RuntimeError: "+this.a}} +A.dp.prototype={} +A.N.prototype={ +gl(a){return this.a}, +gO(){return new A.O(this,A.E(this).i("O<1>"))}, +gb5(){var s=A.E(this) +return A.hV(new A.O(this,s.i("O<1>")),new A.cG(this),s.c,s.y[1])}, +H(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.bL(b)}, +bL(a){var s,r,q=this.d +if(q==null)return null +s=q[this.aV(a)] +r=this.aW(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.a7():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=m.c +m.au(r==null?m.c=m.a7():r,b,c)}else{q=m.d +if(q==null)q=m.d=m.a7() +p=m.aV(b) +o=q[p] +if(o==null)q[p]=[m.a8(b,c)] +else{n=m.aW(o,b) +if(n>=0)o[n].b=c +else o.push(m.a8(b,c))}}}, +X(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=s.f=null +s.a=0 +s.aC()}}, +C(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.as(s)) +r=r.c}}, +au(a,b,c){var s=a[b] +if(s==null)a[b]=this.a8(b,c) +else s.b=c}, +aC(){this.r=this.r+1&1073741823}, +a8(a,b){var s=this,r=new A.cJ(a,b) +if(s.e==null)s.e=s.f=r +else s.f=s.f.c=r;++s.a +s.aC() +return r}, +aV(a){return J.Z(a)&1073741823}, +aW(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"]=s +delete s[""] +return s}} +A.cG.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.cJ.prototype={} +A.O.prototype={ +gl(a){return this.a.a}, +gB(a){var s=this.a,r=new A.bK(s,s.r) +r.c=s.e +return r}} +A.bK.prototype={ +gp(){return this.d}, +m(){var s,r=this,q=r.a +if(r.b!==q.r)throw A.a(A.as(q)) +s=r.c +if(s==null){r.d=null +return!1}else{r.d=s.a +r.c=s.c +return!0}}} +A.e1.prototype={ +$1(a){return this.a(a)}, +$S:10} +A.e2.prototype={ +$2(a,b){return this.a(a,b)}, +$S:11} +A.e3.prototype={ +$1(a){return this.a(a)}, +$S:12} +A.bf.prototype={ +h(a){return this.aH(!1)}, +aH(a){var s,r,q,p,o,n=this.bo(),m=this.aB(),l=(a?""+"Record ":"")+"(" +for(s=n.length,r="",q=0;q0;){--q;--s +j[q]=r[s]}}return J.eY(A.hU(j,!1,k))}} +A.cf.prototype={ +aB(){return[this.a,this.b]}, +F(a,b){if(b==null)return!1 +return b instanceof A.cf&&this.$s===b.$s&&J.F(this.a,b.a)&&J.F(this.b,b.b)}, +gn(a){return A.hY(this.$s,this.a,this.b,B.i)}} +A.cE.prototype={ +h(a){return"RegExp/"+this.a+"/"+this.b.flags}, +gbr(){var s=this,r=s.c +if(r!=null)return r +r=s.b +return s.c=A.eZ(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,!0)}, +bn(a,b){var s,r=this.gbr() +r.lastIndex=b +s=r.exec(a) +if(s==null)return null +return new A.ce(s)}} +A.ce.prototype={ +gbD(){var s=this.b +return s.index+s[0].length}, +k(a,b){return this.b[b]}, +$icL:1, +$iel:1} +A.d3.prototype={ +gp(){var s=this.d +return s==null?t.F.a(s):s}, +m(){var s,r,q,p,o,n=this,m=n.b +if(m==null)return!1 +s=n.c +r=m.length +if(s<=r){q=n.a +p=q.bn(m,s) +if(p!=null){n.d=p +o=p.gbD() +if(p.b.index===o){if(q.b.unicode){s=n.c +q=s+1 +if(q=55296&&s<=56319){s=m.charCodeAt(q) +s=s>=56320&&s<=57343}else s=!1}else s=!1}else s=!1 +o=(s?o+1:o)+1}n.c=o +return!0}}n.b=n.d=null +return!1}} +A.bM.prototype={ +gt(a){return B.ad}, +$ij:1} +A.aZ.prototype={} +A.bN.prototype={ +gt(a){return B.ae}, +$ij:1} +A.aw.prototype={ +gl(a){return a.length}, +$iD:1} +A.aX.prototype={ +k(a,b){A.V(b,a,a.length) +return a[b]}, +q(a,b,c){A.V(b,a,a.length) +a[b]=c}, +$ic:1, +$if:1} +A.aY.prototype={ +q(a,b,c){A.V(b,a,a.length) +a[b]=c}, +$ic:1, +$if:1} +A.bO.prototype={ +gt(a){return B.af}, +$ij:1} +A.bP.prototype={ +gt(a){return B.ag}, +$ij:1} +A.bQ.prototype={ +gt(a){return B.ah}, +k(a,b){A.V(b,a,a.length) +return a[b]}, +$ij:1} +A.bR.prototype={ +gt(a){return B.ai}, +k(a,b){A.V(b,a,a.length) +return a[b]}, +$ij:1} +A.bS.prototype={ +gt(a){return B.aj}, +k(a,b){A.V(b,a,a.length) +return a[b]}, +$ij:1} +A.bT.prototype={ +gt(a){return B.al}, +k(a,b){A.V(b,a,a.length) +return a[b]}, +$ij:1} +A.bU.prototype={ +gt(a){return B.am}, +k(a,b){A.V(b,a,a.length) +return a[b]}, +$ij:1} +A.b_.prototype={ +gt(a){return B.an}, +gl(a){return a.length}, +k(a,b){A.V(b,a,a.length) +return a[b]}, +$ij:1} +A.b0.prototype={ +gt(a){return B.ao}, +gl(a){return a.length}, +k(a,b){A.V(b,a,a.length) +return a[b]}, +$ij:1, +$iak:1} +A.bb.prototype={} +A.bc.prototype={} +A.bd.prototype={} +A.be.prototype={} +A.H.prototype={ +i(a){return A.bl(v.typeUniverse,this,a)}, +A(a){return A.fs(v.typeUniverse,this,a)}} +A.cb.prototype={} +A.dA.prototype={ +h(a){return A.C(this.a,null)}} +A.ca.prototype={ +h(a){return this.a}} +A.bh.prototype={$iR:1} +A.d5.prototype={ +$1(a){var s=this.a,r=s.a +s.a=null +r.$0()}, +$S:5} +A.d4.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.d6.prototype={ +$0(){this.a.$0()}, +$S:6} +A.d7.prototype={ +$0(){this.a.$0()}, +$S:6} +A.dy.prototype={ +bf(a,b){if(self.setTimeout!=null)self.setTimeout(A.aF(new A.dz(this,b),0),a) +else throw A.a(A.T("`setTimeout()` not found."))}} +A.dz.prototype={ +$0(){this.b.$0()}, +$S:0} +A.c5.prototype={ +ad(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("a0<1>").b(a))s.az(a) +else s.a3(a)}}, +ae(a,b){var s=this.a +if(this.b)s.L(a,b) +else s.aw(a,b)}} +A.dK.prototype={ +$1(a){return this.a.$2(0,a)}, +$S:3} +A.dL.prototype={ +$2(a,b){this.a.$2(1,new A.aN(a,b))}, +$S:14} +A.dY.prototype={ +$2(a,b){this.a(a,b)}, +$S:15} +A.bz.prototype={ +h(a){return A.i(this.a)}, +$ik:1, +gR(){return this.b}} +A.c7.prototype={ +ae(a,b){var s +A.cn(a,"error",t.K) +s=this.a +if((s.a&30)!==0)throw A.a(A.f9("Future already completed")) +if(b==null)b=A.eN(a) +s.aw(a,b)}, +aM(a){return this.ae(a,null)}} +A.b7.prototype={ +ad(a){var s=this.a +if((s.a&30)!==0)throw A.a(A.f9("Future already completed")) +s.av(a)}} +A.az.prototype={ +bM(a){if((this.c&15)!==6)return!0 +return this.b.b.ap(this.d,a.a)}, +bI(a){var s,r=this.e,q=null,p=a.a,o=this.b.b +if(t.C.b(r))q=o.bU(r,p,a.b) +else q=o.ap(r,p) +try{p=q +return p}catch(s){if(t.c.b(A.ad(s))){if((this.c&1)!==0)throw A.a(A.a_("The error handler of Future.then must return a value of the returned future's type","onError")) +throw A.a(A.a_("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} +A.v.prototype={ +aE(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.eM(b,"onError",u.c))}else if(b!=null)b=A.jp(b,q) +s=new A.v(q,c.i("v<0>")) +r=b==null?1:3 +this.a2(new A.az(s,r,a,b,this.$ti.i("@<1>").A(c).i("az<1,2>"))) +return s}, +aq(a,b){return this.ar(a,null,b)}, +aG(a,b,c){var s=new A.v($.r,c.i("v<0>")) +this.a2(new A.az(s,19,a,b,this.$ti.i("@<1>").A(c).i("az<1,2>"))) +return s}, +bu(a){this.a=this.a&1|16 +this.c=a}, +S(a){this.a=a.a&30|this.a&1 +this.c=a.c}, +a2(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.a2(a) +return}s.S(r)}A.aC(null,null,s.b,new A.da(s,a))}}, +a9(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.a9(a) +return}n.S(s)}m.a=n.T(a) +A.aC(null,null,n.b,new A.dh(m,n))}}, +aa(){var s=this.c +this.c=null +return this.T(s)}, +T(a){var s,r,q +for(s=a,r=null;s!=null;r=s,s=q){q=s.a +s.a=r}return r}, +bi(a){var s,r,q,p=this +p.a^=2 +try{a.ar(new A.de(p),new A.df(p),t.P)}catch(q){s=A.ad(q) +r=A.ao(q) +A.k_(new A.dg(p,s,r))}}, +a3(a){var s=this,r=s.aa() +s.a=8 +s.c=a +A.ba(s,r)}, +L(a,b){var s=this.aa() +this.bu(A.cp(a,b)) +A.ba(this,s)}, +av(a){if(this.$ti.i("a0<1>").b(a)){this.az(a) +return}this.bh(a)}, +bh(a){this.a^=2 +A.aC(null,null,this.b,new A.dc(this,a))}, +az(a){if(this.$ti.b(a)){A.ie(a,this) +return}this.bi(a)}, +aw(a,b){this.a^=2 +A.aC(null,null,this.b,new A.db(this,a,b))}, +$ia0:1} +A.da.prototype={ +$0(){A.ba(this.a,this.b)}, +$S:0} +A.dh.prototype={ +$0(){A.ba(this.b,this.a.a)}, +$S:0} +A.de.prototype={ +$1(a){var s,r,q,p=this.a +p.a^=2 +try{p.a3(p.$ti.c.a(a))}catch(q){s=A.ad(q) +r=A.ao(q) +p.L(s,r)}}, +$S:5} +A.df.prototype={ +$2(a,b){this.a.L(a,b)}, +$S:16} +A.dg.prototype={ +$0(){this.a.L(this.b,this.c)}, +$S:0} +A.dd.prototype={ +$0(){A.fi(this.a.a,this.b)}, +$S:0} +A.dc.prototype={ +$0(){this.a.a3(this.b)}, +$S:0} +A.db.prototype={ +$0(){this.a.L(this.b,this.c)}, +$S:0} +A.dk.prototype={ +$0(){var s,r,q,p,o,n,m=this,l=null +try{q=m.a.a +l=q.b.b.bS(q.d)}catch(p){s=A.ad(p) +r=A.ao(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.cp(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.dl(n),t.z) +q.b=!1}}, +$S:0} +A.dl.prototype={ +$1(a){return this.a}, +$S:17} +A.dj.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.ad(o) +r=A.ao(o) +q=this.a +q.c=A.cp(s,r) +q.b=!0}}, +$S:0} +A.di.prototype={ +$0(){var s,r,q,p,o,n,m=this +try{s=m.a.a.c +p=m.b +if(p.a.bM(s)&&p.a.e!=null){p.c=p.a.bI(s) +p.b=!1}}catch(o){r=A.ad(o) +q=A.ao(o) +p=m.a.a.c +n=m.b +if(p.a===r)n.c=p +else n.c=A.cp(r,q) +n.b=!0}}, +$S:0} +A.c6.prototype={} +A.ci.prototype={} +A.dJ.prototype={} +A.dW.prototype={ +$0(){A.hH(this.a,this.b)}, +$S:0} +A.dq.prototype={ +bW(a){var s,r,q +try{if(B.d===$.r){a.$0() +return}A.fS(null,null,this,a)}catch(q){s=A.ad(q) +r=A.ao(q) +A.eB(s,r)}}, +aJ(a){return new A.dr(this,a)}, +bT(a){if($.r===B.d)return a.$0() +return A.fS(null,null,this,a)}, +bS(a){return this.bT(a,t.z)}, +bX(a,b){if($.r===B.d)return a.$1(b) +return A.jr(null,null,this,a,b)}, +ap(a,b){var s=t.z +return this.bX(a,b,s,s)}, +bV(a,b,c){if($.r===B.d)return a.$2(b,c) +return A.jq(null,null,this,a,b,c)}, +bU(a,b,c){var s=t.z +return this.bV(a,b,c,s,s,s)}, +bR(a){return a}, +b1(a){var s=t.z +return this.bR(a,s,s,s)}} +A.dr.prototype={ +$0(){return this.a.bW(this.b)}, +$S:0} +A.e.prototype={ +gB(a){return new A.au(a,this.gl(a),A.aG(a).i("au"))}, +E(a,b){return this.k(a,b)}, +W(a,b){return new A.M(a,A.aG(a).i("@").A(b).i("M<1,2>"))}, +bE(a,b,c,d){var s +A.b3(b,c,this.gl(a)) +for(s=b;s"))}return new A.cd(this)}, +q(a,b,c){var s,r,q=this +if(q.b==null)q.c.q(0,b,c) +else if(q.H(b)){s=q.b +s[b]=c +r=q.a +if(r==null?s!=null:r!==s)r[b]=null}else q.by().q(0,b,c)}, +H(a){if(this.b==null)return this.c.H(a) +return Object.prototype.hasOwnProperty.call(this.a,a)}, +C(a,b){var s,r,q,p,o=this +if(o.b==null)return o.c.C(0,b) +s=o.M() +for(r=0;r"))}return s}} +A.dG.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:true}) +return s}catch(r){}return null}, +$S:7} +A.dF.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:false}) +return s}catch(r){}return null}, +$S:7} +A.cq.prototype={ +bP(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.b3(a1,a2,a0.length) +s=$.hj() +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.y("") +e=p}else e=p +e.a+=B.a.j(a0,q,r) +d=A.Q(k) +e.a+=d +q=l +continue}}throw A.a(A.z("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.eO(a0,n,a2,o,m,d) +else{c=B.c.a0(d-1,4)+1 +if(c===1)throw A.a(A.z(a,a0,a2)) +for(;c<4;){e+="=" +p.a=e;++c}}e=p.a +return B.a.J(a0,a1,a2,e.charCodeAt(0)==0?e:e)}b=a2-a1 +if(o>=0)A.eO(a0,n,a2,o,m,b) +else{c=B.c.a0(b,4) +if(c===1)throw A.a(A.z(a,a0,a2)) +if(c>1)a0=B.a.J(a0,a2,a2,c===2?"==":"=")}return a0}} +A.cr.prototype={} +A.bC.prototype={} +A.bE.prototype={} +A.cv.prototype={} +A.cy.prototype={ +h(a){return"unknown"}} +A.cx.prototype={ +I(a){var s=this.bl(a,0,a.length) +return s==null?a:s}, +bl(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.y("") +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.cH.prototype={ +bA(a,b){var s=A.jn(a,this.gbC().a) +return s}, +gbC(){return B.L}} +A.cI.prototype={} +A.d0.prototype={} +A.d2.prototype={ +I(a){var s,r,q,p=A.b3(0,null,a.length),o=p-0 +if(o===0)return new Uint8Array(0) +s=o*3 +r=new Uint8Array(s) +q=new A.dH(r) +if(q.bp(a,0,p)!==p)q.ab() +return new Uint8Array(r.subarray(0,A.iW(0,q.b,s)))}} +A.dH.prototype={ +ab(){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}, +bz(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.ab() +return!1}}, +bp(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.bz(p,a.charCodeAt(n)))q=n}else if(o===56320){if(l.b+3>r)break +l.ab()}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.d1.prototype={ +I(a){return new A.dE(this.a).bm(a,0,null,!0)}} +A.dE.prototype={ +bm(a,b,c,d){var s,r,q,p,o,n,m=this,l=A.b3(b,c,J.aI(a)) +if(b===l)return"" +if(a instanceof Uint8Array){s=a +r=s +q=0}else{r=A.iP(a,b,l) +l-=b +q=b +b=0}if(l-b>=15){p=m.a +o=A.iO(p,r,b,l) +if(o!=null){if(!p)return o +if(o.indexOf("\ufffd")<0)return o}}o=m.a4(r,b,l,!0) +p=m.b +if((p&1)!==0){n=A.iQ(p) +m.b=0 +throw A.a(A.z(n,a,q+m.c))}return o}, +a4(a,b,c,d){var s,r,q=this +if(c-b>1000){s=B.c.bw(b+c,2) +r=q.a4(a,b,s,!1) +if((q.b&1)!==0)return r +return r+q.a4(a,s,c,d)}return q.bB(a,b,c,d)}, +bB(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.y(""),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.Q(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.Q(k) +h.a+=q +break +case 65:q=A.Q(k) +h.a+=q;--g +break +default:q=A.Q(k) +q=h.a+=q +h.a=q+A.Q(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.Q(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.cM.prototype={ +$2(a,b){var s=this.b,r=this.a,q=s.a+=r.a +q+=a.a +s.a=q +s.a=q+": " +q=A.at(b) +s.a+=q +r.a=", "}, +$S:19} +A.dD.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.L(b),r=this.a;s.m();){b=s.gp() +if(typeof b=="string")r.append(a,b) +else if(b==null)r.append(a,"") +else A.iS(b)}}, +$S:2} +A.d8.prototype={ +h(a){return this.aA()}} +A.k.prototype={ +gR(){return A.i1(this)}} +A.bx.prototype={ +h(a){var s=this.a +if(s!=null)return"Assertion failed: "+A.at(s) +return"Assertion failed"}} +A.R.prototype={} +A.K.prototype={ +ga6(){return"Invalid argument"+(!this.a?"(s)":"")}, +ga5(){return""}, +h(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+p,n=s.ga6()+q+o +if(!s.a)return n +return n+s.ga5()+": "+A.at(s.gak())}, +gak(){return this.b}} +A.b2.prototype={ +gak(){return this.b}, +ga6(){return"RangeError"}, +ga5(){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)if(f-q<75){l=q+75 +k=q +j="" +i="..."}else{if(m-f<75){k=m-75 +l=m +i=""}else{k=f-36 +l=f+36 +i="..."}j="..."}else{l=m +k=q +j="" +i=""}return g+j+B.a.j(e,k,l)+i+"\n"+B.a.b9(" ",f-k+j.length)+"^\n"}else return f!=null?g+(" (at offset "+A.i(f)+")"):g}} +A.n.prototype={ +W(a,b){return A.hz(this,A.E(this).i("n.E"),b)}, +gl(a){var s,r=this.gB(this) +for(s=0;r.m();)++s +return s}, +E(a,b){var s,r +A.f5(b,"index") +s=this.gB(this) +for(r=b;s.m();){if(r===0)return s.gp();--r}throw A.a(A.eU(b,b-r,this,"index"))}, +h(a){return A.hO(this,"(",")")}} +A.u.prototype={ +gn(a){return A.l.prototype.gn.call(this,0)}, +h(a){return"null"}} +A.l.prototype={$il:1, +F(a,b){return this===b}, +gn(a){return A.bY(this)}, +h(a){return"Instance of '"+A.cQ(this)+"'"}, +b_(a,b){throw A.a(A.f1(this,b))}, +gt(a){return A.jK(this)}, +toString(){return this.h(this)}} +A.cj.prototype={ +h(a){return""}, +$ia4:1} +A.y.prototype={ +gl(a){return this.a.length}, +h(a){var s=this.a +return s.charCodeAt(0)==0?s:s}} +A.d_.prototype={ +$2(a,b){var s,r,q,p=B.a.aU(b,"=") +if(p===-1){if(b!=="")a.q(0,A.ew(b,0,b.length,this.a,!0),"")}else if(p!==0){s=B.a.j(b,0,p) +r=B.a.K(b,p+1) +q=this.a +a.q(0,A.ew(s,0,s.length,q,!0),A.ew(r,0,r.length,q,!0))}return a}, +$S:20} +A.cX.prototype={ +$2(a,b){throw A.a(A.z("Illegal IPv4 address, "+a,this.a,b))}, +$S:21} +A.cY.prototype={ +$2(a,b){throw A.a(A.z("Illegal IPv6 address, "+a,this.a,b))}, +$S:22} +A.cZ.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.e8(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:23} +A.bn.prototype={ +gV(){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.bv() +n=o.w=s.charCodeAt(0)==0?s:s}return n}, +gn(a){var s,r=this,q=r.y +if(q===$){s=B.a.gn(r.gV()) +r.y!==$&&A.bv() +r.y=s +q=s}return q}, +gan(){var s,r=this,q=r.z +if(q===$){s=r.f +s=A.fg(s==null?"":s) +r.z!==$&&A.bv() +q=r.z=new A.a7(s,t.h)}return q}, +gb4(){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}, +ga_(){var s=this.d +return s==null?A.ft(this.a):s}, +gam(){var s=this.f +return s==null?"":s}, +gaO(){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.eu(null,0,0,a) +return A.es(n,l,j,k,q,p,o.r)}, +gaX(){if(this.a!==""){var s=this.r +s=(s==null?"":s)===""}else s=!1 +return s}, +gaQ(){return this.c!=null}, +gaT(){return this.f!=null}, +gaR(){return this.r!=null}, +h(a){return this.gV()}, +F(a,b){var s,r,q=this +if(b==null)return!1 +if(q===b)return!0 +if(t.R.b(b))if(q.a===b.ga1())if(q.c!=null===b.gaQ())if(q.b===b.gb4())if(q.gai()===b.gai())if(q.ga_()===b.ga_())if(q.e===b.gb0()){s=q.f +r=s==null +if(!r===b.gaT()){if(r)s="" +if(s===b.gam()){s=q.r +r=s==null +if(!r===b.gaR()){if(r)s="" +s=s===b.gaO()}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +$ic3:1, +ga1(){return this.a}, +gb0(){return this.e}} +A.dC.prototype={ +$2(a,b){var s=this.b,r=this.a +s.a+=r.a +r.a="&" +r=A.fz(B.h,a,B.e,!0) +r=s.a+=r +if(b!=null&&b.length!==0){s.a=r+"=" +r=A.fz(B.h,b,B.e,!0) +s.a+=r}}, +$S:24} +A.dB.prototype={ +$2(a,b){var s,r +if(b==null||typeof b=="string")this.a.$2(a,b) +else for(s=J.L(b),r=this.a;s.m();)r.$2(a,s.gp())}, +$S:2} +A.cW.prototype={ +gb3(){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.Y(m,"?",s) +q=m.length +if(r>=0){p=A.bo(m,r+1,q,B.f,!1,!1) +q=r}else p=n +m=o.c=new A.c9("data","",n,n,A.bo(m,s,q,B.p,!1,!1),p,n)}return m}, +h(a){var s=this.a +return this.b[0]===-1?"data:"+s:s}} +A.dP.prototype={ +$2(a,b){var s=this.a[a] +B.ab.bE(s,0,96,b) +return s}, +$S:25} +A.dQ.prototype={ +$3(a,b,c){var s,r +for(s=b.length,r=0;r>>0]=c}, +$S:8} +A.ch.prototype={ +gaQ(){return this.c>0}, +gaS(){return this.c>0&&this.d+10&&this.r>=this.a.length}, +ga1(){var s=this.w +return s==null?this.w=this.bk():s}, +bk(){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)}, +gb4(){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):""}, +ga_(){var s,r=this +if(r.gaS())return A.e8(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}, +gb0(){return B.a.j(this.a,this.e,this.f)}, +gam(){var s=this.f,r=this.r +return s=this.r)return B.aa +return new A.a7(A.fg(this.gam()),t.h)}, +ao(a){var s,r,q,p,o,n=this,m=null,l=n.ga1(),k=l==="file",j=n.c,i=j>0?B.a.j(n.a,n.b+3,j):"",h=n.gaS()?n.ga_():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.eu(m,0,0,a) +q=n.r +o=q1,n="dart:"+s,m=0;m") +m=new A.cz(A.bL(new A.aj(o,A.k0(),n),!0,n.i("I.E"))) +n=self +l=A.c4(J.aq(n.window.location)).gan().k(0,"search") +if(l!=null){k=m.aN(l) +if(k.length!==0){j=B.b.gbF(k).e +if(j!=null){n.window.location.assign($.bw()+j) +s=1 +break}}}n=p.b +if(n!=null)A.eo(m).aj(n) +n=p.c +if(n!=null)A.eo(m).aj(n) +n=p.d +if(n!=null)A.eo(m).aj(n) +case 1:return A.fI(q,r)}}) +return A.fJ($async$$1,r)}, +$S:9} +A.ds.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.gaZ()) +s.appendChild(r.gP()) +r.c!==$&&A.bv() +r.c=s +q=s}return q}, +gaZ(){var s,r=this.d +if(r===$){s=self.document.createElement("div") +s.classList.add("enter-search-message") +this.d!==$&&A.bv() +this.d=s +r=s}return r}, +gP(){var s,r=this.e +if(r===$){s=self.document.createElement("div") +s.classList.add("tt-search-results") +this.e!==$&&A.bv() +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",t.g.a(A.ab(new A.dt(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.ba(a) +if(J.hu(s.window.location.href,"search.html")){q=p.b.gan().k(0,"q") +if(q==null)return +q=B.k.I(q) +$.eD=$.dX +p.bK(q,!0) +p.bb(q) +p.ah() +$.eD=10}}, +bb(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=""+$.dX+' results for "'+a+'"' +m.appendChild(s) +if($.bq.a!==0)for(n=$.bq.gb5(),s=A.E(n),s=s.i("@<1>").A(s.y[1]),n=new A.av(J.L(n.a),n.b,s.i("av<1,2>")),s=s.y[1];n.m();){r=n.a +if(r==null)r=s.a(r) +m.appendChild(r)}else{q=n.document.createElement("div") +q.classList.add("search-summary") +q.innerHTML='There was not a match for "'+a+'". Want to try searching from additional Dart-related sites? ' +p=A.c4("https://dart.dev/search?cx=011220921317074318178%3A_yy-tmb5t_i&ie=UTF-8&hl=en&q=").ao(A.f_(["q",a],t.N,t.z)) +o=n.document.createElement("a") +o.setAttribute("href",p.gV()) +o.textContent="Search on dart.dev." +q.appendChild(o) +m.appendChild(q)}}, +ah(){var s=this.gG() +s.style.display="none" +s.setAttribute("aria-expanded","false") +return s}, +b2(a,b,c){var s,r,q,p,o=this +o.x=A.h([],t.M) +s=o.w +B.b.X(s) +$.bq.X(0) +o.gP().textContent="" +r=b.length +if(r===0){o.ah() +return}for(q=0;q10?'Press "Enter" key to see all '+r+" results":"" +o.gaZ().textContent=r}, +bY(a,b){return this.b2(a,b,!1)}, +ag(a,b,c){var s,r,q,p=this +if(p.r===a&&!b)return +if(a.length===0){p.bY("",A.h([],t.M)) +return}s=p.a.aN(a) +r=s.length +$.dX=r +q=$.eD +if(r>q)s=B.b.bd(s,0,q) +p.r=a +p.b2(a,s,c)}, +bK(a,b){return this.ag(a,!1,b)}, +aP(a){return this.ag(a,!1,!1)}, +bJ(a,b){return this.ag(a,b,!1)}, +aK(a){var s,r=this +r.y=-1 +s=r.f +if(s!=null){a.value=s +r.f=null}r.ah()}, +ba(a){var s=this,r=t.g +a.addEventListener("focus",r.a(A.ab(new A.du(s,a)))) +a.addEventListener("blur",r.a(A.ab(new A.dv(s,a)))) +a.addEventListener("input",r.a(A.ab(new A.dw(s,a)))) +a.addEventListener("keydown",r.a(A.ab(new A.dx(s,a))))}} +A.dt.prototype={ +$1(a){if(J.F(a.key,"/")&&!t.m.b(self.document.activeElement)){a.preventDefault() +this.a.focus()}}, +$S:1} +A.du.prototype={ +$1(a){this.a.bJ(this.b.value,!0)}, +$S:1} +A.dv.prototype={ +$1(a){this.a.aK(this.b)}, +$S:1} +A.dw.prototype={ +$1(a){this.a.aP(this.b.value)}, +$S:1} +A.dx.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($.bw()+q) +return}else{p=B.k.I(s.r) +o=A.c4($.bw()+"search.html").ao(A.f_(["q",p],t.N,t.z)) +self.window.location.assign(o.gV()) +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.aK(e.b) +else{if(s.f!=null){s.f=null +s.aP(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:30} +A.dU.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.dV.prototype={ +$1(a){return this.b7(a)}, +b7(a){var s=0,r=A.fR(t.P),q,p=this,o,n,m +var $async$$1=A.fY(function(b,c){if(b===1)return A.fH(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.fG(A.eb(a.text(),t.N),$async$$1) +case 3:n=c +m=self.document.createElement("div") +m.innerHTML=n +A.fX(p.b,m) +p.a.appendChild(m) +case 1:return A.fI(q,r)}}) +return A.fJ($async$$1,r)}, +$S:9} +A.e7.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.e4.prototype={ +$1(a){this.a.$0()}, +$S:1};(function aliases(){var s=J.a2.prototype +s.be=s.h})();(function installTearOffs(){var s=hunkHelpers._static_2,r=hunkHelpers._static_1,q=hunkHelpers._static_0 +s(J,"j9","hS",31) +r(A,"jz","ib",4) +r(A,"jA","ic",4) +r(A,"jB","id",4) +q(A,"h_","jt",0) +r(A,"k0","hK",32)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.inherit,q=hunkHelpers.inheritMany +r(A.l,null) +q(A.l,[A.eh,J.bG,J.ar,A.n,A.bA,A.k,A.e,A.cR,A.au,A.av,A.aO,A.c1,A.a5,A.bf,A.aW,A.aK,A.cD,A.af,A.cU,A.cO,A.aN,A.bg,A.dp,A.P,A.cJ,A.bK,A.cE,A.ce,A.d3,A.H,A.cb,A.dA,A.dy,A.c5,A.bz,A.c7,A.az,A.v,A.c6,A.ci,A.dJ,A.cl,A.bC,A.bE,A.cy,A.dH,A.dE,A.d8,A.bW,A.b4,A.d9,A.cw,A.u,A.cj,A.y,A.bn,A.cW,A.ch,A.cN,A.cz,A.w,A.cu,A.ds]) +q(J.bG,[J.bH,J.aQ,J.aT,J.aS,J.aU,J.aR,J.ah]) +q(J.aT,[J.a2,J.o,A.bM,A.aZ]) +q(J.a2,[J.bX,J.ax,J.a1]) +r(J.cF,J.o) +q(J.aR,[J.aP,J.bI]) +q(A.n,[A.a8,A.c,A.ai]) +q(A.a8,[A.ae,A.bp]) +r(A.b9,A.ae) +r(A.b8,A.bp) +r(A.M,A.b8) +q(A.k,[A.aV,A.R,A.bJ,A.c0,A.c8,A.bZ,A.ca,A.bx,A.K,A.bV,A.c2,A.c_,A.b5,A.bD]) +r(A.ay,A.e) +r(A.bB,A.ay) +q(A.c,[A.I,A.O]) +r(A.aM,A.ai) +q(A.I,[A.aj,A.cd]) +r(A.cf,A.bf) +r(A.cg,A.cf) +r(A.bm,A.aW) +r(A.a7,A.bm) +r(A.aL,A.a7) +r(A.ag,A.aK) +q(A.af,[A.ct,A.cs,A.cT,A.cG,A.e1,A.e3,A.d5,A.d4,A.dK,A.de,A.dl,A.dQ,A.dR,A.ec,A.ed,A.cC,A.cB,A.e5,A.dt,A.du,A.dv,A.dw,A.dx,A.dN,A.dO,A.dS,A.dU,A.dV,A.e4]) +q(A.ct,[A.cP,A.e2,A.dL,A.dY,A.df,A.cK,A.cM,A.dD,A.d_,A.cX,A.cY,A.cZ,A.dC,A.dB,A.dP,A.cA]) +r(A.b1,A.R) +q(A.cT,[A.cS,A.aJ]) +q(A.P,[A.N,A.cc]) +q(A.aZ,[A.bN,A.aw]) +q(A.aw,[A.bb,A.bd]) +r(A.bc,A.bb) +r(A.aX,A.bc) +r(A.be,A.bd) +r(A.aY,A.be) +q(A.aX,[A.bO,A.bP]) +q(A.aY,[A.bQ,A.bR,A.bS,A.bT,A.bU,A.b_,A.b0]) +r(A.bh,A.ca) +q(A.cs,[A.d6,A.d7,A.dz,A.da,A.dh,A.dg,A.dd,A.dc,A.db,A.dk,A.dj,A.di,A.dW,A.dr,A.dG,A.dF,A.dT,A.e6,A.e7]) +r(A.b7,A.c7) +r(A.dq,A.dJ) +q(A.bC,[A.cq,A.cv,A.cH]) +q(A.bE,[A.cr,A.cx,A.cI,A.d2,A.d1]) +r(A.d0,A.cv) +q(A.K,[A.b2,A.bF]) +r(A.c9,A.bn) +q(A.d8,[A.m,A.A]) +s(A.ay,A.c1) +s(A.bp,A.e) +s(A.bb,A.e) +s(A.bc,A.aO) +s(A.bd,A.e) +s(A.be,A.aO) +s(A.bm,A.cl)})() +var v={typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{b:"int",t:"double",jX:"num",d:"String",jC:"bool",u:"Null",f:"List",l:"Object",x:"Map"},mangledNames:{},types:["~()","u(p)","~(d,@)","~(@)","~(~())","u(@)","u()","@()","~(ak,d,b)","a0(p)","@(@)","@(@,d)","@(d)","u(~())","u(@,a4)","~(b,@)","u(l,a4)","v<@>(@)","~(l?,l?)","~(b6,@)","x(x,d)","~(d,b)","~(d,b?)","b(b,b)","~(d,d?)","ak(@,@)","~(A)","b(+item,matchPosition(w,A),+item,matchPosition(w,A))","w(+item,matchPosition(w,A))","d()","d(cL)","b(@,@)","w(x)"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti"),rttc:{"2;item,matchPosition":(a,b)=>c=>c instanceof A.cg&&a.b(c.a)&&b.b(c.b)}} +A.iw(v.typeUniverse,JSON.parse('{"bX":"a2","ax":"a2","a1":"a2","bH":{"j":[]},"aQ":{"u":[],"j":[]},"aT":{"p":[]},"a2":{"p":[]},"o":{"f":["1"],"c":["1"],"p":[]},"cF":{"o":["1"],"f":["1"],"c":["1"],"p":[]},"aR":{"t":[]},"aP":{"t":[],"b":[],"j":[]},"bI":{"t":[],"j":[]},"ah":{"d":[],"j":[]},"a8":{"n":["2"]},"ae":{"a8":["1","2"],"n":["2"],"n.E":"2"},"b9":{"ae":["1","2"],"a8":["1","2"],"c":["2"],"n":["2"],"n.E":"2"},"b8":{"e":["2"],"f":["2"],"a8":["1","2"],"c":["2"],"n":["2"]},"M":{"b8":["1","2"],"e":["2"],"f":["2"],"a8":["1","2"],"c":["2"],"n":["2"],"e.E":"2","n.E":"2"},"aV":{"k":[]},"bB":{"e":["b"],"f":["b"],"c":["b"],"e.E":"b"},"c":{"n":["1"]},"I":{"c":["1"],"n":["1"]},"ai":{"n":["2"],"n.E":"2"},"aM":{"ai":["1","2"],"c":["2"],"n":["2"],"n.E":"2"},"aj":{"I":["2"],"c":["2"],"n":["2"],"I.E":"2","n.E":"2"},"ay":{"e":["1"],"f":["1"],"c":["1"]},"a5":{"b6":[]},"aL":{"a7":["1","2"],"x":["1","2"]},"aK":{"x":["1","2"]},"ag":{"x":["1","2"]},"b1":{"R":[],"k":[]},"bJ":{"k":[]},"c0":{"k":[]},"bg":{"a4":[]},"c8":{"k":[]},"bZ":{"k":[]},"N":{"P":["1","2"],"x":["1","2"],"P.V":"2"},"O":{"c":["1"],"n":["1"],"n.E":"1"},"ce":{"el":[],"cL":[]},"bM":{"p":[],"j":[]},"aZ":{"p":[]},"bN":{"p":[],"j":[]},"aw":{"D":["1"],"p":[]},"aX":{"e":["t"],"f":["t"],"D":["t"],"c":["t"],"p":[]},"aY":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[]},"bO":{"e":["t"],"f":["t"],"D":["t"],"c":["t"],"p":[],"j":[],"e.E":"t"},"bP":{"e":["t"],"f":["t"],"D":["t"],"c":["t"],"p":[],"j":[],"e.E":"t"},"bQ":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"bR":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"bS":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"bT":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"bU":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"b_":{"e":["b"],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"b0":{"e":["b"],"ak":[],"f":["b"],"D":["b"],"c":["b"],"p":[],"j":[],"e.E":"b"},"ca":{"k":[]},"bh":{"R":[],"k":[]},"v":{"a0":["1"]},"bz":{"k":[]},"b7":{"c7":["1"]},"e":{"f":["1"],"c":["1"]},"P":{"x":["1","2"]},"aW":{"x":["1","2"]},"a7":{"x":["1","2"]},"cc":{"P":["d","@"],"x":["d","@"],"P.V":"@"},"cd":{"I":["d"],"c":["d"],"n":["d"],"I.E":"d","n.E":"d"},"f":{"c":["1"]},"el":{"cL":[]},"bx":{"k":[]},"R":{"k":[]},"K":{"k":[]},"b2":{"k":[]},"bF":{"k":[]},"bV":{"k":[]},"c2":{"k":[]},"c_":{"k":[]},"b5":{"k":[]},"bD":{"k":[]},"bW":{"k":[]},"b4":{"k":[]},"cj":{"a4":[]},"bn":{"c3":[]},"ch":{"c3":[]},"c9":{"c3":[]},"hN":{"f":["b"],"c":["b"]},"ak":{"f":["b"],"c":["b"]},"i8":{"f":["b"],"c":["b"]},"hL":{"f":["b"],"c":["b"]},"i6":{"f":["b"],"c":["b"]},"hM":{"f":["b"],"c":["b"]},"i7":{"f":["b"],"c":["b"]},"hI":{"f":["t"],"c":["t"]},"hJ":{"f":["t"],"c":["t"]}}')) +A.iv(v.typeUniverse,JSON.parse('{"aO":1,"c1":1,"ay":1,"bp":2,"aK":2,"bK":1,"aw":1,"ci":1,"cl":2,"aW":2,"bm":2,"bC":2,"bE":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.bt +return{Z:s("aL"),U:s("c<@>"),Q:s("k"),Y:s("k8"),M:s("o"),O:s("o

"),r:s("o<+item,matchPosition(w,A)>"),s:s("o"),b:s("o<@>"),t:s("o"),T:s("aQ"),m:s("p"),g:s("a1"),p:s("D<@>"),B:s("N"),j:s("f<@>"),a:s("x"),V:s("aj<+item,matchPosition(w,A),w>"),P:s("u"),K:s("l"),L:s("k9"),d:s("+()"),F:s("el"),l:s("a4"),N:s("d"),k:s("j"),c:s("R"),D:s("ak"),o:s("ax"),h:s("a7"),R:s("c3"),e:s("v<@>"),y:s("jC"),i:s("t"),z:s("@"),v:s("@(l)"),C:s("@(l,a4)"),S:s("b"),A:s("0&*"),_:s("l*"),W:s("a0?"),X:s("l?"),H:s("jX")}})();(function constants(){var s=hunkHelpers.makeConstList +B.I=J.bG.prototype +B.b=J.o.prototype +B.c=J.aP.prototype +B.a=J.ah.prototype +B.J=J.a1.prototype +B.K=J.aT.prototype +B.ab=A.b0.prototype +B.w=J.bX.prototype +B.j=J.ax.prototype +B.at=new A.cr() +B.x=new A.cq() +B.au=new A.cy() +B.k=new A.cx() +B.l=function getTagFallback(o) { + var s = Object.prototype.toString.call(o); + return s.substring(8, s.length - 1); +} +B.y=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.D=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.z=function(hooks) { + if (typeof dartExperimentalFixupGetTag != "function") return hooks; + hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag); +} +B.C=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.B=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.A=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.E=new A.cH() +B.F=new A.bW() +B.i=new A.cR() +B.e=new A.d0() +B.G=new A.d2() +B.n=new A.dp() +B.d=new A.dq() +B.H=new A.cj() +B.L=new A.cI(null) +B.a8=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.a9=A.h(s([0,0,32754,11263,65534,34815,65534,18431]),t.t) +B.o=A.h(s([0,0,26624,1023,65534,2047,65534,2047]),t.t) +B.p=A.h(s([0,0,65490,12287,65535,34815,65534,18431]),t.t) +B.M=new A.m(0,"accessor") +B.N=new A.m(1,"constant") +B.Y=new A.m(2,"constructor") +B.a1=new A.m(3,"class_") +B.a2=new A.m(4,"dynamic") +B.a3=new A.m(5,"enum_") +B.a4=new A.m(6,"extension") +B.a5=new A.m(7,"extensionType") +B.a6=new A.m(8,"function") +B.a7=new A.m(9,"library") +B.O=new A.m(10,"method") +B.P=new A.m(11,"mixin") +B.Q=new A.m(12,"never") +B.R=new A.m(13,"package") +B.S=new A.m(14,"parameter") +B.T=new A.m(15,"prefix") +B.U=new A.m(16,"property") +B.V=new A.m(17,"sdk") +B.W=new A.m(18,"topic") +B.X=new A.m(19,"topLevelConstant") +B.Z=new A.m(20,"topLevelProperty") +B.a_=new A.m(21,"typedef") +B.a0=new A.m(22,"typeParameter") +B.q=A.h(s([B.M,B.N,B.Y,B.a1,B.a2,B.a3,B.a4,B.a5,B.a6,B.a7,B.O,B.P,B.Q,B.R,B.S,B.T,B.U,B.V,B.W,B.X,B.Z,B.a_,B.a0]),A.bt("o")) +B.r=A.h(s([0,0,32776,33792,1,10240,0,0]),t.t) +B.t=A.h(s([]),t.b) +B.h=A.h(s([0,0,24576,1023,65534,34815,65534,18431]),t.t) +B.v={} +B.aa=new A.ag(B.v,[],A.bt("ag")) +B.u=new A.ag(B.v,[],A.bt("ag")) +B.ac=new A.a5("call") +B.ad=A.J("k5") +B.ae=A.J("k6") +B.af=A.J("hI") +B.ag=A.J("hJ") +B.ah=A.J("hL") +B.ai=A.J("hM") +B.aj=A.J("hN") +B.ak=A.J("l") +B.al=A.J("i6") +B.am=A.J("i7") +B.an=A.J("i8") +B.ao=A.J("ak") +B.ap=new A.d1(!1) +B.aq=new A.A(0,"isExactly") +B.ar=new A.A(1,"startsWith") +B.as=new A.A(2,"contains")})();(function staticFields(){$.dm=null +$.ap=A.h([],A.bt("o")) +$.f2=null +$.eR=null +$.eQ=null +$.h1=null +$.fZ=null +$.h6=null +$.dZ=null +$.e9=null +$.eH=null +$.dn=A.h([],A.bt("o?>")) +$.aB=null +$.br=null +$.bs=null +$.eA=!1 +$.r=B.d +$.eD=10 +$.dX=0 +$.bq=A.ej(t.N,t.m)})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal +s($,"k7","eK",()=>A.jJ("_$dart_dartClosure")) +s($,"kb","h9",()=>A.S(A.cV({ +toString:function(){return"$receiver$"}}))) +s($,"kc","ha",()=>A.S(A.cV({$method$:null, +toString:function(){return"$receiver$"}}))) +s($,"kd","hb",()=>A.S(A.cV(null))) +s($,"ke","hc",()=>A.S(function(){var $argumentsExpr$="$arguments$" +try{null.$method$($argumentsExpr$)}catch(r){return r.message}}())) +s($,"kh","hf",()=>A.S(A.cV(void 0))) +s($,"ki","hg",()=>A.S(function(){var $argumentsExpr$="$arguments$" +try{(void 0).$method$($argumentsExpr$)}catch(r){return r.message}}())) +s($,"kg","he",()=>A.S(A.fc(null))) +s($,"kf","hd",()=>A.S(function(){try{null.$method$}catch(r){return r.message}}())) +s($,"kk","hi",()=>A.S(A.fc(void 0))) +s($,"kj","hh",()=>A.S(function(){try{(void 0).$method$}catch(r){return r.message}}())) +s($,"kl","eL",()=>A.ia()) +s($,"kr","ho",()=>A.hX(4096)) +s($,"kp","hm",()=>new A.dG().$0()) +s($,"kq","hn",()=>new A.dF().$0()) +s($,"km","hj",()=>A.hW(A.j_(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($,"kn","hk",()=>A.f6("^[\\-\\.0-9A-Z_a-z~]*$",!0)) +s($,"ko","hl",()=>typeof URLSearchParams=="function") +s($,"kD","ee",()=>A.h4(B.ak)) +s($,"kF","hp",()=>A.iZ()) +s($,"kE","bw",()=>new A.dT().$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.bM,ArrayBufferView:A.aZ,DataView:A.bN,Float32Array:A.bO,Float64Array:A.bP,Int16Array:A.bQ,Int32Array:A.bR,Int8Array:A.bS,Uint16Array:A.bT,Uint32Array:A.bU,Uint8ClampedArray:A.b_,CanvasPixelArray:A.b_,Uint8Array:A.b0}) +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.aw.$nativeSuperclassTag="ArrayBufferView" +A.bb.$nativeSuperclassTag="ArrayBufferView" +A.bc.$nativeSuperclassTag="ArrayBufferView" +A.aX.$nativeSuperclassTag="ArrayBufferView" +A.bd.$nativeSuperclassTag="ArrayBufferView" +A.be.$nativeSuperclassTag="ArrayBufferView" +A.aY.$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","TypeErrorDecoder.matchTypeError","NullError.toString","JsNoSuchMethodError.toString","UnknownJsTypeError.toString","NullThrownFromJavaScriptException.toString","_StackTrace.toString","Closure.toString","StaticClosure.toString","BoundClosure.==","BoundClosure.hashCode","BoundClosure.toString","_CyclicInitializationError.toString","RuntimeError.toString","JsLinkedHashMap.keys","JsLinkedHashMap.length","JsLinkedHashMap.values","JsLinkedHashMap.containsKey","JsLinkedHashMap._containsTableEntry","JsLinkedHashMap.[]","JsLinkedHashMap.internalGet","JsLinkedHashMap._getBucket","JsLinkedHashMap.[]=","JsLinkedHashMap.internalSet","JsLinkedHashMap.clear","JsLinkedHashMap.forEach","JsLinkedHashMap._addHashTableEntry","JsLinkedHashMap._modified","JsLinkedHashMap._newLinkedCell","JsLinkedHashMap.internalComputeHashCode","JsLinkedHashMap.internalFindBucketIndex","JsLinkedHashMap.toString","JsLinkedHashMap._newHashTable","JsLinkedHashMap.values.","JsLinkedHashMap_values_closure","LinkedHashMapKeyIterable.length","LinkedHashMapKeyIterable.iterator","LinkedHashMapKeyIterator","LinkedHashMapKeyIterator.current","LinkedHashMapKeyIterator.moveNext","initHooks.","_Record.toString","_Record._toString","StringBuffer._writeString","_Record._fieldKeys","_Record._computeFieldKeys","List.unmodifiable","_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.forEach","MapView.length","MapView.toString","_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","NoSuchMethodError.toString.","_symbolToString","_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","NoSuchMethodError.toString","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.noSuchMethod","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","_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.","_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$noSuchMethod1$Iu","$intercepted$toString0$IJavaScriptBigIntJavaScriptFunctionJavaScriptSymbolLegacyJavaScriptObjectabnsux","ArrayIterator","Base64Codec","Base64Encoder","BoundClosure","ByteBuffer","ByteData","CastIterator","CastList","Closure","Closure0Args","Closure2Args","CodeUnits","Codec","ConstantMap","ConstantMapView","ConstantStringMap","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","JSInvocationMirror","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","NoSuchMethodError","NoSuchMethodError_toString_closure","Null","NullError","NullRejectionException","NullThrownFromJavaScriptException","Object","OutOfMemoryError","PlainJavaScriptObject","Primitives_functionNoSuchMethod_closure","RangeError","Record","RegExpMatch","Rti","RuntimeError","SentinelValue","StackOverflowError","StackTrace","StaticClosure","String","StringBuffer","Symbol","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","_MatchImplementation","_MatchPosition","_NativeTypedArrayOfDouble&NativeTypedArray&ListMixin","_NativeTypedArrayOfDouble&NativeTypedArray&ListMixin&FixedLengthListMixin","_NativeTypedArrayOfInt&NativeTypedArray&ListMixin","_NativeTypedArrayOfInt&NativeTypedArray&ListMixin&FixedLengthListMixin","_Record","_Record2","_Record_2_item_matchPosition","_Required","_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","_generalApplyFunction","_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","applyFunction","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","defaultStackTrace","dispatchRecordsForInstanceTags","double","errorDescription","eval","evalInEnvironment","evalRecipe","extractPattern","extractStackTrace","filled","findErasedType","findRule","finish","fixed","forType","forwardCallTo","forwardInterceptedCallTo","from","fromCharCodes","fromMessage","fromTearOff","functionNoSuchMethod","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","markUnmodifiableList","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","withInvocation","withLength","$add","$eq","$index","$indexSet","$mod","$mul","add","addAll","bindCallbackGuarded","call","cast","clear","clearSearch","compareTo","complete","completeError","contains","containsKey","convert","current","dart:_interceptors#_addAllFromArray","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","memberName","moreResults","moveNext","namedArguments","noSuchMethod","normalize","package:dartdoc/src/search.dart#_scope","path","port","positionalArguments","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","-","FunctionToJSExportedDartFunction|get#toJS","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","_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","_setRequiredPositional","_setRest","_setSpecializedTestResource","_setValue","_shapeTag","_startsWithData","_stringToSafeString","_target","_theUniverse","_unstar","_upgradedMap","_whenCompleteAction","_writeAuthority","_writeOne","_writeString","_zone","allocate","apply","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","getName","getProperty","getRuntimeTypeOfInterceptorNotArray","group","handleNamedGroup","handleOptionalGroup","handleStartRecord","handleUncaughtError","handleValue","handleWhenComplete","handlesComplete","handlesValue","hasErrorCallback","hasErrorTest","hasMatch","hasScheme","hash2","hash3","hash4","identityHashCode","instanceTypeName","interceptorFieldName","interceptorsByTag","internalSet","isAccessor","isArray","isDigit","isEmpty","isGetter","isIdentical","isNaN","isNotEmpty","isRequired","isUnicode","jsHasOwnProperty","jsonDecode","jsonEncodeNative","leafTags","listToString","lookupSupertype","lookupTypeVariable","makeFixedListUnmodifiable","makeListFixedLength","map","mapGet","mapSet","markGrowable","notSimple","objectKeys","objectToHumanReadableString","parseHexByte","pop","position","printToConsole","propertyGet","provokeCallErrorOnNull","provokeCallErrorOnUndefined","provokePropertyErrorOnNull","provokePropertyErrorOnUndefined","push","pushStackFrame","receiverFieldName","recipe","removeSelectedElement","replaceAllMapped","setProperty","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","unvalidated","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;WCgkFAC,QADgBA;GDzjFjBF,IA7CNA,WAAyBA,QAkC3BA;AA9BgBA;AACdA,WAAyBA,QA6B3BA;AAvBEA,wBAIEA,QAHcA,EAsBlBA;AAjBcA;AACZA,WAEEA,QAIcA,EAUlBA;wBAPIA,QAHcA,EAUlBA;AALEA,4BAUOG;WCgkFAD,QADgBA;AC5rFvBC,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;AAKbA,QACFA,C;EAEeC;ACzCmCC;AD+ChDD,QACFA,C;EAkgBWC,MACTA,gBACFA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EEtkBQC,uBACKA,KACTA,OAUJA,yCAPAA;AADEA,OANFA,yCAOAA,C;EC2CEC,IAAwBA;AAM1BA,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,sCACRA,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;AUkdCA,iBVlduBA,GAG1BA,WU8cMA,aV1aVA;AAjCoBA;AAGPA,QAFgBA,SACAA,cCvLtBA,GACHA;ADyMAA,wBAAwCA,QAY5CA;GAXsBA;AAClBA,4BACwBA;AACtBA,4CAEEA,QAMRA,EADEA,OU4aKA,IADGA,aV1aVA,C;EAecC,IACkCA,wCAC5CA,OAAOA,OAcXA;AAZEA,sBACEA,OAywEGC,iBA9vEPD;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;EAgNOC,QAEDA;;AAMFA;AAiBkDA;CAlBlDA,IAAqCA;AACrCA;CAGKA;aWvyBWA,OXyyBhBA,MAAuBA;AAWzBA,OAAOA,OA7nBTC,UA8nBMD,aACNA,C;EAiCOE,QAGLA;AAAwBA,gCW11BNA;KX01BiBA;AAAnCA,SAGgCA;AAC9BA,UAGWA,UAAPA,aAiDRA,MA/CWA,UAGIA,UAAPA,iBA4CRA,MA1CWA,UAGIA,UAAPA,sBAuCRA,MApCWA,UAGIA,UAAPA,2BAiCRA,MA9BWA,UAGIA,UAAPA,gCA2BRA,MAxBWA,SAGIA,UAAPA,qCAqBRA;GAPiBA;AACbA,WACEA,OAAOA,YAKbA,CADEA,OAAOA,WACTA,C;EAEOC,QAIqBA,iDAGLA,kBAMSA,WAEDA;AAG7BA,OACEA,OAAOA,WAuGXA;GApG6BA;AAGKA;AAKDA;AAEbA;GAEdA;AACJA,yBAGeA;AAGfA,MAIWA,aWj8BOC,OXi8BdD,kBA6ENA;AA3EIA,SACEA,OAAOA,YA0EbA;AAxEIA,OAAOA,WAwEXA,CArEkDA,qBAMrCA,aW/8BOC,OX+8BdD,kBA+DNA;KA5DyBA;AAErBA,OAEEA,OAAOA,cAwDbA;AAtDIA,QACyBA;AAEvBA,SAEmBA;AAEnBA,YAEFA,OAAOA,YA6CXA,MAzCIA,OAGEA,OAAOA,WAsCbA;AAnCIA,SAEmBA;AAGPA;AACZA,kBACEA,yDACqBA,EADrBA;AAGWA,IA6xEyBA,OA7xEhCA,kBAyBVA;AAvBQA,wBAIFA;AACMA,WACFA;AACAA,SAAcA,kBAEKA;AAEVA,IAgxEuBA,OAhxE9BA,kBAYZA;AAVUA,aAKKA,QW1gCGA,GX0gCVA,kBAKRA,CAFIA,OAAOA,YAEXA,E;EAEmBE,WACHA;AACdA,WAAqBA,WAEvBA;AADEA,OAAOA,OACTA,C;EAyBIC,MACJA;YAAmBA,OO/4BnBA,oBP05BFA;AAVyBA;AAIvBA,aACEA,OAAkBA,aAKtBA;AADEA,OAAkBA,SACpBA,C;EAKMC,QAIJA,OACEA,OAAkBA,uBAYtBA;AAVEA,WAIEA,YACEA,OAAkBA,qBAKxBA;AADEA,OO/6BAA,wBPg7BFA,C;EAOcC,IACZA,OOx7BAA,uBPy7BFA,C;CAiCAC,IAEEA,OAAOA,KADSA,cAElBA,C;EAGAC,MACEA;WO5hCIA;;;APgiCJA,+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,4BC7tDOA,oDD+tDHA,OOtoCEA,UPkqCRA;yDAMSA;AAvBLA,OAAOA,OOzjDTA,wCPujDcA,mCAmBhBA,CAbEA,gEAIEA,gDACEA,OO1pCEA,UPkqCRA;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,UYp4DAC,gEZq4DFD,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,OUngEeC,MAHOC,cA8BRF,MVw+DuBA,MACvCA,C;EAIOG,IAAoCA,QAAQA,EAASA,C;EAIrDC,IAAuCA,QAAQA,EAAYA,C;EAYpDC,IA/CdA,iDAiDsBA,KAChBA;OACsBA,YAA1BA,YACaA;YAETA,QAINA,CADEA,UAAMA,yCACRA,C;EA4IGC,IACHA,UAaAA,YAZFA,C;EAoEOC,IAELA,OAAOA,CADgBA,iBAEzBA,C;ECnnFAC,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;EYhJQC,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;AE8daA,QDxZFA,KAAWA,eCwZTA,IDvZFA;QDpEXA,QE2daA,QDpZJA,KAAWA;AACxBA,6BACFA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AE+qBME;EAvjBDC,IACsBA,QAM3BA,C;EA+iBwBD,IAClBA,uBAA6CA,C;EA6JzCE,IAA+BA,OA8BUA,iBA9ByBA,C;CAqvBvEC,QACHA,mBACEA,UAAMA,UAEVA,C;EASIC,QACFA;AAAgCA,gBAGoBA;KAHpBA;AAAhCA,KAIEA,UAAMA;AAGRA,QACFA,C;;;;;;;;;;;;;;;;;;;;EPpsDaC,MAKOA,OAwiHoBA;AAriHpCA,gBAdIA,WAkjHyBC,QAniH/BD,C;EAEWE,MA2xEPA,OAuwCkCA;AA3hHpCA,gBAxBIA,iBAkjHyBC,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,OAEpBA,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;AGx+BgBC,qBHw+BMD,aGz+BhBC,IACuCA,OHi/B/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,aAq9E4BvC;AAn9ExBuC,uCAGEA,SACmBA,kBAk9EG3C,KAj9EC2C,eAi9EDzC;KAl9ENyC;KADhBA;KADEA;KADPA;KAIuEA;AAL3EA,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,iBACFA,C;EAIKC,IAGCA;AACJA,WAAoBA,OAAOA,OAoB7BA;AAdEA,sBAAgDA,QAclDA;AAw6EoCA,oBAp7ENA,QAY9BA;GA1nCeA;AAwnCKA,iBAvjBhBA,GAojBAA,YAKJA;AADEA,iBACFA,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,aAC2BA;gBAEWA;IAEVA;AAC5BA,gBACEA;+BAKFA,cAEEA,eAAsBA,GAA8BA;IA4gEzBA;GAHA9E;AA9BcmC,wCA2CI4C;KA3CJ5C;AAz+DzC2C,MAEoBA,yBAItBA,YA3B0BA;WA95CevE;IA0ElCuE;GAqJLA;GAiwGqCA;GAzvGrCA;GAyvGqCA;GAvuGrCA;GAuuGqCA;AAxhEjBA;AAIxBA,kCAEMA,YA++DyBA;AA1+D/BA,QACEA;AAEAA,4BAEMA,YAq+DuBA;AAj+D7BA,QAGFA,QACEA;AAEAA,8BACEA;IAq9D6BA,MAn9D3BA;AAEeA,SAs9DUA,eADMA,IA/8DnCA,QAGFA,cAEuCA;YAOvCA,yBACFA,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,WD50DOA,mBACLA;AC60DPA,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;KAl5CdoG;KADTA;KAC6BA;AAFjCA,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,gBAtFJA;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,0DQn2FKA;KRk2F/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,wBAhBKA;AA8OxCA,sBAEEA,iBAhOiCA;;AAmO7BA;OAnO6BA;;AAuO7BA;QA1ONA;;;AA8OMA,WA9ONA;AA2PIA;IAPyBA;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,oBAC0EA;AAMxEA,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,aAqD4BjJ;uBAlD3BiJ,WACKA,SACmBA,kBAmDGrJ,KAlDCqJ,eAkDDnJ;KAnDNmJ;KADhBA;KADLA;KAE4DA;AAHhEA,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;;;;;;;;;;;EStsHhCM,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,MAAqDA;QAxQzCA,iBA8GfA;IA+JiBA;CAAjBA;AACPA,eAC+BA;AAC7BA;AACAA,kBAEoCA;AACpCA;AACAA,QAEJA,C;EAQYC;QA/RYA,kBA8GfA;CAoLLA,KAEFA,kBAGsCA;AACpCA;AACAA;AACAA,MAeJA,iBAVkCA,UAC9BA;AACAA,MAQJA;ACiiCEA,gBDpiCOA,GAAwBA,cAGjCA,C;EAgIYC;KAEVA;GAzbqBA;AAAOA;AAAeA;AA4bzCA,YACEA,oBAtVGA;AC8sCPA,MDr3B0CA,IAAkBA,IAExDA,MA+JNA,EA1JoBA;GACyBA;AACzCA,0BACWA;AACTA,MAAsBA;CACtBA;GACwBA,MAGGA;GAAOA;CAQ/BA;CACDA;AAKkCA,SArpBhBA;AAqpBGA,6BArCpBA;AAqCLA,SAvpBeA,EAAOA;AAypBPA,SAAWA;AAARA,eAAHA;AAAbA,MCq1BJA,MDj1B0CA,IAAkBA;AACtDA,MA4HRA,IAxH0BA;AAApBA;KAmFIA;GAhvBmBA;AAmuBvBA,cA/D+BA,gBAgE7BA;KACKA,MACLA,aA9BsBA,cA+BpBA,UAGFA,aAzBcA,cA0BZA;AAKJA;GAIIA;wBACAA;eAtqBuCA,OAAsBA,iBAqqB9BA;AAAnCA,SAKmBA,EAASA;KAtkBTA,eA2MIA;CAC3BA;AACOA;CAtEPA,IACYA,OAAkCA;CAC9CA,IAA4BA;CAkclBA;AACAA,cAEAA;AAKJA,MAeRA,KAXqBA,EAASA;GA5YDA;CAC3BA;AACOA;GA4YAA;GACcA;AADnBA,QAteFA;CACAA,WAKAA,IAAwBA;CACxBA,MAseEA;IAEJA,C;EAqDOC,MACUA,YACfA,OAAOA,OAWXA;AARmBA,YACfA,QAOJA;AALEA,UAAoBA,sBAKtBA,C;EG17BKC,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,cfrfFA,sCesfAA,C;EAMQC,MACNA,Of7fFA,qCe8fAA,C;ECxbcC,IAEZA;AAAIA,WACFA,aAwBJA;AX0gBAA;IW7hBIA;;CAEKA;AACLA,MAAUA;iBAYVA,cX6iB0CA;AW1iB5CA,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;KZkgCWhM;AY//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;;;;;;;;;;;;;;;;;;;;;;;;Ef1TWC,MAUSA;AAPlBA,WAAmBA,QAGrBA;AADEA,UAAMA,iBACRA,C;EAyCaC,MACHA;AACyBA;AACjCA;AACAA,wBACFA,C;EAqLQC,UAESA,oBAA8BA;AAC7CA,kBAEEA,WAA2BA,QAA3BA;AAMFA,QACFA,C;EAQQC,QACYA;AAClBA,oBACEA,OADFA;AAGAA,KAAcA,QAEhBA;AADEA,OgBrbaA,OhBsbfA,C;EAGQC,QAC4BA;AAAZA,QAOxBA,C;EAOQC,MACNA;AAAaA,oBAAYA,OdrYvBC,IANiCvS,uBcmZrCsS;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,OF7kBJA,WAM2BA,sBE2kBJA,C;EAwDTC,QACgBA;AACvBA,UAAqBA,QAa5BA;IiBrToBA,gBjBwTgCA,OAbVA;MAC7BA,YAYuCA,OAVZA;KAC7BA,OASyCA,UAPVA,QAGxCA,QACFA,C;EAgBQC,MAEJA,OASJA,WAT6CA,QAC1BA,QAAgCA,QAAeA,C;EA6GpDC,UAEZA;QAAwBA,IAASA;AFltB1BA,GAAyBA,gBdoiCtBC;AgBlVVD,KACEA,QAsBJA;Ae7xBeA;Of8wBaA,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;ET50BcC,IACgBA,wCAC1BA,OAAOA,OAMXA;AAJEA,sBACEA,OPsqFG1R,iBOnqFP0R;AADEA,OSkLkBA,OTjLpBA,C;EA8BaC,MACXA;AACAA;AACAA,SACFA,C;EAYAC,sBAA8BA,C;EAsD9BC,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;CAkFtEC,sBAAqCA,C;EAcrCC,sBAAkCA,C;EAyBlCC,sBAAwBA,C;EAaxBC,sBAAkDA,C;CKpgB5CC,8BAA8DA,C;EsByvBtDC,QAEZA;AAAIA,YACFA,oBAEEA,aAgBNA;AAdIA,gBAcJA,CAZ+BA;AAC7BA;IAEEA,kBAGAA,CALFA,UlBtKYA;AkB6KZA,6BAIFA,C;EAYcC,QAEZA;AAAIA,WACFA,gBAYJA;AlB7NAA;AkBoNEA;IAEEA;AlBrMUA,CAAZA,SAAsBA,mBkBwMpBA,CALFA;GlBrL4CA;AkB6L5CA,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;ECl0BaC,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,UAm7HWA,2BACJA,qBACAA,oBACAA,qBACAA;AAr7HLA,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,KAIEA;AA7E6CA,UAkFlCA;AAAJA;AAlFsCA,UAsFlCA,qBACWA,OACbA,sBACGA;KAzFiCA;KAlB/CA;AAwGSA;AAtFsCA,UAgGjCA,sCAEJA;KApHVA;AAgHSA;KAeLA,SAEMA,uBAEFA,SAKOA,qBACUA;AA6yHyBA,SAhzHpBA;AAmzHCA,IA7yHFA;AACnBA;AAIcA;AAAdA;AACAA;KAEUA;AAzHfA;;SA0HUA,UAKHA;AADAA;AADMA,qBAGNA;IA1BaA,cAwCRA,uBAKLA,mCAKAA;AAFAA;AACAA;AAFMA;AAINA;IAXoBA;KA0BSA,+BAK/BA,oCAKAA;AAFAA;AACAA;AAFMA;AAINA;IAX8CA;YAwCvBA;AAXjCA,cAC6BA,SACnBA;AACNA;AACAA;AACAA;AACAA;AACAA;AACAA,KAEFA,OA0tGJA,0BAptGAA,CAqcEA,WAEEA,OACWA;KACJA,SACLA;AA1gBqDA,KAghBzDA,QACsBA;AAEPA;AAENA;AACHA;AAAJA,QpB31CgBC,OoB61CGD;AAEVA,gBADEA,KAAMA,+CAc2BA;;AAviBWA,KA8hBrDA;AAGMA;AAneVA,OAyeYA,yBAFCA,mBArefA,C;EAuL2BE,IAEZA;AAAbA,cAAOA,sBAAsBA,UAAIA,cAcnCA,C;EAWiBC,QACLA,0HnBpNqC3O;AmB2N/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;AnB7V6C5O;OmBgWV4O,sBAArCA,YACcA;AACZA,UAEEA;;AAGEA,UAGaA;;AAEfA,MAGJA,QACFA,C;EAmEAC,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,aH33DFA,mBG84DTA,CAfIA,gBACMA,yBAmBIA;AAELA;AAlBDA,QAE6BA;AAClBA,SADJA,oCAzBYA;AA4BfA;AACJA,UAAWA,kBAKnBA,CADEA,OAAOA,WACTA,C;EAIWC,QACGA;AAEZA,oBACFA,C;EAYcC,UpB/6CdA;AoB07CEA,uBACaA;AACXA,WACwBA;AAClBA;AAAJA,SACEA;AACAA,oBpBh8CRA;AoBm8CqBA;AAGfA,KACgBA;KACTA,WACLA;CpBv6CNC;AoB06CID;;AApBgBA,sBAlBEA,0BA0ClBA,+BpBh9CNA;AoBm9CQA,QACeA;SAKjBA,SAGAA,6BACaA;AACXA,sBACiBA;AACAA,SA1D0BA;AA6D9BA;YpBn+CrBA;AAOEA;;AoB+9CcA;;AACVA;KAIJA,WAAoBA,OAAOA,YAM7BA;AALEA,QACiBA;UpB98C2BA;AoBi9C5CA,6BACFA,C;EAWcE,QACEA;AAMdA,8BACaA;AACXA,WAEwBA;AAClBA;AAAJA,SACEA;AACAA,oBpB1gDRA;AoB6gDqBA;AACfA,MHjgEGA;;AGogEHA,MACgBA;AATLA,SAUJA,YACSA;AACCA,SAZNA;CpBv+CfD;AoBs/CIC;;AAvBgBA,sBAbEA,2BAwClBA,+BpB5hDNA;AoB+hDQA,QACeA;SAKjBA,qBA2UEA,yBAzUFA;KAGAA,6BACaA;AACXA,sBACiBA;AACAA,SAzBFA;AA4BFA;AACfA,MHriEGA;YjBmfTA;AAOEA;;AoB8iDcA;;AACVA;KAIJA,WAAoBA,OAAOA,YAO7BA;AANEA,QACiBA;AACfA,MHhjEKA;UjBkhBqCA;AoBiiD5CA,6BACFA,C;EAKcC,QACZA;SAAkBA,QAkBpBA;AAhBOA,SADqBA,iBAExBA;AAGFA,sBACuBA;cA6RFA,0BA3RjBA;AAEFA,gBACsBA,KAGfA;AAETA,OAAOA,OH3kEAA,kBG4kETA,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;IHz3DjCA,aG63DhBA,KAAYA,SAMhBA,MALoCA,oBACvBA;AAGXA,OADSA,WAEXA,C;EAOcC,eH14DMA;AG64DbA,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,IpBvqDdA;CoB0qDMA;AAYJA,MAAwBA,SAVLA;GpB7oDyBA;AoBiqD5CA,6BACFA,C;EAEeC,QAEbA,OAAOA,YAA4CA,SAErDA,C;EAaeC,QAA2DA;OAEhDA,QACtBA,SAuBJA;AArBmBA;AACCA;AACIA;AACCA;AACvBA,YACEA,SAgBJA;AAd8BA;AAoqBLA,YAAjBA,8BA/pBJA,OpBtzDgBA,iCoB+zDpBA;AAPEA,gBAEEA,OAAOA,eHvtEFA,aG4tETA;AADEA,WACFA,C;EAEcC,IAAsBA;AAGlCA,UnBpxC+C/P;;AmBwxC9B+P;AACAA,6BAKfA,UAGEA,YAESA;AAXkCA,SAOpCA;AATaA,SAMXA;AAHDA,InBzxCmC/P;AmBwyC7C+P,wBACeA;;AAEUA;AACAA;AACvBA,MAIJA,OAAcA,cAChBA,C;EAMcC,cAGLA;AAAPA,eAGIA,cACNA,C;EAWeC,cAGCA;AAIdA,2BACaA;YACQA,uBACjBA;KAIAA,WACgBA;AAEdA,YACEA;AACAA,SAGFA,YACgBA;AAduBA,SAS5BA,SAUNA,cACSA;AApByBA,wBA8DvCA,0BAvCAA;;SAIAA,sBAEMA;AAAJA,QACaA;AACXA,sBAGiBA;AADAA,SAjCkBA;AAsCzBA,sBpBx1DtBA;AAOEA;AoBo1DcA;ApBp1DCA,CA2Bfb;AoB2zDIa;KAIJA,WACEA,QAMJA;AAJEA,QACeA;UpBt0D6BA;AoBw0D5CA,6BACFA,C;EAoDYC,IACNA,gBAAsBA,QAG5BA;AADEA,OADYA,mBAEdA,C;EAOcC,IACZA;AAAKA,YAA8BA,QAsBrCA;AApBwBA;AAECA,sBAAvBA;AAEMA,oBlC52DYC,akC82DZD;IlC92DYA,YkCg3DVA,WAGUA,UACLA;AAAJA,MAGLA,WAGJA,KAAiBA;AACjBA,OAAOA,aACTA,C;EAacE,MAAsDA;AAE7DA,YAEHA,SADyBA,SA2B7BA;AAvBwBA;AAECA,sBAAvBA;AAEEA,aACgCA,GlCr5DhBA;AkCq5DdA,KACEA;KAGAA,kBAEOA;AAAJA,MAGLA,clC95DcA;AkCi6DCA,mBAA0BA,GHpuE3BA;KG0tEEA;AAUpBA,KACEA,UAKJA;AAH4BA,uBAAcA;AACxCA,MAA8BA,WAAcA;AAC5CA,OAAOA,aACTA,C;EAGcC,eACHA;AAAeA,cAAuBA,iBAC7CA,iBACaA;AACXA,UACEA,OAAUA,mBAA0BA,YAS5CA;YANYA,yBACJA,MAINA,QACFA,C;EAwTWC,MACLA;AACJA,qBACiBA;AACfA,gBACmBA;KAGjBA;AACAA,iBACmBA;KAEjBA,UAAMA,oCAIZA,QACFA,C;EAYcC,YAC4DA;AAMxEA,qBADcA;MAEGA;AAEUA,UAAZA,UACOA;KALRA;;AAGZA,MLh7FsCA;AKo7FpCA,MANyBA,IAU7BA,KAEWA,IADLA,OACFA,mBAyBNA;K/Bl7FAC,W+B25FcD;KAGGA;OAOQA,YANrBA,SACiBA;AACfA,SACEA,UAAMA;AAERA,WACEA,SACEA,UAAMA;AAERA,OAAUA;AACVA,UACKA,UACLA;KAEAA,WAINA,OL/8FOA,CADKA,QKi9FdA,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;iBnB1+FoC5Q;AmB8+FlC4Q;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ECvyIAC,aACiBA;AACfA,WAAsBA,QAexBA;sFAdYA;AAWaA;ArB0DHC;AqBxDpBD,QACFA,C;EAqBAC,MACEA,qBACFA,C;EAOEC,IACAA,wBAEEA,QAIJA;KAFIA,OAAOA,OAEXA,C;EC0ZUC,MlBjMRC,eAAyBA,GAAzBA,eAvPIC;AkBucJF,OAZgBA,KAAuBA,eACzBA,KAAuBA;AAYrCA,QACFA,C;;;;;;EChXUG;AAEFA,mBAC6BA,QAAnBA;AAgEhBC,WA9D0BD,KAAZA,gBACKA,GAAmBA,KAAZA,gBACAA,KAAZA,qBAWEA;AAPNA;AACSA;AACmBA,OAApBA;WAAgCA;AACxCA;AACyBA,GAThBA,EASJA,MAAOA;AACwBA,OAAxBA;WAH4BA;AAb1CA,OAxBRC,oBAyCUD,gBAjBFA,C;;;;;;;;;;;;;;;;;;;;ECxGLE,GF0HIA,cAlELA,yCAkEKA,CAlELA,0CAkEKA,CAlELA;AG6C8BA,KHqBzBA,CAlELA,cEzCYA,0BAETA,GAAKA,SAXQA,2BA8CpBA,C;EAyCEC,IAJ0DA,oBACbA;AAG7CA,kBAAgCA,SFrC9BA,2BEqCFA,AAA2DA,C;EAwSjDC,MF3QHA,8BAlELA,kCE+UkCA;WAAQA;AFvPrCA;AAtBAA,CAlELA;AAkEKA,GAlELA;AAkEKA,CAlELA;AEoVcA,kBACDA,OAAcA,SPrQpBA;AKdFA;GEsRwBA;AACVA;AAArBA,MFvROA,GAlELA;AAkEKA,CAlELA;AE4VuBA,yBAA4BA;AF1R9CA,oBE8RwBA;aP9BXC,aKhQbD,GAlELA;AAkEKA,CAlELA;AAkEKE,GAlELA;;AAwFKF,wBAxFLE;AEqWgBF;AFnSXA;AAsBAA,+BG1FwBA,IAAnBA,KD6WVA;AFnRKA,2BG1FwBA,IAAnBA,KDoXVA;AAQFA,SAG0BA;AAAyBA;GAC5BA;AF5ThBG,GAlELA;AAkEKA,CAlELA;AAkEKA,GAlELA;;AAkEKA,CAlELA;AAkEKA,GAlELA;AAwFKA;;AAtBAA;;AEyTLH,UAQFA,QACFA,C;EAGKI,eFvYDA;ILkUkBA,YOyElBA,MAUJA;AAPkBA;AAChBA,WF7UOA;;AEiVLA,CALcA,aAOlBA,C;EAeOC,MAAyCA,OP7arCC,OO8aLD,WACAA,gBACDA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EEzeAE,GJoIIA,cAlELA,kDAkEKA,CAlELA,qDAkEKA,CAlELA,mDGF6BA,MAAnBA,KC3DmBA;WJqJxBA;wCI9ITA,C;EAEKC,yBJoDDA;AIlDFA,WACEA,MAgCJA;AJmFSA;AI/GPA,WAEEA,MA0BJA;AAtBEA,eJyGOA;AIvGLA,WACEA,MAmBNA;AALeA,SAVAA;AJkGNA,GAlELA;AI5BFA,WACEA,MAUJA;AALEA,OJwFOA,sCAlELA;AIlBFA,OJoFOA,sCAlELA,kDIjBJA,C;EAEKC,qBTiViBA,qBS3UlBA,MAoBJA;ADkCkCA,KHqBzBA,IAlELA,gBINsBA,aAA0BA,GAAKA,kBAiBzDA,C;EAIKC,MAEHA;AT+DSA,IKhFPA,+BAkEKA;AI/CLA,WACmBA,YACPA,oBJrBZA;AI4BFA,WJ5BEA,QI4BFA,KJsCOA;AIrCLA,WACEA,UAGNA,C;;;;;ECzGKZ,uBLwEDA;AKrEFA,WACEA,MA4BJA;AL0GSA,GAlELA;WKjE2CA;AAE5BA;ALuJVA,4BG1FwBA,MAAnBA,KE/CVA;ALmHKA,GAlELA;AK5CFA;AAEEA,OAEJA,C;;;;ECvBKa,IACHA,iCAEEA;AACAA,MAoBJA,+DAdIA;AACAA,MAaJA,CATEA,6BACEA;AACAA,MAOJA,CADEA,0CACFA,C;EClBKC,IAEHA,KCVAA,mEDSgBA,YAElBA,C;EAeKC,GAEHA,KC5BAA,8DD2BgBA,YAElBA,C;EEnCKC,GLCHA;AACAA;AKAOA;UTqELhB;WA6CKA;AShHDgB,MACRA,C;;;;AhDsTiCC;CAFjBC,MAAoBA,YAAsBA,C;EAEhDD,IAAYA,cAA+BA,C;CAE5CE,IAAcA,sBC6JLA,WD7JiDA,C;EAgBzDC,MACNA,UAAwBA,UAC1BA,C;EAESC,IACLA,OW4pBGA,KADGA,WX3pByDA,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;EACzCC,0BALDA,KAAMA;AAORA,SACFA,C;EAyGKC,MACHA;oBAlHEA,KAAMA;AAmHOA,qBACbA;AACAA,MAOJA,CAJEA,oBAEEA,OAFFA,OAIFA,C;EAEKC,eACaA;AAChBA,SAAcA,MAKhBA;AAJEA,SAA4BA,UAAMA;AAClCA,gBACEA,YAEJA,C;CAGKC,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,IANiC/Z,aA2U5B+Z,QACTA,C;GAOMC,QACAA,UAAYA,QAAWA,GAE7BA;AADEA,UAA2BA,OAC7BA,C;EAEMC,WACAA;AAAJA,OAAgBA,QAAWA,KAE7BA;AADEA,UAA2BA,OAC7BA,C;EAuHKC,MACHA;sBAxaEA,KAAMA;GAyaIA;AACZA,OAAaA,MAkEfA;WAjEcA;AACZA,aACgBA;GACAA;AACVA;OAMJA,MAuDJA,cAdoCA,SAChCA,eAAoBA,QAApBA,QACoBA,wBAKhBA,UAxDWA;AA4DjBA,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,wCACiCA,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,OlBkPWA,mBACAA,ckBlPbA,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;CAkBIC,QACFA;WAE8BA,QAC5BA,UAAiBA,SAAqBA;AlB5VnCA;AkB+VHA,QAWJA,C;EAlBIC,2B;EA0CCC,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;;;;E7B5a9BC,IAAgBA;AAAJA,OAgD5BA,SAhD2DA,IAARA,WAgDnDA,eAhDgCA,OAgDhCA,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;;;C0C3IzCC,IAELA,sCADcA,EAIhBA,C;AzCsD0BC;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;;EAkBgBC,IAAYA;OAwB5BA,SAxB2DA,QAAVA,QAAoBA,GAwBrEA,eAxB4BA,OAwB5BA,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,0CACZA,C;;;ElBjEQC,cACMA;AACZA,WAAkBA,QAKpBA;AAH8CA,oBAANA;;AAEtCA,QACFA,C;CAGAC,IAAcA,qBAAUA,OAAQA,C;CmBRlBC,MAAEA,mBAAyDA;AAAvCA,8BAAmBA,MAAeA,EAAKA,C;;;;;A3CmB5CC;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,OR06EKA,IQ16EmBA,oBAC1BA,C;CAEYC,MACLA,cAAkBA,WAGzBA;AADEA,WAAsBA,EAAfA,KADoBA,EAAfA,IAEdA,C;CAEKC,MACUA,2BACEA;OACUA,YAAzBA,QAGEA,MAFQA,KACEA,IAGdA,C;;GR0EWC,aACLA;AmD7MAA,qBnD6MuBA,QAE7BA;AADEA,WAAOA,cACTA,C;GAiBSC,GACPA;IAfmBA,OAeLA,QAAOA,EASvBA;GAPMA;AAAWA;UAA6BA,MAApBA,KAA6BA;AACrDA,SAAwBA,QAHHA,EASvBA;;AAJEA,gBACEA,OAASA;AAEXA,OAAeA,OACjBA,C;GAEyBC,GACvBA;IAzBqBA,OAyBLA,QAAOA,EAWzBA;GAV2BA;AAAoBA;;GAEzCA;AAAWA;aAA8BA;AAC7CA,SAA6BA,QAJNA,EAWzBA;AWzOAA;AXoOEA,gBACEA,MmDpPEA,SnDoPiCA,UAC/BA;AAENA,OQxQFA,eRyQAA,C;;EAmkB2BC;CACrBA,IAAUA;AACVA;AACAA,oBAEDA,C;;;CA8fLC,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;QiC5sCDA,+BjC4sCgDA,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,iCA9gEJA,SAwiEgCA,QAChDA,C;;CA+LOC,IAELA,sCADwBA,gCAI1BA,C;;CAOOC,IAAcA,2BAAgBA,EAAQA,C;;AW/3E7CC;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;AVKwBC;EAAPA,IAAOA,WAA0BA,KAAUA,C;;AAErCA;EAAnBA,MAAmBA,WAA6BA,OAAsBA,C;;AAEtDA;EAAhBA,IAAgBA,WAAeA,KAAqBA,C;;AYtXnCC;CAAdA,IAAcA,kBAAgBA,C;EAE9BC,IACQA,4BACEA;OAMUA,iBAAzBA,gBbilBOC;Ga/kBQD;AACbA,sBb8kBKC;Ga1kBSD;AAEQA,gBGwmBTA,OhBhCRC;AajkBPD,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;AmBtC5BC,MnBsCoBD,KAGjCA,YGsbaA,aHrbfA,C;;EAsCcE,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,2BACUA;AACbA,WAAoBA,QAyBtBA;GAxBMA;GAAqBA;AAAzBA,YACuBA;;AACrBA,aACEA;AACsBA;IAhFwCA,EAAhEA,gBAjH2CC,EAAxBA,aAuMXD;;AAAeA,QACEA;AAAjBA,uBACkBA;AAlBTA,0BAKQA;AAgBrBA,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;;;;;;;AP3lBiBC;CAtZbA,IAEFA,aAiZsB/f,qBAhZxB+f,C;CAKIC,IAA8BA,OAsZjBA,MAXO5b,qBA3YmD4b,C;;AA08BtDC;CAAdA,IAAcA,eAAaA,QAAWA,C;;CAkUtCC,IAAcA,aAAQA,C;;;ES/1CzBC,oBACUA;CACRA;AACCA,MACHA,C;;;EAMOC,IAAkBA;MAEvBA;MAG4DA;MACxDA;8CACLA,C;;;EASHC,GACEA,WACFA,C;;;EAOAC,GACEA,WACFA,C;;;EAkCF1U,aAgEOA,kBAxDOA,gBACNA,KAPiBA;KASrBA,UAAMA,iCAEVA,C;;EAXI2U,GAGEA,WACFA,C;;;EAmECC,IAEHA;WAAgCA;KAC3BA,GACHA;QAGAA;oBAFeA,KAEfA;KAEAA,QAEJA,C;EAEKC,gBAGDA;OADEA,GACFA;KAEAA,SAEJA,C;AAsEgBC;EAAZA,IAAYA,qBAAgDA,C;;;EAEvCA,MAGvBA,YnBw1CFA,cmBv1CCA,C;;;EA0C0CC,MACzCA,IAAkBA,OACnBA,C;;AGzSsBC;CAAhBA,IAAcA,eAAEA,GAAMA,C;;;;EFhBxBC,MAEHA;;MACKA;KAgSmBA,WAhSEA,UAAUA;WAMRA;AAuB5BA,SApBFA,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,wGAXRA,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,IAAmCA;;IAOpCA,KAAYA,YAQAA,0BATdA;AAaEA;AAKAA,KAAkBA,iBAItBA,C;EAgFKC,IAG0BA;CA/N7BA;CACAA;AAgOAA,SACFA,C;CAEKC,MAG0BA;AA5N7BA,QAAoBA;AA8NpBA,YACFA,C;EAGKC,2BAaOA,MACRA;AACAA,MAGJA,CADEA,UACFA,C;EAqCKC;ACk8BHA,mBDh8BAA,GAAwBA,iBAG1BA,C;EAMKC,IAEOA,kBAERA;AACAA,MAIJA,CADEA,UACFA,C;EAEKC;AC46BHA,mBDx6BAA,GAAwBA,mBAG1BA,C;;;EArR4BC,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;;;EAwD4BC,GAC7BA,WAAqBA,OAAQA,GAC9BA,C;;;EAkGuBC,GACtBA,cAAmBA,GACpBA,C;;;EAsBuBC,GACtBA,aAAeA,OAAOA,GACvBA,C;;;EA8DGC,GAAkCA;SAQbA;AAnmBlBA,GA9EUC,EAAOA,OAqBcA,aA2pBhCD;AAEEA;GACIA,OAAsBA,EAnZ3BA,EAmZyCA;;AAAxCA,MACEA,MAAuBA,EApZ1BA;KAsZ8BA,CAA3BA;CAEFA;AACAA,MAkBJA,wBAnhBmBA,iBACFA;CAogBXA,IA7ZHA;CA8ZGA,MAGFA,MAUJA,2BAJyBA;;AACEA,CAAvBA,QAA2CA;CAC3CA,MAEJA,C;;;EAH+CE,IAAOA,aAAcA,C;;;EAKpEC,GACEA;;GACyBA;AA5qBxBA,CA4qBCA,IA/sBSC,EAAOA,OASmBA,OAssBSD,aAD9CA;AAEEA;;AAC2BA,CAA3BA;CACAA,MAEJA,C;;;EAEAE,GACEA;SAC0BA,EAxbzBA;;AAybKA,eACAA,EA9sBYC,UA+sBSD,CAAvBA,IAAuBA;CACvBA,gBALJA;AAOEA;KACcA,EA/bfA;;IA+b6BA,QAC1BA;KAE2BA,CAA3BA;CAEFA,MAEJA,C;;;;;;ECmgByBE,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;;Af5wCjCC;E0CxSgBA,IAAYA,kB1C0SHA,W0C1SGA,Q1CwS5BA,a0CxSiDA,C;CAE/CC,MAAwBA,OAAIA,WAAOA,C;CA2Q7BC,MAAaA,O5CxIrBzO,U4CwI0ByO,Q5CxI1BzO,6B4CwI8CyO,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;AX4hBWA;;CA2BfpT;AA3BeoT;MWzhBZA,C;;;CA6ISC,QACZA,UAAMA,sCACRA,C;AAyD+BC;CAAnBA,MAAmBA,oBAASA,C;CAC1BC,QACZA,eACFA,C;CAaKC,MACHA,aACFA,C;EAIQC,IAAeA,UAALA;cAAWA,C;CAGtBC,IAAcA,kBAAeA,C;;;;;CC/N3BC,kBAwHeA;AAvHtBA,WACEA,OAAOA,IA6HFA,SArHTA;KAPSA,sBACLA,WAMJA;KAHyCA,GA6KEA;AA5KvCA,yCAEJA,E;EAEQC,IAAUA,WA4GMA,aAOfA,EjBxNSA,GiBqGoCA,QAAeA,OAAMA,C;EAKtDC,UAuGGA,UjB6FxBnJ,UiBtFSmJ;AA7GUA,iBjBtGVA,OAySTnJ,UiBjMAmJ,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;A1BghBRjP,cAEyBA,QAhIGiP,QA8H5BjP,Y0BlhBEiP,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,wBdihBUA,EAAUA;Wc5iBPA;AA6BoBA;IAGjCA;AAEAA,UAA4BA,SAKVA,IAHpBA,uBdqgBNA;AAOEA;Ac1gBgBA;AdkbE1W;;;Ac/aZ0W,UAGJA,UAAMA,iCAERA,YACeA;;Gd6fWA;Ac5fxBA,QAIEA;KAIgCA;AAChCA,SAEEA,UAAMA;KAERA,M9BmdGlI;CgB2DPvM,Kc5gBMyU,KAGGA,GdsgBmCA;ActgB1CA,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,uBpCkaJA;AoChaMA,OAA4BA;;AAEpBA,OAGZA,WAAoBA,WAGtBA;AAFEA,QAA8BA;UpCybcA;AoCxb5CA,6BACFA,C;;ECvCQC,MA6YyBA,aA1YHA,UA0YqBA;AA1Y5BA,QAEvBA,C;GAsBgBC,GACQA,QAAaA,EAErCA,C;;;;CtB9IUC,IAESA,yBADSA;AAG1BA,SAAiBA,Od0gC8BnkB,iBc1/BjDmkB;AAb4CA;AdugCKnkB;Ach+BjDmkB;AAtCoBA,mBAShBA;AAEFA,OdigCEC,eAVWD,aADFA,Qct/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,Uf+DPA,oCe5DcA,MACDA,0BAGAA;iBAeDA,GAbVA,UAEEA,6QACuBA;AAMEA;4LAFCA;AACxBA,UfnCcxX;;AeqCZwX,SAAcA;AACdA,WACKA,cACLA,KACEA,0BfzCUxX;;Ae8CNwX;Qf9CMxX;OeoDNwX;AACAA;QfrDMxX;;CAmHlBA;AexDYwX,YAIJA;CACAA;AACAA,QA2CVA,CAzEmBA,IAiCbA,SAAcA;AACDA;GAANA,IAIIA;GAANA;AACPA,UAEEA,qBAQIA;MAPWA;GAANA;AACPA,WACYA;;AACVA,MAJGA,IAQPA,UACEA,iBfrFYxX,OesFWwX;YAGHA;OAEtBA,SAAoBA;aAIxBA,WAEEA,MfjGgBxX;aeoGdwX;CACAA;AACAA,QAMNA,EAHEA;CACAA;GfM4CA;AeL5CA,6BACFA,C;;Ef2E2BC,gBACrBA,oBAASA;ImCxtBgCC;CnCmpB7CzV;;AAwEmBwV;;CACfA,OACDA,C;;;EA6GqBE,MACtBA;sBACEA,IAAsBA;KACjBA,WACLA,IAAsBA;KAQtBA,mBAI6BA,GAJ7BA;AACEA,sBACEA;KACKA,WACLA;KAGMA,QAIbA,C;;AsChxBkBC;CAAdA,IAAcA,gBAAeA,C;AtC6JKC;EAAzBA,GAAcA,iBAAkCA,C;;CT1IzDC,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;;;CSwPOC,IAzFPA;CA2FSA;GACSA;OAEdA;CA5DFvW;AA8DmBuW;;CACfA,QAKFA,CAFmBA,OAEIA;AASGA,QAAaA;AACbA;AAG1BA,gDALkCA,EmC/tBSd,2CnC+uB/Cc,C;;CTzPOC,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;;;CKrkB3BC,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,OAQJA,UAIEA,WACQA;;AAxDWA;AAYkBA,aA8C9BA,WACGA;;AA3DSA,UA+DTA;AACFA;AApD6BA,qBAwDAA;AAAPA;AApEXA;KAsErBA,WAFeA,oBAEyBA,gBADCA,cAS7CA,MAFIA,iCAF0BA,aAI9BA,C;AsBWyBC;CAAbA,MAAaA,sCAAwBA,C;EAqVzCC,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;AlB1uBhCC;EAAlBA,IAAYA,oCAAcA,C;CuC/C3BC,IAAcA,YAAMA,C;AvC8BIC;CAHjBC,MAAoBA,eAAsBA,C;EAGhDD,IAAYA,iBAA+BA,C;CAG5CE,IAAcA,sBhBmaLA,cgBnaiDA,C;EAGzDC,MACNA,UAAwBA,aAC1BA,C;EAGSC,IAAeA,iBAAgCA,C;;;CwChBjDC,IAAcA,QAAWA,C;;;ExC8lBxBC,IAAUA,aAAUA,OAAMA,C;CA4B3BC,cAAuCA;AAAzBA,6BAAmCA,C;;EoB0nBrBC,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;;;EAmHgBC;aA22CZA;GHn+Ec/V;GGo3EKgW;;AAmHvBD,mBpC/vEO7L;GoCouEH8L;IH58EchW,YjCwOXkK;AoCwuEP8L,MpCxuEO9L;GoCyuEH8L;AAAJA,WpBzsEeC;IoBquENF;GACLA;AAAJA,WpCtwEO7L;GoC0wEH6L;AAAJA,WpC1wEO7L;AoCg5BS6L;sC;EAMHG;UAAsBA,SAANA;AAAhBA;;a;GAGgBC;aAqKXA;AApKwBA;AADbA;ATvoC/BA,GSuoC+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,MAk1BSA;AA10BhBA,iBH1iDWzW;GGqjDOyW;AACXA,kBHtjDIA;KGihDdA;AAsCGA,oBACWA;AAiBkCA;AAX1CA;AAWVA,OAAYA,kBAHMA,GAIpBA,C;GA2iBSC,UAAcA,mBA70BAA;AA60BgBA,2BAAHA;AAAbA,QAA8BA,C;GA+P5CC,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,IA9uCDA,aA+uCjBA,aAAcA,QACdA,aAAcA,QACAA,IAAdA,iBAzIeA;;AA0IGA,sBA5tCMA;AA6tCTA,mBAzIGA;;AA0IGA,sBA9tCGA;AA+tCNA,mBADNA,UADNA,UADGA,UADJA;KADAA;KADAA;KADIA;KADIA;KADNA;KAQ0BA;AATrCA,QAWFA,C;;;;;EAzlBEC,gBACEA;MAAaA;CACbA;AAtnCUA,QAAgBA,MAA6BA;;aHzzBvChX,cjBmSlBrC;AoBshBYqZ,QAAgBA,MAA6BA;OA4nCzDA,C;;;EAEwBC,MACtBA;+BACEA;KAGAA,mBACEA,GADFA,OACEA,OADFA,OAIHA,C;;;GAqrCKC,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,GTziIxBA,OSy8HqBA,QAAcA,GAiGlBA,QAAOA,GAExBA;AADEA,gBAA+CA,KAAiBA,gBAClEA,C;EAwBIC,IAecA,sDAKLA,SACEA,WAAeA,aAOdA,QAAeA;GAQlBA;AAAJA,OACEA,eAA2BA;QHnmIlBtY;GG6mITsY;WAAeA,IAAYA;AACtBA,kBH9mIIA;KGykIdA;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;;;AEh0IqBC;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,gBACPA,YACFA,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;;;GAgErCC,cAAkBA,aAELA;;;AACDA;OADCA;AAEGA;OAFHA;AAGOA;QAHPA;AAIDA;QAJCA;AAKUA;QALVA;AAMUA;QANVA;AAOCA;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;;;EC/KkBC,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;YC8EgBA,KHAzBA,wBE9ESA;ODvBoBA,WckIlCE;A/C2QFC;WAtMID,gBiCtMyBF,ajCsMzBE;ANsrGFF;AwCj2GgBA,OAAaA,MF4B7BA,mBE3BwBA,MAAeA;YAErBA;ItC8pBA5a,asC5pBO4a,YAAMA;YFyF1BA,CAlELA,wBErB+BA;AACzBA;WAMFA;WACFA,QAAeA;GAEbA;WACFA,QAAeA;GAEbA;WACFA,QAAeA;OAhCTC;AACRA,wBADQA,C;;;EAqDCG;UFoDJA,MAlELA;AAwFKA;;CAxFLA;AAkEKA,CAlELA;AAkEKA,cE/CSA;AF+CTA,cE9CSA;AANLA;;a;GAUAC;UF0CJA,MAlELA;AAkEKA,CAlELA;AEwBSA;;a;EAIAC;UFsCJA,MAlELA;AAkEKA,CAlELA;AE4BSA;;a;EAWNC,IACUA;;AFgDRA;AtC6uGLA;AsC7uGKA,CAxFLA,qCGF6BA,MAAnBA,KD+CRA;AFqBGA,GAlELA;AAkEKA,CAlELA;AAkEKA;AAsBAA;;AAtBAA,CAlELA;AAkEKA;cEAWA;AAEhBA;AAIoBA,SFxEpBA,sCEyEkBA,GAAJA,SAAmBA;AAC/BA,WACEA,MASNA;AAPYA;MACWA;AACnBA;AACAA;AACAA;QAGJA,C;EAaKC,IF/BEA,wBAlELA;AEoGAA,WACEA,MAqCJA;;AFxEOA,GAlELA;AAkEKA,CAlELA;AAkEKA;GAlELA;;AAkEKA;GAlELA;AAkEKA,CAlELA;gBEmHsBA;AFjDjBA;IEoDDA,G7B3JctvB,O6B4JoBsvB,OADlCA,YlCgLsBA,SAwB5B7T,eAxB4B6T,SAwB5B7T,SAxB2D6T,KAAVA,KAAoBA,GAwBrE7T,mBAW0B6T,MkClNtBA,WlCkNaA;WAASA;AgCvQnBA,yBAlELA;AAkEKA,CAlELA;;AEiIsBA,2FAEfA,GAAyBA;AFjE3BA,GAlELA;AAwFKA,sBFysFcA;;AE/tFdA;iBEwEPA,C;EAEKC,GAAqBA;CF5IxBA;AAwFKA;AEoDmBA,QAEgBA,C;EAUrCC,QAEHA;AAAkBA,CAAlBA;GACAA;;AACAA;AACAA;GtCwekBA;AsCtelBA,UACEA;AACAA,MAkBJA,CAfEA,iDACEA,OAAuBA,QADzBA;AAMAA,YADiCA,CAbjCA,aAcAA;AACEA,OFzGGA,gBE2GLA;CA6J8BA;AAlP1BA,UF3CCC,iBE4CHD;CFzFFC;AAwFKA,0CEwD8CD;AFpIvCE;AEoIaF,qBAmC3BA,C;EA3BKG,6B;EA8BAC,QAEHA;IAAIA,WACFA,MAgBJA;IPyHoBA,aOrIhBA,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;AF7HEA,2BG1FwBA,IAAnBA,KD0NRA;AFhIGA,0BG1FwBA,IAAnBA,KDiORA;AFvIGA,2BG1FwBA,IAAnBA,KDwORA;AF9IGA,6BG1FwBA,IAAnBA,KD+ORA,gBA0FJA,C;;EA1RIC,IAIYA,QFjDdA,YEiDmDA,UFjDnDA,0BA6CKA;IEMCA,WAEHA,C;;;EAmKDC,IACEA,cAAaA,EFzNjBA,UE0NGA,C;;;EAKDA,IACEA,cAAYA,GACbA,C;;;EAKDA,IACEA,cAAaA,EFvOjBA,OEwOGA,C;;;EAKDA,IACEA;AAAUA,SF9OdA,iBE+OMA,MAsFHA;AAjFWA,QFpPdA,gBA6CKA;GEyMMA;;AAALA,WFpLDA,GEqLOA;AAAJA,WFrLHA,IAlELA,wBEyPmCA;AAE3BA,MA0ELA,MAtEiBA,SAAoBA;AACXA,OAASA,sBACzBA,GAAyBA;AF/LjCA,IAlELA,wBFiyFmBA;AI9hFXA,MAkELA,KA9DiBA;;GAAmBA;GACLA;AAEpBA,QF1QdA,qBE2QUA;AAAJA,WACEA;MAEAA,YAEaA,QFhRrBA,uBEiRUA;AAAJA,UAyDwBA;MAtDtBA,YAEaA,QFtRrBA,gBEuRMA,MAAYA;SAERA,WACFA;AACAA,MAAaA,EF3RrBA,QE6RMA,MAwCHA,CArCKA;AAAJA,KF9NCA,CE+NCA,GFjSNA;GEsSSA;AAALA,cACiBA;AFrOhBA,CAlELA;GE2SUA;AAAJA,SACEA;KACKA,SACLA,iBAAoBA,MF9S5BA;;AEiTiCA,QFjTjCA;2BA6CKA,uBE6QCA,cAAgBA,EF1TtBA;CE2TMA,UAAqBA,IAAgBA,GAAiBA,WAC7CA;AAAJA;AAIgBA;AAJhBA,YAILA;CACAA,SFpRDA,kBEwRFA,C;;;EAsCHC,IF9TKA,kBEgUJA,C;;;EAKDA,cACMA,EAAMA;AAAVA,YFjTGA,IAlELA,wBEoX6BA;AFvUxBA,mBE0UJA,C;;AA+C4CC;EAA3CA,IAAWA,0CAAgCA,qBAAmBA,C;;;EEnenCC,cAC7BA;WJ8HKA,CAlELA;MI3DAA;WJ6HKA,CAlELA,2BI1DDA,C;;AAqDCC;EADqDA,IACrDA,iBAeDA,C;EAhBsDC,IACrDA;mBADqDA,cACrDA;4BAAkBD,SJKlBA,cAkEKA,MAlELA;;;AAkEKA,CIlEHA;AACAA;MAGoBA;YDyCQA,KHAzBA,wBIzCiBA;;AJ8DjBA,MAlELA;;AIQAA,MAAaA;AJ0DRA,CIzDLA;OAfqDC;AACrDA,wBADqDA,C;;;ECzDvDC,aACMA,SACFA;IL6DFA,UAwFKA;;IAxFLA,uDAwFKA;;IAxFLA,mDKrDFA,C;;;EAIE3B,IACEA,WACDA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;c5CmCQ4B,IACTA,0BADSA,A;cC2sCmBC,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;cmB/xCRC,IAClBA,MADkBA,A;cUkGCC,IAAkBA,UAAlBA,A;cA4BVC,IAAWA,WAKvBA,IALYA,A;cAMAC,IAAmBA,WAK/BA,IALYA,A;cCgYUC,IbuXnBA,KAASA,KavX+CA,kYAArCA,A;cdgSHC,IAAmBA,iCAAnBA,A;cA2FFC,sC;cmBxWVC,InBhgB8BA,MmBggBDA,IAA7BA,A;cC86GYC,IAAiBA,MAAjBA,A;cIx9HTC,IAAYA,WAYxBA,IAZYA,A", + "x_org_dartlang_dart2js": { + "minified_names": { + "global": "A,1019,B,1189,C,187,D,904,E,126,F,837,G,1243,H,953,I,917,J,140,K,315,L,845,M,857,N,907,O,914,P,920,Q,1248,R,964,S,1182,T,836,U,1091,V,100,W,144,X,1197,Y,253,Z,844,a,42,a0,877,a1,903,a2,912,a3,1196,a4,957,a5,961,a6,1170,a7,974,a8,993,a9,1252,aA,1080,aB,1124,aC,284,aD,117,aE,88,aF,60,aG,124,aH,45,aI,846,aJ,853,aK,863,aL,864,aM,868,aN,872,aO,873,aP,892,aQ,894,aR,896,aS,902,aT,905,aU,906,aV,911,aW,922,aX,934,aY,935,aZ,936,a_,836,aa,110,ab,371,ac,53,ad,52,ae,13,af,858,ag,865,ah,898,ai,19,aj,924,ak,969,al,125,am,134,an,1198,ao,55,ap,1251,aq,849,ar,850,as,836,at,1245,au,918,av,923,aw,933,ax,970,ay,972,az,1004,b,1214,b0,99,b1,943,b2,950,b3,1168,b4,956,b5,324,b6,961,b7,988,b8,994,b9,998,bA,856,bB,861,bC,862,bD,325,bE,866,bF,881,bG,888,bH,891,bI,895,bJ,51,bK,536,bL,1235,bM,926,bN,927,bO,928,bP,929,bQ,930,bR,931,bS,932,bT,937,bU,938,bV,940,bW,947,bX,948,bY,56,bZ,954,b_,939,ba,1136,bb,1020,bc,1021,bd,1022,be,1023,bf,1024,bg,1033,bh,1037,bi,1051,bj,1107,bk,1111,bl,1180,bm,1039,bn,1040,bo,1127,bp,1049,bq,1062,br,1099,bs,1100,bt,109,bu,252,bv,392,bw,835,bx,314,by,836,bz,268,c,867,c0,971,c1,973,c2,322,c3,975,c4,1236,c5,986,c6,987,c7,995,c8,996,c9,997,cA,883,cB,883,cC,884,cD,893,cE,899,cF,900,cG,533,cH,908,cI,909,cJ,913,cK,921,cL,925,cM,941,cN,944,cO,945,cP,949,cQ,1234,cR,955,cS,958,cT,962,cU,965,cV,1241,cW,976,cX,977,cY,978,cZ,979,c_,323,ca,1000,cb,1002,cc,1016,cd,1017,ce,1018,cf,1025,cg,1026,ch,1032,ci,1034,cj,1035,ck,1179,cl,1038,cm,146,cn,17,co,47,cp,836,cq,851,cr,852,cs,859,ct,860,cu,869,cv,870,cw,326,cx,878,cy,879,cz,880,d,959,d0,981,d1,982,d2,983,d3,985,d4,989,d5,990,d6,991,d7,992,d8,999,d9,1001,dA,137,dB,1041,dC,1042,dD,1043,dE,1044,dF,1045,dG,1046,dH,1047,dI,1224,dJ,1048,dK,1050,dL,1050,dM,289,dN,1069,dO,1069,dP,1070,dQ,1071,dR,1072,dS,1086,dT,1087,dU,1090,dV,813,dW,1140,dX,1146,dY,1154,dZ,1176,d_,980,da,1005,db,1006,dc,1007,dd,1008,de,1009,df,1009,dg,1009,dh,1010,di,1011,dj,1012,dk,1013,dl,1014,dm,1015,dn,1061,dp,1027,dq,1028,dr,1029,ds,378,dt,1030,du,1031,dv,1031,dw,1031,dx,1031,dy,259,dz,1036,e,916,e0,14,e1,1210,e2,1210,e3,1210,e4,788,e5,788,e6,1212,e7,1213,e8,1236,e9,1216,eA,1097,eB,280,eC,131,eD,1147,eE,68,eF,39,eG,1,eH,1211,eI,18,eJ,0,eK,815,eL,1141,eM,1259,eN,1175,eO,1056,eP,1059,eQ,1092,eR,1137,eS,1244,eT,1190,eU,1261,eV,1225,eW,1217,eX,1158,eY,1223,eZ,1219,e_,1199,ea,83,eb,372,ec,1239,ed,1239,ee,833,ef,843,eg,1222,eh,901,ei,836,ej,1077,ek,1220,el,952,em,1083,en,1187,eo,836,ep,1102,eq,1106,er,1108,es,1094,et,1078,eu,1117,ev,1126,ew,1150,ex,384,ey,127,ez,164,f,915,f0,1184,f1,1260,f2,1088,f3,1238,f4,1245,f5,1167,f6,836,f7,1084,f8,1098,f9,836,fA,1152,fB,1233,fC,250,fD,172,fE,174,fF,180,fG,263,fH,265,fI,264,fJ,262,fK,136,fL,154,fM,185,fN,247,fO,171,fP,163,fQ,388,fR,260,fS,281,fT,183,fU,368,fV,276,fW,94,fX,389,fY,267,fZ,1159,f_,1101,fa,1155,fb,1193,fc,1242,fd,836,fe,1134,ff,1237,fg,1247,fh,1171,fi,1055,fj,1169,fk,1172,fl,1206,fm,1236,fn,1253,fo,1103,fp,1104,fq,1109,fr,1110,fs,1165,ft,1076,fu,1079,fv,1096,fw,1122,fx,1125,fy,1131,fz,1151,h,121,h0,122,h1,1201,h2,43,h3,23,h4,56,h5,82,h6,1240,h7,46,h8,22,h9,1226,hA,1060,hB,1173,hC,1174,hD,1191,hE,1195,hF,1149,hG,1148,hH,1250,hI,874,hJ,875,hK,984,hL,885,hM,886,hN,887,hO,1218,hP,1188,hQ,1202,hR,1221,hS,1058,hT,1133,hU,1192,hV,836,hW,1064,hX,836,hY,1208,hZ,1081,h_,1164,ha,1227,hb,1228,hc,1229,hd,1230,he,1231,hf,1255,hg,1256,hh,1257,hi,1258,hj,1095,hk,1123,hl,1153,hm,1074,hn,1075,ho,1139,hp,834,hq,838,hr,839,hs,840,ht,841,hu,842,hv,847,hw,848,hx,1181,hy,1215,hz,836,i,24,i0,1160,i1,1183,i2,1249,i3,1259,i4,1082,i5,1145,i6,966,i7,967,i8,968,i9,1135,iA,1057,iB,1085,iC,1112,iD,1113,iE,1115,iF,1116,iG,1118,iH,1119,iI,1120,iJ,1121,iK,1128,iL,1129,iM,1130,iN,1138,iO,1063,iP,1114,iQ,1178,iR,160,iS,182,iT,162,iU,266,iV,370,iW,101,iX,369,iY,379,iZ,367,i_,1132,ia,1089,ib,1142,ic,1143,id,1144,ie,1054,ig,1203,ih,1204,ii,1205,ij,1207,ik,1209,il,1254,im,836,io,1194,ip,1052,iq,1065,ir,1066,is,1067,it,1068,iu,1105,iv,1156,iw,1157,ix,1185,iy,1186,iz,1053,j,963,j0,152,j1,147,j2,153,j3,148,j4,387,j5,386,j6,145,j7,141,j8,128,j9,1093,jA,1162,jB,1163,jC,1166,jD,61,jE,89,jF,40,jG,138,jH,57,jI,1200,jJ,76,jK,130,jL,129,jM,377,jN,377,jO,87,jP,85,jQ,86,jR,123,jS,142,jT,244,jU,77,jV,393,jW,84,jX,1232,jY,390,jZ,93,j_,98,ja,58,jb,158,jc,248,jd,151,je,175,jf,159,jg,251,jh,179,ji,150,jj,161,jk,329,jl,383,jm,274,jn,288,jo,184,jp,273,jq,283,jr,282,js,277,jt,275,ju,119,jv,118,jw,188,jx,54,jy,41,jz,1161,k,871,k0,1246,k1,91,k2,95,k3,391,k4,44,k5,854,k6,855,k7,815,k8,876,k9,951,kA,178,kB,177,kC,181,kD,833,kE,835,kF,834,kG,75,k_,278,ka,836,kb,1226,kc,1227,kd,1228,ke,1229,kf,1230,kg,1231,kh,1255,ki,1256,kj,1257,kk,1258,kl,1141,km,1095,kn,1123,ko,1153,kp,1074,kq,1075,kr,1139,ks,165,kt,167,ku,166,kv,168,kw,170,kx,169,ky,173,kz,176,l,946,m,910,n,889,o,890,p,897,q,245,r,1073,t,1177,u,942,v,1003,w,882,x,919,y,960,z,836", + "instance": "A,1301,B,1360,C,1341,D,1366,E,1335,F,1263,G,1365,H,1279,I,1280,J,1382,K,1396,L,1310,M,1318,N,1289,O,1362,P,1389,R,1393,S,1309,T,1314,U,1285,V,1331,W,1272,X,1273,Y,1352,Z,1363,a0,1266,a1,1388,a2,1303,a3,1311,a4,1321,a5,1329,a6,1330,a7,1298,a8,1299,a9,1312,aA,1328,aB,1294,aC,1296,aD,1374,aE,1315,aF,1284,aG,1317,aH,1300,aI,1269,aJ,1270,aK,1274,aL,1275,aM,1277,aN,1338,aO,1342,aP,1344,aQ,1345,aR,1346,aS,1347,aT,1348,aU,1352,aV,1354,aW,1355,aX,1358,aY,1361,aZ,1369,a_,1376,aa,1313,ab,1325,ac,1268,ad,1276,ae,1277,af,1278,ag,1344,ah,1350,ai,1351,aj,1353,ak,1357,al,1359,am,1378,an,1379,ao,1381,ap,1386,aq,1397,ar,1397,au,1290,av,1304,aw,1305,az,1308,b0,1375,b1,1380,b2,1399,b3,1400,b4,1401,b5,1402,b6,1262,b7,1271,b8,1271,b9,1267,bA,1332,bB,1333,bC,1334,bD,1336,bE,1337,bF,1339,bG,1340,bH,1340,bI,1343,bJ,1344,bK,1344,bL,1356,bM,1367,bN,1368,bO,1371,bP,1373,bQ,1377,bR,1380,bS,1383,bT,1383,bU,1384,bV,1384,bW,1385,bX,1386,bY,1399,bZ,1271,b_,1372,ba,1390,bb,1391,bc,1392,bd,1395,be,1398,bf,836,bg,1282,bh,1306,bi,1307,bj,1291,bk,1327,bl,1319,bm,1320,bn,1292,bo,1293,bp,1322,bq,1295,br,1297,bs,1323,bt,1283,bu,1316,bv,1286,bw,1287,bx,1288,by,1324,bz,1326,gB,1360,gG,1365,gN,1289,gO,1362,gP,1389,gR,1393,gV,1331,gZ,1363,ga1,1388,ga5,1329,ga6,1330,gaD,1374,gaO,1342,gaQ,1345,gaR,1346,gaS,1347,gaT,1348,gaX,1358,gaZ,1369,ga_,1376,gai,1351,gak,1357,gal,1359,gam,1378,gan,1379,gb0,1375,gb3,1400,gb4,1401,gb5,1402,gbC,1334,gbD,1336,gbF,1339,gbN,1368,gbO,1371,gbQ,1377,gbZ,1271,gbq,1295,gbr,1297,gl,1364,gn,1349,gp,1281,gt,1387,h,1398,i,1302,j,1396,k,1264,l,1364,m,1370,n,1349,p,1281,q,1265,sl,1364,t,1387,u,1394,v,1394" + }, + "frames": "4zHA6He8jDyB;oCAKAAyB;eAKCbG;kBACeDE;gEAIlBAE;KAGOFO;iGAaA5iDAA8CgBCeANKyEuC,A,I;qMATrCxEAAmB0BDeAVWyEoC,A,AAUvCi+CkC,A;8QG9HSmEIAsCwB4CyB,A;2FArBxB5CIAqBwB4CyB,A;8GAohBbnHuB;u7EEnkBLruByC;QAEFokByC;sXEsSFpkB2C;QAEFokB2C;eAuqBwBpkBsB;0xBNl7Bb01BuB;uEA6BL/GG;oQAuJqBrJqC;6gBA8JlB4LiB;cAAAAa;yCAuBQ5CS;gJAYV4CiB;6FAqBL0DAARF1CiB,A;+FAkBWaW;4dAyV4BtBO;qCAYjB3jDAArrBxBkyBU,A;oEA4tByCyxBY;ulBAmGCIAW77BzBJO,A;qGX28ByBIAW38BzBJO,A;8SXm/BZKO;8JAAAAO;wCAmBqB9QG;0JAuCOzGoB;2KAgCnBAwB;gBASAAuB;8DAyCAvaqC;wfAyQZAmR;iZA4MAAW;qfA0DyBAW;0WAkCJAW;eAOpBAkC;6BAIiB0boD;OAChB1bU;0DAOCs1BI;cAIgBt1BwC;2JASjBAU;0EAiCmBAW;sCAGtBAc;4JAsEK6vBQ;oCAEDFK;AACEAK;wKAyDR3vBAY34D8BAgE,A;keZ4iE1BAkC;cAEAA0D;y4CAyPEA4D;6sBAqF6BmxBuC;AACHwCmC;yEA4HtBzjDAUx+DTCMA3B4Bu8Cc,A,M;qDVyhElB1sBiD;kKAuJXAY;4ECriFOozBI;YACcziDAAsE3BDAFlJA+9CyB,kF,A;QE4E2B99CAAuEpBi+CE,A;OAtEWwEI;uBAKKxiDAAzCJwgDkB,AAAZgCI,A;6CA+CMAI;YACkBziDAAyD/BDAFlJA+9CyB,kF,A;QEyF+B99CAA0DxBi+CE,A;OAzDWwEI;uBAGKxiDAApDJwgDkB,AAAZgCS,A;4EA0EEziDAA+BTDAFlJA+9CyB,kF,A;QEmHS99CAAgCFi+CE,A;sDAvBE/9CAA2BTHAFvJA+9CsB,A,0BEuJA/9CkF,A;QA3BSGAA4BF+9CE,A;+DAfoCuDqB;UAElCthDAAYTHAFvJA+9CsB,A,0BEuJA/9CkF,A;QAZSGAAaF+9CE,A;gEAMPl+CAF9JA+9CyB,6B;yJE0K2C0DoB;gLAsCjCfmB;0KAaF1gDAF7NR+9CyB,mG;2DE2O2B2E4D;wTA+EXhiDc;ygBcpRPIAA9FFkjDqB,A;2IA4OP9TADjBI5gBgD,A;WCiBJ6b0B;AAC+DyYa;AAA7DwBQ;oBACAAI;iBACmB1WQ;AAErB0WQ;64CE80BuChQiB;wiBPv7Bd6HG;gBAIjB3BW;AADuC7DAAgK/BuFQ,A;WAtJOtDO;AAFAuDG;gBAGf3BiB;AAD0CjFAAgKlC2GM,A;gBApFCpGAAzBsBmGG,A;oCA2BECG;uCA2JzBEG;sBAgJMlBmB;kEAyEPpFAA/YwBmGG,A;mEAwZbCG;sEAMAAG;sEAMAAG;sEAMWtGG;uDAMkBDAA7WvCyGK,A;aAgXGlHAApWHgHG,A;uBAsWQjHG;6EAQHoBAApWIJO,A;AAqWJGG;sEAMIGAAlVT2FG,A;uBAqViC5GG;6EAU5BGQ;AACDqGQ;uBAGDtGAAzVH0GG,A;gFAgWIxGAAtVJuGG,A;sBA0VULO;uIAeNEkB;yBAGDII;mFAaCJkB;0BAImBFO;AACEAS;AACtBMM;sFAcK5FsB;AAIANK;iBAGQDK;8CAMiB2FAAxRRltBc,A;AAyRrBksBM;AAEAHM;AAEADK;sHAwCF4BM;yDAaZ7EK;sEAuBFEG;cAIOwIoB;mSAkFkB1ImD;uBAKvB6De;uDAeYUI;uBAEN36CQAvZUi6CoB,A;mEAgee14CAGz5BtBg0CqB,A;aHy5BsBh0CAGz5BtBg0CW,A;CH05BK/zCgBAlFlB40CiB,A;uCAsFcgFO;GAEL0DoB;OAAwBtJO;wBAOM9zCO;AAA9ByyCG;gBAA8BzyCAAKrCo3CY,A;SAS0BqEW;AADVtgB0B;iBAGXtPAAmCTAAAAAAAACMurBG,A,A,W;SAlC6BmBoB;AAE/Bv4CG;AADOyyCG;gBACPzyCAAfAo3CY,A;sDAuBWp7CQAhiBoBu8Cc,A;mCAwiBtBn4CQAhiBSm4CgB,A;mBAmiBfv8CMA3iB4Bu8CkB,A;oBAgjBVj6CMA1hBHi6CoB,A;gEA0lBlBh4CAAoiF6B8uC+B,A;6BAjiFzB8DG;qEAcYqFAAr/BYxEAAuKhBuFQ,A,A;AA+0BQpGAAl7BemGG,A;0KA87BnBtGAA33BJyGG,A;IA43BMxGiB;AAYdgFU;sEAUCz3CQA8BmBkzCAA15BZ+FI,A,AA25BMhGI,A;+DArBXgBC;AADPgDK;0CAsCAl3CAAg8E6B8uC0B,A;mEAr7EtBaC;AADPgHK;+BAKW/DAAnhCwBmGG,A;kEAwhCCtFAAr7BxBuFK,A;eAs7B4B3GAA56B5B2G2B,A;gHAu7BChBc;gDAeN9DI;AADOjBAA18BF+FO,A;mDAo9BFxFG;iBAKVaG;6GAsBOwIoB;YACGrJG;iBAKVaG;uFA0BWHU;+DAYAAU;uCAWTvC0B;qJAuCc/PuB;mBAiBTsSc;AADS+DAAzwChBrFAAoEmCmGQ,A,AApEPtFAAuKhBuFK,A,A;QAmmCQ3GAAzlCR2GS,A;MA2lCmBhBiB;AAD3B9DI;kiDA2NmB0EQ;qBAEDIO;sCAYA7FAAv1CV+FM,A;AAw1CKhGG;qCAMG0FQ;AACFuHkB;AACEvHU;gEAOGIO;gBAELEI;0GAaMNQ;oLAgBFIO;AACjBh5CAAo+DwB8uCAAK/B/nCAAGa6rCAA58GwBmGG,A,A,wCAy8GhBn2CAAgBdq6Ca,A,K,A;2DAh/DY5JAAv3CCNO,A;AAw3CeXM;AAEbgBM;AACcwFW;AAEd9FM;AACc8FW;AACN/FM;AACP+FQ;0DASCIQ;2DAUEAQ;oEAYbFM;yBAIIEe;AAEJEI;kGA6BAtGAApjDwBmGG,A;wIA6jDdtFAA19CTuFK,A;cAy+Ca/FAAp+Cb+FG,A;cAs+CSpGAA9kDcmGG,A;uEAulDV1GAA1+Cb2GS,A;mBA++CIvGAAzhDJyGI,A;GAkiDMxGG;4HAgBOJAAz/Cb0GM,A;AA0/CGzGG;eAODCAAv/CIOG,A;gDA+/CFiOuB;yDAoLPpPAAHKiPG,S;uBAKPjPAALOiPG,I;oCAWDtGO;+DAKOxBI;AACPtDgB;oGAiBOoLM;wBA4BAtGM;aAWHyDS;AADPxDe;oBAGFnEyB;AACH4HW;gCAMS9LG;cAGV8Ea;AAEa+GW;oBAET3HuB;AACH4HW;kCAKSnMG;cAGV8EgB;AAEuBhcAApuDfseI,A;AAquDK8EW;gCAGXpLAA95D6BmGS,A;AA+5DdhHQ;AAKhBkMW;mBAqCHtHS;AACAOQ;qBAuFe8GW;AADPxDW;oBAGsBlJAAIpBkHAAz3DPltBsB,A,AA03DH6rBM,AACALM,W;AANG9CAApFAiKC,AAAOzDa,A;qBAiGKwDS;AAFNzNAA/CK3VAAz0DJseW,A,A;AAy3DFsBW;oCAGLxGAAnGAiKC,AAAOzDa,A;0CA0GO5HAAzjEgBmGG,A;oEAikEvBPAAn5DPltBsB,A;AAo5DH6rBM;AACAIK;CACATM;4BAQekHS;AAFN3NAAzEKzVAA30DJseW,A,A;AAq5DFsBW;oCAGLxGAA/HAiKC,AAAOzDa,A;4CAsIO5HAArlEgBmGG,A;0DA0lEZ1GAA7+DX2GS,A;2FAm/DavFAA7/DbuFG,A;IA8/DiBpGAAjmEMmGc,A;AAmmEd1GAAt/DT2GI,A;gCA6/DARAA57DPltBsB,A;AA67DH6rBM;AACAIK;CACATM;4BAQekHS;AAFN9NAAhHKtVAA70DJseW,A,A;AA87DFsBW;oCAGLxGAAxKAiKC,AAAOzDa,A;wCA+KO5HG;0DAMV8CgB;qCAKG8CAA39DPltBsB,A;AA49DH6rBM;AACAIK;CACATM;0BAOekHsB;AADPxDW;oBAIRtJAAKUsHAA7+DPltBsB,A,AA8+DH6rBO,AACAIM,AACATM,W;AATG9CAAtMAiKC,AAAOzDa,A;8BAqNM5BQ;sCAEIIG;AACCpeAAj/DXseI,A;kCA0/DMNQ;qCAGmBFO;AACZIwB;AAIPEK;AACKpeAAngEXseI,A;uCAuhED9IAAVOwIU,mB;AAYDoFG;AADPxDW;oBAIOrJAAKLqHAAziEPltBsB,A,AA0iEH6rBM,AACAIM,AACAES,AACgBmBW,AAEdtBI,AAA6BoBK,AAE/B5BM,W;AAdG9CAAlQAiKC,AAAOzDa,A;yCAsSN5HAArvE6BmGY,A;AAsvErB/GAAvqEFgHG,A;AAyqEDLG;AAAgB5GkB;QAEhBhCGAjBLnVAAnjEMseuB,A,A;AAskEK8EG;AADPxDW;oBAIOzJAAKLyHAAtlEPltBsB,A,AAulEH6rBO,AACAIM,AACAEM,AACAXM,W;AAVG9CAA/SAiKC,AAAOzDa,A;qBAyUDlKoC;AAEM0NC;AADPxDW;oBAIRnJAAKUmHAApnEPltBsB,A,AAqnEH6rBO,AACAIM,AACAEM,AACAXM,W;AAVG9CAA7UAiKC,AAAOzDa,A;qBAoYDxKAAtCPCiB,AADYrVO,AACZqVAAKkBmDM,AACcwFW,AAEd9FM,AACc8FW,AACN/FM,AACP+FsB,oF,AAZvBrCY,A;AAyCiByHG;AADPxDW;oBAIRvJAAKUuHAA/qEPltBsB,A,AAgrEH6rBO,AACAIM,AACAEM,AACAXM,W;AAVG9CAAxYAiKC,AAAOzDa,A;uBAgaDrKSAPHvVAAlrEIsewB,A,A;AA2rEK8EC;AADPxDW;sCAGLxGAApaAiKC,AAAOzDa,A;sDA8aQ5BQ;kCAICIQ;AACXpGAAl4EyBmGe,A;uEAm5EvBPAAruEPltBsB,A;AAsuEH6rBO;AACAIM;AACAEK;CACAXM;4FAqKoBoIM;AACJSU;kBAGTtGkB;4LAcH0FW;cAIAAW;cAIAAO;MACWgCI;AAAkBzGG;AAAqBiEU;cAIlDQO;AACIwBM;AAA2BQG;AAA3BRAAkWSxHU,A;cA9VbgGO;AAAsBtJM;AAAiBsLW;cAIvChCO;AAAsBvJM;AAAkBuLW;eAIxChCO;AAAsBnJM;AAAemLW;cAIrC/BAAgFRDQ,AAAYPS,AACe5FQ,A;iEArEXmIG;AACRhCO;eAIkBzEG;AAAqBiEU;AAC/BxRK;iBAIAgUG;AACRhCO;eAIkBzEG;AAAqBiEU;AAC/BxRK;iBAIAgUG;AACRhCO;eAIkBzEG;AAAqBiEU;AAC/BxRK;cAIRgSW;AACACAAqCRDQ,AAAYPS,AACe5FQ,A;sCA9BnBoGAA6BRDQ,AAAYPS,AACe5FQ,A;cA1BnB6CAA2KStbAAoCE0YY,AAAmB2FI,MACtBuCI,AAAkBzGM,AACPvBY,A,AArC3BgGU,AACAAW,A;eAzKQCAAqBRDQ,AAAYPS,AACe5FQ,A;eAlBnB4CAAyKS9BAAqCEbY,AAAmB2FI,MACjBuCI,AAAkBzGM,AACZvBY,A,AAtC3BgGU,AACAAW,A;cAvKYrDAA4KKqEmB,AAGjBhBO,AAAmBzQkB,AACnByQW,AACACAApKADQ,AAAYPS,AACe5FQ,A,M;wCANhB2FU;aACGwCI;AAAkBzGK;sDAWrBjBkB;uCAIX0FU;uEAQW1FkB;0FAIyCyDoB;kBAM7BxOmB;SAKbySM;AAAkBzGO;AADZGAAhzBD7HAA76DsBmGW,A,AA+6DjB/GAAh2DNgHG,A,UAm2DavGAA/2DbyGG,A,AAk3DY0EI,+C;AAsyBxBmBO;AAEctEkB;AAGdsEU;4BAMqBgCiB;AAEZxCQ;sBAGTQO;4BAE4BzEc;AAChB1HAA9uFuBmGY,A;AAgvF/BgGO;YAGmChSK;cAInCgSO;+BA+BKRwB;AAnBYwCa;uCAwBIxCc;aAIbAc;cAIRQkB;WAIJAU;oBAKKRU;iBAGIAwB;AAC0BemB;AACbAK;UACchFM;AACmB9BAA3iFlBltBc,A;AA4iFfksBM;AAEAHM;AAEADK;AACpB2HO;2BASAAO;OAGyB7FY;kFAgCnBqFc;UAERQO;AAAsBpJM;AAAgBoLY;iBAItChCO;AAAsBxJM;AAAcwLY;0EAOnBlIgB;AAAmB2FI;MACtBuCI;AAAkBzGM;AACPvBY;4DAiBKuGK;8FASZ1GQ;+BAEAFI;sBAOAEQ;gCAGAFI;wBAOL9FAAj6FsBmGG,A;4BAm6FR/GAAp1FfgHE,A;IAq1FYjHM;AACP6GQ;gBAEDIK;SAIEhHAA51FNgHM,A;AA61FDpGAA56FwBmGQ,A;wFAm7FbrGU;AACPkGQ;QAEDIK;qEAwDDrG8B;AACGqLW;YAEThJ8B;AACFiJW;0GA8DLnP0B;sBAEY8DAAljGuBmGG,A;wCAyjGnCvyCAA4ZEosCG,A;0CAtZeoGE;AADHxGAAx7FFuGc,A;YA67FAnGAAnkGuBmGsB,A;iCA2kGR1GAA99Ff2GQ,A;0EAu+FM3GAAv+FN2GY,A;wBA2+FMvFAAr/FNuFY,A;qCA6/FIvFAA7/FJuFY,A;qEAghGI3GAAtgGJ2Ga,A;2FAkhGQ/FAAvhGR+FY,A;yBAkiGa3GAA7hGb2GS,A;+FAyiGiB/FAA9iGjB+FQ,A;+IAskGIzGM;AACAAM;AACGqGgB;AACAAQ;SAGkBDwB;AACAAwB;oBAGjBKO;AACAAI;kEAOkB1GAApkG1B0GM,A;AAqkGN1GAArkGM0GQ,A;sQAgmGM3FAA1mGN2FQ,A;AA2mGM3FAA3mGN2FU,A;aAgnGsB5GO;AACAAM;AAGdgBM;AAEAAM;AACewFW;AACAAQ;yBAMf9FM;AAEAAM;AACe8FW;AACAAQ;wCAKAFI;YACbMgB;6BAOaNI;YACbMkB;6BASbNM;YACaMgB;YAMOnGM;AACAAM;AACP+FW;AACAAQ;0BAIFMS;0BAGEAI;2BAIEJM;qCAMcJM;sBAENAM;YACbMkB;+BAQRFM;0DASIrGAAvvGHyGM,A;AAwvGGzGAAxvGHyGQ,A;WAswGOtHAAnhDLiPG,I;2CAshDC3HI;YAIMyEI;uBAEH/EQ;AACWlVoBAsLAsUa,AAAjBsHK,A;+BApLWpGK;wBAITxGQ;gBAOFAW;AACAAQ;8BAWIkGQ;2BAUAIO;AACAAU;6CAwCA9FM;AACAAM;AACA0FgB;AACAAQ;aAEFzFAA30GF+FM,A;AA40GE/FAA50GF+FG,A;oCAg1GMFO;AACAAU;mCASPpGAAn7GwBmG0B,A;sCAu7GItFAAp1G3BuFK,A;eAq1G+B3GAA30G/B2GS,A;0DAu1GiBlK+B;uBAQlB8DAA58GwBmGG,A;qDA+/G1BqF4B;AACExFQ;oBAEEMI;4CAOgBlBa;AAAjBsHI;grBS9oHR/NS;4BA2BRjmBU;wBAwGOASApCSumBAAAAvmByB,A,a;uCAmDCyvBE;uMA2DEzvBoB;AAAAqsBW;8HAiCPxQM;mLC0PI8MiB;AACIzDO;uHAsBJyDkB;AACIzDI;kGAoBXhoCgB;uFAuIkBorCqB;gCAGYnCG;AACxBkKM;sHA+BcIG;2CACDxDK;0CAIboDM;mDA4EIGG;wLAkBTyDwB;wBAMgBnLe;AACFoCsB;AACZ/FyB;gDAcI+FwB;iBAEVmBiB;AAGAXmB;uQG/1BQNU;iBAUqBprBqB;qCAKrBorBU;sFAoBkBprBiB;6IAuD3B9iBW;iBCi5EG8iBqB;OAAAAU;0mDEngE+BAsC;kBAQ9BAqC;6CCjbMAkB;iFAoBNkjBG;6aCrCAljBWAwBQgrBAAAANoB,A,A;wGCXuC1qBAZo+BjB8lBoB,A;6zCD92BxBuPgB;wTAiQN7CO;mFAoB8B5HAAL9BgIIdhYwB4CuB,A,A;4ScsgB7Bx1BiC;iDA+DYyxBgB;AAED1EO;0BAGFAO;oBAGEAU;kCAsBO3IW;+FAgHawMmBFltBc1CK,A;cEytBnCYkB;oEAKRkHAAtLgB3GwC,A;qWT5kBX7CASyLSoIAhB4NX1CiB,A,A;QOnZAvHO;6zB2B4vBCoLmB;8EAqBc/1Ba;qBAGpB+1B6B;qBAMK7SG;2sBCrqBa4Ne;+DAGACoB;wDAIAC2B;wHCsrBFzEkH;ysBAAAAS;YAAAAI;2eAsOTvsB0B;CAIG6yBiF;KAAAAsEA0dAwCO,iG;KA1dAxCyD;OAAAA4C;sNAyNC7yBAnBtPwB8lBkB,A;siCmB6XnB9lBAnB7XmB8lB4B,A;kmBmBu8BvBqPmB;0CAOItnBiC;gMAoCP7NiD;+GAeIAc;2GASX81BApBp8CJ9IO,A;+BoBw8CajD0B;+BAGI/pBc;wJAHJ+pBa;2BAqBG/pBc;AAAJ81BoB;2FAYL5SG;0LA4BQljBc;qBAEgBm1B2B;kEAS3BWApBhhDJ9IO,A;+BoBohDaxD2B;+BAGIxpBc;wDAQJkpByB;iLAYkBiM8B;AACfn1Bc;AAAJ81BoB;uFAUiBX4B;AAGtBjSG;gNAeAuG0B;uFAQyB0LkB;wRAoCrB1Da;sFAeAAY;6PA+BEzxBwB;wCAuBNkjBG;yNAiCH2G0C;OAIYwFiC;uCAIA+Fa;kEAYFp1BAnBpzCuB8lB4B,A;oHmBo0CvB9lBAnBp0CuB8lBsB,A;8dmBu4CDoD0B;wMAkBpBlpBc;AAAJ81Ba;oBAAAACpBn1DZ9IY,A;+DoBg2DO9JG;gOAwEQ2OAlC32DOJa,A;YkC62DLAY;mOAsCDA8B;kEAYLAQ;sBAA4CAiB;0mBAuZhDzSK;mDAtBgCmPAH3pFdnuBW,A;oRGirFlBgfS;2nBAg1BQoFe;qLA+PwCpkBAnBxgGlB8lBwB,A;6+GoB9hCvBqHqB;gHC0aEntBAqBwsBSAAvCjoCvBAAA9B0ByvBAAAAzvBiC,A,A,yB,A;iOmBuHtBwvBqCAIoBpLW,8P;OAJpBoLAAUWpLoB,gB;ySCjHMGc;AAATwLyC;AACUxLC;AAATwL0C;AAEJxLC;AAATwL2C;AAYC5LK;AADAIC;AADLwLc;0EA2E0D+EoB;AACbCY;2BAGPhFO;AAAOAS;AAASAW;WAyS1BxL8B;AAATwLkC;mBACfvL8B;AACUDC;AAAVwLgC;AAE6BxLG;AAATwLgC;AACVxLC;AAAVwLsC;kCAE8BoFiB;AACvB5QoB;mBAIuBAG;AAATwLgC;AACTxLC;AAAVwL0C;mCADOxLoB;gBAOoCsNAP7BzBJa,A;AO8BYlNG;AAATwLsC;AACXxLC;AAAVwLuC;AACsBtsCAAyEV8gCG,AAATwLkD,A;AAzEHvLwB;AAAsB/gCAA2EvBssCQ,A;sBAzEQxLuB;AAGFC+B;AAIPNS;cAGOM2B;AAOPNS;4CAKAxgCAA6BO6gCG,AAATwL+B,AACcxLC,AAAVwL+B,AACqBxLG,AAATwL2D,AAEAxLC,AAAVwLoC,AACqBxLG,AAATwL6B,AACVvL6C,AADFDiB,AAHFAiB,A;sCAnBsCwLe;AAErB0BY;gCAMblNsB;AAESAiB;gCAkB2BuPAPlbrCMO,A;2gBSnDsB7Pc;AAATwLkD;AACMxLC;AAATwLqD;AACaxLC;AAATwLmD;AAKrB7LW;2BAEcMyC;AACDA6B;8BAIFuLS;AAASAM;kBAKSxLyC;iCAQHAmC;gCASCAG;AAATwLiD;yBAKiBxLqC;AACRAC;AAATwL0D;OAGiBxLqC;AACPAC;AAATwLkD;0BASkB0BqB;OAIItNK;AAApCII;AAAPwLgB;yDAuBSoFI;AAAApF+B;AAEKxLyB;2CAQQwLY;WACyBAQ;KAChCxLY;iICpGGwLS;AAASAM;kBAMNxLG;AAATwL6C;2BAcNvL4B;AAIFNW;eAGoBKG;AAApBwLO;AAAOAoC;oWEX0BXmE;yBAkBAA8D;oBEjC5B/rCc;iBAECAAaLV0sCiB,AAAWzLiB,A;gJ7D+TqByOW;+CAqB5B/CgB;8hBGtLsBlCA2D8FuB9tBiB,A;+B3D9FvB8tBA2D8FuB9tB2B,A;+B3D5F/CguBiB;8CA4GAAoB;2MAuBAA6B;saAiJO4EIArUwB4Ca,A;0KA6c/BvHqB;oVAsJ4BmEe;gBAaFpyBoB;QAAAAW;kJAkD1BiuBuC;gc+C1uBW2Da;AACHAY;4gChB2DD+CiC;mfA6PEDiB;6b7B5VqB10BS;eAAAAe;OAAAAa;8XAoKPAiB;4BAAAAoC;uPEpIGAmB;OAAAAa;+PA2UAAS;mBAAAAe;OAAAAa;85BE9PjBgqBkB;oEAkBFgII;yMR6FiC4DqB;oEAmBpClEO;mKAYAJO;yFAKMtxBe;sBAEe41BS;6BAGlB51Be;usBA80CqByxB+B;gvBA85BChFa;AAAeAe;8CAOQAe;8BAOlChCiC;AACAsIS;kLW59EX/yBkB;uDAAAAU;SAIqB8gBgB;YAAAAAAJrB9gB0B,A;2EAWEwlBAA+PiB6CS,A;oFAhOEAiB;4FAKAAI;gGAUf1BGAgLNyBa,A;2OA/JLiJwCAQWjJI,sF;yLA0EaCI;oFA2BDroB+B;wfAwHlBAU;sBAAAAAA0BTAAAAAAO,A,A;6dE9UI81BAGgnBF9IAA2BuBwHQ,A,A;0BHvoBnBsBAG4mBJ9IAA2BuBwHc,A,A;oBHjoBnBsBO;AAIJAAGkmBA9IAA2BuBwHO,A,A;iDHtnBRlIU;oTAiCHqJAGubLpDM,A;iBHvbKoDa;0GAoDgBxKAAvIImBO,AAAmBAK,A;AAuIFpGgC;yBAInBoGQ;+HC7FjBhDG;qBAAAA0B;AAAgCMU;AAAYZW;sFAmFlDhpBW;oCAgDOs0BG;QAAAAW;4BAQkBrEK;iNAuElBqEkB;AAIIvCAA5GEnIe,A;4EA+GVD0B;mrCJ3JHx5CiB;iBAAAAAAoZ0Bu8CqB,A;eA9YDn4CMAsZZm4CqB,A;4aSjahBlEkB;waAsKAxoBc;gMCxQQwqBW;iEAQZnFS;2EAgBYmFW;qFA4HPmGW;oBACE1DY;AAA6B7GI;8CAazB6GK;kGAQLwDU;qTAsIkB5UW;kGAoBA7buC;QACPijBwD;wDASOjjB+B;QACPg1ByD;4GAoGbzKG;6CAQiBrFQ;AACL4DY;sBAQd5rCgB;gFAQEqtCG;kGAiBiBrFQ;AACL4DY;iCAQd5rCgB;iSAkJFmvCW;mCAQAZmB;iGA8DAvuCmB;kGAwBAAmB;8jBAwEyBqzCGAnmBlBtDS,AAAUJa,A;gCAqmBwB1GE;2BACDAQ;mDAOc2CiB;AAC3BRmB;IACqBnCI;+LAkBjBmKC;IAAAAAA5qBxBrDS,AAA+BnCO,A;gIAqrBC3ES;iBAElBuKAA7rBd7FU,A;0DAksBsB1Ea;6QCotB3BkKU;oe2B1gDwBrwBkB;sBAAAAW;QAAAAa;6CA6QF8tBAalDuB9tBU,A;QbkDvB8tBAalDuB9tB6B,A;sFb6R5BoyBe;oTrBlaf0DmB;AACAAAX2hBJ9IU,A;AW1hBI8Ie;qUCIAhMG;sBACK8CS;gDAIMlFI;8DAMCoCa;AAAc8CE;AAAa5LG;8BAMvC8IU;AAAiChJAjBtG9B9gBU,A;AiBsGiB4sBG;iBAAa9LOjBtG9B9gBU,A;QiBuGAAc;+BASH8pBS;CACF8CiB;oGA8BE9CS;WAAoB8CO;QAEjBrEyC;sCA+BHuBS;QAAoB8CS;6CAOVlFI;oCAEqBAM;4FAiClB8NgB;kDAMb1LS;QAAoB8CE;wJA6BnBrE6C;+BAC+BbK;8FA4BrBoCgB;yCASAAU;gCAEclJA1BkZH5gBsB,QAAAAY,A;0d4BpnBbgzBqE;wNAqBmBhSqB;oEAQdhhBc;AAAJ81Ba;mBAAAEAdghBM3GoB,A;8FchgBSrOQ;+FASvB8UAdkfN9IAA2BuBwHQ,K,A;QczgBkBtRG;kmBsBsE1BljBc;+FAQRkjBG;yDCnCqBtHa;UAAAAI;gJtB/GJ5bAd4+Ba8lBiB,A;Ocz+BV+PAAwCbnQAAG4B1lBAd87BL8lBoB,A,A,c;iCc79BtB/CAdw/BR3Ue,qB;iKcr8BMgXiC;6UAqCAiEU;yTA6IXrpBkB;4BAAAuuBe;0fA6P0BvuBoC;0lBAatBg2BAfyDc3GgB,A;iFehDR2GAfgDQ3GgB,A;ce3CR2GAf2CQ3GgB,A;kBepCR2GAfoCQ3GkB,A;AenCR2GAfmCQ3GC,AAApBrCY,A;yMePQgJAfOY3GO,A;6FeKhB2GAfLgB3GsB,A;oCecbnMG;8Ff8EMtsBAAntBMk5BI,A;AAmtBfgGAAjGJ9IM,A;AAkGI8IAAlGJ9IU,A;ipCT9KwBvMK;+KSiQNzgB+C;iEAKd81BAAxFJ9IO,A;0HAuGoBp2BAAztBDk5B2C,A;mwDAwBWiDc;sToBgvCpBvEsB;uEAKFAwB;AACAAyB;ueAoNgB/FMA22CboJAHj+EWJ2B,A,AGq+ElB5Ra,mBAGFiWApBluEF9IAA2BuBwHY,A,A,AoBwsErB1HOA/BY+EAH18EQJY,A,AG48EpBqEApBtsEF9IAA2BuBwHU,A,A,MoB6qEJsBApBxsEnB9IAA2BuBwHQ,A,A,coBgrErBsB4B,A,oBA4BAAApBvuEF9IAA2BuBwHa,A,A,coBgtErBsBApB3uEF9IAA2BuBwHU,A,A,A;qLoB+1ByC1SG;qCAA9D9hBG;mVAwac6fG;iBAEIgSAH1iDEJmC,A;qBGojDyBAiB;uHA+jBV/RG;oPAwYjCGmB;IACAwDa;+DAIArDa;sBACA8BK;mBACAhCa;sBADAgCK;iPAnlBeiN2C;AACU8CAH/6DPJc,A;AGg7DlBqEApB1qDJ9IS,A;AoB2qDqB+BQ;AAHFAoB;wNAssCExJ0FAgBdvlBG,A;0BAhBculB2B;4fA41BAsLU;AAAc/QiB;mGAc/BqJgC;aACAC6B;cACAHwB;aACAM+B;4OAaAJ+B;UACAC6B;uMAoDGppBO;AADFggBW;2MAgEe6RAHlmIEJgC,A;wCG4mIkBAiB;oZEvhIlCzxBwB;27BC5cOyxBY;mBAID0DkB;oIAQWAG;iBACSAG;mKAgDdDM;YAAXzCArCoOAzyBW,A;iBqCpOWk1BW;yGA3BGjRI;EAAAAG;wtBCpDV8LS;AAASAM;2BAKbxLiD;AAEKAmC;iEAaZznBAsBTAq2B2D,A;kYtBoBkBpDc;gCAMETADxBH2CG,A;gBCuBwB9NK;AAAPGwB;QACdgLWDxBH2CmB,AACJQAS0JuBzyBkC,A,AT1Jbk1BgB,aAAAAa,A;AC2BDXO;aAAAxEO;AAAOAY;8CAIf8BAtC+pBQJa,A;2BsC5pBAlNC;AAAhBwLO;AAAOAiB;kOAmCexLM;AAATwL+B;AACjBvLiC;AACAAyC;AACAuLsB;AACUxLC;AAAVwL0B;AACAxLc;SACAAc;4EAI8BAM;AAATwL+B;AACXxLC;AAAVwLuC;yEAGgCxLM;AAATwL+B;AACbxLC;AAAVwLoC;gFAYWvLgD;AAEb+PO;AAAS/PC;AAATuLqC;AAUI7LW;eAImBKG;AAATwL+B;AAAyCxLC;AAAVwL6B;AAEzCxLiB;AACACqC;AACAAqC;AACUDC;AAAVwL2B;AAGAxLiB;AACAAc;yBAMAwLO;AAAOAS;AAASAsB;uGA0BSxLwB;AAATwLiD;mCASPxLG;AAATwLmC;AAA6CxLC;AAAVwLiC;AADnCxLiB;AAISAG;AAATwL2D;AADAxLiB;AAISAG;AAATwL+B;AACcxLC;AAAVwLiD;2BAFJxLqB;GAMcsNA7B1JIJO,A;mB6B2JpB7QSlC+KwB5gBe,SAAAAS,aAAAAmB,A;AkC/KxB6bM;WAAAAuB;AACc0IsB;AAGWAG;AAATwL+B;AACFxLC;AAAVwL6I;qHAQgBxLG;AAATwL6B;AACPvLsB;AAAqBtB4C;AAEfqBiB;AACEAiB;yBAKZwLsB;AACAvLwC;0GAiBciNQ;gJAYAlNgB;MAIhBsPM;AAEAMUAzFkB7PiB,UAEZyLuB,AACAvL0C,A;AAuFN0PIAlCqCHuD,qB;yFA4CAtCa;kOAiBrCoCS;kEASarP2B;AAITNS;iBAGSM0B;AAITNS;iBAGSM2B;AAITNS;iBAGSM6B;AA0FTNS;kDApRU6LY;UAAcAS;AAASAiB;AACzBzLmB;AACOAI;2DAsKWyLU;iGAcAAO;gFAOhBAiB;eAMAAgB;AACFzLsB;oBAEoCCG;2CAEtBAI;AAAhBwLO;AAAOAiB;0FASOxLI;AAAhBwLO;AAAOAiB;AAAgB7MQ;+CAQjB6MqB;6CAMOAuB;aAEb8DY;oBAIa9DgB;8CAKaAQ;qBAQvBxLC;GADAwLkC;qBAMcxLC;AAAVwL+B;oEAMqBAsB;AAEHAW;QACQA2B;AAEcAc;AACpCzLuB;gBAMgByLQ;gGAUzBzLkB;gCAwCFAkB;2DAQYCI;AAAhBwLO;AAAOAiB;UACDzLmB;wJEjbYCC;AAAVwLkC;cACcxLC;AAAVwL2B;6LAsDEAc;AACcxLM;AAATwL6J;AAINxLC;4CAIgCJK;AAAPGwB;YACTCM;AAATwL6C;YAITxLC;8HCvELwLU;AACIvLqC;AACNAqC;AACcAI;AAApBuLO;AAAOAgD;AAEKvLsC;AACNAsC;AACcAI;AAApBuLO;AAAOA4C;6hZ3CswCQsD0G;CAAAAG;6DAUAC8G;CAAAAG;2DAUACuD;CAAAAG;6DAUAC2D;CAAAAG;kJ8B5xBgCjEU;igBKmB/B0BM;" + } +} 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..64bfa61aa7 --- /dev/null +++ b/docs/static-assets/styles.css @@ -0,0 +1,1314 @@ +.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 { + 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..4546cced07 --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor-class-sidebar.html @@ -0,0 +1,40 @@ +

    + +
  1. Constructors
  2. +
  3. AutonomyCommandEditor
  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. createTask
  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/AutonomyCommandEditor-class.html b/docs/widgets/AutonomyCommandEditor-class.html new file mode 100644 index 0000000000..ad41b3ad7d --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor-class.html @@ -0,0 +1,429 @@ + + + + + + + + AutonomyCommandEditor class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
AutonomyCommandEditor
+ +
+ +
+
+
+ +
+
+ +

AutonomyCommandEditor class + +

+ + +
+

A widget to edit an AutonomyCommand.

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

Constructors

+ +
+
+ AutonomyCommandEditor() +
+
+ +
+
+
+ +
+

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, 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/AutonomyCommandEditor/AutonomyCommandEditor.html b/docs/widgets/AutonomyCommandEditor/AutonomyCommandEditor.html new file mode 100644 index 0000000000..e10d66058b --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor/AutonomyCommandEditor.html @@ -0,0 +1,121 @@ + + + + + + + + AutonomyCommandEditor constructor - AutonomyCommandEditor - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
AutonomyCommandEditor
+ +
+ +
+
+
+ +
+
+ +

AutonomyCommandEditor constructor +

+ +
+ + AutonomyCommandEditor() +
+ + + + + + + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/AutonomyCommandEditor/build.html b/docs/widgets/AutonomyCommandEditor/build.html new file mode 100644 index 0000000000..c8c6cd802f --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor/build.html @@ -0,0 +1,155 @@ + + + + + + + + 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: () => createTask(context, model),
+  ),
+  const SizedBox(width: 8),
+  ElevatedButton(
+    style: ButtonStyle(backgroundColor: MaterialStateProperty.all(Colors.red)),
+    onPressed: model.abort,
+    child: const Text("ABORT"),
+  ),
+],);
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/AutonomyCommandEditor/createModel.html b/docs/widgets/AutonomyCommandEditor/createModel.html new file mode 100644 index 0000000000..576d990c89 --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/AutonomyCommandEditor/createTask.html b/docs/widgets/AutonomyCommandEditor/createTask.html new file mode 100644 index 0000000000..821a0a70bc --- /dev/null +++ b/docs/widgets/AutonomyCommandEditor/createTask.html @@ -0,0 +1,162 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + 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..e74571d8a3 --- /dev/null +++ b/docs/widgets/BuildContextUtils.html @@ -0,0 +1,168 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + + + diff --git a/docs/widgets/BuildContextUtils/colorScheme.html b/docs/widgets/BuildContextUtils/colorScheme.html new file mode 100644 index 0000000000..82191bc0c5 --- /dev/null +++ b/docs/widgets/BuildContextUtils/colorScheme.html @@ -0,0 +1,136 @@ + + + + + + + + colorScheme property - BuildContextUtils extension - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
colorScheme
+ +
+ +
+
+
+ +
+
+ +

colorScheme property +

+ + + +
+ +
+ + ColorScheme + colorScheme + + +
+ + +
+

Gets the color scheme of the app.

+
+ + +
+

Implementation

+
ColorScheme get colorScheme => Theme.of(this).colorScheme;
+
+ +
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/BuildContextUtils/textTheme.html b/docs/widgets/BuildContextUtils/textTheme.html new file mode 100644 index 0000000000..7fe1941a68 --- /dev/null +++ b/docs/widgets/BuildContextUtils/textTheme.html @@ -0,0 +1,136 @@ + + + + + + + + textTheme property - BuildContextUtils extension - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
textTheme
+ +
+ +
+
+
+ +
+
+ +

textTheme property +

+ + + +
+ +
+ + TextTheme + textTheme + + +
+ + +
+

Gets the text theme of the app.

+
+ + +
+

Implementation

+
TextTheme get textTheme => Theme.of(this).textTheme;
+
+ +
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/CameraDetailsEditor-class-sidebar.html b/docs/widgets/CameraDetailsEditor-class-sidebar.html new file mode 100644 index 0000000000..726ae65c91 --- /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..566aaea3fa --- /dev/null +++ b/docs/widgets/CameraDetailsEditor-class.html @@ -0,0 +1,429 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/CameraDetailsEditor/CameraDetailsEditor.html b/docs/widgets/CameraDetailsEditor/CameraDetailsEditor.html new file mode 100644 index 0000000000..99954e4288 --- /dev/null +++ b/docs/widgets/CameraDetailsEditor/CameraDetailsEditor.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/CameraDetailsEditor/build.html b/docs/widgets/CameraDetailsEditor/build.html new file mode 100644 index 0000000000..600a42d2c4 --- /dev/null +++ b/docs/widgets/CameraDetailsEditor/build.html @@ -0,0 +1,194 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/CameraDetailsEditor/createModel.html b/docs/widgets/CameraDetailsEditor/createModel.html new file mode 100644 index 0000000000..4446a98398 --- /dev/null +++ b/docs/widgets/CameraDetailsEditor/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/CameraDetailsEditor/data.html b/docs/widgets/CameraDetailsEditor/data.html new file mode 100644 index 0000000000..9ccb51f508 --- /dev/null +++ b/docs/widgets/CameraDetailsEditor/data.html @@ -0,0 +1,130 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ColorEditor-class-sidebar.html b/docs/widgets/ColorEditor-class-sidebar.html new file mode 100644 index 0000000000..afd9a63420 --- /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..57b520e58d --- /dev/null +++ b/docs/widgets/ColorEditor-class.html @@ -0,0 +1,429 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ColorEditor/ColorEditor.html b/docs/widgets/ColorEditor/ColorEditor.html new file mode 100644 index 0000000000..124f7033c9 --- /dev/null +++ b/docs/widgets/ColorEditor/ColorEditor.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ColorEditor/build.html b/docs/widgets/ColorEditor/build.html new file mode 100644 index 0000000000..09067c0140 --- /dev/null +++ b/docs/widgets/ColorEditor/build.html @@ -0,0 +1,165 @@ + + + + + + + + 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: [
+        Slider(
+          value: model.slider,
+          onChanged: model.updateSlider,
+          label: "color",
+        ),
+        Container(height: 50, width: double.infinity, color: model.value),
+        if (model.isLoading) const Text("Loading..."),
+        if (model.errorText != null) Text(model.errorText!, style: const TextStyle(color: Colors.red)),
+      ],
+    ),
+);
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ControlsDisplay-class-sidebar.html b/docs/widgets/ControlsDisplay-class-sidebar.html new file mode 100644 index 0000000000..9598b82235 --- /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..d2cb42642a --- /dev/null +++ b/docs/widgets/ControlsDisplay-class.html @@ -0,0 +1,441 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ControlsDisplay/ControlsDisplay.html b/docs/widgets/ControlsDisplay/ControlsDisplay.html new file mode 100644 index 0000000000..8e9e6e3671 --- /dev/null +++ b/docs/widgets/ControlsDisplay/ControlsDisplay.html @@ -0,0 +1,130 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ControlsDisplay/build.html b/docs/widgets/ControlsDisplay/build.html new file mode 100644 index 0000000000..cdeb13a139 --- /dev/null +++ b/docs/widgets/ControlsDisplay/build.html @@ -0,0 +1,155 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ControlsDisplay/gamepadNum.html b/docs/widgets/ControlsDisplay/gamepadNum.html new file mode 100644 index 0000000000..33ed11b77b --- /dev/null +++ b/docs/widgets/ControlsDisplay/gamepadNum.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/DropdownEditor-class-sidebar.html b/docs/widgets/DropdownEditor-class-sidebar.html new file mode 100644 index 0000000000..4832077f90 --- /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..1f00b3235b --- /dev/null +++ b/docs/widgets/DropdownEditor-class.html @@ -0,0 +1,424 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/DropdownEditor/DropdownEditor.html b/docs/widgets/DropdownEditor/DropdownEditor.html new file mode 100644 index 0000000000..b9690fceec --- /dev/null +++ b/docs/widgets/DropdownEditor/DropdownEditor.html @@ -0,0 +1,140 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/DropdownEditor/build.html b/docs/widgets/DropdownEditor/build.html new file mode 100644 index 0000000000..826884c3a2 --- /dev/null +++ b/docs/widgets/DropdownEditor/build.html @@ -0,0 +1,190 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/DropdownEditor/humanName.html b/docs/widgets/DropdownEditor/humanName.html new file mode 100644 index 0000000000..703835c526 --- /dev/null +++ b/docs/widgets/DropdownEditor/humanName.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/DropdownEditor/items.html b/docs/widgets/DropdownEditor/items.html new file mode 100644 index 0000000000..7874229af7 --- /dev/null +++ b/docs/widgets/DropdownEditor/items.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/DropdownEditor/name.html b/docs/widgets/DropdownEditor/name.html new file mode 100644 index 0000000000..77fe92a95f --- /dev/null +++ b/docs/widgets/DropdownEditor/name.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/DropdownEditor/onChanged.html b/docs/widgets/DropdownEditor/onChanged.html new file mode 100644 index 0000000000..33c13b4d98 --- /dev/null +++ b/docs/widgets/DropdownEditor/onChanged.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/DropdownEditor/value.html b/docs/widgets/DropdownEditor/value.html new file mode 100644 index 0000000000..2e0040ca05 --- /dev/null +++ b/docs/widgets/DropdownEditor/value.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/Footer-class-sidebar.html b/docs/widgets/Footer-class-sidebar.html new file mode 100644 index 0000000000..46f2907ed5 --- /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..5697754efc --- /dev/null +++ b/docs/widgets/Footer-class.html @@ -0,0 +1,376 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/Footer/Footer.html b/docs/widgets/Footer/Footer.html new file mode 100644 index 0000000000..f2e9abcc9b --- /dev/null +++ b/docs/widgets/Footer/Footer.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/Footer/build.html b/docs/widgets/Footer/build.html new file mode 100644 index 0000000000..462e5b17fd --- /dev/null +++ b/docs/widgets/Footer/build.html @@ -0,0 +1,195 @@ + + + + + + + + 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
+          // mainAxisSize: MainAxisSize.min,
+          children: [
+            ViewsCounter(),
+            const SizedBox(width: 8),
+            // GamepadButtons(),
+            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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/Footer/showLogs.html b/docs/widgets/Footer/showLogs.html new file mode 100644 index 0000000000..9596530302 --- /dev/null +++ b/docs/widgets/Footer/showLogs.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/GamepadButton-class-sidebar.html b/docs/widgets/GamepadButton-class-sidebar.html new file mode 100644 index 0000000000..0864cb5ac1 --- /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..d977e8f07b --- /dev/null +++ b/docs/widgets/GamepadButton-class.html @@ -0,0 +1,460 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/GamepadButton/GamepadButton.html b/docs/widgets/GamepadButton/GamepadButton.html new file mode 100644 index 0000000000..7442a96a23 --- /dev/null +++ b/docs/widgets/GamepadButton/GamepadButton.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/GamepadButton/build.html b/docs/widgets/GamepadButton/build.html new file mode 100644 index 0000000000..5c65431c3f --- /dev/null +++ b/docs/widgets/GamepadButton/build.html @@ -0,0 +1,175 @@ + + + + + + + + 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.gamepadIndex + 1}", style: const TextStyle(fontSize: 12, color: Colors.white)),
+              ),
+            ],
+          ),
+          color: isDisabled(status) ? Colors.grey : model.isConnected
+            ? getColor(model.gamepad.battery)
+            : 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/GamepadButton/getColor.html b/docs/widgets/GamepadButton/getColor.html new file mode 100644 index 0000000000..76b9c28fb6 --- /dev/null +++ b/docs/widgets/GamepadButton/getColor.html @@ -0,0 +1,141 @@ + + + + + + + + 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.empty: return Colors.red;
+		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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/GamepadButton/isDisabled.html b/docs/widgets/GamepadButton/isDisabled.html new file mode 100644 index 0000000000..c114d7c6bd --- /dev/null +++ b/docs/widgets/GamepadButton/isDisabled.html @@ -0,0 +1,133 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/GpsEditor-class-sidebar.html b/docs/widgets/GpsEditor-class-sidebar.html new file mode 100644 index 0000000000..674be904c9 --- /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..304b445828 --- /dev/null +++ b/docs/widgets/GpsEditor-class.html @@ -0,0 +1,429 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/GpsEditor/GpsEditor.html b/docs/widgets/GpsEditor/GpsEditor.html new file mode 100644 index 0000000000..b432fb3b5b --- /dev/null +++ b/docs/widgets/GpsEditor/GpsEditor.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/GpsEditor/build.html b/docs/widgets/GpsEditor/build.html new file mode 100644 index 0000000000..eba8ac8525 --- /dev/null +++ b/docs/widgets/GpsEditor/build.html @@ -0,0 +1,165 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader-class-sidebar.html b/docs/widgets/ImageLoader-class-sidebar.html new file mode 100644 index 0000000000..21a9eb85ec --- /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..87f5c941a1 --- /dev/null +++ b/docs/widgets/ImageLoader-class.html @@ -0,0 +1,303 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/ImageLoader.html b/docs/widgets/ImageLoader/ImageLoader.html new file mode 100644 index 0000000000..75bbb60083 --- /dev/null +++ b/docs/widgets/ImageLoader/ImageLoader.html @@ -0,0 +1,121 @@ + + + + + + + + ImageLoader constructor - ImageLoader - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ImageLoader
+ +
+ +
+
+
+ +
+
+ +

ImageLoader constructor +

+ +
+ + ImageLoader() +
+ + + + + + + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/codec.html b/docs/widgets/ImageLoader/codec.html new file mode 100644 index 0000000000..4e226f90a0 --- /dev/null +++ b/docs/widgets/ImageLoader/codec.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/dispose.html b/docs/widgets/ImageLoader/dispose.html new file mode 100644 index 0000000000..99bcc04bce --- /dev/null +++ b/docs/widgets/ImageLoader/dispose.html @@ -0,0 +1,136 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/hasImage.html b/docs/widgets/ImageLoader/hasImage.html new file mode 100644 index 0000000000..9847e29044 --- /dev/null +++ b/docs/widgets/ImageLoader/hasImage.html @@ -0,0 +1,136 @@ + + + + + + + + hasImage property - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hasImage
+ +
+ +
+
+
+ +
+
+ +

hasImage property +

+ + + +
+ +
+ + bool + hasImage + + +
+ + +
+

Whether this loader has been initialized.

+
+ + +
+

Implementation

+
bool get hasImage => image != null;
+
+ +
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/hashCode.html b/docs/widgets/ImageLoader/hashCode.html new file mode 100644 index 0000000000..76c7119243 --- /dev/null +++ b/docs/widgets/ImageLoader/hashCode.html @@ -0,0 +1,160 @@ + + + + + + + + hashCode property - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
hashCode
+ +
+ +
+
+
+ +
+
+

hashCode property +

+ + + +
+ +
+ + int + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/image.html b/docs/widgets/ImageLoader/image.html new file mode 100644 index 0000000000..47776f19ef --- /dev/null +++ b/docs/widgets/ImageLoader/image.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/isLoading.html b/docs/widgets/ImageLoader/isLoading.html new file mode 100644 index 0000000000..d123842b07 --- /dev/null +++ b/docs/widgets/ImageLoader/isLoading.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/load.html b/docs/widgets/ImageLoader/load.html new file mode 100644 index 0000000000..b1699b0152 --- /dev/null +++ b/docs/widgets/ImageLoader/load.html @@ -0,0 +1,140 @@ + + + + + + + + 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 ulist = Uint8List.fromList(bytes.toList());
+	codec = await ui.instantiateImageCodec(ulist);
+	final frame = await codec!.getNextFrame();
+	image = frame.image;
+	isLoading = false;
+}
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/noSuchMethod.html b/docs/widgets/ImageLoader/noSuchMethod.html new file mode 100644 index 0000000000..60affc555d --- /dev/null +++ b/docs/widgets/ImageLoader/noSuchMethod.html @@ -0,0 +1,168 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/operator_equals.html b/docs/widgets/ImageLoader/operator_equals.html new file mode 100644 index 0000000000..38e261b4f5 --- /dev/null +++ b/docs/widgets/ImageLoader/operator_equals.html @@ -0,0 +1,158 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/runtimeType.html b/docs/widgets/ImageLoader/runtimeType.html new file mode 100644 index 0000000000..0ca79d4416 --- /dev/null +++ b/docs/widgets/ImageLoader/runtimeType.html @@ -0,0 +1,135 @@ + + + + + + + + runtimeType property - ImageLoader class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
runtimeType
+ +
+ +
+
+
+ +
+
+

runtimeType property +

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

A representation of the runtime type of the object.

+
+ + +
+

Implementation

+
external Type get runtimeType;
+
+ +
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ImageLoader/toString.html b/docs/widgets/ImageLoader/toString.html new file mode 100644 index 0000000000..82bbf1fe45 --- /dev/null +++ b/docs/widgets/ImageLoader/toString.html @@ -0,0 +1,140 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MessageDisplay-class-sidebar.html b/docs/widgets/MessageDisplay-class-sidebar.html new file mode 100644 index 0000000000..42a119c533 --- /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..d20a5e97a5 --- /dev/null +++ b/docs/widgets/MessageDisplay-class.html @@ -0,0 +1,466 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MessageDisplay/MessageDisplay.html b/docs/widgets/MessageDisplay/MessageDisplay.html new file mode 100644 index 0000000000..05502e4c14 --- /dev/null +++ b/docs/widgets/MessageDisplay/MessageDisplay.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MessageDisplay/build.html b/docs/widgets/MessageDisplay/build.html new file mode 100644 index 0000000000..cc4fabc00f --- /dev/null +++ b/docs/widgets/MessageDisplay/build.html @@ -0,0 +1,172 @@ + + + + + + + + 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)),
+            const SizedBox(width: 4),
+            if (model.message == null) const Text("Open logs")
+            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),
+                ],)
+                : Text(model.message!.text),
+            ),
+            const SizedBox(width: 8),
+          ],
+        ),
+      ),
+    ),
+);
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MessageDisplay/getColor.html b/docs/widgets/MessageDisplay/getColor.html new file mode 100644 index 0000000000..e9446cb177 --- /dev/null +++ b/docs/widgets/MessageDisplay/getColor.html @@ -0,0 +1,141 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MessageDisplay/getIcon.html b/docs/widgets/MessageDisplay/getIcon.html new file mode 100644 index 0000000000..589488bb67 --- /dev/null +++ b/docs/widgets/MessageDisplay/getIcon.html @@ -0,0 +1,141 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MessageDisplay/showLogs.html b/docs/widgets/MessageDisplay/showLogs.html new file mode 100644 index 0000000000..5bb4a16772 --- /dev/null +++ b/docs/widgets/MessageDisplay/showLogs.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MetricsList-class-sidebar.html b/docs/widgets/MetricsList-class-sidebar.html new file mode 100644 index 0000000000..b3dce5d1ad --- /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..06cb36fb4e --- /dev/null +++ b/docs/widgets/MetricsList-class.html @@ -0,0 +1,429 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MetricsList/MetricsList.html b/docs/widgets/MetricsList/MetricsList.html new file mode 100644 index 0000000000..72b57778e1 --- /dev/null +++ b/docs/widgets/MetricsList/MetricsList.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MetricsList/build.html b/docs/widgets/MetricsList/build.html new file mode 100644 index 0000000000..09f53b49e7 --- /dev/null +++ b/docs/widgets/MetricsList/build.html @@ -0,0 +1,159 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MobileControls-class-sidebar.html b/docs/widgets/MobileControls-class-sidebar.html new file mode 100644 index 0000000000..0b15112a04 --- /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..51f25568a2 --- /dev/null +++ b/docs/widgets/MobileControls-class.html @@ -0,0 +1,416 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MobileControls/MobileControls.html b/docs/widgets/MobileControls/MobileControls.html new file mode 100644 index 0000000000..dfab9a39a6 --- /dev/null +++ b/docs/widgets/MobileControls/MobileControls.html @@ -0,0 +1,121 @@ + + + + + + + + MobileControls constructor - MobileControls - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
MobileControls
+ +
+ +
+
+
+ +
+
+ +

MobileControls constructor +

+ +
+ + MobileControls() +
+ + + + + + + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MobileControls/build.html b/docs/widgets/MobileControls/build.html new file mode 100644 index 0000000000..0d185b2254 --- /dev/null +++ b/docs/widgets/MobileControls/build.html @@ -0,0 +1,178 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MobileControls/createModel.html b/docs/widgets/MobileControls/createModel.html new file mode 100644 index 0000000000..44c9b1a889 --- /dev/null +++ b/docs/widgets/MobileControls/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MobileControlsModel-class-sidebar.html b/docs/widgets/MobileControlsModel-class-sidebar.html new file mode 100644 index 0000000000..4041d0426b --- /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..6c774fbbbb --- /dev/null +++ b/docs/widgets/MobileControlsModel-class.html @@ -0,0 +1,358 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MobileControlsModel/MobileControlsModel.html b/docs/widgets/MobileControlsModel/MobileControlsModel.html new file mode 100644 index 0000000000..a3cd61301e --- /dev/null +++ b/docs/widgets/MobileControlsModel/MobileControlsModel.html @@ -0,0 +1,130 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MobileControlsModel/dispose.html b/docs/widgets/MobileControlsModel/dispose.html new file mode 100644 index 0000000000..dee84238af --- /dev/null +++ b/docs/widgets/MobileControlsModel/dispose.html @@ -0,0 +1,147 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MobileControlsModel/left.html b/docs/widgets/MobileControlsModel/left.html new file mode 100644 index 0000000000..a3756cf39f --- /dev/null +++ b/docs/widgets/MobileControlsModel/left.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MobileControlsModel/right.html b/docs/widgets/MobileControlsModel/right.html new file mode 100644 index 0000000000..fe47754227 --- /dev/null +++ b/docs/widgets/MobileControlsModel/right.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MobileControlsModel/updateLeft.html b/docs/widgets/MobileControlsModel/updateLeft.html new file mode 100644 index 0000000000..8d1888c9f9 --- /dev/null +++ b/docs/widgets/MobileControlsModel/updateLeft.html @@ -0,0 +1,136 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/MobileControlsModel/updateRight.html b/docs/widgets/MobileControlsModel/updateRight.html new file mode 100644 index 0000000000..2a27fef8a1 --- /dev/null +++ b/docs/widgets/MobileControlsModel/updateRight.html @@ -0,0 +1,136 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/NumberEditor-class-sidebar.html b/docs/widgets/NumberEditor-class-sidebar.html new file mode 100644 index 0000000000..7b478ed9e3 --- /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..f348880377 --- /dev/null +++ b/docs/widgets/NumberEditor-class.html @@ -0,0 +1,477 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/NumberEditor/NumberEditor.html b/docs/widgets/NumberEditor/NumberEditor.html new file mode 100644 index 0000000000..cf330c0f23 --- /dev/null +++ b/docs/widgets/NumberEditor/NumberEditor.html @@ -0,0 +1,139 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/NumberEditor/build.html b/docs/widgets/NumberEditor/build.html new file mode 100644 index 0000000000..5ef3272f27 --- /dev/null +++ b/docs/widgets/NumberEditor/build.html @@ -0,0 +1,159 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/NumberEditor/name.html b/docs/widgets/NumberEditor/name.html new file mode 100644 index 0000000000..697d648899 --- /dev/null +++ b/docs/widgets/NumberEditor/name.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/NumberEditor/subtitle.html b/docs/widgets/NumberEditor/subtitle.html new file mode 100644 index 0000000000..b0da551d12 --- /dev/null +++ b/docs/widgets/NumberEditor/subtitle.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/NumberEditor/titleFlex.html b/docs/widgets/NumberEditor/titleFlex.html new file mode 100644 index 0000000000..7715574b45 --- /dev/null +++ b/docs/widgets/NumberEditor/titleFlex.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/NumberEditor/width.html b/docs/widgets/NumberEditor/width.html new file mode 100644 index 0000000000..e181edb10a --- /dev/null +++ b/docs/widgets/NumberEditor/width.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidget-class-sidebar.html b/docs/widgets/ReactiveWidget-class-sidebar.html new file mode 100644 index 0000000000..71f08393db --- /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..f1ed3a8032 --- /dev/null +++ b/docs/widgets/ReactiveWidget-class.html @@ -0,0 +1,430 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidget/ReactiveWidget.html b/docs/widgets/ReactiveWidget/ReactiveWidget.html new file mode 100644 index 0000000000..fd0efc6fc1 --- /dev/null +++ b/docs/widgets/ReactiveWidget/ReactiveWidget.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidget/createModel.html b/docs/widgets/ReactiveWidget/createModel.html new file mode 100644 index 0000000000..de5dac038f --- /dev/null +++ b/docs/widgets/ReactiveWidget/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidget/shouldDispose.html b/docs/widgets/ReactiveWidget/shouldDispose.html new file mode 100644 index 0000000000..d7c9629ac9 --- /dev/null +++ b/docs/widgets/ReactiveWidget/shouldDispose.html @@ -0,0 +1,146 @@ + + + + + + + + shouldDispose property - ReactiveWidget class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
shouldDispose
+ +
+ +
+
+
+ +
+
+ +

shouldDispose property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface-class-sidebar.html b/docs/widgets/ReactiveWidgetInterface-class-sidebar.html new file mode 100644 index 0000000000..c6d59abc81 --- /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..8beae495da --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface-class.html @@ -0,0 +1,425 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/ReactiveWidgetInterface.html b/docs/widgets/ReactiveWidgetInterface/ReactiveWidgetInterface.html new file mode 100644 index 0000000000..0a7b44883c --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/ReactiveWidgetInterface.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/build.html b/docs/widgets/ReactiveWidgetInterface/build.html new file mode 100644 index 0000000000..9c4a13d052 --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/build.html @@ -0,0 +1,134 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/createModel.html b/docs/widgets/ReactiveWidgetInterface/createModel.html new file mode 100644 index 0000000000..430daa0333 --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/createModel.html @@ -0,0 +1,132 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/createState.html b/docs/widgets/ReactiveWidgetInterface/createState.html new file mode 100644 index 0000000000..8723112d85 --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/createState.html @@ -0,0 +1,150 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/didUpdateWidget.html b/docs/widgets/ReactiveWidgetInterface/didUpdateWidget.html new file mode 100644 index 0000000000..19ed5893d9 --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/didUpdateWidget.html @@ -0,0 +1,141 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetInterface/shouldDispose.html b/docs/widgets/ReactiveWidgetInterface/shouldDispose.html new file mode 100644 index 0000000000..db86ebd09c --- /dev/null +++ b/docs/widgets/ReactiveWidgetInterface/shouldDispose.html @@ -0,0 +1,140 @@ + + + + + + + + shouldDispose property - ReactiveWidgetInterface class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
shouldDispose
+ +
+ +
+
+
+ +
+
+ +

shouldDispose property +

+ + + +
+ +
+ + bool + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState-class-sidebar.html b/docs/widgets/ReactiveWidgetState-class-sidebar.html new file mode 100644 index 0000000000..b9cb482cde --- /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..7517abe10e --- /dev/null +++ b/docs/widgets/ReactiveWidgetState-class.html @@ -0,0 +1,464 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/ReactiveWidgetState.html b/docs/widgets/ReactiveWidgetState/ReactiveWidgetState.html new file mode 100644 index 0000000000..b882c4ced6 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/ReactiveWidgetState.html @@ -0,0 +1,121 @@ + + + + + + + + ReactiveWidgetState constructor - ReactiveWidgetState - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ReactiveWidgetState
+ +
+ +
+
+
+ +
+
+ +

ReactiveWidgetState<T extends ChangeNotifier> constructor +

+ +
+ + ReactiveWidgetState<T extends ChangeNotifier>() +
+ + + + + + + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/build.html b/docs/widgets/ReactiveWidgetState/build.html new file mode 100644 index 0000000000..7ac6a05790 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/build.html @@ -0,0 +1,238 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/didUpdateWidget.html b/docs/widgets/ReactiveWidgetState/didUpdateWidget.html new file mode 100644 index 0000000000..ff613276c4 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/didUpdateWidget.html @@ -0,0 +1,167 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/dispose.html b/docs/widgets/ReactiveWidgetState/dispose.html new file mode 100644 index 0000000000..23a9001281 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/dispose.html @@ -0,0 +1,192 @@ + + + + + + + + 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.

+

To release resources more eagerly, establish a platform channel +and use it to call runApp with a widget such as SizedBox.shrink when +the framework should dispose of the active widget tree.

+

See also:

+ +
+ + + +
+

Implementation

+
@override
+void dispose() {
+	model.removeListener(listener);
+    if (widget.shouldDispose) model.dispose();
+	super.dispose();
+}
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/initState.html b/docs/widgets/ReactiveWidgetState/initState.html new file mode 100644 index 0000000000..0257ea4b64 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/initState.html @@ -0,0 +1,165 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/listener.html b/docs/widgets/ReactiveWidgetState/listener.html new file mode 100644 index 0000000000..10b8aec4bb --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/listener.html @@ -0,0 +1,132 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReactiveWidgetState/model.html b/docs/widgets/ReactiveWidgetState/model.html new file mode 100644 index 0000000000..3c7d9c7112 --- /dev/null +++ b/docs/widgets/ReactiveWidgetState/model.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReusableReactiveWidget-class-sidebar.html b/docs/widgets/ReusableReactiveWidget-class-sidebar.html new file mode 100644 index 0000000000..d451eedbf6 --- /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..098486e597 --- /dev/null +++ b/docs/widgets/ReusableReactiveWidget-class.html @@ -0,0 +1,449 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReusableReactiveWidget/ReusableReactiveWidget.html b/docs/widgets/ReusableReactiveWidget/ReusableReactiveWidget.html new file mode 100644 index 0000000000..b0c084c435 --- /dev/null +++ b/docs/widgets/ReusableReactiveWidget/ReusableReactiveWidget.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReusableReactiveWidget/createModel.html b/docs/widgets/ReusableReactiveWidget/createModel.html new file mode 100644 index 0000000000..15e3133fcf --- /dev/null +++ b/docs/widgets/ReusableReactiveWidget/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReusableReactiveWidget/model.html b/docs/widgets/ReusableReactiveWidget/model.html new file mode 100644 index 0000000000..c1ccb04a8b --- /dev/null +++ b/docs/widgets/ReusableReactiveWidget/model.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ReusableReactiveWidget/shouldDispose.html b/docs/widgets/ReusableReactiveWidget/shouldDispose.html new file mode 100644 index 0000000000..e047c0efa7 --- /dev/null +++ b/docs/widgets/ReusableReactiveWidget/shouldDispose.html @@ -0,0 +1,146 @@ + + + + + + + + shouldDispose property - ReusableReactiveWidget class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
shouldDispose
+ +
+ +
+
+
+ +
+
+ +

shouldDispose property +

+ + + +
+ +
+ +
+
    +
  1. @override
  2. +
+
+ bool + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ScienceCommandEditor-class-sidebar.html b/docs/widgets/ScienceCommandEditor-class-sidebar.html new file mode 100644 index 0000000000..485c84c63c --- /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..f47edecf3c --- /dev/null +++ b/docs/widgets/ScienceCommandEditor-class.html @@ -0,0 +1,416 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ScienceCommandEditor/ScienceCommandEditor.html b/docs/widgets/ScienceCommandEditor/ScienceCommandEditor.html new file mode 100644 index 0000000000..e38357292f --- /dev/null +++ b/docs/widgets/ScienceCommandEditor/ScienceCommandEditor.html @@ -0,0 +1,121 @@ + + + + + + + + ScienceCommandEditor constructor - ScienceCommandEditor - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ScienceCommandEditor
+ +
+ +
+
+
+ +
+
+ +

ScienceCommandEditor constructor +

+ +
+ + ScienceCommandEditor() +
+ + + + + + + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ScienceCommandEditor/build.html b/docs/widgets/ScienceCommandEditor/build.html new file mode 100644 index 0000000000..155de78a0c --- /dev/null +++ b/docs/widgets/ScienceCommandEditor/build.html @@ -0,0 +1,170 @@ + + + + + + + + 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}", 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ScienceCommandEditor/createModel.html b/docs/widgets/ScienceCommandEditor/createModel.html new file mode 100644 index 0000000000..22ea2617c4 --- /dev/null +++ b/docs/widgets/ScienceCommandEditor/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/SerialButton-class-sidebar.html b/docs/widgets/SerialButton-class-sidebar.html new file mode 100644 index 0000000000..027226b8cb --- /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..83150c1c2d --- /dev/null +++ b/docs/widgets/SerialButton-class.html @@ -0,0 +1,429 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/SerialButton/SerialButton.html b/docs/widgets/SerialButton/SerialButton.html new file mode 100644 index 0000000000..690c10d077 --- /dev/null +++ b/docs/widgets/SerialButton/SerialButton.html @@ -0,0 +1,128 @@ + + + + + + + + SerialButton constructor - SerialButton - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
SerialButton
+ +
+ +
+
+
+ +
+
+ +

SerialButton constructor +

+ +
+ + SerialButton() +
+ + +
+

Provides a const constructor.

+
+ + + +
+

Implementation

+
SerialButton() : super(models.serial);
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/SerialButton/build.html b/docs/widgets/SerialButton/build.html new file mode 100644 index 0000000000..97bf922239 --- /dev/null +++ b/docs/widgets/SerialButton/build.html @@ -0,0 +1,156 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + 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..18c69cf5ff --- /dev/null +++ b/docs/widgets/SeverityUtil.html @@ -0,0 +1,156 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + + + diff --git a/docs/widgets/SeverityUtil/color.html b/docs/widgets/SeverityUtil/color.html new file mode 100644 index 0000000000..4c4f134696 --- /dev/null +++ b/docs/widgets/SeverityUtil/color.html @@ -0,0 +1,141 @@ + + + + + + + + color property - SeverityUtil extension - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
color
+ +
+ +
+
+
+ +
+
+ +

color property +

+ + + +
+ +
+ + Color? + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/Sidebar-class-sidebar.html b/docs/widgets/Sidebar-class-sidebar.html new file mode 100644 index 0000000000..fc7410afad --- /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..b5173c3cc6 --- /dev/null +++ b/docs/widgets/Sidebar-class.html @@ -0,0 +1,364 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/Sidebar/Sidebar.html b/docs/widgets/Sidebar/Sidebar.html new file mode 100644 index 0000000000..c06112fb4a --- /dev/null +++ b/docs/widgets/Sidebar/Sidebar.html @@ -0,0 +1,128 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/Sidebar/build.html b/docs/widgets/Sidebar/build.html new file mode 100644 index 0000000000..7eca6b9b91 --- /dev/null +++ b/docs/widgets/Sidebar/build.html @@ -0,0 +1,188 @@ + + + + + + + + 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) => Container(
+	width: 250,
+	color: Theme.of(context).colorScheme.surfaceVariant,
+	child: 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),
+		],
+	),
+);
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/SocketEditor-class-sidebar.html b/docs/widgets/SocketEditor-class-sidebar.html new file mode 100644 index 0000000000..97979da1b6 --- /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..6e05f0398b --- /dev/null +++ b/docs/widgets/SocketEditor-class.html @@ -0,0 +1,453 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/SocketEditor/SocketEditor.html b/docs/widgets/SocketEditor/SocketEditor.html new file mode 100644 index 0000000000..1d4cb959e8 --- /dev/null +++ b/docs/widgets/SocketEditor/SocketEditor.html @@ -0,0 +1,135 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/SocketEditor/build.html b/docs/widgets/SocketEditor/build.html new file mode 100644 index 0000000000..68d46e1b2a --- /dev/null +++ b/docs/widgets/SocketEditor/build.html @@ -0,0 +1,161 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/SocketEditor/editPort.html b/docs/widgets/SocketEditor/editPort.html new file mode 100644 index 0000000000..3751a10603 --- /dev/null +++ b/docs/widgets/SocketEditor/editPort.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/SocketEditor/name.html b/docs/widgets/SocketEditor/name.html new file mode 100644 index 0000000000..0b4c98b93f --- /dev/null +++ b/docs/widgets/SocketEditor/name.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/StatusIcons-class-sidebar.html b/docs/widgets/StatusIcons-class-sidebar.html new file mode 100644 index 0000000000..f8336d9a71 --- /dev/null +++ b/docs/widgets/StatusIcons-class-sidebar.html @@ -0,0 +1,40 @@ +
    + +
  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. getColor
  26. +
  27. getNetworkIcon
  28. +
  29. getStatusColor
  30. +
  31. getStatusIcon
  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/StatusIcons-class.html b/docs/widgets/StatusIcons-class.html new file mode 100644 index 0000000000..d142b5bd83 --- /dev/null +++ b/docs/widgets/StatusIcons-class.html @@ -0,0 +1,429 @@ + + + + + + + + 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. + + +
+ +
+ getColor(double percentage) + Color + + + +
+
+ A color representing a meter's fill. + + +
+ +
+ getNetworkIcon(double percentage) + IconData + + + +
+
+ An appropriate WiFi icon in increments of 1/5 connection strength. + + +
+ +
+ 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
+ +
+ +
+
+ + + + + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/StatusIcons/StatusIcons.html b/docs/widgets/StatusIcons/StatusIcons.html new file mode 100644 index 0000000000..c3ed073c6d --- /dev/null +++ b/docs/widgets/StatusIcons/StatusIcons.html @@ -0,0 +1,128 @@ + + + + + + + + StatusIcons constructor - StatusIcons - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
StatusIcons
+ +
+ +
+
+
+ +
+
+ +

StatusIcons constructor +

+ +
+ const + StatusIcons() +
+ + +
+

Provides a const constructor.

+
+ + + +
+

Implementation

+
const StatusIcons();
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/StatusIcons/build.html b/docs/widgets/StatusIcons/build.html new file mode 100644 index 0000000000..0e5ccc6b93 --- /dev/null +++ b/docs/widgets/StatusIcons/build.html @@ -0,0 +1,240 @@ + + + + + + + + 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,
+				),
+			),
+		),
+		ValueListenableBuilder<double>(  // network strength
+			valueListenable: models.sockets.data.connectionStrength,
+			builder: (context, value, child) => IconButton(
+				tooltip: "${models.sockets.connectionSummary}\nClick to reset",
+				icon: Icon(
+					value > 0 ? getNetworkIcon(value) : Icons.signal_wifi_off_outlined,
+					color: getColor(value),
+				),
+				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)),
+				],
+			),
+		),
+		const SizedBox(width: 4),
+	],
+);
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/StatusIcons/getBatteryIcon.html b/docs/widgets/StatusIcons/getBatteryIcon.html new file mode 100644 index 0000000000..8af6289fa6 --- /dev/null +++ b/docs/widgets/StatusIcons/getBatteryIcon.html @@ -0,0 +1,142 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/StatusIcons/getColor.html b/docs/widgets/StatusIcons/getColor.html new file mode 100644 index 0000000000..9c4de2abb0 --- /dev/null +++ b/docs/widgets/StatusIcons/getColor.html @@ -0,0 +1,138 @@ + + + + + + + + getColor method - StatusIcons class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
getColor
+ +
+ +
+
+
+ +
+
+ +

getColor method +

+ +
+ + +Color +getColor(
  1. double percentage
  2. +
) + + + +
+ +
+

A color representing a meter's fill.

+
+ + + +
+

Implementation

+
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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/StatusIcons/getNetworkIcon.html b/docs/widgets/StatusIcons/getNetworkIcon.html new file mode 100644 index 0000000000..66c667559a --- /dev/null +++ b/docs/widgets/StatusIcons/getNetworkIcon.html @@ -0,0 +1,139 @@ + + + + + + + + getNetworkIcon method - StatusIcons class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
getNetworkIcon
+ +
+ +
+
+
+ +
+
+ +

getNetworkIcon method +

+ +
+ + +IconData +getNetworkIcon(
  1. double percentage
  2. +
) + + + +
+ +
+

An appropriate WiFi icon in increments of 1/5 connection strength.

+
+ + + +
+

Implementation

+
IconData getNetworkIcon(double percentage) {
+	if (percentage      >= 0.8) { return Icons.signal_wifi_statusbar_4_bar; }
+	else if (percentage >= 0.6) { return Icons.network_wifi_3_bar; }
+	else if (percentage >= 0.4) { return Icons.network_wifi_2_bar; }
+	else if (percentage >= 0.2) { return Icons.network_wifi_1_bar; }
+	else { return Icons.signal_wifi_0_bar; }
+}
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/StatusIcons/getStatusColor.html b/docs/widgets/StatusIcons/getStatusColor.html new file mode 100644 index 0000000000..1603888ec6 --- /dev/null +++ b/docs/widgets/StatusIcons/getStatusColor.html @@ -0,0 +1,143 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/StatusIcons/getStatusIcon.html b/docs/widgets/StatusIcons/getStatusIcon.html new file mode 100644 index 0000000000..8b3e27e4e9 --- /dev/null +++ b/docs/widgets/StatusIcons/getStatusIcon.html @@ -0,0 +1,143 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ThrottleEditor-class-sidebar.html b/docs/widgets/ThrottleEditor-class-sidebar.html new file mode 100644 index 0000000000..684f87f72e --- /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..eddefbf895 --- /dev/null +++ b/docs/widgets/ThrottleEditor-class.html @@ -0,0 +1,416 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ThrottleEditor/ThrottleEditor.html b/docs/widgets/ThrottleEditor/ThrottleEditor.html new file mode 100644 index 0000000000..1cb151883e --- /dev/null +++ b/docs/widgets/ThrottleEditor/ThrottleEditor.html @@ -0,0 +1,121 @@ + + + + + + + + ThrottleEditor constructor - ThrottleEditor - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ThrottleEditor
+ +
+ +
+
+
+ +
+
+ +

ThrottleEditor constructor +

+ +
+ + ThrottleEditor() +
+ + + + + + + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ThrottleEditor/build.html b/docs/widgets/ThrottleEditor/build.html new file mode 100644 index 0000000000..950fe628e5 --- /dev/null +++ b/docs/widgets/ThrottleEditor/build.html @@ -0,0 +1,168 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ThrottleEditor/createModel.html b/docs/widgets/ThrottleEditor/createModel.html new file mode 100644 index 0000000000..9616c87100 --- /dev/null +++ b/docs/widgets/ThrottleEditor/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/TimerEditor-class-sidebar.html b/docs/widgets/TimerEditor-class-sidebar.html new file mode 100644 index 0000000000..1c8afa4f98 --- /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..e8930888c5 --- /dev/null +++ b/docs/widgets/TimerEditor-class.html @@ -0,0 +1,416 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/TimerEditor/TimerEditor.html b/docs/widgets/TimerEditor/TimerEditor.html new file mode 100644 index 0000000000..ecbaf83d7f --- /dev/null +++ b/docs/widgets/TimerEditor/TimerEditor.html @@ -0,0 +1,121 @@ + + + + + + + + TimerEditor constructor - TimerEditor - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
TimerEditor
+ +
+ +
+
+
+ +
+
+ +

TimerEditor constructor +

+ +
+ + TimerEditor() +
+ + + + + + + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/TimerEditor/build.html b/docs/widgets/TimerEditor/build.html new file mode 100644 index 0000000000..45bfc2c6f0 --- /dev/null +++ b/docs/widgets/TimerEditor/build.html @@ -0,0 +1,172 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/TimerEditor/createModel.html b/docs/widgets/TimerEditor/createModel.html new file mode 100644 index 0000000000..2993a14158 --- /dev/null +++ b/docs/widgets/TimerEditor/createModel.html @@ -0,0 +1,138 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/TimerWidget-class-sidebar.html b/docs/widgets/TimerWidget-class-sidebar.html new file mode 100644 index 0000000000..4878b49fd8 --- /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..0ddb71a527 --- /dev/null +++ b/docs/widgets/TimerWidget-class.html @@ -0,0 +1,442 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/TimerWidget/TimerWidget.html b/docs/widgets/TimerWidget/TimerWidget.html new file mode 100644 index 0000000000..4cd8a4e426 --- /dev/null +++ b/docs/widgets/TimerWidget/TimerWidget.html @@ -0,0 +1,128 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/TimerWidget/build.html b/docs/widgets/TimerWidget/build.html new file mode 100644 index 0000000000..85c52eb5b0 --- /dev/null +++ b/docs/widgets/TimerWidget/build.html @@ -0,0 +1,168 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/TimerWidget/getStyle.html b/docs/widgets/TimerWidget/getStyle.html new file mode 100644 index 0000000000..6a38a1f190 --- /dev/null +++ b/docs/widgets/TimerWidget/getStyle.html @@ -0,0 +1,139 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeed-class-sidebar.html b/docs/widgets/VideoFeed-class-sidebar.html new file mode 100644 index 0000000000..0242e571ce --- /dev/null +++ b/docs/widgets/VideoFeed-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. VideoFeed
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. name
  12. +
  13. runtimeType
  14. + +
  15. Methods
  16. +
  17. createElement
  18. +
  19. createState
  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/VideoFeed-class.html b/docs/widgets/VideoFeed-class.html new file mode 100644 index 0000000000..f8fcc63540 --- /dev/null +++ b/docs/widgets/VideoFeed-class.html @@ -0,0 +1,376 @@ + + + + + + + + VideoFeed class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
VideoFeed
+ +
+ +
+
+
+ +
+
+ +

VideoFeed class + +

+ + +
+

Displays frames of a video feed.

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

Constructors

+ +
+
+ VideoFeed({required CameraName name}) +
+
+ Displays a video feed for the given camera. +
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
+ +
+ +
+ 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeed/VideoFeed.html b/docs/widgets/VideoFeed/VideoFeed.html new file mode 100644 index 0000000000..a79cc5f627 --- /dev/null +++ b/docs/widgets/VideoFeed/VideoFeed.html @@ -0,0 +1,129 @@ + + + + + + + + VideoFeed constructor - VideoFeed - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
VideoFeed
+ +
+ +
+
+
+ +
+
+ +

VideoFeed constructor +

+ +
+ const + VideoFeed({
  1. required CameraName name,
  2. +
}) +
+ + +
+

Displays a video feed for the given camera.

+
+ + + +
+

Implementation

+
const VideoFeed({required this.name});
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeed/createState.html b/docs/widgets/VideoFeed/createState.html new file mode 100644 index 0000000000..fd0972e7c4 --- /dev/null +++ b/docs/widgets/VideoFeed/createState.html @@ -0,0 +1,150 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeed/name.html b/docs/widgets/VideoFeed/name.html new file mode 100644 index 0000000000..1628596062 --- /dev/null +++ b/docs/widgets/VideoFeed/name.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeedState-class-sidebar.html b/docs/widgets/VideoFeedState-class-sidebar.html new file mode 100644 index 0000000000..a0fa2d1fa6 --- /dev/null +++ b/docs/widgets/VideoFeedState-class-sidebar.html @@ -0,0 +1,45 @@ +
    + +
  1. Constructors
  2. +
  3. VideoFeedState
  4. + + + +
  5. + Properties +
  6. +
  7. context
  8. +
  9. data
  10. +
  11. errorMessage
  12. +
  13. hashCode
  14. +
  15. imageLoader
  16. +
  17. mounted
  18. +
  19. runtimeType
  20. +
  21. widget
  22. + +
  23. Methods
  24. +
  25. activate
  26. +
  27. build
  28. +
  29. deactivate
  30. +
  31. debugFillProperties
  32. +
  33. didChangeDependencies
  34. +
  35. didUpdateWidget
  36. +
  37. dispose
  38. +
  39. initState
  40. +
  41. noSuchMethod
  42. +
  43. reassemble
  44. +
  45. setState
  46. +
  47. toDiagnosticsNode
  48. +
  49. toString
  50. +
  51. toStringShort
  52. +
  53. updateImage
  54. + +
  55. Operators
  56. +
  57. operator ==
  58. + + + + + + +
diff --git a/docs/widgets/VideoFeedState-class.html b/docs/widgets/VideoFeedState-class.html new file mode 100644 index 0000000000..670d2e41b9 --- /dev/null +++ b/docs/widgets/VideoFeedState-class.html @@ -0,0 +1,493 @@ + + + + + + + + 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

+
+
+ 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
+ +
+ +
+ hashCode + → int + + +
+
+ The hash code for this object. +
no setterinherited
+ +
+ +
+ imageLoader + ImageLoader + + +
+
+ A helper class responsible for managing and loading an image. +
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 + VideoFeed + + +
+
+ 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 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
+ +
+ +
+ 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeedState/VideoFeedState.html b/docs/widgets/VideoFeedState/VideoFeedState.html new file mode 100644 index 0000000000..5f3f97c35b --- /dev/null +++ b/docs/widgets/VideoFeedState/VideoFeedState.html @@ -0,0 +1,121 @@ + + + + + + + + VideoFeedState constructor - VideoFeedState - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
VideoFeedState
+ +
+ +
+
+
+ +
+
+ +

VideoFeedState constructor +

+ +
+ + VideoFeedState() +
+ + + + + + + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeedState/build.html b/docs/widgets/VideoFeedState/build.html new file mode 100644 index 0000000000..5965ba5972 --- /dev/null +++ b/docs/widgets/VideoFeedState/build.html @@ -0,0 +1,274 @@ + + + + + + + + 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) => Stack(
+	children: [
+		Container(
+			color: context.colorScheme.brightness == Brightness.light
+				? Colors.blueGrey
+				: Colors.blueGrey[700],
+			height: double.infinity,
+			width: double.infinity,
+			padding: const EdgeInsets.all(4),
+			alignment: Alignment.center,
+			child: models.sockets.video.isConnected && imageLoader.hasImage && data.details.status == CameraStatus.CAMERA_ENABLED
+				? Row(children: [
+						Expanded(child: RawImage(image: imageLoader.image, fit: BoxFit.contain)),
+				],)
+				: Text(errorMessage, textAlign: TextAlign.center),
+		),
+		Row(
+			mainAxisAlignment: MainAxisAlignment.end,
+			children: [
+				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(currentView: widget.name.humanName),
+			],
+		),
+		Positioned(left: 5, bottom: 5, child: Text(data.details.name.humanName)),
+	],
+);
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeedState/data.html b/docs/widgets/VideoFeedState/data.html new file mode 100644 index 0000000000..78c0933298 --- /dev/null +++ b/docs/widgets/VideoFeedState/data.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeedState/dispose.html b/docs/widgets/VideoFeedState/dispose.html new file mode 100644 index 0000000000..c2c1217e77 --- /dev/null +++ b/docs/widgets/VideoFeedState/dispose.html @@ -0,0 +1,192 @@ + + + + + + + + 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.

+

To release resources more eagerly, establish a platform channel +and use it to call runApp with a widget such as SizedBox.shrink when +the framework should dispose of the active widget tree.

+

See also:

+ +
+ + + +
+

Implementation

+
@override
+void dispose() {
+	models.video.removeListener(updateImage);
+	imageLoader.dispose();
+	super.dispose();
+}
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeedState/errorMessage.html b/docs/widgets/VideoFeedState/errorMessage.html new file mode 100644 index 0000000000..a7cc0d39fa --- /dev/null +++ b/docs/widgets/VideoFeedState/errorMessage.html @@ -0,0 +1,151 @@ + + + + + + + + errorMessage property - VideoFeedState class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
errorMessage
+ +
+ +
+
+
+ +
+
+ +

errorMessage property +

+ + + +
+ +
+ + String + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeedState/imageLoader.html b/docs/widgets/VideoFeedState/imageLoader.html new file mode 100644 index 0000000000..997cd27bc6 --- /dev/null +++ b/docs/widgets/VideoFeedState/imageLoader.html @@ -0,0 +1,129 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeedState/initState.html b/docs/widgets/VideoFeedState/initState.html new file mode 100644 index 0000000000..492ee3619f --- /dev/null +++ b/docs/widgets/VideoFeedState/initState.html @@ -0,0 +1,165 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/VideoFeedState/updateImage.html b/docs/widgets/VideoFeedState/updateImage.html new file mode 100644 index 0000000000..b081dc244d --- /dev/null +++ b/docs/widgets/VideoFeedState/updateImage.html @@ -0,0 +1,141 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ViewWidget-class-sidebar.html b/docs/widgets/ViewWidget-class-sidebar.html new file mode 100644 index 0000000000..d374fa1b7f --- /dev/null +++ b/docs/widgets/ViewWidget-class-sidebar.html @@ -0,0 +1,36 @@ +
    + +
  1. Constructors
  2. +
  3. ViewWidget
  4. + + + +
  5. + Properties +
  6. +
  7. hashCode
  8. +
  9. key
  10. +
  11. runtimeType
  12. +
  13. view
  14. + +
  15. Methods
  16. +
  17. createElement
  18. +
  19. createState
  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/ViewWidget-class.html b/docs/widgets/ViewWidget-class.html new file mode 100644 index 0000000000..f68dd99bfd --- /dev/null +++ b/docs/widgets/ViewWidget-class.html @@ -0,0 +1,375 @@ + + + + + + + + ViewWidget class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ViewWidget
+ +
+ +
+
+
+ +
+
+ +

ViewWidget class + +

+ + +
+

A widget to show one DashboardView.

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

Constructors

+ +
+
+ ViewWidget(DashboardView view) +
+
+ Shows a DashboardView. +
+
+
+ +
+

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
+ +
+ +
+ view + DashboardView + + +
+
+ The view to show. +
final
+ +
+ +
+
+ +
+

Methods

+
+
+ createElement() + StatefulElement + + + +
+
+ Creates a StatefulElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ createState() + State<ViewWidget> + + + +
+
+ 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ViewWidget/ViewWidget.html b/docs/widgets/ViewWidget/ViewWidget.html new file mode 100644 index 0000000000..39c6d5333d --- /dev/null +++ b/docs/widgets/ViewWidget/ViewWidget.html @@ -0,0 +1,129 @@ + + + + + + + + ViewWidget constructor - ViewWidget - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ViewWidget
+ +
+ +
+
+
+ +
+
+ +

ViewWidget constructor +

+ +
+ + ViewWidget(
  1. DashboardView view
  2. +
) +
+ + +
+

Shows a DashboardView.

+
+ + + +
+

Implementation

+
ViewWidget(this.view) : super(key: view.flutterKey);
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ViewWidget/createState.html b/docs/widgets/ViewWidget/createState.html new file mode 100644 index 0000000000..45f903e040 --- /dev/null +++ b/docs/widgets/ViewWidget/createState.html @@ -0,0 +1,150 @@ + + + + + + + + createState method - ViewWidget class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
createState
+ +
+ +
+
+
+ +
+
+ +

createState method +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ +State<ViewWidget> +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
+State<ViewWidget> createState() => _ViewWidgetState();
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ViewWidget/view.html b/docs/widgets/ViewWidget/view.html new file mode 100644 index 0000000000..80889ba23b --- /dev/null +++ b/docs/widgets/ViewWidget/view.html @@ -0,0 +1,129 @@ + + + + + + + + view property - ViewWidget class - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
view
+ +
+ +
+
+
+ +
+
+ +

view property +

+ +
+ + DashboardView + view +
final
+ +
+ +
+

The view to show.

+
+ + +
+

Implementation

+
final DashboardView view;
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ViewsCounter-class-sidebar.html b/docs/widgets/ViewsCounter-class-sidebar.html new file mode 100644 index 0000000000..62ace993d8 --- /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..eb685b0067 --- /dev/null +++ b/docs/widgets/ViewsCounter-class.html @@ -0,0 +1,428 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ViewsCounter/ViewsCounter.html b/docs/widgets/ViewsCounter/ViewsCounter.html new file mode 100644 index 0000000000..f58b67a341 --- /dev/null +++ b/docs/widgets/ViewsCounter/ViewsCounter.html @@ -0,0 +1,128 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ViewsCounter/build.html b/docs/widgets/ViewsCounter/build.html new file mode 100644 index 0000000000..278d388d5b --- /dev/null +++ b/docs/widgets/ViewsCounter/build.html @@ -0,0 +1,157 @@ + + + + + + + + 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>(
+        iconEnabledColor: Colors.black,
+        value: model.views.length,
+        onChanged: model.setNumViews,
+        items: [
+          for (int i = 1; i <= 4; i++) DropdownMenuItem(
+            value: i,
+            child: Center(child: Text(i.toString())),
+          ),
+        ],
+      ),
+    ],
+);
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ViewsWidget-class-sidebar.html b/docs/widgets/ViewsWidget-class-sidebar.html new file mode 100644 index 0000000000..a3a55ed4bd --- /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..8e6e07defa --- /dev/null +++ b/docs/widgets/ViewsWidget-class.html @@ -0,0 +1,428 @@ + + + + + + + + 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.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ViewsWidget/ViewsWidget.html b/docs/widgets/ViewsWidget/ViewsWidget.html new file mode 100644 index 0000000000..8a7b22a270 --- /dev/null +++ b/docs/widgets/ViewsWidget/ViewsWidget.html @@ -0,0 +1,128 @@ + + + + + + + + ViewsWidget constructor - ViewsWidget - widgets library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ menu + +
ViewsWidget
+ +
+ +
+
+
+ +
+
+ +

ViewsWidget constructor +

+ +
+ + ViewsWidget() +
+ + +
+

A const constructor.

+
+ + + +
+

Implementation

+
ViewsWidget() : super(models.views);
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/ViewsWidget/build.html b/docs/widgets/ViewsWidget/build.html new file mode 100644 index 0000000000..bbee6d92aa --- /dev/null +++ b/docs/widgets/ViewsWidget/build.html @@ -0,0 +1,225 @@ + + + + + + + + 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) => switch (model.views.length) {
+    1 => Column(children: [Expanded(
+      child: ViewWidget(models.views.views[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: [
+        ResizableChildData(
+          minSize: 100,
+          startingRatio: 0.5,
+          child: ViewWidget(models.views.views[0]),
+        ),
+        ResizableChildData(
+          minSize: 100,
+          startingRatio: 0.5,
+          child: ViewWidget(models.views.views[1]),
+        ),
+      ],
+    ),
+    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: [
+              ResizableChildData(
+                minSize: 100,
+                startingRatio: 0.5,
+                child: ViewWidget(models.views.views[0]),
+              ),
+              ResizableChildData(
+                minSize: 100,
+                startingRatio: 0.5,
+                child: ViewWidget(models.views.views[1]),
+              ),
+            ],
+          ),
+        ),
+        if (model.views.length == 3) ResizableChildData(
+          minSize: 100,
+          startingRatio: 0.5,
+          child: ViewWidget(models.views.views[2]),
+        ) else ResizableChildData(
+          minSize: 100,
+          startingRatio: 0.5,
+          child: ResizableContainer(
+            controller: model.horizontalController2,
+            direction: Axis.horizontal,
+            dividerWidth: 8,
+            dividerColor: Colors.black,
+            children: [
+              ResizableChildData(
+                minSize: 100,
+                startingRatio: 0.5,
+                child: ViewWidget(models.views.views[2]),
+              ),
+              ResizableChildData(
+                minSize: 100,
+                startingRatio: 0.5,
+                child: ViewWidget(models.views.views[3]),
+              ),
+            ],
+          ),
+        ),
+      ],
+    ),
+    _ => throw StateError("Too many views: ${model.views.length}"),
+  };
+
+ + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + + diff --git a/docs/widgets/widgets-library-sidebar.html b/docs/widgets/widgets-library-sidebar.html new file mode 100644 index 0000000000..fbfe443e9e --- /dev/null +++ b/docs/widgets/widgets-library-sidebar.html @@ -0,0 +1,46 @@ +
    +
  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. NumberEditor
  30. +
  31. ReactiveWidget
  32. +
  33. ReactiveWidgetInterface
  34. +
  35. ReactiveWidgetState
  36. +
  37. ReusableReactiveWidget
  38. +
  39. ScienceCommandEditor
  40. +
  41. SerialButton
  42. +
  43. Sidebar
  44. +
  45. SocketEditor
  46. +
  47. StatusIcons
  48. +
  49. ThrottleEditor
  50. +
  51. TimerEditor
  52. +
  53. TimerWidget
  54. +
  55. VideoFeed
  56. +
  57. VideoFeedState
  58. +
  59. ViewsCounter
  60. +
  61. ViewsWidget
  62. +
  63. ViewWidget
  64. + + + + + + + + + +
  65. Extensions
  66. +
  67. BuildContextUtils
  68. +
  69. SeverityUtil
  70. +
diff --git a/docs/widgets/widgets-library.html b/docs/widgets/widgets-library.html new file mode 100644 index 0000000000..915ac24897 --- /dev/null +++ b/docs/widgets/widgets-library.html @@ -0,0 +1,438 @@ + + + + + + + + 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. +
+ +
+ 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. +
+ +
+ 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. +
+ +
+ ViewsCounter + +
+
+ A dropdown to select more or less views. +
+ +
+ ViewsWidget + +
+
+ A widget to render all the views the user selected. +
+ +
+ ViewWidget + +
+
+ A widget to show one DashboardView. +
+ +
+
+ + + + +
+

Extensions

+ +
+
+ BuildContextUtils + on BuildContext + + +
+
+ Convenience functions on BuildContext. +
+ + +
+ SeverityUtil + on Severity + + +
+
+ Extension for COlors on Severity +
+ + +
+
+ + + + + + +
+ + + + + +
+ +
+ + rover_dashboard + 2024.4.18+5 + + + +
+ + + + + + + + + + + +