bufferstreams

package
v0.0.5 Latest Latest
Warning

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

Go to latest
Published: Mar 22, 2026 License: CC0-1.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	BufferCacheUpdateTagCacheBuffers  int32 = 0
	BufferCacheUpdateTagForgetBuffers int32 = 1
)
View Source
const (
	TransactionIBufferSubscriberOnSubscribe         = binder.FirstCallTransaction + 0
	TransactionIBufferSubscriberOnBufferCacheUpdate = binder.FirstCallTransaction + 1
	TransactionIBufferSubscriberOnNext              = binder.FirstCallTransaction + 2
	TransactionIBufferSubscriberOnError             = binder.FirstCallTransaction + 3
	TransactionIBufferSubscriberOnComplete          = binder.FirstCallTransaction + 4
)
View Source
const (
	MethodIBufferSubscriberOnSubscribe         = "onSubscribe"
	MethodIBufferSubscriberOnBufferCacheUpdate = "onBufferCacheUpdate"
	MethodIBufferSubscriberOnNext              = "onNext"
	MethodIBufferSubscriberOnError             = "onError"
	MethodIBufferSubscriberOnComplete          = "onComplete"
)
View Source
const (
	TransactionIBufferSubscriptionRequest = binder.FirstCallTransaction + 0
	TransactionIBufferSubscriptionCancel  = binder.FirstCallTransaction + 1
)
View Source
const (
	MethodIBufferSubscriptionRequest = "request"
	MethodIBufferSubscriptionCancel  = "cancel"
)
View Source
const DescriptorIBufferOwner = "android.graphics.bufferstreams.IBufferOwner"
View Source
const DescriptorIBufferSubscriber = "android.graphics.bufferstreams.IBufferSubscriber"
View Source
const DescriptorIBufferSubscription = "android.graphics.bufferstreams.IBufferSubscription"
View Source
const (
	MethodIBufferOwnerOnBufferReleased = "onBufferReleased"
)
View Source
const (
	TransactionIBufferOwnerOnBufferReleased = binder.FirstCallTransaction + 0
)

Variables

This section is empty.

Functions

This section is empty.

Types

type BufferAttachment

type BufferAttachment struct {
	Buffer *common.HardwareBuffer
	Owner  IBufferOwner
}

func (*BufferAttachment) MarshalParcel

func (s *BufferAttachment) MarshalParcel(
	p *parcel.Parcel,
) error

func (*BufferAttachment) UnmarshalParcel

func (s *BufferAttachment) UnmarshalParcel(
	p *parcel.Parcel,
) error

type BufferCacheUpdate

type BufferCacheUpdate struct {
	Tag           int32
	CacheBuffers  BufferCacheUpdateCacheBuffers
	ForgetBuffers BufferCacheUpdateForgetBuffers
}

func (*BufferCacheUpdate) GetCacheBuffers

func (u *BufferCacheUpdate) GetCacheBuffers() (BufferCacheUpdateCacheBuffers, bool)

func (*BufferCacheUpdate) GetForgetBuffers

func (u *BufferCacheUpdate) GetForgetBuffers() (BufferCacheUpdateForgetBuffers, bool)

func (*BufferCacheUpdate) MarshalParcel

func (u *BufferCacheUpdate) MarshalParcel(
	p *parcel.Parcel,
) error

func (*BufferCacheUpdate) SetCacheBuffers

func (u *BufferCacheUpdate) SetCacheBuffers(
	v BufferCacheUpdateCacheBuffers,
)

func (*BufferCacheUpdate) SetForgetBuffers

func (u *BufferCacheUpdate) SetForgetBuffers(
	v BufferCacheUpdateForgetBuffers,
)

func (*BufferCacheUpdate) UnmarshalParcel

func (u *BufferCacheUpdate) UnmarshalParcel(
	p *parcel.Parcel,
) error

type BufferCacheUpdateCacheBuffers

type BufferCacheUpdateCacheBuffers struct {
	Attachments []BufferAttachment
}

func (*BufferCacheUpdateCacheBuffers) MarshalParcel

