inject

package
v0.23.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 20, 2024 License: AGPL-3.0 Imports: 65 Imported by: 2

Documentation

Overview

Package inject provides dependency injected structures for mocking interfaces.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AnalogReader

type AnalogReader struct {
	board.AnalogReader
	ReadFunc func(ctx context.Context, extra map[string]interface{}) (int, error)
	// contains filtered or unexported fields
}

AnalogReader is an injected analog reader.

func (*AnalogReader) Read

func (a *AnalogReader) Read(ctx context.Context, extra map[string]interface{}) (int, error)

Read calls the injected Read or the real version.

func (*AnalogReader) ReadCap

func (a *AnalogReader) ReadCap() []interface{}

ReadCap returns the last parameters received by Read, and then clears them.

type AppServiceClient added in v0.7.3

type AppServiceClient struct {
	apppb.AppServiceClient
	ListOrganizationsFunc func(ctx context.Context, in *apppb.ListOrganizationsRequest,
		opts ...grpc.CallOption) (*apppb.ListOrganizationsResponse, error)
	CreateKeyFunc func(ctx context.Context, in *apppb.CreateKeyRequest,
		opts ...grpc.CallOption) (*apppb.CreateKeyResponse, error)
}

AppServiceClient represents a fake instance of an app service client.

func (*AppServiceClient) CreateKey added in v0.8.0

CreateKey calls the injected CreateKeyFunc or the real version.

func (*AppServiceClient) ListOrganizations added in v0.7.3

ListOrganizations calls the injected ListOrganizationsFunc or the real version.

type Arm

type Arm struct {
	arm.Arm

	DoFunc                   func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	EndPositionFunc          func(ctx context.Context, extra map[string]interface{}) (spatialmath.Pose, error)
	MoveToPositionFunc       func(ctx context.Context, to spatialmath.Pose, extra map[string]interface{}) error
	MoveToJointPositionsFunc func(ctx context.Context, pos *pb.JointPositions, extra map[string]interface{}) error
	JointPositionsFunc       func(ctx context.Context, extra map[string]interface{}) (*pb.JointPositions, error)
	StopFunc                 func(ctx context.Context, extra map[string]interface{}) error
	IsMovingFunc             func(context.Context) (bool, error)
	CloseFunc                func(ctx context.Context) error
	ModelFrameFunc           func() referenceframe.Model
	CurrentInputsFunc        func(ctx context.Context) ([]referenceframe.Input, error)
	GoToInputsFunc           func(ctx context.Context, inputSteps ...[]referenceframe.Input) error
	// contains filtered or unexported fields
}

Arm is an injected arm.

func NewArm added in v0.2.36

func NewArm(name string) *Arm

NewArm returns a new injected arm.

func (*Arm) Close

func (a *Arm) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*Arm) CurrentInputs added in v0.7.3

func (a *Arm) CurrentInputs(ctx context.Context) ([]referenceframe.Input, error)

CurrentInputs calls the injected CurrentInputs or the real version.

func (*Arm) DoCommand added in v0.1.0

func (a *Arm) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*Arm) EndPosition added in v0.1.0

func (a *Arm) EndPosition(ctx context.Context, extra map[string]interface{}) (spatialmath.Pose, error)

EndPosition calls the injected EndPosition or the real version.

func (*Arm) GoToInputs added in v0.7.3

func (a *Arm) GoToInputs(ctx context.Context, inputSteps ...[]referenceframe.Input) error

GoToInputs calls the injected GoToInputs or the real version.

func (*Arm) IsMoving

func (a *Arm) IsMoving(ctx context.Context) (bool, error)

IsMoving calls the injected IsMoving or the real version.

func (*Arm) JointPositions added in v0.1.0

func (a *Arm) JointPositions(ctx context.Context, extra map[string]interface{}) (*pb.JointPositions, error)

JointPositions calls the injected JointPositions or the real version.

func (*Arm) ModelFrame added in v0.2.15

func (a *Arm) ModelFrame() referenceframe.Model

ModelFrame calls the injected ModelFrame or the real version.

func (*Arm) MoveToJointPositions

func (a *Arm) MoveToJointPositions(ctx context.Context, jp *pb.JointPositions, extra map[string]interface{}) error

MoveToJointPositions calls the injected MoveToJointPositions or the real version.

func (*Arm) MoveToPosition

func (a *Arm) MoveToPosition(ctx context.Context, to spatialmath.Pose, extra map[string]interface{}) error

MoveToPosition calls the injected MoveToPosition or the real version.

func (*Arm) Name added in v0.2.36

func (a *Arm) Name() resource.Name

Name returns the name of the resource.

func (*Arm) Stop

func (a *Arm) Stop(ctx context.Context, extra map[string]interface{}) error

Stop calls the injected Stop or the real version.

type AudioInput added in v0.0.8

type AudioInput struct {
	audioinput.AudioInput

	DoFunc     func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	StreamFunc func(
		ctx context.Context,
		errHandlers ...gostream.ErrorHandler,
	) (gostream.AudioStream, error)
	MediaPropertiesFunc func(ctx context.Context) (prop.Audio, error)
	CloseFunc           func(ctx context.Context) error
	// contains filtered or unexported fields
}

AudioInput is an injected audio input.

func NewAudioInput added in v0.2.36

func NewAudioInput(name string) *AudioInput

NewAudioInput returns a new injected audio input.

func (*AudioInput) Close added in v0.0.8

func (ai *AudioInput) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*AudioInput) DoCommand added in v0.1.0

func (ai *AudioInput) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*AudioInput) MediaProperties added in v0.0.8

func (ai *AudioInput) MediaProperties(ctx context.Context) (prop.Audio, error)

MediaProperties calls the injected MediaProperties or the real version.

func (*AudioInput) Name added in v0.2.36

func (ai *AudioInput) Name() resource.Name

Name returns the name of the resource.

func (*AudioInput) Stream added in v0.0.8

func (ai *AudioInput) Stream(
	ctx context.Context,
	errHandlers ...gostream.ErrorHandler,
) (gostream.AudioStream, error)

Stream calls the injected Stream or the real version.

type Base

type Base struct {
	base.Base

	DoFunc           func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	MoveStraightFunc func(ctx context.Context, distanceMm int, mmPerSec float64, extra map[string]interface{}) error
	SpinFunc         func(ctx context.Context, angleDeg, degsPerSec float64, extra map[string]interface{}) error
	StopFunc         func(ctx context.Context, extra map[string]interface{}) error
	IsMovingFunc     func(context.Context) (bool, error)
	CloseFunc        func(ctx context.Context) error
	SetPowerFunc     func(ctx context.Context, linear, angular r3.Vector, extra map[string]interface{}) error
	SetVelocityFunc  func(ctx context.Context, linear, angular r3.Vector, extra map[string]interface{}) error
	PropertiesFunc   func(ctx context.Context, extra map[string]interface{}) (base.Properties, error)
	GeometriesFunc   func(ctx context.Context) ([]spatialmath.Geometry, error)
	// contains filtered or unexported fields
}

Base is an injected base.

func NewBase added in v0.2.36

func NewBase(name string) *Base

NewBase returns a new injected base.

func (*Base) Close

func (b *Base) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*Base) DoCommand added in v0.1.0

func (b *Base) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*Base) Geometries added in v0.3.0

func (b *Base) Geometries(ctx context.Context, extra map[string]interface{}) ([]spatialmath.Geometry, error)

Geometries returns the base's geometries.

func (*Base) IsMoving

func (b *Base) IsMoving(ctx context.Context) (bool, error)

IsMoving calls the injected IsMoving or the real version.

func (*Base) MoveStraight

func (b *Base) MoveStraight(ctx context.Context, distanceMm int, mmPerSec float64, extra map[string]interface{}) error

MoveStraight calls the injected MoveStraight or the real version.

func (*Base) Name added in v0.2.36

func (b *Base) Name() resource.Name

Name returns the name of the resource.

func (*Base) Properties added in v0.2.50

func (b *Base) Properties(ctx context.Context, extra map[string]interface{}) (base.Properties, error)

Properties returns the base's properties.

func (*Base) SetPower added in v0.2.5

func (b *Base) SetPower(ctx context.Context, linear, angular r3.Vector, extra map[string]interface{}) error

SetPower calls the injected SetPower or the real version.

func (*Base) SetVelocity added in v0.3.0

func (b *Base) SetVelocity(ctx context.Context, linear, angular r3.Vector, extra map[string]interface{}) error

SetVelocity calls the injected SetVelocity or the real version.

func (*Base) Spin

func (b *Base) Spin(ctx context.Context, angleDeg, degsPerSec float64, extra map[string]interface{}) error

