Documentation ¶
Overview ¶
Package slam implements simultaneous localization and mapping. This is an Experimental package.
Index ¶
- Constants
- Variables
- func HelperConcatenateChunksToFull(f func() ([]byte, error)) ([]byte, error)
- func InternalStateFull(ctx context.Context, slamSvc Service) ([]byte, error)
- func Limits(ctx context.Context, svc Service) ([]referenceframe.Limit, error)
- func Named(name string) resource.Name
- func NewRPCServiceServer(coll resource.APIResourceCollection[Service]) interface{}
- func PointCloudMapFull(ctx context.Context, slamSvc Service) ([]byte, error)
- type MappingMode
- type Properties
- type Service
Constants ¶
const ( SubtypeName = "slam" MappingModeNewMap = MappingMode(iota) MappingModeLocalizationOnly MappingModeUpdateExistingMap )
SubtypeName is the name of the type of service.
Variables ¶
var API = resource.APINamespaceRDK.WithServiceType(SubtypeName)
API is a variable that identifies the slam resource API.
Functions ¶
func HelperConcatenateChunksToFull ¶ added in v0.2.35
HelperConcatenateChunksToFull concatenates the chunks from a streamed grpc endpoint.
func InternalStateFull ¶ added in v0.8.0
InternalStateFull concatenates the streaming responses from InternalState into the internal serialized state of the slam algorithm.
func Limits ¶ added in v0.8.0
Limits returns the bounds of the slam map as a list of referenceframe.Limits.
func NewRPCServiceServer ¶ added in v0.2.36
func NewRPCServiceServer(coll resource.APIResourceCollection[Service]) interface{}
NewRPCServiceServer constructs a the slam gRPC service server. It is intentionally untyped to prevent use outside of tests.
Types ¶
type MappingMode ¶ added in v0.18.0
type MappingMode uint8
MappingMode describes what mapping mode the slam service is in, including creating a new map, localizing on an existing map or updating an existing map.
type Properties ¶ added in v0.18.0
type Properties struct { CloudSlam bool MappingMode MappingMode }
Properties returns various information regarding the current slam service, including whether the slam process is running in the cloud and its mapping mode.
type Service ¶
type Service interface { resource.Resource Position(ctx context.Context) (spatialmath.Pose, string, error) PointCloudMap(ctx context.Context) (func() ([]byte, error), error) InternalState(ctx context.Context) (func() ([]byte, error), error) LatestMapInfo(ctx context.Context) (time.Time, error) Properties(ctx context.Context) (Properties, error) }
Service describes the functions that are available to the service.
func FromDependencies ¶ added in v0.18.0
func FromDependencies(deps resource.Dependencies, name string) (Service, error)
FromDependencies is a helper for getting the named SLAM service from a collection of dependencies.
Directories ¶
Path | Synopsis |
---|---|
Package fake implements a fake slam service
|
Package fake implements a fake slam service |
Package grpchelper implements helper functions to be used with slam service grpc clients
|
Package grpchelper implements helper functions to be used with slam service grpc clients |
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 |
Package register registers all relevant slam models and also API specific functions
|
Package register registers all relevant slam models and also API specific functions |