func (s *BufferCacheUpdateCacheBuffers) MarshalParcel(
	p *parcel.Parcel,
) error

func (*BufferCacheUpdateCacheBuffers) UnmarshalParcel

func (s *BufferCacheUpdateCacheBuffers) UnmarshalParcel(
	p *parcel.Parcel,
) error

type BufferCacheUpdateForgetBuffers

type BufferCacheUpdateForgetBuffers struct {
	BufferIds []int64
}

func (*BufferCacheUpdateForgetBuffers) MarshalParcel

func (s *BufferCacheUpdateForgetBuffers) MarshalParcel(
	p *parcel.Parcel,
) error

func (*BufferCacheUpdateForgetBuffers) UnmarshalParcel

func (s *BufferCacheUpdateForgetBuffers) UnmarshalParcel(
	p *parcel.Parcel,
) error

type BufferOwnerProxy

type BufferOwnerProxy struct {
	Remote binder.IBinder
}

func NewBufferOwnerProxy

func NewBufferOwnerProxy(
	remote binder.IBinder,
) *BufferOwnerProxy

func (*BufferOwnerProxy) AsBinder

func (p *BufferOwnerProxy) AsBinder() binder.IBinder

func (*BufferOwnerProxy) OnBufferReleased

func (p *BufferOwnerProxy) OnBufferReleased(
	ctx context.Context,
	bufferId int64,
	releaseFence *int32,
) error

type BufferOwnerStub

type BufferOwnerStub struct {
	Impl      IBufferOwner
	Transport binder.VersionAwareTransport
}

BufferOwnerStub dispatches incoming binder transactions to a typed IBufferOwner implementation.

func (*BufferOwnerStub) Descriptor

func (s *BufferOwnerStub) Descriptor() string

func (*BufferOwnerStub) OnTransaction

func (s *BufferOwnerStub) OnTransaction(
	ctx context.Context,
	code binder.TransactionCode,
	_data *parcel.Parcel,
) (*parcel.Parcel, error)

type BufferSubscriberProxy

type BufferSubscriberProxy struct {
	Remote binder.IBinder
}

func NewBufferSubscriberProxy

func NewBufferSubscriberProxy(
	remote binder.IBinder,
) *BufferSubscriberProxy

func (*BufferSubscriberProxy) AsBinder

func (p *BufferSubscriberProxy) AsBinder() binder.IBinder

func (*BufferSubscriberProxy) OnBufferCacheUpdate

func (p *BufferSubscriberProxy) OnBufferCacheUpdate(
	ctx context.Context,
	update BufferCacheUpdate,
) error

func (*BufferSubscriberProxy) OnComplete

func (p *BufferSubscriberProxy) OnComplete(
	ctx context.Context,
) error

func (*BufferSubscriberProxy) OnError

func (p *BufferSubscriberProxy) OnError(
	ctx context.Context,
) error

func (*BufferSubscriberProxy) OnNext

func (p *BufferSubscriberProxy) OnNext(
	ctx context.Context,
	frame Frame,
) error

func (*BufferSubscriberProxy) OnSubscribe

func (p *BufferSubscriberProxy) OnSubscribe(
	ctx context.Context,
	subscription IBufferSubscription,
) error

type BufferSubscriberStub

type BufferSubscriberStub struct {
	Impl      IBufferSubscriber
	Transport binder.VersionAwareTransport
}

BufferSubscriberStub dispatches incoming binder transactions to a typed IBufferSubscriber implementation.

func (*BufferSubscriberStub) Descriptor

func (s *BufferSubscriberStub) Descriptor() string

func (*BufferSubscriberStub) OnTransaction

func (s *BufferSubscriberStub) OnTransaction(
	ctx context.Context,
	code binder.TransactionCode,
	_data *parcel.Parcel,
) (*parcel.Parcel, error)

type BufferSubscriptionProxy

type BufferSubscriptionProxy struct {
	Remote binder.IBinder
}

func NewBufferSubscriptionProxy

func NewBufferSubscriptionProxy(
	remote binder.IBinder,
) *BufferSubscriptionProxy

