hsc3-server-0.9.2: SuperCollider server resource management and synchronization.

Safe HaskellNone
LanguageHaskell98

Sound.SC3.Server.State.Monad.Class

Synopsis

Documentation

class Monad m => MonadServer m where Source

Methods

serverOptions :: m ServerOptions Source

Return the server options.

rootNodeId :: m NodeId Source

Return the root node id.

serverOption :: MonadServer m => (ServerOptions -> a) -> m a Source

Return a server option.

class Monad m => MonadIdAllocator m where Source

Monadic resource id management interface.

Associated Types

data Allocator m a Source

Methods

nodeIdAllocator :: Allocator m NodeIdAllocator Source

NodeId allocator.

syncIdAllocator :: Allocator m SyncIdAllocator Source

SyncId allocator.

bufferIdAllocator :: Allocator m BufferIdAllocator Source

BufferId allocator.

audioBusIdAllocator :: Allocator m AudioBusIdAllocator Source

AudioBusId allocator.

controlBusIdAllocator :: Allocator m ControlBusIdAllocator Source

ControlBusId allocator.

alloc :: IdAllocator a => Allocator m a -> m (Id a) Source

Allocate an id using the given allocator.

free :: IdAllocator a => Allocator m a -> Id a -> m () Source

Free an id using the given allocator.

statistics :: IdAllocator a => Allocator m a -> m Statistics Source

Return allocator statistics

allocRange :: RangeAllocator a => Allocator m a -> Int -> m (Range (Id a)) Source

Allocate a contiguous range of ids using the given allocator.

freeRange :: RangeAllocator a => Allocator m a -> Range (Id a) -> m () Source

Free a contiguous range of ids using the given allocator.

class SendOSC m => RequestOSC m where Source

Methods

request :: OSC o => o -> Notification a -> m a Source

Wait for a notification and return the result.

requestAll :: OSC o => o -> [Notification a] -> m [a] Source

Wait for a set of notifications and return their results in unspecified order.

Instances