Spin calls the injected Spin or the real version.

func (*Base) Stop

func (b *Base) Stop(ctx context.Context, extra map[string]interface{}) error

Stop calls the injected Stop or the real version.

type Board

type Board struct {
	board.Board

	DoFunc                 func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	AnalogReaderByNameFunc func(name string) (board.AnalogReader, bool)

	DigitalInterruptByNameFunc func(name string) (board.DigitalInterrupt, bool)

	GPIOPinByNameFunc func(name string) (board.GPIOPin, error)

	AnalogReaderNamesFunc     func() []string
	DigitalInterruptNamesFunc func() []string
	CloseFunc                 func(ctx context.Context) error
	StatusFunc                func(ctx context.Context, extra map[string]interface{}) (*commonpb.BoardStatus, error)

	SetPowerModeFunc func(ctx context.Context, mode boardpb.PowerMode, duration *time.Duration) error
	WriteAnalogFunc  func(ctx context.Context, pin string, value int32, extra map[string]interface{}) error
	// contains filtered or unexported fields
}

Board is an injected board.

func NewBoard added in v0.2.36

func NewBoard(name string) *Board

NewBoard returns a new injected board.

func (*Board) AnalogReaderByName

func (b *Board) AnalogReaderByName(name string) (board.AnalogReader, bool)

AnalogReaderByName calls the injected AnalogReaderByName or the real version.

func (*Board) AnalogReaderByNameCap

func (b *Board) AnalogReaderByNameCap() []interface{}

AnalogReaderByNameCap returns the last parameters received by AnalogReaderByName, and then clears them.

func (*Board) AnalogReaderNames

func (b *Board) AnalogReaderNames() []string

AnalogReaderNames calls the injected AnalogReaderNames or the real version.

func (*Board) Close

func (b *Board) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*Board) DigitalInterruptByName

func (b *Board) DigitalInterruptByName(name string) (board.DigitalInterrupt, bool)

DigitalInterruptByName calls the injected DigitalInterruptByName or the real version.

func (*Board) DigitalInterruptByNameCap

func (b *Board) DigitalInterruptByNameCap() []interface{}

DigitalInterruptByNameCap returns the last parameters received by DigitalInterruptByName, and then clears them.

func (*Board) DigitalInterruptNames

func (b *Board) DigitalInterruptNames() []string

DigitalInterruptNames calls the injected DigitalInterruptNames or the real version.

func (*Board) DoCommand added in v0.1.0

func (b *Board) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*Board) GPIOPinByName

func (b *Board) GPIOPinByName(name string) (board.GPIOPin, error)

GPIOPinByName calls the injected GPIOPinByName or the real version.

func (*Board) GPIOPinByNameCap

func (b *Board) GPIOPinByNameCap() []interface{}

GPIOPinByNameCap returns the last parameters received by GPIOPinByName, and then clears them.

func (*Board) Name added in v0.2.36

func (b *Board) Name() resource.Name

Name returns the name of the resource.

func (*Board) SetPowerMode added in v0.2.28

func (b *Board) SetPowerMode(ctx context.Context, mode boardpb.PowerMode, duration *time.Duration) error

SetPowerMode sets the board to the given power mode. If provided, the board will exit the given power mode after the specified duration.

func (*Board) Status

func (b *Board) Status(ctx context.Context, extra map[string]interface{}) (*commonpb.BoardStatus, error)

Status calls the injected Status or the real version.

func (*Board) StatusCap

func (b *Board) StatusCap() []interface{}

StatusCap returns the last parameters received by Status, and then clears them.

func (*Board) WriteAnalog added in v0.11.0

func (b *Board) WriteAnalog(ctx context.Context, pin string, value int32, extra map[string]interface{}) error

WriteAnalog calls the injected WriteAnalog or the real version.

type BuildServiceClient added in v0.17.0

type BuildServiceClient struct {
	buildpb.BuildServiceClient
	ListJobsFunc   func(ctx context.Context, in *buildpb.ListJobsRequest, opts ...grpc.CallOption) (*buildpb.ListJobsResponse, error)
	StartBuildFunc func(ctx context.Context, in *buildpb.StartBuildRequest, opts ...grpc.CallOption) (*buildpb.StartBuildResponse, error)
}

BuildServiceClient is an injectable buildpb.BuildServiceClient.

func (*BuildServiceClient) ListJobs added in v0.17.0

ListJobs calls the injected ListJobsFunc or the real version.

func (*BuildServiceClient) StartBuild added in v0.17.0

StartBuild calls the injected StartBuildFunc or the real version.

type Camera

type Camera struct {
	camera.Camera

	DoFunc     func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	ImagesFunc func(ctx context.Context) ([]camera.NamedImage, resource.ResponseMetadata, error)
	StreamFunc func(
		ctx context.Context,
		errHandlers ...gostream.ErrorHandler,
	) (gostream.VideoStream, error)
	NextPointCloudFunc func(ctx context.Context) (pointcloud.PointCloud, error)
	ProjectorFunc      func(ctx context.Context) (transform.Projector, error)
	PropertiesFunc     func(ctx context.Context) (camera.Properties, error)
	CloseFunc          func(ctx context.Context) error
	// contains filtered or unexported fields
}

Camera is an injected camera.

func NewCamera added in v0.2.36

func NewCamera(name string) *Camera

NewCamera returns a new injected camera.

func (*Camera) Close

func (c *Camera) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*Camera) DoCommand added in v0.1.0

func (c *Camera) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*Camera) Images added in v0.5.0

Images calls the injected Images or the real version.

func (*Camera) Name added in v0.2.36

func (c *Camera) Name() resource.Name

Name returns the name of the resource.

func (*Camera) NextPointCloud

func (c *Camera) NextPointCloud(ctx context.Context) (pointcloud.PointCloud, error)

NextPointCloud calls the injected NextPointCloud or the real version.

func (*Camera) Projector added in v0.0.8

func (c *Camera) Projector(ctx context.Context) (transform.Projector, error)

Projector calls the injected Projector or the real version.

func (*Camera) Properties added in v0.1.0

func (c *Camera) Properties(ctx context.Context) (camera.Properties, error)

Properties calls the injected Properties or the real version.

func (*Camera) Stream added in v0.0.8

func (c *Camera) Stream(
	ctx context.Context,
	errHandlers ...gostream.ErrorHandler,
) (gostream.VideoStream, error)

Stream calls the injected Stream or the real version.

type DataManagerService

type DataManagerService struct {
	datamanager.Service

	SyncFunc      func(ctx context.Context, extra map[string]interface{}) error
	DoCommandFunc func(ctx context.Context,
		cmd map[string]interface{}) (map[string]interface{}, error)
	CloseFunc func(ctx context.Context) error
	// contains filtered or unexported fields
}

DataManagerService represents a fake instance of an data manager service.

func NewDataManagerService added in v0.2.36

func NewDataManagerService(name string) *DataManagerService

NewDataManagerService returns a new injected data manager service.

func (*DataManagerService) Close added in v0.2.36

func (svc *DataManagerService) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*DataManagerService) DoCommand added in v0.2.20

func (svc *DataManagerService) DoCommand(ctx context.Context,
	cmd map[string]interface{},
) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real variant.

func (*DataManagerService) Name added in v0.2.36

func (svc *DataManagerService) Name() resource.Name

Name returns the name of the resource.

func (*DataManagerService) Sync

func (svc *DataManagerService) Sync(ctx context.Context, extra map[string]interface{}) error

Sync calls the injected Sync or the real variant.

type DataServiceClient added in v0.8.0

type DataServiceClient struct {
	datapb.DataServiceClient
	TabularDataByFilterFunc func(
		ctx context.Context,
		in *datapb.TabularDataByFilterRequest,
		opts ...grpc.CallOption,
	) (*datapb.TabularDataByFilterResponse, error)
}

DataServiceClient represents a fake instance of a data service client.

func (*DataServiceClient) TabularDataByFilter added in v0.8.0

TabularDataByFilter calls the injected TabularDataByFilter or the real version.

type DigitalInterrupt

type DigitalInterrupt struct {
	board.DigitalInterrupt
	ValueFunc func(ctx context.Context, extra map[string]interface{}) (int64, error)

	TickFunc func(ctx context.Context, high bool, nanoseconds uint64) error

	AddCallbackFunc func(c chan board.Tick)
	// contains filtered or unexported fields
}

DigitalInterrupt is an injected digital interrupt.

func (*DigitalInterrupt) AddCallback

func (d *DigitalInterrupt) AddCallback(c chan board.Tick)

AddCallback calls the injected AddCallback or the real version.