func (*BufferSubscriptionProxy) AsBinder

func (p *BufferSubscriptionProxy) AsBinder() binder.IBinder

func (*BufferSubscriptionProxy) Cancel

func (p *BufferSubscriptionProxy) Cancel(
	ctx context.Context,
) error

func (*BufferSubscriptionProxy) Request

func (p *BufferSubscriptionProxy) Request(
	ctx context.Context,
	n int64,
) error

type BufferSubscriptionStub

type BufferSubscriptionStub struct {
	Impl      IBufferSubscription
	Transport binder.VersionAwareTransport
}

BufferSubscriptionStub dispatches incoming binder transactions to a typed IBufferSubscription implementation.

func (*BufferSubscriptionStub) Descriptor

func (s *BufferSubscriptionStub) Descriptor() string

func (*BufferSubscriptionStub) OnTransaction

func (s *BufferSubscriptionStub) OnTransaction(
	ctx context.Context,
	code binder.TransactionCode,
	_data *parcel.Parcel,
) (*parcel.Parcel, error)

type Frame

type Frame struct {
	BufferId      int64
	PresentTimeNs int64
	Fence         int32
}

func (*Frame) MarshalParcel

func (s *Frame) MarshalParcel(
	p *parcel.Parcel,
) error

func (*Frame) UnmarshalParcel

func (s *Frame) UnmarshalParcel(
	p *parcel.Parcel,
) error

type IBufferOwner

type IBufferOwner interface {
	AsBinder() binder.IBinder
	OnBufferReleased(ctx context.Context, bufferId int64, releaseFence *int32) error
}

func NewBufferOwnerStub

func NewBufferOwnerStub(
	impl IBufferOwnerServer,
) IBufferOwner

NewBufferOwnerStub creates a server-side IBufferOwner wrapping the given server implementation. The returned value satisfies IBufferOwner and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IBufferOwnerServer

type IBufferOwnerServer interface {
	OnBufferReleased(ctx context.Context, bufferId int64, releaseFence *int32) error
}

IBufferOwnerServer is the server-side interface that user implementations provide to NewBufferOwnerStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type IBufferSubscriber

type IBufferSubscriber interface {
	AsBinder() binder.IBinder
	OnSubscribe(ctx context.Context, subscription IBufferSubscription) error
	OnBufferCacheUpdate(ctx context.Context, update BufferCacheUpdate) error
	OnNext(ctx context.Context, frame Frame) error
	OnError(ctx context.Context) error
	OnComplete(ctx context.Context) error
}

func NewBufferSubscriberStub

func NewBufferSubscriberStub(
	impl IBufferSubscriberServer,
) IBufferSubscriber

NewBufferSubscriberStub creates a server-side IBufferSubscriber wrapping the given server implementation. The returned value satisfies IBufferSubscriber and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IBufferSubscriberServer

type IBufferSubscriberServer interface {
	OnSubscribe(ctx context.Context, subscription IBufferSubscription) error
	OnBufferCacheUpdate(ctx context.Context, update BufferCacheUpdate) error
	OnNext(ctx context.Context, frame Frame) error
	OnError(ctx context.Context) error
	OnComplete(ctx context.Context) error
}

IBufferSubscriberServer is the server-side interface that user implementations provide to NewBufferSubscriberStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type IBufferSubscription

type IBufferSubscription interface {
	AsBinder() binder.IBinder
	Request(ctx context.Context, n int64) error
	Cancel(ctx context.Context) error
}

func NewBufferSubscriptionStub

func NewBufferSubscriptionStub(
	impl IBufferSubscriptionServer,
) IBufferSubscription

NewBufferSubscriptionStub creates a server-side IBufferSubscription wrapping the given server implementation. The returned value satisfies IBufferSubscription and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IBufferSubscriptionServer

type IBufferSubscriptionServer interface {
	Request(ctx context.Context, n int64) error
	Cancel(ctx context.Context) error
}

IBufferSubscriptionServer is the server-side interface that user implementations provide to NewBufferSubscriptionStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

Jump to

Keyboard shortcuts

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