Documentation
¶
Overview ¶
Package rdk defines the Robot Development Kit. This is the open-source, on-robot portion of the Viam platform, providing viam-server and the Go SDK.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package app contains the interfaces that manage a machine fleet with code instead of with the graphical interface of the Viam App.
|
Package app contains the interfaces that manage a machine fleet with code instead of with the graphical interface of the Viam App. |
|
Package cli contains all business logic needed by the CLI command.
|
Package cli contains all business logic needed by the CLI command. |
|
internal/cli_lint
command
Package main is the CLI-specific linter itself.
|
Package main is the CLI-specific linter itself. |
|
module_generate/modulegen
Package modulegen contains defined types used for module generation
|
Package modulegen contains defined types used for module generation |
|
module_generate/scripts
Package scripts contains scripts that generate method stubs for modules
|
Package scripts contains scripts that generate method stubs for modules |
|
viam
command
Package main is the CLI command itself.
|
Package main is the CLI command itself. |
|
Package cloud contains app-related functionality.
|
Package cloud contains app-related functionality. |
|
components
|
|
|
arm
Package arm defines the arm that a robot uses to manipulate objects.
|
Package arm defines the arm that a robot uses to manipulate objects. |
|
arm/fake
Package fake implements a fake arm.
|
Package fake implements a fake arm. |
|
arm/fake/3d_models
Package models3d contains embedded 3D model files and related mappings for fake arm models.
|
Package models3d contains embedded 3D model files and related mappings for fake arm models. |
|
arm/register
Package register registers all relevant arms
|
Package register registers all relevant arms |
|
arm/sim
Package sim implements the arm API and simulates moving to joint positions over time.
|
Package sim implements the arm API and simulates moving to joint positions over time. |
|
arm/wrapper
Package wrapper is a package that defines an implementation that wraps a partially implemented arm
|
Package wrapper is a package that defines an implementation that wraps a partially implemented arm |
|
audioin
Package audioin defines an audioin component
|
Package audioin defines an audioin component |
|
audioin/fake
Package fake implements a fake audio in.
|
Package fake implements a fake audio in. |
|
audioin/register
Package register registers all relevant audio ins
|
Package register registers all relevant audio ins |
|
audioout
Package audioout defines an audioout component
|
Package audioout defines an audioout component |
|
audioout/fake
Package fake implements a fake audio out.
|
Package fake implements a fake audio out. |
|
audioout/register
Package register registers all relevant audio outs
|
Package register registers all relevant audio outs |
|
base
Package base defines the base that a robot uses to move around.
|
Package base defines the base that a robot uses to move around. |
|
base/fake
Package fake implements a fake base.
|
Package fake implements a fake base. |
|
base/register
Package register registers all relevant bases
|
Package register registers all relevant bases |
|
base/sensorcontrolled
Package sensorcontrolled base implements a base with feedback control from a movement sensor
|
Package sensorcontrolled base implements a base with feedback control from a movement sensor |
|
base/wheeled
Package wheeled implements some bases, like a wheeled base.
|
Package wheeled implements some bases, like a wheeled base. |
|
board
Package board defines the interfaces that typically live on a single-board computer such as a Raspberry Pi.
|
Package board defines the interfaces that typically live on a single-board computer such as a Raspberry Pi. |
|
board/esp32
Package esp32 exists for the sole purpose of exposing the esp32 as a micro-rdk configuration in app.viam.com The ESP32 is supported by the micro-rdk only (https://github.com/viamrobotics/micro-rdk)
|
Package esp32 exists for the sole purpose of exposing the esp32 as a micro-rdk configuration in app.viam.com The ESP32 is supported by the micro-rdk only (https://github.com/viamrobotics/micro-rdk) |
|
board/fake
Package fake implements a fake board.
|
Package fake implements a fake board. |
|
board/genericlinux
Package genericlinux implements a Linux-based board making heavy use of sysfs (https://en.wikipedia.org/wiki/Sysfs).
|
Package genericlinux implements a Linux-based board making heavy use of sysfs (https://en.wikipedia.org/wiki/Sysfs). |
|
board/genericlinux/buses
Package buses is for I2C and SPI boards that run Linux.
|
Package buses is for I2C and SPI boards that run Linux. |
|
board/mcp3008helper
Package mcp3008helper is shared code for hooking an MCP3008 ADC up to a board.
|
Package mcp3008helper is shared code for hooking an MCP3008 ADC up to a board. |
|
board/pinwrappers
Package pinwrappers implements interfaces that wrap the basic board interface and return types, and expands them with new methods and interfaces for the built in board models.
|
Package pinwrappers implements interfaces that wrap the basic board interface and return types, and expands them with new methods and interfaces for the built in board models. |
|
board/register
Package register registers all relevant Boards and also API specific functions
|
Package register registers all relevant Boards and also API specific functions |
|
button
Package button defines a button on your machine.
|
Package button defines a button on your machine. |
|
button/fake
Package fake implements a fake button.
|
Package fake implements a fake button. |
|
button/register
Package register registers all relevant buttons and also API specific functions
|
Package register registers all relevant buttons and also API specific functions |
|
camera
Package camera defines an image capturing device.
|
Package camera defines an image capturing device. |
|
camera/fake
Package fake implements a fake camera which always returns the same image with a user specified resolution.
|
Package fake implements a fake camera which always returns the same image with a user specified resolution. |
|
camera/ffmpeg
Package ffmpeg provides an implementation for an ffmpeg based camera
|
Package ffmpeg provides an implementation for an ffmpeg based camera |
|
camera/register
Package register registers all relevant cameras and also API specific functions
|
Package register registers all relevant cameras and also API specific functions |
|
camera/replaypcd
Package replaypcd implements a replay camera that can return point cloud data.
|
Package replaypcd implements a replay camera that can return point cloud data. |
|
camera/rtppassthrough
Package rtppassthrough defines a Source of RTP packets
|
Package rtppassthrough defines a Source of RTP packets |
|
camera/transformpipeline
Package transformpipeline defines image sources that apply transforms on images, and can be composed into an image transformation pipeline.
|
Package transformpipeline defines image sources that apply transforms on images, and can be composed into an image transformation pipeline. |
|
camera/videosource
Package videosource implements webcam.
|
Package videosource implements webcam. |
|
encoder
Package encoder implements the encoder component.
|
Package encoder implements the encoder component. |
|
encoder/fake
Package fake implements a fake encoder.
|
Package fake implements a fake encoder. |
|
encoder/incremental
Package incremental implements an incremental encoder
|
Package incremental implements an incremental encoder |
|
encoder/register
Package register registers all relevant MovementSensors
|
Package register registers all relevant MovementSensors |
|
encoder/single
Package single implements a single-wire odometer, such as LM393, as an encoder.
|
Package single implements a single-wire odometer, such as LM393, as an encoder. |
|
gantry
Package gantry contains a gRPC based gantry client.
|
Package gantry contains a gRPC based gantry client. |
|
gantry/fake
Package fake implements a fake gantry.
|
Package fake implements a fake gantry. |
|
gantry/register
Package register registers all relevant gantries
|
Package register registers all relevant gantries |
|
generic
Package generic contains a gRPC based generic client.
|
Package generic contains a gRPC based generic client. |
|
generic/fake
Package fake implements a fake generic component.
|
Package fake implements a fake generic component. |
|
generic/register
Package register registers the generic component
|
Package register registers the generic component |
|
gripper
Package gripper contains a gRPC based gripper client.
|
Package gripper contains a gRPC based gripper client. |
|
gripper/fake
Package fake implements a fake gripper.
|
Package fake implements a fake gripper. |
|
gripper/register
Package register registers all relevant grippers and also API specific functions
|
Package register registers all relevant grippers and also API specific functions |
|
input
Package input contains a gRPC based input controller client.
|
Package input contains a gRPC based input controller client. |
|
input/fake
Package fake implements a fake input controller.
|
Package fake implements a fake input controller. |
|
input/gamepad
Package gamepad implements a linux gamepad as an input controller.
|
Package gamepad implements a linux gamepad as an input controller. |
|
input/gpio
Package gpio implements a gpio/adc based input.Controller.
|
Package gpio implements a gpio/adc based input.Controller. |
|
input/mux
Package mux implements a multiplexed input controller.
|
Package mux implements a multiplexed input controller. |
|
input/register
Package register registers all relevant inputs
|
Package register registers all relevant inputs |
|
input/webgamepad
Package webgamepad implements a web based input controller.
|
Package webgamepad implements a web based input controller. |
|
motor
Package motor contains a gRPC bases motor client
|
Package motor contains a gRPC bases motor client |
|
motor/fake
Package fake implements a fake motor.
|
Package fake implements a fake motor. |
|
motor/gpio
Package gpio implements a GPIO based motor.
|
Package gpio implements a GPIO based motor. |
|
motor/gpiostepper
Package gpiostepper implements a GPIO based stepper motor
|
Package gpiostepper implements a GPIO based stepper motor |
|
motor/register
Package register registers all relevant motors
|
Package register registers all relevant motors |
|
movementsensor
Package movementsensor defines the interfaces of a MovementSensor.
|
Package movementsensor defines the interfaces of a MovementSensor. |
|
movementsensor/fake
Package fake is a fake MovementSensor for testing
|
Package fake is a fake MovementSensor for testing |
|
movementsensor/merged
Package merged implements a movementsensor combining movement data from other sensors
|
Package merged implements a movementsensor combining movement data from other sensors |
|
movementsensor/register
Package register registers all relevant MovementSensors
|
Package register registers all relevant MovementSensors |
|
movementsensor/replay
Package replay implements a replay movement sensor that can return motion data.
|
Package replay implements a replay movement sensor that can return motion data. |
|
movementsensor/wheeledodometry
Package wheeledodometry implements an odometery estimate from an encoder wheeled base.
|
Package wheeledodometry implements an odometery estimate from an encoder wheeled base. |
|
posetracker
Package posetracker contains the interface and gRPC infrastructure for a pose tracker component.
|
Package posetracker contains the interface and gRPC infrastructure for a pose tracker component. |
|
powersensor
Package powersensor defines the interfaces of a powersensor.
|
Package powersensor defines the interfaces of a powersensor. |
|
powersensor/fake
Package fake is a fake PowerSensor for testing
|
Package fake is a fake PowerSensor for testing |
|
powersensor/register
Package register registers all relevant motors
|
Package register registers all relevant motors |
|
register
Package register registers all components
|
Package register registers all components |
|
register_apis
Package registerapis is a convenience package to register the APIs for all built-in components.
|
Package registerapis is a convenience package to register the APIs for all built-in components. |
|
sensor
Package sensor contains a gRPC based sensor client.
|
Package sensor contains a gRPC based sensor client. |
|
sensor/fake
Package fake implements a fake Sensor.
|
Package fake implements a fake Sensor. |
|
sensor/register
Package register registers all relevant Sensors
|
Package register registers all relevant Sensors |
|
servo
Package servo contains a gRPC bases servo client
|
Package servo contains a gRPC bases servo client |
|
servo/fake
Package fake implements a fake servo.
|
Package fake implements a fake servo. |
|
servo/gpio
Package gpio implements a pin based servo
|
Package gpio implements a pin based servo |
|
servo/register
Package register registers all relevant servos
|
Package register registers all relevant servos |
|
switch
Package toggleswitch contains a gRPC based switch client.
|
Package toggleswitch contains a gRPC based switch client. |
|
switch/fake
Package fake implements fake switches with different position counts.
|
Package fake implements fake switches with different position counts. |
|
switch/register
Package register registers all relevant switches and also API specific functions
|
Package register registers all relevant switches and also API specific functions |
|
Package config defines the structures to configure a robot and its connected parts.
|
Package config defines the structures to configure a robot and its connected parts. |
|
testutils
Package testutils helpers for testing the config retrievial.
|
Package testutils helpers for testing the config retrievial. |
|
Package control package for feedback loop controls This is an Experimental package
|
Package control package for feedback loop controls This is an Experimental package |
|
Package data contains the code involved with Viam's Data Management Platform for automatically collecting component readings from robots.
|
Package data contains the code involved with Viam's Data Management Platform for automatically collecting component readings from robots. |
|
testutils
Package data contains the code for automatically collecting readings from robots.
|
Package data contains the code for automatically collecting readings from robots. |
|
etc
|
|
|
analyzecoverage
command
Package main is a go test analyzer that publishes results to a MongoDB database.
|
Package main is a go test analyzer that publishes results to a MongoDB database. |
|
analyzetests
command
Package main is a go test analyzer that publishes results to a MongoDB database.
|
Package main is a go test analyzer that publishes results to a MongoDB database. |
|
subsystem_manifest
command
Package main implements the subsystem_manifest generator
|
Package main implements the subsystem_manifest generator |
|
Package examples contain a few examples of using the RDK.
|
Package examples contain a few examples of using the RDK. |
|
customresources/apis/gizmoapi
Package gizmoapi implements the acme:component:gizmo API, a demonstraction API showcasing the available GRPC method types.
|
Package gizmoapi implements the acme:component:gizmo API, a demonstraction API showcasing the available GRPC method types. |
|
customresources/apis/proto/api/component/gizmo/v1
Package v1 is a reverse proxy.
|
Package v1 is a reverse proxy. |
|
customresources/apis/proto/api/service/summation/v1
Package v1 is a reverse proxy.
|
Package v1 is a reverse proxy. |
|
customresources/apis/summationapi
Package summationapi defines a simple number summing service API for demonstration purposes.
|
Package summationapi defines a simple number summing service API for demonstration purposes. |
|
customresources/demos/complexmodule
command
Package main is a module, which serves all four custom model types in the customresources examples, including both custom APIs.
|
Package main is a module, which serves all four custom model types in the customresources examples, including both custom APIs. |
|
customresources/demos/complexmodule/client
command
Package main tests out all four custom models in the complexmodule.
|
Package main tests out all four custom models in the complexmodule. |
|
customresources/demos/multiplemodules/client
command
Package main tests out all 2 custom models in the multiplemodules.
|
Package main tests out all 2 custom models in the multiplemodules. |
|
customresources/demos/multiplemodules/gizmomodule
command
Package main is a module, which serves the mygizmosummer custom model type in the customresources examples.
|
Package main is a module, which serves the mygizmosummer custom model type in the customresources examples. |
|
customresources/demos/multiplemodules/summationmodule
command
Package main is a module, which serves the mysum custom model type in the customresources examples.
|
Package main is a module, which serves the mysum custom model type in the customresources examples. |
|
customresources/demos/optionaldepsmodule
command
Package main is a module that utilizes both required and optional implicit dependencies.
|
Package main is a module that utilizes both required and optional implicit dependencies. |
|
customresources/demos/rtppassthrough
command
Package main implements a fake passthrough camera module
|
Package main implements a fake passthrough camera module |
|
customresources/demos/simplemodule
command
Package main is a module with a built-in "counter" component model, that will simply track numbers.
|
Package main is a module with a built-in "counter" component model, that will simply track numbers. |
|
customresources/demos/simplemodule/client
command
Package main tests out all four custom models in the complexmodule.
|
Package main tests out all four custom models in the complexmodule. |
|
customresources/models/mybase
Package mybase implements a base that only supports SetPower (basic forward/back/turn controls.)
|
Package mybase implements a base that only supports SetPower (basic forward/back/turn controls.) |
|
customresources/models/mydiscovery
Package mydiscovery implements a discovery that returns some fake components.
|
Package mydiscovery implements a discovery that returns some fake components. |
|
customresources/models/mygizmo
Package mygizmo implements an acme:component:gizmo, a demonstration component that simply shows the various methods available in grpc.
|
Package mygizmo implements an acme:component:gizmo, a demonstration component that simply shows the various methods available in grpc. |
|
customresources/models/mygizmosummer
Package mygizmosummer implements an acme:component:gizmo and depends on another custom API.
|
Package mygizmosummer implements an acme:component:gizmo and depends on another custom API. |
|
customresources/models/mynavigation
Package mynavigation contains an example navigation service that only stores waypoints, and returns a fixed, configurable location.
|
Package mynavigation contains an example navigation service that only stores waypoints, and returns a fixed, configurable location. |
|
customresources/models/mysum
Package mysum implements an acme:service:summation, a demo service which sums (or subtracts) a given list of numbers.
|
Package mysum implements an acme:service:summation, a demo service which sums (or subtracts) a given list of numbers. |
|
Package ftdc ...
|
Package ftdc ... |
|
cmd
command
main provides a CLI tool for viewing `.ftdc` files emitted by the `viam-server`.
|
main provides a CLI tool for viewing `.ftdc` files emitted by the `viam-server`. |
|
parser
Package parser provides a CLI tool for viewing `.ftdc` files emitted by the `viam-server`.
|
Package parser provides a CLI tool for viewing `.ftdc` files emitted by the `viam-server`. |
|
sys
Package sys provides functionality for gathering system metrics in an FTDC compliant API.
|
Package sys provides functionality for gathering system metrics in an FTDC compliant API. |
|
Package gostream implements a simple server for serving video streams over WebRTC.
|
Package gostream implements a simple server for serving video streams over WebRTC. |
|
codec
Package codec defines the encoder and factory interfaces for encoding video frames.
|
Package codec defines the encoder and factory interfaces for encoding video frames. |
|
codec/x264
Package x264 contains the x264 video codec.
|
Package x264 contains the x264 video codec. |
|
Package grpc provides grpc utilities.
|
Package grpc provides grpc utilities. |
|
internal
|
|
|
cloud
Package cloud implements a service to grab gRPC connections to talk to a cloud service that manages robots.
|
Package cloud implements a service to grab gRPC connections to talk to a cloud service that manages robots. |
|
otlpfile
Package otlpfile provides a way to save OTLP messages to disk instead of sending them over the network.
|
Package otlpfile provides a way to save OTLP messages to disk instead of sending them over the network. |
|
testutils/inject
Package inject provides an mock cloud connection service that can be used for testing.
|
Package inject provides an mock cloud connection service that can be used for testing. |
|
Package logging package contains functionality for viam-server logging.
|
Package logging package contains functionality for viam-server logging. |
|
Package ml provides some fundamental machine learning primitives.
|
Package ml provides some fundamental machine learning primitives. |
|
Package module provides services for external resource and logic modules.
|
Package module provides services for external resource and logic modules. |
|
modmanager
Package modmanager provides the module manager for a robot.
|
Package modmanager provides the module manager for a robot. |
|
modmanager/options
Package modmanageroptions provides Options for configuring a mod manager
|
Package modmanageroptions provides Options for configuring a mod manager |
|
multiversionmodule
command
Package main is a module designed to help build tests for reconfiguration logic between module versions
|
Package main is a module designed to help build tests for reconfiguration logic between module versions |
|
testmodule
command
Package main is a module for testing, with an inline generic component to return internal data and perform other test functions.
|
Package main is a module for testing, with an inline generic component to return internal data and perform other test functions. |
|
testmodule2
command
Package main is a module for testing, with an inline generic component to return internal data and perform other test functions.
|
Package main is a module for testing, with an inline generic component to return internal data and perform other test functions. |
|
trace
Package trace provides a subset of the public API from go.viam.com/utils/trace.
|
Package trace provides a subset of the public API from go.viam.com/utils/trace. |
|
Package motionplan is an API for motioan planning without an implementation
|
Package motionplan is an API for motioan planning without an implementation |
|
armplanning
Package armplanning is a motion planning library.
|
Package armplanning is a motion planning library. |
|
armplanning/cmd-plan
command
package main for testing armplanning
|
package main for testing armplanning |
|
ik
Package ik contains tols for doing gradient-descent based inverse kinematics, allowing for the minimization of arbitrary metrics based on the output of calling `Transform` on the given frame.
|
Package ik contains tols for doing gradient-descent based inverse kinematics, allowing for the minimization of arbitrary metrics based on the output of calling `Transform` on the given frame. |
|
Package operation manages operation ids
|
Package operation manages operation ids |
|
Package pointcloud defines a point cloud and provides an implementation for one.
|
Package pointcloud defines a point cloud and provides an implementation for one. |
|
Package protoutils are a collection of util methods for using proto in rdk
|
Package protoutils are a collection of util methods for using proto in rdk |
|
Package referenceframe defines the api and does the math of translating between reference frames Useful for if you have a camera, connected to a gripper, connected to an arm, and need to translate the camera reference frame to the arm reference frame, if you've found something in the camera, and want to move the gripper + arm to get it.
|
Package referenceframe defines the api and does the math of translating between reference frames Useful for if you have a camera, connected to a gripper, connected to an arm, and need to translate the camera reference frame to the arm reference frame, if you've found something in the camera, and want to move the gripper + arm to get it. |
|
Package resource contains types that help identify and classify resources (components/services) of a robot.
|
Package resource contains types that help identify and classify resources (components/services) of a robot. |
|
Package rimage defines fundamental image and color processing primitives.
|
Package rimage defines fundamental image and color processing primitives. |
|
depthadapter
Package depthadapter is a simple package that turns a DepthMap into a point cloud using intrinsic parameters of a camera.
|
Package depthadapter is a simple package that turns a DepthMap into a point cloud using intrinsic parameters of a camera. |
|
transform
Package transform provides image transformation utilities relying on camera parameters.
|
Package transform provides image transformation utilities relying on camera parameters. |
|
transform/cmd/depth_to_color
command
Get the coordinates of a depth pixel in the depth map in the reference frame of the color image $./depth_to_color -conf=/path/to/intrinsics/extrinsic/file X Y Z
|
Get the coordinates of a depth pixel in the depth map in the reference frame of the color image $./depth_to_color -conf=/path/to/intrinsics/extrinsic/file X Y Z |
|
transform/cmd/extrinsic_calibration
command
Given at least 4 corresponding points, and the intrinsic matrices of both cameras, computes the rigid transform (rotation + translation) that would be the extrinsic transformation from camera 1 to camera 2.
|
Given at least 4 corresponding points, and the intrinsic matrices of both cameras, computes the rigid transform (rotation + translation) that would be the extrinsic transformation from camera 1 to camera 2. |
|
Package robot defines the robot which is the root of all robotic parts.
|
Package robot defines the robot which is the root of all robotic parts. |
|
client
Package client contains a gRPC based robot.Robot client.
|
Package client contains a gRPC based robot.Robot client. |
|
framesystem
Package framesystem defines the frame system service which is responsible for managing a stateful frame system
|
Package framesystem defines the frame system service which is responsible for managing a stateful frame system |
|
impl
Package robotimpl defines implementations of robot.Robot and robot.LocalRobot.
|
Package robotimpl defines implementations of robot.Robot and robot.LocalRobot. |
|
jobmanager
Package jobmanager handles the logic of the jobmanager, responsible for scheduling and keeping track of the "jobs" field of the config.
|
Package jobmanager handles the logic of the jobmanager, responsible for scheduling and keeping track of the "jobs" field of the config. |
|
packages
Package packages contains utilities and manager to sync Viam packages defined in the RDK config from the Viam app to the local robot.
|
Package packages contains utilities and manager to sync Viam packages defined in the RDK config from the Viam app to the local robot. |
|
packages/testutils
Package testutils is test helpers for packages.
|
Package testutils is test helpers for packages. |
|
server
Package server contains a gRPC based robot.Robot server implementation.
|
Package server contains a gRPC based robot.Robot server implementation. |
|
web
Package web provides gRPC/REST/GUI APIs to control and monitor a robot.
|
Package web provides gRPC/REST/GUI APIs to control and monitor a robot. |
|
web/options
Package weboptions provides Options for configuring a web server
|
Package weboptions provides Options for configuring a web server |
|
web/stream
Package webstream provides controls for streaming from the web server.
|
Package webstream provides controls for streaming from the web server. |
|
web/stream/camera
Package camera provides utilities for working with camera resources in the context of streaming.
|
Package camera provides utilities for working with camera resources in the context of streaming. |
|
web/stream/state
Package state controls the source of the RTP packets being written to the stream's subscribers and ensures there is only one active at a time while there are peer connections to receive RTP packets.
|
Package state controls the source of the RTP packets being written to the stream's subscribers and ensures there is only one active at a time while there are peer connections to receive RTP packets. |
|
Package ros implements functionality that bridges the gap between `rdk` and ROS
|
Package ros implements functionality that bridges the gap between `rdk` and ROS |
|
rosbag_parser/cmd
command
Package main is a rosbag parser.
|
Package main is a rosbag parser. |
|
services
|
|
|
baseremotecontrol
Package baseremotecontrol implements a remote control for a base.
|
Package baseremotecontrol implements a remote control for a base. |
|
baseremotecontrol/builtin
Package builtin implements a remote control for a base.
|
Package builtin implements a remote control for a base. |
|
baseremotecontrol/register
Package register registers all relevant baseremotecontrol models and also API specific functions
|
Package register registers all relevant baseremotecontrol models and also API specific functions |
|
datamanager
Package datamanager contains a gRPC based datamanager service server
|
Package datamanager contains a gRPC based datamanager service server |
|
datamanager/builtin
Package builtin captures data from a robot's components, persists the captured data to disk and sync it to the cloud when possible.
|
Package builtin captures data from a robot's components, persists the captured data to disk and sync it to the cloud when possible. |
|
datamanager/builtin/capture
Package capture implements datacapture for the builtin datamanger
|
Package capture implements datacapture for the builtin datamanger |
|
datamanager/builtin/cmd
command
package main prints a disk summary of the builtin data manager's capture directory or additional sync paths It exists purely as a convenience utilty for viam developers & solutions engineers.
|
package main prints a disk summary of the builtin data manager's capture directory or additional sync paths It exists purely as a convenience utilty for viam developers & solutions engineers. |
|
datamanager/builtin/shared
Package shared is for any variables/functions shared amongst the datamanager builtin package and its subpackages.
|
Package shared is for any variables/functions shared amongst the datamanager builtin package and its subpackages. |
|
datamanager/builtin/sync
Package sync implements datasync for the builtin datamanger
|
Package sync implements datasync for the builtin datamanger |
|
datamanager/register
Package register registers all relevant datamanager models and also API specific functions
|
Package register registers all relevant datamanager models and also API specific functions |
|
discovery
Package discovery implements the discovery service, which lets users surface resource configs for their machines to use.
|
Package discovery implements the discovery service, which lets users surface resource configs for their machines to use. |
|
discovery/fake
Package fake implements a fake discovery service.
|
Package fake implements a fake discovery service. |
|
discovery/register
Package register registers all relevant discovery models and also API specific functions
|
Package register registers all relevant discovery models and also API specific functions |
|
generic
Package generic contains a gRPC based generic client.
|
Package generic contains a gRPC based generic client. |
|
generic/fake
Package fake implements a fake generic service.
|
Package fake implements a fake generic service. |
|
generic/register
Package register registers the generic service
|
Package register registers the generic service |
|
mlmodel
Package mlmodel defines the client and server for a service that can take in a map of input tensors/arrays, pass them through an inference engine, and then return a map output tensors/arrays.
|
Package mlmodel defines the client and server for a service that can take in a map of input tensors/arrays, pass them through an inference engine, and then return a map output tensors/arrays. |
|
mlmodel/register
Package register registers all relevant ML model services
|
Package register registers all relevant ML model services |
|
motion
Package motion is the service that allows you to plan and execute movements.
|
Package motion is the service that allows you to plan and execute movements. |
|
motion/builtin
Package builtin implements a motion service.
|
Package builtin implements a motion service. |
|
navigation
Package navigation is the service that allows you to navigate along waypoints.
|
Package navigation is the service that allows you to navigate along waypoints. |
|
navigation/builtin
Package builtin implements a navigation service.
|
Package builtin implements a navigation service. |
|
navigation/register
Package register registers all relevant navigation models and API specific functions.
|
Package register registers all relevant navigation models and API specific functions. |
|
register
Package register registers all services
|
Package register registers all services |
|
register_apis
Package registerapis is a convenience package to register the APIs for all built-in services.
|
Package registerapis is a convenience package to register the APIs for all built-in services. |
|
shell
Package shell contains a shell service, along with a gRPC server and client
|
Package shell contains a shell service, along with a gRPC server and client |
|
shell/builtin
Package builtin contains a shell service, along with a gRPC server and client
|
Package builtin contains a shell service, along with a gRPC server and client |
|
shell/register
Package register registers all relevant shell models and also API specific functions
|
Package register registers all relevant shell models and also API specific functions |
|
shell/testutils
Package shelltestutils contains test utilities for working with the shell service like test file system directories and comparison tools.
|
Package shelltestutils contains test utilities for working with the shell service like test file system directories and comparison tools. |
|
slam
Package slam implements simultaneous localization and mapping.
|
Package slam implements simultaneous localization and mapping. |
|
slam/fake
Package fake implements a fake slam service
|
Package fake implements a fake slam service |
|
slam/internal/testhelper
Package testhelper implements a slam service definition with additional exported functions for the purpose of testing
|
Package testhelper implements a slam service definition with additional exported functions for the purpose of testing |
|
slam/register
Package register registers all relevant slam models and also API specific functions
|
Package register registers all relevant slam models and also API specific functions |
|
video
Package video contains the video service implementation.
|
Package video contains the video service implementation. |
|
video/fake
Package fake contains a fake video service implementation for testing.
|
Package fake contains a fake video service implementation for testing. |
|
video/register
Package register registers the video service and its implementations.
|
Package register registers the video service and its implementations. |
|
vision
Package vision is the service that allows you to access various computer vision algorithms (like detection, segmentation, tracking, etc) that usually only require a camera or image input.
|
Package vision is the service that allows you to access various computer vision algorithms (like detection, segmentation, tracking, etc) that usually only require a camera or image input. |
|
vision/colordetector
Package colordetector uses a heuristic based on hue and connected components to create bounding boxes around objects of a specified color.
|
Package colordetector uses a heuristic based on hue and connected components to create bounding boxes around objects of a specified color. |
|
vision/fake
Package fake implements a fake vision service which always returns the user specified detections/classifications.
|
Package fake implements a fake vision service which always returns the user specified detections/classifications. |
|
vision/mlvision
Package mlvision uses an underlying model from the ML model service as a vision model, and wraps the ML model with the vision service methods.
|
Package mlvision uses an underlying model from the ML model service as a vision model, and wraps the ML model with the vision service methods. |
|
vision/register
Package register registers all relevant vision models and also API specific functions
|
Package register registers all relevant vision models and also API specific functions |
|
worldstatestore
Package worldstatestore implements the world state store service, which lets users create custom visualizers to be rendered in the client.
|
Package worldstatestore implements the world state store service, which lets users create custom visualizers to be rendered in the client. |
|
worldstatestore/fake
Package fake provides a fake implementation of the worldstatestore.Service interface.
|
Package fake provides a fake implementation of the worldstatestore.Service interface. |
|
worldstatestore/register
Package register registers all relevant world object store models and also API specific functions
|
Package register registers all relevant world object store models and also API specific functions |
|
Package session provides support for robot session management.
|
Package session provides support for robot session management. |
|
Package spatialmath defines spatial mathematical operations.
|
Package spatialmath defines spatial mathematical operations. |
|
Package testutils implements test utilities.
|
Package testutils implements test utilities. |
|
inject
Package inject provides dependency injected structures for mocking interfaces.
|
Package inject provides dependency injected structures for mocking interfaces. |
|
inject/motion
Package inject separates the injected motion service from the rest of the injected packages to isolate an NLopt dependency.
|
Package inject separates the injected motion service from the rest of the injected packages to isolate an NLopt dependency. |
|
robottestutils
Package robottestutils provides helper functions in testing
|
Package robottestutils provides helper functions in testing |
|
vcamera
Package vcamera creates and streams video to virtual V4L2 capture devices on Linux.
|
Package vcamera creates and streams video to virtual V4L2 capture devices on Linux. |
|
vcamera/cmd
command
This package creates two virtual cameras and streams test video to them until the program halts (with ctrl-c for example).
|
This package creates two virtual cameras and streams test video to them until the program halts (with ctrl-c for example). |
|
Package tunnel contains helpers for a traffic tunneling implementation
|
Package tunnel contains helpers for a traffic tunneling implementation |
|
Package utils contains all utility functions that currently have no better home than here.
|
Package utils contains all utility functions that currently have no better home than here. |
|
contextutils
Package contextutils provides utilities for dealing with contexts such as adding and retrieving metadata to/from a context, and handling context timeouts.
|
Package contextutils provides utilities for dealing with contexts such as adding and retrieving metadata to/from a context, and handling context timeouts. |
|
diskusage
Package diskusage is used to get platform specific file system usage information.
|
Package diskusage is used to get platform specific file system usage information. |
|
ssync
Package ssync provides type-safe wrappers around the types from sync.
|
Package ssync provides type-safe wrappers around the types from sync. |
|
test_detector
command
package main: this is called by the utils test suite to confirm the Testing() test is false in prod.
|
package main: this is called by the utils test suite to confirm the Testing() test is false in prod. |
|
Package vision implements computer vision algorithms.
|
Package vision implements computer vision algorithms. |
|
classification
Package classification implements a classifier for use as a visModel in the vision service
|
Package classification implements a classifier for use as a visModel in the vision service |
|
delaunay
Package delaunay implements 2d Delaunay triangulation
|
Package delaunay implements 2d Delaunay triangulation |
|
keypoints
Package keypoints contains the implementation of keypoints in an image.
|
Package keypoints contains the implementation of keypoints in an image. |
|
objectdetection
Package objectdetection defines a functional way to create object detection pipelines by feeding in images from a gostream.VideoSource source.
|
Package objectdetection defines a functional way to create object detection pipelines by feeding in images from a gostream.VideoSource source. |
|
segmentation
Package segmentation implements object segmentation algorithms.
|
Package segmentation implements object segmentation algorithms. |
|
viscapture
Package viscapture implements VisCapture struct returned by the CaptureAllFromCamera vision service method
|
Package viscapture implements VisCapture struct returned by the CaptureAllFromCamera vision service method |
|
web
|
|
|
cmd/droid
Package droid is the entrypoint for gomobile.
|
Package droid is the entrypoint for gomobile. |
|
cmd/server
command
Package main provides a server offering gRPC/REST/GUI APIs to control and monitor a robot.
|
Package main provides a server offering gRPC/REST/GUI APIs to control and monitor a robot. |
|
networkcheck
Package networkcheck implements logic for collecting network statistics
|
Package networkcheck implements logic for collecting network statistics |
|
server
Package server implements the entry point for running a robot web server.
|
Package server implements the entry point for running a robot web server. |
Click to show internal directories.
Click to hide internal directories.