protobuf library
This library exports the generated Protobuf classes.
Nothing in this library is hand-written. See our Protobuf repository for more details.
Classes
- AntennaControlMode
- / How the antenna is being controller.
- AntennaFirmwareCommand
- AntennaFirmwareData
- ArmCommand
- ArmData
- AutonomyCommand
- AutonomyData
- AutonomyState
- AutonomyTask
- BaseStationCommand
- / Command to control the movement of the MARS antenna. / / This command has two modes: manual operation or rover tracking. / - When tracking the rover, any GPS signals received by the rover or the base station's internal / GPS will cause it to re-calculate an orientation that ideally faces the rover. In this mode, / manual commands are ignored. / - When in manual mode, all GPS data is ignored and the motor is only moved when the Dashboard / sends a command with a manualCommand payload. / / When tracking the rover, the Dashboard can override either the base station or rover's position / for testing and debugging. When a new position override is received, the base station will: / - calculate the antenna orientation as if the rover were at this position / - send an AntennaFirmwareCommand for this position / - immediately set the mode to AntennaControlMode.MANUAL_CONTROL to hold the position
- BaseStationData
- BoolState
- BurtLog
- BurtLogLevel
- CameraDetails
- / Details about a specific camera.
- CameraName
- CameraStatus
- CarouselCommand
- / A command for the carousel and funnel to follow.
- Connect
- Used for a simple handshake between devices.
- Coordinates
- Device
- Disconnect
- Notifies the recipient that the sender will no longer be connected.
- DriveCommand
- DriveData
- GpsCoordinates
- GripperCommand
- GripperData
- MotorCommand
- MotorData
- MotorDirection
- Orientation
- ProtoColor
- PumpState
- / The state of a pump. If undefined: don't do anything. If fill: turn on, wait, then turn off.
- RoverPosition
- RoverStatus
- / Changes the way the rover listens to incoming commands. / / - When IDLE, all subsystems will ignore all commands / - When MANUAL, all subsystems will accept all commands / - When AUTONOMOUS, the rover will ignore commands from the dashboard
- ScienceCommand
- / A command to the science subsystem.
- ScienceData
- / Data coming from the science subsystem.
- ScienceState
- / The state of the science subsystem. If not COLLECT_DATA, don't stream data at all.
- ServoState
- / The state of a servo. If undefined, don't open or close.
- Timestamp
- A Timestamp represents a point in time independent of any time zone or local calendar, encoded as a count of seconds and fractions of seconds at nanosecond resolution. The count is relative to an epoch at UTC midnight on January 1, 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar backwards to year one.
- UpdateSetting
- / Update a sensitive setting, such as the rover's status. / / This message must be triggered manually and the recipient (usually the subsystems Pi) / must respond with the exact same message to confirm its receipt.
- Version
- VideoCommand
- / Make changes to a camera feed.
- VideoData
- / Reports data about a camera.
- WrappedMessage
Extensions
-
EnumUtils
on List<
T> - Helpful methods on lists of Protobuf enums.
- GpsToMeters on GpsCoordinates
- Helpful extension methods to convert GpsCoordinates into meters
- MessageUtils on Message
- Defines a friendlier method for getting the name of a message.
- MetersToGps on ({num lat, num long})
- Extension to convert coordinates in meters into GpsCoordinates.
-
NullableStreamUtils
on Stream<
T?> - Helpful methods on streams of nullable values.
-
WrappedMessageStream
on Stream<
WrappedMessage> - Helpful methods on Streams of WrappedMessages.
Functions
-
deviceToDataName(
Device device) → String? - Returns the type of data message that would be emitted by this device.
Typedefs
-
Json
= Map<
String, dynamic> - JSON data as a map.
- Message = GeneratedMessage
- A cleaner name for any message generated by Protobuf.