/* ----------------------------------------------------------------------------
 * 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: Butter extends: Filter fields: swigCPtrForButter {

  Method [ pvtSetCPtr: newCPtr memoryOwn: newCMemoryOwn
    super pvtSetCPtr: (CslNI cslNI_SWIGButterToFilter: newCPtr) memoryOwn: newCMemoryOwn.
    swigCPtrForButter := newCPtr.
  ]

  Method [ getCPtrForButter
    ^swigCPtrForButter
  ]


  Method[ swigFinalize
    super swigFinalize.
    self delete.
  ]

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

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

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

  Function [ type: type cutoff: cutoff
    ^self fromPointer: (CslNI cslNI_new_Butter__SWIG_1: type, cutoff) memoryOwn: true
  ]

  Function [ type: type center: center bandwidth: bandwidth
    ^self fromPointer: (CslNI cslNI_new_Butter__SWIG_2: type, center, bandwidth) memoryOwn: true
  ]

  Function [ in: in type: type cutoff: cutoff
    ^self fromPointer: (CslNI cslNI_new_Butter__SWIG_3: (UnitGenerator getCPtr: in), type, cutoff) memoryOwn: true
  ]

  Function [ in: in type: type cutoff: cutoff
    ^self fromPointer: (CslNI cslNI_new_Butter__SWIG_4: (UnitGenerator getCPtr: in), type, (UnitGenerator getCPtr: cutoff)) memoryOwn: true
  ]

  Function [ in: in type: type center: center bandwidth: bandwidth
    ^self fromPointer: (CslNI cslNI_new_Butter__SWIG_5: (UnitGenerator getCPtr: in), type, center, bandwidth) memoryOwn: true
  ]

  Function [ in: in type: type center: center bandwidth: bandwidth
    ^self fromPointer: (CslNI cslNI_new_Butter__SWIG_6: (UnitGenerator getCPtr: in), type, (UnitGenerator getCPtr: center), (UnitGenerator getCPtr: bandwidth)) memoryOwn: true
  ]

  Method [ setupCoeffs 
    CslNI cslNI_Butter_setupCoeffs: swigCPtrForButter 
  ]

}