func (*DigitalInterrupt) Tick

func (d *DigitalInterrupt) Tick(ctx context.Context, high bool, nanoseconds uint64) error

Tick calls the injected Tick or the real version.

func (*DigitalInterrupt) TickCap

func (d *DigitalInterrupt) TickCap() []interface{}

TickCap returns the last parameters received by Tick, and then clears them.

func (*DigitalInterrupt) Value

func (d *DigitalInterrupt) Value(ctx context.Context, extra map[string]interface{}) (int64, error)

Value calls the injected Value or the real version.

func (*DigitalInterrupt) ValueCap

func (d *DigitalInterrupt) ValueCap() []interface{}

ValueCap returns the last parameters received by Value, and then clears them.

type Encoder added in v0.2.34

type Encoder struct {
	encoder.Encoder

	DoFunc            func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	ResetPositionFunc func(ctx context.Context, extra map[string]interface{}) error
	PositionFunc      func(ctx context.Context,
		positionType encoder.PositionType,
		extra map[string]interface{},
	) (float64, encoder.PositionType, error)
	PropertiesFunc func(ctx context.Context, extra map[string]interface{}) (encoder.Properties, error)
	// contains filtered or unexported fields
}

Encoder is an injected encoder.

func NewEncoder added in v0.2.36

func NewEncoder(name string) *Encoder

NewEncoder returns a new injected Encoder.

func (*Encoder) DoCommand added in v0.2.34

func (e *Encoder) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*Encoder) Name added in v0.2.36

func (e *Encoder) Name() resource.Name

Name returns the name of the resource.

func (*Encoder) Position added in v0.2.50

func (e *Encoder) Position(
	ctx context.Context,
	positionType encoder.PositionType,
	extra map[string]interface{},
) (float64, encoder.PositionType, error)

Position calls the injected Position or the real version.

func (*Encoder) Properties added in v0.2.50

func (e *Encoder) Properties(ctx context.Context, extra map[string]interface{}) (encoder.Properties, error)

Properties calls the injected Properties or the real version.

func (*Encoder) ResetPosition added in v0.2.34

func (e *Encoder) ResetPosition(ctx context.Context, extra map[string]interface{}) error

ResetPosition calls the injected Zero or the real version.

type FrameSystemService added in v0.5.0

type FrameSystemService struct {
	framesystem.Service

	TransformPoseFunc func(
		ctx context.Context,
		pose *referenceframe.PoseInFrame,
		dst string,
		additionalTransforms []*referenceframe.LinkInFrame,
	) (*referenceframe.PoseInFrame, error)
	TransformPointCloudFunc func(
		ctx context.Context,
		srcpc pointcloud.PointCloud,
		srcName, dstName string,
	) (pointcloud.PointCloud, error)
	CurrentInputsFunc func(ctx context.Context) (map[string][]referenceframe.Input, map[string]referenceframe.InputEnabled, error)
	FrameSystemFunc   func(
		ctx context.Context,
		additionalTransforms []*referenceframe.LinkInFrame,
	) (referenceframe.FrameSystem, error)
	DoCommandFunc func(
		ctx context.Context,
		cmd map[string]interface{},
	) (map[string]interface{}, error)
	CloseFunc func(ctx context.Context) error
	// contains filtered or unexported fields
}

FrameSystemService represents a fake instance of a framesystem service. Due to the nature of the framesystem service, there should never be more than one on a robot. If you use an injected frame system, do not also create the system's default frame system as well.

func NewFrameSystemService added in v0.5.0

func NewFrameSystemService(name string) *FrameSystemService

NewFrameSystemService returns a new injected framesystem service.

func (*FrameSystemService) Close added in v0.5.0

func (fs *FrameSystemService) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*FrameSystemService) CurrentInputs added in v0.5.0

CurrentInputs calls the injected method or the real variant.

func (*FrameSystemService) DoCommand added in v0.5.0

func (fs *FrameSystemService) DoCommand(ctx context.Context,
	cmd map[string]interface{},
) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real variant.

func (*FrameSystemService) FrameSystem added in v0.5.0

func (fs *FrameSystemService) FrameSystem(
	ctx context.Context,
	additionalTransforms []*referenceframe.LinkInFrame,
) (referenceframe.FrameSystem, error)

FrameSystem calls the injected method of the real variant.

func (*FrameSystemService) Name added in v0.5.0

func (fs *FrameSystemService) Name() resource.Name

Name returns the name of the resource.

func (*FrameSystemService) TransformPointCloud added in v0.5.0

func (fs *FrameSystemService) TransformPointCloud(
	ctx context.Context,
	srcpc pointcloud.PointCloud,
	srcName, dstName string,
) (pointcloud.PointCloud, error)

TransformPointCloud calls the injected method or the real variant.

func (*FrameSystemService) TransformPose added in v0.5.0

func (fs *FrameSystemService) TransformPose(
	ctx context.Context,
	pose *referenceframe.PoseInFrame,
	dst string,
	additionalTransforms []*referenceframe.LinkInFrame,
) (*referenceframe.PoseInFrame, error)

TransformPose calls the injected method or the real variant.

type GPIOPin

type GPIOPin struct {
	board.GPIOPin

	SetFunc func(ctx context.Context, high bool, extra map[string]interface{}) error

	GetFunc func(ctx context.Context, extra map[string]interface{}) (bool, error)

	PWMFunc func(ctx context.Context, extra map[string]interface{}) (float64, error)

	SetPWMFunc func(ctx context.Context, dutyCyclePct float64, extra map[string]interface{}) error

	PWMFreqFunc func(ctx context.Context, extra map[string]interface{}) (uint, error)

	SetPWMFreqFunc func(ctx context.Context, freqHz uint, extra map[string]interface{}) error
	// contains filtered or unexported fields
}

GPIOPin is an injected GPIOPin.

func (*GPIOPin) Get

func (gp *GPIOPin) Get(ctx context.Context, extra map[string]interface{}) (bool, error)

Get calls the injected Get or the real version.

func (*GPIOPin) GetCap

func (gp *GPIOPin) GetCap() []interface{}

GetCap returns the last parameters received by Get, and then clears them.

func (*GPIOPin) PWM

func (gp *GPIOPin) PWM(ctx context.Context, extra map[string]interface{}) (float64, error)

PWM calls the injected PWM or the real version.

func (*GPIOPin) PWMCap

func (gp *GPIOPin) PWMCap() []interface{}

PWMCap returns the last parameters received by PWM, and then clears them.

func (*GPIOPin) PWMFreq

func (gp *GPIOPin) PWMFreq(ctx context.Context, extra map[string]interface{}) (uint, error)

PWMFreq calls the injected PWMFreq or the real version.

func (*GPIOPin) PWMFreqCap

func (gp *GPIOPin) PWMFreqCap() []interface{}

PWMFreqCap returns the last parameters received by PWMFreq, and then clears them.

func (*GPIOPin) Set

func (gp *GPIOPin) Set(ctx context.Context, high bool, extra map[string]interface{}) error

Set calls the injected Set or the real version.

func (*GPIOPin) SetCap

func (gp *GPIOPin) SetCap() []interface{}

SetCap returns the last parameters received by Set, and then clears them.

func (*GPIOPin) SetPWM

func (gp *GPIOPin) SetPWM(ctx context.Context, dutyCyclePct float64, extra map[string]interface{}) error

SetPWM calls the injected SetPWM or the real version.

func (*GPIOPin) SetPWMCap

func (gp *GPIOPin) SetPWMCap() []interface{}

SetPWMCap returns the last parameters received by SetPWM, and then clears them.

func (*GPIOPin) SetPWMFreq

func (gp *GPIOPin) SetPWMFreq(ctx context.Context, freqHz uint, extra map[string]interface{}) error

SetPWMFreq calls the injected SetPWMFreq or the real version.

func (*GPIOPin) SetPWMFreqCap

func (gp *GPIOPin) SetPWMFreqCap() []interface{}

SetPWMFreqCap returns the last parameters received by SetPWMFreq, and then clears them.

type Gantry

type Gantry struct {
	gantry.Gantry

	DoFunc             func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	PositionFunc       func(ctx context.Context, extra map[string]interface{}) ([]float64, error)
	MoveToPositionFunc func(ctx context.Context, pos, speed []float64, extra map[string]interface{}) error
	LengthsFunc        func(ctx context.Context, extra map[string]interface{}) ([]float64, error)
	StopFunc           func(ctx context.Context, extra map[string]interface{}) error
	HomeFunc           func(ctx context.Context, extra map[string]interface{}) (bool, error)
	IsMovingFunc       func(context.Context) (bool, error)
	CloseFunc          func(ctx context.Context) error
	ModelFrameFunc     func() referenceframe.Model
	// contains filtered or unexported fields
}

