/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version: 1.3.21
 *
 * Do not make changes to this file unless you know what you are doing--modify
 * the SWIG interface file instead.
 * ----------------------------------------------------------------------------- */


Class name: Mixer extends: UnitGenerator fields: swigCPtrForMixer {

  Method [ pvtSetCPtr: newCPtr memoryOwn: newCMemoryOwn
    super pvtSetCPtr: (CslNI cslNI_SWIGMixerToUnitGenerator: newCPtr) memoryOwn: newCMemoryOwn.
    swigCPtrForMixer := newCPtr.
  ]

  Method [ getCPtrForMixer
    ^swigCPtrForMixer
  ]


  Method[ swigFinalize
    super swigFinalize.
    self delete.
  ]

  Method [ delete 
    (swigCMemoryOwn and:[ swigCPtrForMixer ~~ 0 ]) ifTrue:[
      swigCMemoryOwn := false.
      CslNI cslNI_delete_Mixer: swigCPtrForMixer.
    ].
    swigCPtrForMixer := 0.
    super delete.
  ]

  Function[ getCPtr: obj
     obj isNil ifTrue:[^0].
     ^obj getCPtrForMixer
  ]

  Function [ new
    ^self fromPointer: (CslNI cslNI_new_Mixer__SWIG_0) memoryOwn: true
  ]

  Function [ chans: chans
    ^self fromPointer: (CslNI cslNI_new_Mixer__SWIG_1: chans) memoryOwn: true
  ]

  Function [ mScale: mScale
    ^self fromPointer: (CslNI cslNI_new_Mixer__SWIG_2: (UnitGenerator getCPtr: mScale)) memoryOwn: true
  ]

  Function [ chans: chans mScale: mScale
    ^self fromPointer: (CslNI cslNI_new_Mixer__SWIG_3: chans, (UnitGenerator getCPtr: mScale)) memoryOwn: true
  ]

  Method [ getInputs 
    ^SwigTypePstdvectorTcslUnitGeneratorpstdallocatorTcslUnitGeneratorptt fromPointer: CslNI cslNI_Mixer_getInputs: swigCPtrForMixer  memoryOwn: true
  ]

  Method [ getNumInputs 
    ^CslNI cslNI_Mixer_getNumInputs: swigCPtrForMixer 
  ]

  Method [ addInput: inp 
    CslNI cslNI_Mixer_addInput__SWIG_0: swigCPtrForMixer with: (UnitGenerator getCPtr: inp)
  ]

  Method [ addInput: inp 
    CslNI cslNI_Mixer_addInput__SWIG_1: swigCPtrForMixer with: (UnitGenerator getCPtr: inp)
  ]

  Method [ removeInput: inp 
    CslNI cslNI_Mixer_removeInput: swigCPtrForMixer with: (UnitGenerator getCPtr: inp)
  ]

  Method [ nextBuffer: outputBuffer 
    CslNI cslNI_Mixer_nextBuffer: swigCPtrForMixer with: (Buffer getCPtr: outputBuffer)
  ]

  Method [ dump 
    CslNI cslNI_Mixer_dump: swigCPtrForMixer 
  ]

}
