-- | Software Bus module CsoundExpr.Opcodes.Sigio.SoftwareBus (chn_k, chn_a, chn_S, chngetA, chngetI, chngetK, chngetS, chnsetA, chnsetI, chnsetK, chnsetS, chnsendA, chnsendI, chnsendK, chnsendS, chnrecvA, chnrecvI, chnrecvK, chnrecvS, chnclear, chnmix, chnparams) where import CsoundExpr.Base.Types import CsoundExpr.Base.MultiOut import CsoundExpr.Base.SideEffect import CsoundExpr.Base.UserDefined -- | * opcode : chn_k -- -- -- * syntax : -- -- > chn_k Sname, imode[, itype, idflt, imin, imax] -- > chn_a Sname, imode -- > chn_S Sname, imode -- -- -- * description : -- -- Declare a channel of the named software bus, with setting -- optional parameters in the case of a control channel. If the -- channel does not exist yet, it is created, with an inital value -- of zero or empty string. Otherwise, the type (control, audio, or -- string) of the existing channel must match the declaration, or an -- init error occurs. The input/output mode of an existing channel -- is updated so that it becomes the bitwise OR of the previous and -- the newly specified value. -- -- -- * url : chn_k :: [Irate] -> String -> Irate -> SignalOut chn_k i0init s1name i2mode = outOpcode "chn_k" args where args = [to s1name, to i2mode] ++ map to i0init -- | * opcode : chn_a -- -- -- * syntax : -- -- > chn_k Sname, imode[, itype, idflt, imin, imax] -- > chn_a Sname, imode -- > chn_S Sname, imode -- -- -- * description : -- -- Declare a channel of the named software bus, with setting -- optional parameters in the case of a control channel. If the -- channel does not exist yet, it is created, with an inital value -- of zero or empty string. Otherwise, the type (control, audio, or -- string) of the existing channel must match the declaration, or an -- init error occurs. The input/output mode of an existing channel -- is updated so that it becomes the bitwise OR of the previous and -- the newly specified value. -- -- -- * url : chn_a :: String -> Irate -> SignalOut chn_a s0name i1mode = outOpcode "chn_a" args where args = [to s0name, to i1mode] -- | * opcode : chn_S -- -- -- * syntax : -- -- > chn_k Sname, imode[, itype, idflt, imin, imax] -- > chn_a Sname, imode -- > chn_S Sname, imode -- -- -- * description : -- -- Declare a channel of the named software bus, with setting -- optional parameters in the case of a control channel. If the -- channel does not exist yet, it is created, with an inital value -- of zero or empty string. Otherwise, the type (control, audio, or -- string) of the existing channel must match the declaration, or an -- init error occurs. The input/output mode of an existing channel -- is updated so that it becomes the bitwise OR of the previous and -- the newly specified value. -- -- -- * url : chn_S :: String -> Irate -> SignalOut chn_S s0name i1mode = outOpcode "chn_S" args where args = [to s0name, to i1mode] -- | * opcode : chnget -- -- -- * syntax : -- -- > ival chnget Sname -- > kval chnget Sname -- > aval chnget Sname -- > Sval chnget Sname -- -- -- * description : -- -- Reads data from a channel of the inward named software bus. -- Implies declaring the channel with imode=1 (see also chn_k, -- chn_a, and chn_S). -- -- -- * url : chngetA :: String -> Arate chngetA s0name = opcode "chnget" args where args = [to s0name] -- | * opcode : chnget -- -- -- * syntax : -- -- > ival chnget Sname -- > kval chnget Sname -- > aval chnget Sname -- > Sval chnget Sname -- -- -- * description : -- -- Reads data from a channel of the inward named software bus. -- Implies declaring the channel with imode=1 (see also chn_k, -- chn_a, and chn_S). -- -- -- * url : chngetI :: String -> Irate chngetI s0name = opcode "chnget" args where args = [to s0name] -- | * opcode : chnget -- -- -- * syntax : -- -- > ival chnget Sname -- > kval chnget Sname -- > aval chnget Sname -- > Sval chnget Sname -- -- -- * description : -- -- Reads data from a channel of the inward named software bus. -- Implies declaring the channel with imode=1 (see also chn_k, -- chn_a, and chn_S). -- -- -- * url : chngetK :: String -> Krate chngetK s0name = opcode "chnget" args where args = [to s0name] -- | * opcode : chnget -- -- -- * syntax : -- -- > ival chnget Sname -- > kval chnget Sname -- > aval chnget Sname -- > Sval chnget Sname -- -- -- * description : -- -- Reads data from a channel of the inward named software bus. -- Implies declaring the channel with imode=1 (see also chn_k, -- chn_a, and chn_S). -- -- -- * url : chngetS :: String -> String chngetS s0name = opcode "chnget" args where args = [to s0name] -- | * opcode : chnset -- -- -- * syntax : -- -- > chnset ival, Sname -- > chnset kval, Sname -- > chnset aval, Sname -- > chnset Sval, Sname -- -- -- * description : -- -- Write to a channel of the named software bus. Implies declaring -- the channel with imod=2 (see also chn_k, chn_a, and chn_S). -- -- -- * url : chnsetA :: Arate -> String -> SignalOut chnsetA a0val s1name = outOpcode "chnset" args where args = [to a0val, to s1name] -- | * opcode : chnset -- -- -- * syntax : -- -- > chnset ival, Sname -- > chnset kval, Sname -- > chnset aval, Sname -- > chnset Sval, Sname -- -- -- * description : -- -- Write to a channel of the named software bus. Implies declaring -- the channel with imod=2 (see also chn_k, chn_a, and chn_S). -- -- -- * url : chnsetI :: Irate -> String -> SignalOut chnsetI i0val s1name = outOpcode "chnset" args where args = [to i0val, to s1name] -- | * opcode : chnset -- -- -- * syntax : -- -- > chnset ival, Sname -- > chnset kval, Sname -- > chnset aval, Sname -- > chnset Sval, Sname -- -- -- * description : -- -- Write to a channel of the named software bus. Implies declaring -- the channel with imod=2 (see also chn_k, chn_a, and chn_S). -- -- -- * url : chnsetK :: (K k0) => k0 -> String -> SignalOut chnsetK k0val s1name = outOpcode "chnset" args where args = [to k0val, to s1name] -- | * opcode : chnset -- -- -- * syntax : -- -- > chnset ival, Sname -- > chnset kval, Sname -- > chnset aval, Sname -- > chnset Sval, Sname -- -- -- * description : -- -- Write to a channel of the named software bus. Implies declaring -- the channel with imod=2 (see also chn_k, chn_a, and chn_S). -- -- -- * url : chnsetS :: String -> String -> SignalOut chnsetS s0val s1name = outOpcode "chnset" args where args = [to s0val, to s1name] -- | * opcode : chnsend -- -- -- * syntax : -- -- > chnsend ival, Sname -- > chnsend kval, Sname -- > chnsend aval, Sname -- > chnsend Sval, Sname -- -- -- * description : -- -- Send to a channel of the named software bus. Implies declaring -- the channel with imode=2 (see also chn_k, chn_a, and chn_S). -- -- -- * url : chnsendA :: Arate -> String -> SignalOut chnsendA a0val s1name = outOpcode "chnsend" args where args = [to a0val, to s1name] -- | * opcode : chnsend -- -- -- * syntax : -- -- > chnsend ival, Sname -- > chnsend kval, Sname -- > chnsend aval, Sname -- > chnsend Sval, Sname -- -- -- * description : -- -- Send to a channel of the named software bus. Implies declaring -- the channel with imode=2 (see also chn_k, chn_a, and chn_S). -- -- -- * url : chnsendI :: Irate -> String -> SignalOut chnsendI i0val s1name = outOpcode "chnsend" args where args = [to i0val, to s1name] -- | * opcode : chnsend -- -- -- * syntax : -- -- > chnsend ival, Sname -- > chnsend kval, Sname -- > chnsend aval, Sname -- > chnsend Sval, Sname -- -- -- * description : -- -- Send to a channel of the named software bus. Implies declaring -- the channel with imode=2 (see also chn_k, chn_a, and chn_S). -- -- -- * url : chnsendK :: (K k0) => k0 -> String -> SignalOut chnsendK k0val s1name = outOpcode "chnsend" args where args = [to k0val, to s1name] -- | * opcode : chnsend -- -- -- * syntax : -- -- > chnsend ival, Sname -- > chnsend kval, Sname -- > chnsend aval, Sname -- > chnsend Sval, Sname -- -- -- * description : -- -- Send to a channel of the named software bus. Implies declaring -- the channel with imode=2 (see also chn_k, chn_a, and chn_S). -- -- -- * url : chnsendS :: String -> String -> SignalOut chnsendS s0val s1name = outOpcode "chnsend" args where args = [to s0val, to s1name] -- | * opcode : chnrecv -- -- -- * syntax : -- -- > ival chnrecv Sname -- > kval chnrecv Sname -- > aval chnrecv Sname -- > Sval chnrecv Sname -- -- -- * description : -- -- Receives data from a channel of the inward named software bus. -- Implies declaring the channel with imode=1 (see also chn_k, -- chn_a, and chn_S). -- -- -- * url : chnrecvA :: String -> Arate chnrecvA s0name = opcode "chnrecv" args where args = [to s0name] -- | * opcode : chnrecv -- -- -- * syntax : -- -- > ival chnrecv Sname -- > kval chnrecv Sname -- > aval chnrecv Sname -- > Sval chnrecv Sname -- -- -- * description : -- -- Receives data from a channel of the inward named software bus. -- Implies declaring the channel with imode=1 (see also chn_k, -- chn_a, and chn_S). -- -- -- * url : chnrecvI :: String -> Irate chnrecvI s0name = opcode "chnrecv" args where args = [to s0name] -- | * opcode : chnrecv -- -- -- * syntax : -- -- > ival chnrecv Sname -- > kval chnrecv Sname -- > aval chnrecv Sname -- > Sval chnrecv Sname -- -- -- * description : -- -- Receives data from a channel of the inward named software bus. -- Implies declaring the channel with imode=1 (see also chn_k, -- chn_a, and chn_S). -- -- -- * url : chnrecvK :: String -> Krate chnrecvK s0name = opcode "chnrecv" args where args = [to s0name] -- | * opcode : chnrecv -- -- -- * syntax : -- -- > ival chnrecv Sname -- > kval chnrecv Sname -- > aval chnrecv Sname -- > Sval chnrecv Sname -- -- -- * description : -- -- Receives data from a channel of the inward named software bus. -- Implies declaring the channel with imode=1 (see also chn_k, -- chn_a, and chn_S). -- -- -- * url : chnrecvS :: String -> String chnrecvS s0name = opcode "chnrecv" args where args = [to s0name] -- | * opcode : chnclear -- -- -- * syntax : -- -- > chnclear Sname -- -- -- * description : -- -- Clears an audio channel of the named software bus to zero. -- Implies declaring the channel with imode=2 (see also chn_a). -- -- -- * url : chnclear :: String -> SignalOut chnclear s0name = outOpcode "chnclear" args where args = [to s0name] -- | * opcode : chnmix -- -- -- * syntax : -- -- > chnmix aval, Sname -- -- -- * description : -- -- Adds an audio signal to a channel of the named software bus. -- Implies declaring the channel with imode=2 (see also chn_a). -- -- -- * url : chnmix :: Arate -> String -> SignalOut chnmix a0val s1name = outOpcode "chnmix" args where args = [to a0val, to s1name] -- | * opcode : chnparams -- -- -- * syntax : -- -- > itype, imode, ictltype, idflt, imin, imax chnparams -- -- -- * description : -- -- Query parameters of a channel (if it does not exist, all -- returned values are zero). -- -- -- * url : chnparams :: MultiOut chnparams = opcode "chnparams" args where args = []