Gantry is an injected gantry.

func NewGantry added in v0.2.36

func NewGantry(name string) *Gantry

NewGantry returns a new injected gantry.

func (*Gantry) Close

func (g *Gantry) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*Gantry) DoCommand added in v0.1.0

func (g *Gantry) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*Gantry) Home added in v0.4.0

func (g *Gantry) Home(ctx context.Context, extra map[string]interface{}) (bool, error)

Home calls the injected Home or the real version.

func (*Gantry) IsMoving

func (g *Gantry) IsMoving(ctx context.Context) (bool, error)

IsMoving calls the injected IsMoving or the real version.

func (*Gantry) Lengths added in v0.1.0

func (g *Gantry) Lengths(ctx context.Context, extra map[string]interface{}) ([]float64, error)

Lengths calls the injected Lengths or the real version.

func (*Gantry) ModelFrame

func (g *Gantry) ModelFrame() referenceframe.Model

ModelFrame returns a Gantry ModelFrame.

func (*Gantry) MoveToPosition

func (g *Gantry) MoveToPosition(ctx context.Context, positions, speeds []float64, extra map[string]interface{}) error

MoveToPosition calls the injected MoveToPosition or the real version.

func (*Gantry) Name added in v0.2.36

func (g *Gantry) Name() resource.Name

Name returns the name of the resource.

func (*Gantry) Position added in v0.1.0

func (g *Gantry) Position(ctx context.Context, extra map[string]interface{}) ([]float64, error)

Position calls the injected Position or the real version.

func (*Gantry) Stop

func (g *Gantry) Stop(ctx context.Context, extra map[string]interface{}) error

Stop calls the injected Stop or the real version.

type GenericComponent added in v0.20.0

type GenericComponent struct {
	resource.Resource

	DoFunc func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	// contains filtered or unexported fields
}

GenericComponent is an injectable generic component.

func NewGenericComponent added in v0.20.0

func NewGenericComponent(name string) *GenericComponent

NewGenericComponent returns a new injected generic component.

func (*GenericComponent) DoCommand added in v0.20.0

func (g *GenericComponent) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*GenericComponent) Name added in v0.20.0

func (g *GenericComponent) Name() resource.Name

Name returns the name of the resource.

type GenericService added in v0.20.0

type GenericService struct {
	resource.Resource

	DoFunc func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	// contains filtered or unexported fields
}

GenericService is an injectable generic service.

func NewGenericService added in v0.20.0

func NewGenericService(name string) *GenericService

NewGenericService returns a new injected generic service.

func (*GenericService) DoCommand added in v0.20.0

func (g *GenericService) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*GenericService) Name added in v0.20.0

func (g *GenericService) Name() resource.Name

Name returns the name of the resource.

type Gripper

type Gripper struct {
	gripper.Gripper

	DoFunc       func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	OpenFunc     func(ctx context.Context, extra map[string]interface{}) error
	GrabFunc     func(ctx context.Context, extra map[string]interface{}) (bool, error)
	StopFunc     func(ctx context.Context, extra map[string]interface{}) error
	IsMovingFunc func(context.Context) (bool, error)
	CloseFunc    func(ctx context.Context) error
	// contains filtered or unexported fields
}

Gripper is an injected gripper.

func NewGripper added in v0.2.36

func NewGripper(name string) *Gripper

NewGripper returns a new injected gripper.

func (*Gripper) Close

func (g *Gripper) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*Gripper) DoCommand added in v0.1.0

func (g *Gripper) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*Gripper) Grab

func (g *Gripper) Grab(ctx context.Context, extra map[string]interface{}) (bool, error)

Grab calls the injected Grab or the real version.

func (*Gripper) IsMoving

func (g *Gripper) IsMoving(ctx context.Context) (bool, error)

IsMoving calls the injected IsMoving or the real version.

func (*Gripper) Name added in v0.2.36

func (g *Gripper) Name() resource.Name

Name returns the name of the resource.

func (*Gripper) Open

func (g *Gripper) Open(ctx context.Context, extra map[string]interface{}) error

Open calls the injected Open or the real version.

func (*Gripper) Stop

func (g *Gripper) Stop(ctx context.Context, extra map[string]interface{}) error

Stop calls the injected Stop or the real version.

type I2C

type I2C struct {
	buses.I2C
	OpenHandleFunc func(addr byte) (buses.I2CHandle, error)
}

I2C is an injected I2C.

func (*I2C) OpenHandle

func (s *I2C) OpenHandle(addr byte) (buses.I2CHandle, error)

OpenHandle calls the injected OpenHandle or the real version.

type I2CHandle added in v0.2.25

type I2CHandle struct {
	buses.I2CHandle
	WriteFunc          func(ctx context.Context, tx []byte) error
	ReadFunc           func(ctx context.Context, count int) ([]byte, error)
	ReadByteDataFunc   func(ctx context.Context, register byte) (byte, error)
	WriteByteDataFunc  func(ctx context.Context, register, data byte) error
	ReadBlockDataFunc  func(ctx context.Context, register byte, numBytes uint8) ([]byte, error)
	WriteBlockDataFunc func(ctx context.Context, register byte, data []byte) error
	CloseFunc          func() error
}

I2CHandle is an injected I2CHandle.

func (*I2CHandle) Close added in v0.2.25

func (handle *I2CHandle) Close() error

Close calls the injected CloseFunc or the real version.

func (*I2CHandle) Read added in v0.2.36

func (handle *I2CHandle) Read(ctx context.Context, count int) ([]byte, error)

Read calls the injected ReadFunc or the real version.

func (*I2CHandle) ReadBlockData added in v0.2.25

func (handle *I2CHandle) ReadBlockData(ctx context.Context, register byte, numBytes uint8) ([]byte, error)

ReadBlockData calls the injected ReadBlockDataFunc or the real version.

func (*I2CHandle) ReadByteData added in v0.2.36

func (handle *I2CHandle) ReadByteData(ctx context.Context, register byte) (byte, error)

ReadByteData calls the injected ReadByteDataFunc or the real version.

func (*I2CHandle) Write added in v0.2.36

func (handle *I2CHandle) Write(ctx context.Context, tx []byte) error

Write calls the injected WriteFunc or the real version.

func (*I2CHandle) WriteBlockData added in v0.2.36

func (handle *I2CHandle) WriteBlockData(ctx context.Context, register byte, data []byte) error

WriteBlockData calls the injected WriteBlockDataFunc or the real version.

func (*I2CHandle) WriteByteData added in v0.2.25

func (handle *I2CHandle) WriteByteData(ctx context.Context, register, data byte) error

WriteByteData calls the injected WriteByteDataFunc or the real version.

type InputController

type InputController struct {
	input.Controller

	DoFunc                      func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	ControlsFunc                func(ctx context.Context, extra map[string]interface{}) ([]input.Control, error)
	EventsFunc                  func(ctx context.Context, extra map[string]interface{}) (map[input.Control]input.Event, error)
	RegisterControlCallbackFunc func(
		ctx context.Context,
		control input.Control,
		triggers []input.EventType,
		ctrlFunc input.ControlFunction,
		extra map[string]interface{},
	) error
	// contains filtered or unexported fields
}

InputController is an injected InputController.

func NewInputController added in v0.2.36

func NewInputController(name string) *InputController

NewInputController returns a new injected input controller.

func (*InputController) Controls added in v0.1.0

func (s *InputController) Controls(ctx context.Context, extra map[string]interface{}) ([]input.Control, error)

Controls calls the injected function or the real version.

func (*InputController) DoCommand added in v0.1.0

func (s *InputController) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*InputController) Events added in v0.1.0

func (s *InputController) Events(ctx context.Context, extra map[string]interface{}) (map[input.Control]input.Event, error)

Events calls the injected function or the real version.

func (*InputController) Name added in v0.2.36

func (s *InputController) Name() resource.Name

Name returns the name of the resource.

func (*InputController) RegisterControlCallback

func (s *InputController) RegisterControlCallback(
	ctx context.Context,
	control input.Control,
	triggers []input.EventType,
	ctrlFunc input.ControlFunction,
	extra map[string]interface{},
) error

RegisterControlCallback calls the injected function or the real version.

type MLModelService added in v0.2.34

type MLModelService struct {
	mlmodel.Service

	InferFunc    func(ctx context.Context, tensors ml.Tensors) (ml.Tensors, error)
	MetadataFunc func(ctx context.Context) (mlmodel.MLMetadata, error)
	CloseFunc    func(ctx context.Context) error
	// contains filtered or unexported fields
}

