-- | Wave Terrain Synthesis
module CsoundExpr.Opcodes.Siggen.Waveterr
    (wterrain)
where



import CsoundExpr.Base.Types
import CsoundExpr.Base.MultiOut
import CsoundExpr.Base.SideEffect
import CsoundExpr.Base.UserDefined



-- | * opcode : wterrain
--  
--  
-- * syntax : 
--  
--  >   aout wterrain kamp, kpch, k_xcenter, k_ycenter, k_xradius, k_yradius, 
--  >       itabx, itaby
--  
--  
-- * description : 
--  
--  A simple wave-terrain synthesis opcode.
--  
--  
-- * url : <http://www.csounds.com/manual/html/wterrain.html>
 
wterrain ::
           (K k0, K k1, K k2, K k3, K k4, K k5) =>
           k0 -> k1 -> k2 -> k3 -> k4 -> k5 -> Irate -> Irate -> Arate
wterrain k0amp k1pch k2_xcenter k3_ycenter k4_xradius k5_yradius
  i6tabx i7taby = opcode "wterrain" args
  where args
          = [to k0amp, to k1pch, to k2_xcenter, to k3_ycenter, to k4_xradius,
             to k5_yradius, to i6tabx, to i7taby]