utils

package
v0.0.0-...-1a1f98b Latest Latest
Warning

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

Go to latest
Published: Sep 26, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ComponentPub       = "pub"
	ComponentSub       = "sub"
	ComponentRoom      = "room"
	ComponentAPI       = "api"
	ComponentTransport = "transport"
	ComponentSFU       = "sfu"
	// transport subcomponents
	ComponentCongestionControl = "cc"
)

Variables

This section is empty.

Functions

func ClientInfoWithoutAddress

func ClientInfoWithoutAddress(c *livekit.ClientInfo) *livekit.ClientInfo

func ContextWithAttempt

func ContextWithAttempt(ctx context.Context, attempt int) context.Context

func ContextWithLogger

func ContextWithLogger(ctx context.Context, logger logger.Logger) context.Context

func GetAttempt

func GetAttempt(ctx context.Context) int

func GetLogger

func GetLogger(ctx context.Context) logger.Logger

func MedianFloat32

func MedianFloat32(input []float32) float32

MedianFloat32 gets median value for an array of float32

Types

type ChangeNotifier

type ChangeNotifier struct {
	// contains filtered or unexported fields
}

func NewChangeNotifier

func NewChangeNotifier() *ChangeNotifier

func (*ChangeNotifier) AddObserver

func (n *ChangeNotifier) AddObserver(key string, onChanged func())

func (*ChangeNotifier) HasObservers

func (n *ChangeNotifier) HasObservers() bool

func (*ChangeNotifier) NotifyChanged

func (n *ChangeNotifier) NotifyChanged()

func (*ChangeNotifier) RemoveObserver

func (n *ChangeNotifier) RemoveObserver(key string)

type ChangeNotifierManager

type ChangeNotifierManager struct {
	// contains filtered or unexported fields
}

func NewChangeNotifierManager

func NewChangeNotifierManager() *ChangeNotifierManager

func (*ChangeNotifierManager) GetNotifier

func (m *ChangeNotifierManager) GetNotifier(key string) *ChangeNotifier

func (*ChangeNotifierManager) GetOrCreateNotifier

func (m *ChangeNotifierManager) GetOrCreateNotifier(key string) *ChangeNotifier

func (*ChangeNotifierManager) RemoveNotifier

func (m *ChangeNotifierManager) RemoveNotifier(key string, force bool)

type IceConfigCache

type IceConfigCache[T comparable] struct {
	// contains filtered or unexported fields
}

func NewIceConfigCache

func NewIceConfigCache[T comparable](ttl time.Duration) *IceConfigCache[T]

func (*IceConfigCache[T]) Get

func (icc *IceConfigCache[T]) Get(key T) *livekit.ICEConfig

func (*IceConfigCache[T]) Put

func (icc *IceConfigCache[T]) Put(key T, iceConfig *livekit.ICEConfig)

func (*IceConfigCache[T]) Stop

func (icc *IceConfigCache[T]) Stop()

type IncrementalDispatcher

type IncrementalDispatcher[T any] struct {
	// contains filtered or unexported fields
}

IncrementalDispatcher is a dispatcher that allows multiple consumers to consume items as they become available, while producers can add items at anytime.

func NewIncrementalDispatcher

func NewIncrementalDispatcher[T any]() *IncrementalDispatcher[T]

func (*IncrementalDispatcher[T]) Add

func (d *IncrementalDispatcher[T]) Add(item T)

func (*IncrementalDispatcher[T]) Done

func (d *IncrementalDispatcher[T]) Done()

func (*IncrementalDispatcher[T]) ForEach

func (d *IncrementalDispatcher[T]) ForEach(fn func(T))

type OpsQueue

type OpsQueue struct {
	// contains filtered or unexported fields
}

func NewOpsQueue

func NewOpsQueue(params OpsQueueParams) *OpsQueue

func (*OpsQueue) Enqueue

func (oq *OpsQueue) Enqueue(op T)

func (*OpsQueue) Start

func (oq *OpsQueue) Start()

func (*OpsQueue) Stop

func (oq *OpsQueue) Stop() <-chan struct{}

type OpsQueueParams

type OpsQueueParams struct {
	Name        string
	MinSize     uint
	FlushOnStop bool
	Logger      logger.Logger
}

type TypedOpsQueue

type TypedOpsQueue[T any] struct {
	// contains filtered or unexported fields
}

func NewTypedOpsQueue

func NewTypedOpsQueue[T any](params OpsQueueParams) *TypedOpsQueue[T]

func (*TypedOpsQueue[T]) Enqueue

func (oq *TypedOpsQueue[T]) Enqueue(fn func(T), arg T)

func (*TypedOpsQueue) Start

func (oq *TypedOpsQueue) Start()

func (*TypedOpsQueue) Stop

func (oq *TypedOpsQueue) Stop() <-chan struct{}

type UntypedQueueOp

type UntypedQueueOp func()

Jump to

Keyboard shortcuts

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