MLModelService represents a fake instance of an MLModel service.

func NewMLModelService added in v0.2.36

func NewMLModelService(name string) *MLModelService

NewMLModelService returns a new injected mlmodel service.

func (*MLModelService) Close added in v0.2.36

func (s *MLModelService) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*MLModelService) Infer added in v0.2.34

func (s *MLModelService) Infer(
	ctx context.Context,
	tensors ml.Tensors,
) (ml.Tensors, error)

Infer calls the injected Infer or the real variant.

func (*MLModelService) Metadata added in v0.2.34

func (s *MLModelService) Metadata(ctx context.Context) (mlmodel.MLMetadata, error)

Metadata calls the injected Metadata or the real variant.

func (*MLModelService) Name added in v0.2.36

func (s *MLModelService) Name() resource.Name

Name returns the name of the resource.

type MotionService

type MotionService struct {
	motion.Service

	MoveFunc func(
		ctx context.Context,
		componentName resource.Name,
		grabPose *referenceframe.PoseInFrame,
		worldState *referenceframe.WorldState,
		constraints *servicepb.Constraints,
		extra map[string]interface{},
	) (bool, error)
	MoveOnMapFunc func(
		ctx context.Context,
		req motion.MoveOnMapReq,
	) (motion.ExecutionID, error)
	MoveOnGlobeFunc func(
		ctx context.Context,
		req motion.MoveOnGlobeReq,
	) (motion.ExecutionID, error)
	GetPoseFunc func(
		ctx context.Context,
		componentName resource.Name,
		destinationFrame string,
		supplementalTransforms []*referenceframe.LinkInFrame,
		extra map[string]interface{},
	) (*referenceframe.PoseInFrame, error)
	StopPlanFunc func(
		ctx context.Context,
		req motion.StopPlanReq,
	) error
	ListPlanStatusesFunc func(
		ctx context.Context,
		req motion.ListPlanStatusesReq,
	) ([]motion.PlanStatusWithID, error)
	PlanHistoryFunc func(
		ctx context.Context,
		req motion.PlanHistoryReq,
	) ([]motion.PlanWithStatus, error)
	DoCommandFunc func(ctx context.Context,
		cmd map[string]interface{}) (map[string]interface{}, error)
	CloseFunc func(ctx context.Context) error
	// contains filtered or unexported fields
}

MotionService represents a fake instance of an motion service.

func NewMotionService added in v0.2.36

func NewMotionService(name string) *MotionService

NewMotionService returns a new injected motion service.

func (*MotionService) Close added in v0.2.36

func (mgs *MotionService) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*MotionService) DoCommand added in v0.2.20

func (mgs *MotionService) DoCommand(ctx context.Context,
	cmd map[string]interface{},
) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real variant.

func (*MotionService) GetPose

func (mgs *MotionService) GetPose(
	ctx context.Context,
	componentName resource.Name,
	destinationFrame string,
	supplementalTransforms []*referenceframe.LinkInFrame,
	extra map[string]interface{},
) (*referenceframe.PoseInFrame, error)

GetPose calls the injected GetPose or the real variant.

func (*MotionService) ListPlanStatuses added in v0.11.0

func (mgs *MotionService) ListPlanStatuses(
	ctx context.Context,
	req motion.ListPlanStatusesReq,
) ([]motion.PlanStatusWithID, error)

ListPlanStatuses calls the injected ListPlanStatuses or the real variant.

func (*MotionService) Move

func (mgs *MotionService) Move(
	ctx context.Context,
	componentName resource.Name,
	destination *referenceframe.PoseInFrame,
	worldState *referenceframe.WorldState,
	constraints *servicepb.Constraints,
	extra map[string]interface{},
) (bool, error)

Move calls the injected Move or the real variant.

func (*MotionService) MoveOnGlobe added in v0.2.49

func (mgs *MotionService) MoveOnGlobe(ctx context.Context, req motion.MoveOnGlobeReq) (motion.ExecutionID, error)

MoveOnGlobe calls the injected MoveOnGlobe or the real variant.

func (*MotionService) MoveOnMap added in v0.2.34

func (mgs *MotionService) MoveOnMap(
	ctx context.Context,
	req motion.MoveOnMapReq,
) (motion.ExecutionID, error)

MoveOnMap calls the injected MoveOnMap or the real variant.

func (*MotionService) Name added in v0.2.36

func (mgs *MotionService) Name() resource.Name

Name returns the name of the resource.

func (*MotionService) PlanHistory added in v0.11.0

func (mgs *MotionService) PlanHistory(
	ctx context.Context,
	req motion.PlanHistoryReq,
) ([]motion.PlanWithStatus, error)

PlanHistory calls the injected PlanHistory or the real variant.

func (*MotionService) StopPlan added in v0.11.0

func (mgs *MotionService) StopPlan(
	ctx context.Context,
	req motion.StopPlanReq,
) error

StopPlan calls the injected StopPlan or the real variant.

type Motor

type Motor struct {
	motor.Motor

	DoFunc                func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	SetPowerFunc          func(ctx context.Context, powerPct float64, extra map[string]interface{}) error
	GoForFunc             func(ctx context.Context, rpm, rotations float64, extra map[string]interface{}) error
	GoToFunc              func(ctx context.Context, rpm, position float64, extra map[string]interface{}) error
	ResetZeroPositionFunc func(ctx context.Context, offset float64, extra map[string]interface{}) error
	PositionFunc          func(ctx context.Context, extra map[string]interface{}) (float64, error)
	PropertiesFunc        func(ctx context.Context, extra map[string]interface{}) (motor.Properties, error)
	StopFunc              func(ctx context.Context, extra map[string]interface{}) error
	IsPoweredFunc         func(ctx context.Context, extra map[string]interface{}) (bool, float64, error)
	IsMovingFunc          func(context.Context) (bool, error)
	// contains filtered or unexported fields
}

Motor is an injected motor.

func NewMotor added in v0.2.36

func NewMotor(name string) *Motor

NewMotor returns a new injected motor.

func (*Motor) DoCommand added in v0.1.0

func (m *Motor) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*Motor) GoFor

func (m *Motor) GoFor(ctx context.Context, rpm, revolutions float64, extra map[string]interface{}) error

GoFor calls the injected GoFor or the real version.

func (*Motor) GoTo

func (m *Motor) GoTo(ctx context.Context, rpm, positionRevolutions float64, extra map[string]interface{}) error

GoTo calls the injected GoTo or the real version.

func (*Motor) IsMoving added in v0.4.0

func (m *Motor) IsMoving(ctx context.Context) (bool, error)

IsMoving calls the injected IsMoving or the real version.

func (*Motor) IsPowered

func (m *Motor) IsPowered(ctx context.Context, extra map[string]interface{}) (bool, float64, error)

IsPowered calls the injected IsPowered or the real version.

func (*Motor) Name added in v0.2.36

func (m *Motor) Name() resource.Name

Name returns the name of the resource.

func (*Motor) Position added in v0.1.0

func (m *Motor) Position(ctx context.Context, extra map[string]interface{}) (float64, error)

Position calls the injected Position or the real version.

func (*Motor) Properties added in v0.1.0

func (m *Motor) Properties(ctx context.Context, extra map[string]interface{}) (motor.Properties, error)

Properties calls the injected Properties or the real version.

func (*Motor) ResetZeroPosition

func (m *Motor) ResetZeroPosition(ctx context.Context, offset float64, extra map[string]interface{}) error

ResetZeroPosition calls the injected Zero or the real version.

func (*Motor) SetPower

func (m *Motor) SetPower(ctx context.Context, powerPct float64, extra map[string]interface{}) error

SetPower calls the injected Power or the real version.

func (*Motor) Stop

func (m *Motor) Stop(ctx context.Context, extra map[string]interface{}) error

Stop calls the injected Off or the real version.

type MovementSensor added in v0.0.6

