/* ----------------------------------------------------------------------------
 * 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: LinearEnvelope extends: SwigProxy fields: swigCPtrForLinearEnvelope, swigCMemoryOwn {

  Method [ pvtSetCPtr: newCPtr memoryOwn: newCMemoryOwn
    swigCMemoryOwn := newCMemoryOwn.
    swigCPtrForLinearEnvelope := newCPtr.
  ]

  Method [ getCPtrForLinearEnvelope
    ^swigCPtrForLinearEnvelope
  ]


  Method[ swigFinalize
    super swigFinalize.
    self delete.
  ]

  Method [ delete 
    (swigCMemoryOwn and:[ swigCPtrForLinearEnvelope ~~ 0 ]) ifTrue:[
      swigCMemoryOwn := false.
      LorisNI lorisNI_delete_LinearEnvelope: swigCPtrForLinearEnvelope.
    ].
    swigCPtrForLinearEnvelope := 0.
  ]

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

  Function [ new
    ^self fromPointer: (LorisNI lorisNI_new_LinearEnvelope__SWIG_0) memoryOwn: true
  ]

  Function [ arg0: arg0
    ^self fromPointer: (LorisNI lorisNI_new_LinearEnvelope__SWIG_1: (LinearEnvelope getCPtr: arg0)) memoryOwn: true
  ]

  Function [ initialValue: initialValue
    ^self fromPointer: (LorisNI lorisNI_new_LinearEnvelope__SWIG_2: initialValue) memoryOwn: true
  ]

  Method [ insertBreakpoint: time value: value 
    LorisNI lorisNI_LinearEnvelope_insertBreakpoint: swigCPtrForLinearEnvelope with: time with: value
  ]

  Method [ insert: time value: value 
    LorisNI lorisNI_LinearEnvelope_insert: swigCPtrForLinearEnvelope with: time with: value
  ]

  Method [ valueAt: x 
    ^LorisNI lorisNI_LinearEnvelope_valueAt: swigCPtrForLinearEnvelope with: x
  ]

}