type MovementSensor struct {
	movementsensor.MovementSensor

	Mu                          sync.RWMutex
	PositionFuncExtraCap        map[string]interface{}
	PositionFunc                func(ctx context.Context, extra map[string]interface{}) (*geo.Point, float64, error)
	LinearVelocityFuncExtraCap  map[string]interface{}
	LinearVelocityFunc          func(ctx context.Context, extra map[string]interface{}) (r3.Vector, error)
	AngularVelocityFuncExtraCap map[string]interface{}
	AngularVelocityFunc         func(ctx context.Context, extra map[string]interface{}) (spatialmath.AngularVelocity, error)
	CompassHeadingFuncExtraCap  map[string]interface{}
	CompassHeadingFunc          func(ctx context.Context, extra map[string]interface{}) (float64, error)
	LinearAccelerationExtraCap  map[string]interface{}
	LinearAccelerationFunc      func(ctx context.Context, extra map[string]interface{}) (r3.Vector, error)
	OrientationFuncExtraCap     map[string]interface{}
	OrientationFunc             func(ctx context.Context, extra map[string]interface{}) (spatialmath.Orientation, error)
	PropertiesFuncExtraCap      map[string]interface{}
	PropertiesFunc              func(ctx context.Context, extra map[string]interface{}) (*movementsensor.Properties, error)
	AccuracyFuncExtraCap        map[string]interface{}
	AccuracyFunc                func(ctx context.Context, extra map[string]interface{}) (*movementsensor.Accuracy, error)
	ReadingsFuncExtraCap        map[string]interface{}
	ReadingsFunc                func(ctx context.Context, extra map[string]interface{}) (map[string]interface{}, error)
	DoFunc                      func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	CloseFunc                   func() error
	// contains filtered or unexported fields
}

MovementSensor is an injected MovementSensor.

func NewMovementSensor added in v0.2.36

func NewMovementSensor(name string) *MovementSensor

NewMovementSensor returns a new injected movement sensor.

func (*MovementSensor) Accuracy added in v0.2.0

func (i *MovementSensor) Accuracy(ctx context.Context, extra map[string]interface{}) (*movementsensor.Accuracy, error,
)

Accuracy func or passthrough.

func (*MovementSensor) AngularVelocity added in v0.1.0

func (i *MovementSensor) AngularVelocity(ctx context.Context, extra map[string]interface{}) (spatialmath.AngularVelocity, error)

AngularVelocity func or passthrough.

func (*MovementSensor) Close added in v0.0.6

func (i *MovementSensor) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*MovementSensor) CompassHeading added in v0.1.0

func (i *MovementSensor) CompassHeading(ctx context.Context, extra map[string]interface{}) (float64, error)

CompassHeading func or passthrough.

func (*MovementSensor) DoCommand added in v0.1.0

func (i *MovementSensor) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*MovementSensor) LinearAcceleration added in v0.2.11

func (i *MovementSensor) LinearAcceleration(ctx context.Context, extra map[string]interface{}) (r3.Vector, error)

LinearAcceleration func or passthrough.

func (*MovementSensor) LinearVelocity added in v0.1.0

func (i *MovementSensor) LinearVelocity(ctx context.Context, extra map[string]interface{}) (r3.Vector, error)

LinearVelocity func or passthrough.

func (*MovementSensor) Name added in v0.2.36

func (i *MovementSensor) Name() resource.Name

Name returns the name of the resource.

func (*MovementSensor) Orientation added in v0.1.0

func (i *MovementSensor) Orientation(ctx context.Context, extra map[string]interface{}) (spatialmath.Orientation, error)

Orientation func or passthrough.

func (*MovementSensor) Position added in v0.1.0

func (i *MovementSensor) Position(ctx context.Context, extra map[string]interface{}) (*geo.Point, float64, error)

Position func or passthrough.

func (*MovementSensor) Properties added in v0.2.0

func (i *MovementSensor) Properties(ctx context.Context, extra map[string]interface{}) (*movementsensor.Properties, error)

Properties func or passthrough.

func (*MovementSensor) Readings added in v0.12.0

func (i *MovementSensor) Readings(ctx context.Context, extra map[string]interface{}) (map[string]interface{}, error)

Readings func or passthrough.

type NavigationService struct {
	navigation.Service

	ModeFunc    func(ctx context.Context, extra map[string]interface{}) (navigation.Mode, error)
	SetModeFunc func(ctx context.Context, mode navigation.Mode, extra map[string]interface{}) error

	LocationFunc func(ctx context.Context, extra map[string]interface{}) (*spatialmath.GeoPose, error)

	WaypointsFunc      func(ctx context.Context, extra map[string]interface{}) ([]navigation.Waypoint, error)
	AddWaypointFunc    func(ctx context.Context, point *geo.Point, extra map[string]interface{}) error
	RemoveWaypointFunc func(ctx context.Context, id primitive.ObjectID, extra map[string]interface{}) error

	ObstaclesFunc func(ctx context.Context, extra map[string]interface{}) ([]*spatialmath.GeoObstacle, error)
	PathsFunc     func(ctx context.Context, extra map[string]interface{}) ([]*navigation.Path, error)

	PropertiesFunc func(ctx context.Context) (navigation.Properties, error)

	DoCommandFunc func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	CloseFunc     func(ctx context.Context) error
	// contains filtered or unexported fields
}

NavigationService represents a fake instance of a navigation service.

func NewNavigationService added in v0.2.36

func NewNavigationService(name string) *NavigationService

NewNavigationService returns a new injected navigation service.

func (ns *NavigationService) AddWaypoint(ctx context.Context, point *geo.Point, extra map[string]interface{}) error

AddWaypoint calls the injected AddWaypointFunc or the real version.

func (ns *NavigationService) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (ns *NavigationService) DoCommand(ctx context.Context,
	cmd map[string]interface{},
) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real variant.

func (ns *NavigationService) Location(ctx context.Context, extra map[string]interface{}) (*spatialmath.GeoPose, error)

Location calls the injected LocationFunc or the real version.

func (ns *NavigationService) Mode(ctx context.Context, extra map[string]interface{}) (navigation.Mode, error)

Mode calls the injected ModeFunc or the real version.

func (ns *NavigationService) Name() resource.Name

Name returns the name of the resource.

func (ns *NavigationService) Obstacles(ctx context.Context, extra map[string]interface{}) ([]*spatialmath.GeoObstacle, error)

Obstacles calls the injected Obstacles or the real version.

func (ns *NavigationService) Paths(ctx context.Context, extra map[string]interface{}) ([]*navigation.Path, error)

Paths calls the injected Paths or the real version.

Properties calls the injected Properties or the real variant.

func (ns *NavigationService) RemoveWaypoint(ctx context.Context, id primitive.ObjectID, extra map[string]interface{}) error

RemoveWaypoint calls the injected RemoveWaypointFunc or the real version.

func (ns *NavigationService) SetMode(ctx context.Context, mode navigation.Mode, extra map[string]interface{}) error

SetMode calls the injected SetModeFunc or the real version.

func (ns *NavigationService) Waypoints(ctx context.Context, extra map[string]interface{}) ([]navigation.Waypoint, error)

Waypoints calls the injected WaypointsFunc or the real version.

type PoseTracker

type PoseTracker struct {
	posetracker.PoseTracker

	PosesFunc func(ctx context.Context, bodyNames []string, extra map[string]interface{}) (posetracker.BodyToPoseInFrame, error)
	DoFunc    func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	// contains filtered or unexported fields
}

PoseTracker is an injected pose tracker.

func NewPoseTracker added in v0.2.36

func NewPoseTracker(name string) *PoseTracker

NewPoseTracker returns a new injected pose tracker.

func (*PoseTracker) DoCommand added in v0.1.1

func (pT *PoseTracker) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*PoseTracker) Name added in v0.2.36

func (pT *PoseTracker) Name() resource.Name

Name returns the name of the resource.

func (*PoseTracker) Poses added in v0.1.1

func (pT *PoseTracker) Poses(
	ctx context.Context, bodyNames []string, extra map[string]interface{},
) (posetracker.BodyToPoseInFrame, error)

Poses calls the injected Poses or the real version.

type PowerSensor added in v0.7.0

type PowerSensor struct {
	powersensor.PowerSensor

	VoltageFunc  func(ctx context.Context, extra map[string]interface{}) (float64, bool, error)
	CurrentFunc  func(ctx context.Context, extra map[string]interface{}) (float64, bool, error)
	PowerFunc    func(ctx context.Context, extra map[string]interface{}) (float64, error)
	ReadingsFunc func(ctx context.Context, extra map[string]interface{}) (map[string]interface{}, error)
	DoFunc       func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	// contains filtered or unexported fields
}

A PowerSensor reports information about voltage, current and power.

func NewPowerSensor added in v0.7.0

func NewPowerSensor(name string) *PowerSensor

NewPowerSensor returns a new injected movement sensor.

func (*PowerSensor) Current added in v0.7.0

func (i *PowerSensor) Current(ctx context.Context, cmd map[string]interface{}) (float64, bool, error)

Current func or passthrough.

func (*PowerSensor) DoCommand added in v0.7.0

func (i *PowerSensor) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*PowerSensor) Name added in v0.7.0

func (i *PowerSensor) Name() resource.Name

Name returns the name of the resource.

func (*PowerSensor) Power added in v0.7.0

func (i *PowerSensor) Power(ctx context.Context, cmd map[string]interface{}) (float64, error)

Power func or passthrough.

func (*PowerSensor) Readings added in v0.12.0

func (i *PowerSensor) Readings(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

Readings func or passthrough.

func (*PowerSensor) Voltage added in v0.7.0

func (i *PowerSensor) Voltage(ctx context.Context, cmd map[string]interface{}) (float64, bool, error)

Voltage func or passthrough.

type ReadWriteCloser

type ReadWriteCloser struct {
	io.ReadWriteCloser
	ReadFunc  func(p []byte) (n int, err error)
	WriteFunc func(p []byte) (n int, err error)
	CloseFunc func() error
}

ReadWriteCloser is an injected read write closer.

func (*ReadWriteCloser) Close

func (rwc *ReadWriteCloser) Close() error

Close calls the injected Close or the real version.

func (*ReadWriteCloser) Read

func (rwc *ReadWriteCloser) Read(p []byte) (n int, err error)

Read calls the injected Read or the real version.

func (*ReadWriteCloser) Write

func (rwc *ReadWriteCloser) Write(p []byte) (n int, err error)

Write calls the injected Write or the real version.

type Robot

type Robot struct {
	robot.LocalRobot
	Mu                     sync.RWMutex // Ugly, has to be manually locked if a test means to swap funcs on an in-use robot.
	DiscoverComponentsFunc func(ctx context.Context, keys []resource.DiscoveryQuery) ([]resource.Discovery, error)
	RemoteByNameFunc       func(name string) (robot.Robot, bool)
	ResourceByNameFunc     func(name resource.Name) (resource.Resource, error)
	RemoteNamesFunc        func() []string
	ResourceNamesFunc      func() []resource.Name
	ResourceRPCAPIsFunc    func() []resource.RPCAPI
	ProcessManagerFunc     func() pexec.ProcessManager
	ConfigFunc             func() *config.Config
	LoggerFunc             func() logging.Logger
	CloseFunc              func(ctx context.Context) error
	StopAllFunc            func(ctx context.Context, extra map[resource.Name]map[string]interface{}) error
	FrameSystemConfigFunc  func(ctx context.Context) (*framesystem.Config, error)
	TransformPoseFunc      func(
		ctx context.Context,
		pose *referenceframe.PoseInFrame,
		dst string,
		additionalTransforms []*referenceframe.LinkInFrame,
	) (*referenceframe.PoseInFrame, error)
	TransformPointCloudFunc func(ctx context.Context, srcpc pointcloud.PointCloud, srcName, dstName string) (pointcloud.PointCloud, error)
	StatusFunc              func(ctx context.Context, resourceNames []resource.Name) ([]robot.Status, error)
	ModuleAddressFunc       func() (string, error)
	CloudMetadataFunc       func(ctx context.Context) (cloud.Metadata, error)

	SessMgr    session.Manager
	PackageMgr packages.Manager
	// contains filtered or unexported fields
}

Robot is an injected robot.

func (*Robot) Close

func (r *Robot) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*Robot) CloudMetadata added in v0.23.0

func (r *Robot) CloudMetadata(ctx context.Context) (cloud.Metadata, error)

CloudMetadata calls the injected CloudMetadata or the real one.

func (*Robot) Config

func (r *Robot) Config() *config.Config

Config calls the injected Config or the real version.

func (*Robot) DiscoverComponents

func (r *Robot) DiscoverComponents(ctx context.Context, keys []resource.DiscoveryQuery) ([]resource.Discovery, error)

DiscoverComponents calls the injected DiscoverComponents or the real one.

func (*Robot) FrameSystemConfig

func (r *Robot) FrameSystemConfig(ctx context.Context) (*framesystem.Config, error)

FrameSystemConfig calls the injected FrameSystemConfig or the real version.

func (*Robot) Logger

func (r *Robot) Logger() logging.Logger

Logger calls the injected Logger or the real version.

func (*Robot) MockResourcesFromMap

func (r *Robot) MockResourcesFromMap(rs map[resource.Name]resource.Resource)

MockResourcesFromMap mocks ResourceNames and ResourceByName based on a resource map.

func (*Robot) ModuleAddress added in v0.2.8

func (r *Robot) ModuleAddress() (string, error)

ModuleAddress calls the injected ModuleAddress or the real one.

func (*Robot) OperationManager

func (r *Robot) OperationManager() *operation.Manager

OperationManager calls the injected OperationManager or the real version.

func (*Robot) PackageManager added in v0.2.15

func (r *Robot) PackageManager() packages.Manager

PackageManager calls the injected PackageManager or the real version.

func (*Robot) ProcessManager

func (r *Robot) ProcessManager() pexec.ProcessManager

ProcessManager calls the injected ProcessManager or the real version.

func (*Robot) RemoteByName

func (r *Robot) RemoteByName(name string) (robot.Robot, bool)

RemoteByName calls the injected RemoteByName or the real version.

func (*Robot) RemoteNames

func (r *Robot) RemoteNames() []string

RemoteNames calls the injected RemoteNames or the real version.

func (*Robot) ResourceByName

func (r *Robot) ResourceByName(name resource.Name) (resource.Resource, error)

ResourceByName calls the injected ResourceByName or the real version.

func (*Robot) ResourceNames

func (r *Robot) ResourceNames() []resource.Name

ResourceNames calls the injected ResourceNames or the real version.

func (*Robot) ResourceRPCAPIs added in v0.2.36

func (r *Robot) ResourceRPCAPIs() []resource.RPCAPI

ResourceRPCAPIs returns a list of all known resource RPC APIs.

func (*Robot) SessionManager added in v0.2.5

func (r *Robot) SessionManager() session.Manager

SessionManager calls the injected SessionManager or the real version.

func (*Robot) Status added in v0.1.0

func (r *Robot) Status(ctx context.Context, resourceNames []resource.Name) ([]robot.Status, error)

Status call the injected Status or the real one.

func (*Robot) StopAll

func (r *Robot) StopAll(ctx context.Context, extra map[resource.Name]map[string]interface{}) error

StopAll calls the injected StopAll or the real version.

func (*Robot) TransformPointCloud added in v0.2.11

func (r *Robot) TransformPointCloud(ctx context.Context, srcpc pointcloud.PointCloud, srcName, dstName string,
) (pointcloud.PointCloud, error)

TransformPointCloud calls the injected TransformPointCloud or the real version.

func (*Robot) TransformPose

func (r *Robot) TransformPose(
	ctx context.Context,
	pose *referenceframe.PoseInFrame,
	dst string,
	additionalTransforms []*referenceframe.LinkInFrame,
) (*referenceframe.PoseInFrame, error)

TransformPose calls the injected TransformPose or the real version.

type SLAMService

type SLAMService struct {
	slam.Service

	PositionFunc      func(ctx context.Context) (spatialmath.Pose, string, error)
	PointCloudMapFunc func(ctx context.Context, returnEditedMap bool) (func() ([]byte, error), error)
	InternalStateFunc func(ctx context.Context) (func() ([]byte, error), error)
	PropertiesFunc    func(ctx context.Context) (slam.Properties, error)
	DoCommandFunc     func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	CloseFunc         func(ctx context.Context) error
	// contains filtered or unexported fields
}

SLAMService represents a fake instance of a slam service.

func NewSLAMService added in v0.2.36

func NewSLAMService(name string) *SLAMService

NewSLAMService returns a new injected SLAM service.

func (*SLAMService) Close added in v0.2.36

func (slamSvc *SLAMService) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*SLAMService) DoCommand added in v0.2.20

func (slamSvc *SLAMService) DoCommand(ctx context.Context,
	cmd map[string]interface{},
) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real variant.

func (*SLAMService) InternalState added in v0.8.0

func (slamSvc *SLAMService) InternalState(ctx context.Context) (func() ([]byte, error), error)

InternalState calls the injected InternalState or the real version.

func (*SLAMService) Name added in v0.2.36

func (slamSvc *SLAMService) Name() resource.Name

Name returns the name of the resource.

func (*SLAMService) PointCloudMap added in v0.8.0

func (slamSvc *SLAMService) PointCloudMap(ctx context.Context, returnEditedMap bool) (func() ([]byte, error), error)

PointCloudMap calls the injected PointCloudMap or the real version.

func (*SLAMService) Position added in v0.1.0

func (slamSvc *SLAMService) Position(ctx context.Context) (spatialmath.Pose, string, error)

Position calls the injected PositionFunc or the real version.

func (*SLAMService) Properties added in v0.18.0

func (slamSvc *SLAMService) Properties(ctx context.Context) (slam.Properties, error)

Properties calls the injected PropertiesFunc or the real version.

type SPI

type SPI struct {
	buses.SPI
	OpenHandleFunc func() (buses.SPIHandle, error)
}

SPI is an injected SPI.

func (*SPI) OpenHandle

func (s *SPI) OpenHandle() (buses.SPIHandle, error)

OpenHandle calls the injected OpenHandle or the real version.

type Sensor

type Sensor struct {
	sensor.Sensor

	DoFunc       func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	ReadingsFunc func(ctx context.Context, extra map[string]interface{}) (map[string]interface{}, error)
	// contains filtered or unexported fields
}

Sensor is an injected sensor.

func NewSensor added in v0.2.36

func NewSensor(name string) *Sensor

NewSensor returns a new injected sensor.

func (*Sensor) DoCommand added in v0.1.0

func (s *Sensor) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*Sensor) Name added in v0.2.36

func (s *Sensor) Name() resource.Name

Name returns the name of the resource.

func (*Sensor) Readings added in v0.1.0

func (s *Sensor) Readings(ctx context.Context, extra map[string]interface{}) (map[string]interface{}, error)

Readings calls the injected Readings or the real version.

type SensorsService

type SensorsService struct {
	sensors.Service

	SensorsFunc   func(ctx context.Context, extra map[string]interface{}) ([]resource.Name, error)
	ReadingsFunc  func(ctx context.Context, resources []resource.Name, extra map[string]interface{}) ([]sensors.Readings, error)
	DoCommandFunc func(ctx context.Context,
		cmd map[string]interface{}) (map[string]interface{}, error)
	// contains filtered or unexported fields
}

SensorsService represents a fake instance of a sensors service.

func NewSensorsService added in v0.2.36

func NewSensorsService(name string) *SensorsService

NewSensorsService returns a new injected sensors service.

func (*SensorsService) DoCommand added in v0.2.20

func (s *SensorsService) DoCommand(ctx context.Context,
	cmd map[string]interface{},
) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real variant.

func (*SensorsService) Name added in v0.2.36

func (s *SensorsService) Name() resource.Name

Name returns the name of the resource.

func (*SensorsService) Readings added in v0.1.0

func (s *SensorsService) Readings(ctx context.Context, names []resource.Name, extra map[string]interface{}) ([]sensors.Readings, error)

Readings call the injected Readings or the real one.

func (*SensorsService) Sensors added in v0.1.0

func (s *SensorsService) Sensors(ctx context.Context, extra map[string]interface{}) ([]resource.Name, error)

Sensors call the injected Sensors or the real one.

type Servo

type Servo struct {
	servo.Servo

	DoFunc       func(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)
	MoveFunc     func(ctx context.Context, angleDeg uint32, extra map[string]interface{}) error
	PositionFunc func(ctx context.Context, extra map[string]interface{}) (uint32, error)
	StopFunc     func(ctx context.Context, extra map[string]interface{}) error
	IsMovingFunc func(context.Context) (bool, error)
	// contains filtered or unexported fields
}

Servo is an injected servo.

func NewServo added in v0.2.36

func NewServo(name string) *Servo

NewServo returns a new injected servo.

func (*Servo) DoCommand added in v0.1.0

func (s *Servo) DoCommand(ctx context.Context, cmd map[string]interface{}) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real version.

func (*Servo) IsMoving

func (s *Servo) IsMoving(ctx context.Context) (bool, error)

IsMoving calls the injected IsMoving or the real version.

func (*Servo) Move

func (s *Servo) Move(ctx context.Context, angleDeg uint32, extra map[string]interface{}) error

Move calls the injected Move or the real version.

func (*Servo) Name added in v0.2.36

func (s *Servo) Name() resource.Name

Name returns the name of the resource.

func (*Servo) Position added in v0.1.0

func (s *Servo) Position(ctx context.Context, extra map[string]interface{}) (uint32, error)

Position calls the injected Current or the real version.

func (*Servo) Stop

func (s *Servo) Stop(ctx context.Context, extra map[string]interface{}) error

Stop calls the injected Stop or the real version.

type ShellService added in v0.2.20

type ShellService struct {
	shell.Service

	DoCommandFunc func(ctx context.Context,
		cmd map[string]interface{}) (map[string]interface{}, error)
	ReconfigureFunc func(ctx context.Context, deps resource.Dependencies, conf resource.Config) error
	CloseFunc       func(ctx context.Context) error
	// contains filtered or unexported fields
}

ShellService represents a fake instance of a shell service.

func NewShellService added in v0.2.36

func NewShellService(name string) *ShellService

NewShellService returns a new injected shell service.

func (*ShellService) Close added in v0.2.36

func (s *ShellService) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*ShellService) DoCommand added in v0.2.20

func (s *ShellService) DoCommand(ctx context.Context,
	cmd map[string]interface{},
) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real variant.

func (*ShellService) Name added in v0.2.36

func (s *ShellService) Name() resource.Name

Name returns the name of the resource.

func (*ShellService) Reconfigure added in v0.2.36

func (s *ShellService) Reconfigure(ctx context.Context, deps resource.Dependencies, conf resource.Config) error

Reconfigure calls the injected Reconfigure or the real variant.

type TriggerableInputController

type TriggerableInputController struct {
	InputController
	input.Triggerable

	TriggerEventFunc func(ctx context.Context, event input.Event, extra map[string]interface{}) error
}

TriggerableInputController is an injected injectable InputController.

func (*TriggerableInputController) TriggerEvent

func (s *TriggerableInputController) TriggerEvent(ctx context.Context, event input.Event, extra map[string]interface{}) error

TriggerEvent calls the injected function or the real version.

type VisionService

type VisionService struct {
	vision.Service

	DetectionsFromCameraFunc func(
		ctx context.Context, cameraName string, extra map[string]interface{},
	) ([]objectdetection.Detection, error)
	DetectionsFunc func(
		ctx context.Context, img image.Image, extra map[string]interface{},
	) ([]objectdetection.Detection, error)
	// classification functions
	ClassificationsFromCameraFunc func(ctx context.Context, cameraName string,
		n int, extra map[string]interface{}) (classification.Classifications, error)
	ClassificationsFunc func(ctx context.Context, img image.Image,
		n int, extra map[string]interface{}) (classification.Classifications, error)
	// segmentation functions
	GetObjectPointCloudsFunc func(ctx context.Context, cameraName string, extra map[string]interface{}) ([]*viz.Object, error)
	DoCommandFunc            func(ctx context.Context,
		cmd map[string]interface{}) (map[string]interface{}, error)
	CloseFunc func(ctx context.Context) error
	// contains filtered or unexported fields
}

VisionService represents a fake instance of a vision service.

func NewVisionService added in v0.2.36

func NewVisionService(name string) *VisionService

NewVisionService returns a new injected vision service.

func (*VisionService) Classifications added in v0.1.0

func (vs *VisionService) Classifications(ctx context.Context, img image.Image,
	n int, extra map[string]interface{},
) (classification.Classifications, error)

Classifications calls the injected Classifier or the real variant.

func (*VisionService) ClassificationsFromCamera added in v0.1.0

func (vs *VisionService) ClassificationsFromCamera(ctx context.Context,
	cameraName string, n int, extra map[string]interface{},
) (classification.Classifications, error)

ClassificationsFromCamera calls the injected Classifer or the real variant.

func (*VisionService) Close added in v0.2.36

func (vs *VisionService) Close(ctx context.Context) error

Close calls the injected Close or the real version.

func (*VisionService) Detections added in v0.1.0

func (vs *VisionService) Detections(ctx context.Context, img image.Image, extra map[string]interface{},
) ([]objectdetection.Detection, error)

Detections calls the injected Detect or the real variant.

func (*VisionService) DetectionsFromCamera added in v0.1.0

func (vs *VisionService) DetectionsFromCamera(ctx context.Context, cameraName string, extra map[string]interface{},
) ([]objectdetection.Detection, error)

DetectionsFromCamera calls the injected DetectionsFromCamera or the real variant.

func (*VisionService) DoCommand added in v0.2.20

func (vs *VisionService) DoCommand(ctx context.Context,
	cmd map[string]interface{},
) (map[string]interface{}, error)

DoCommand calls the injected DoCommand or the real variant.

func (*VisionService) GetObjectPointClouds

func (vs *VisionService) GetObjectPointClouds(
	ctx context.Context,
	cameraName string, extra map[string]interface{},
) ([]*viz.Object, error)

GetObjectPointClouds calls the injected GetObjectPointClouds or the real variant.

func (*VisionService) Name added in v0.2.36

func (vs *VisionService) Name() resource.Name

Name returns the name of the resource.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL