/* ----------------------------------------------------------------------------
 * 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: LineSegment extends: UnitGenerator fields: swigCPtrForLineSegment {

  Method [ pvtSetCPtr: newCPtr memoryOwn: newCMemoryOwn
    super pvtSetCPtr: (CslNI cslNI_SWIGLineSegmentToUnitGenerator: newCPtr) memoryOwn: newCMemoryOwn.
    swigCPtrForLineSegment := newCPtr.
  ]

  Method [ getCPtrForLineSegment
    ^swigCPtrForLineSegment
  ]


  Method[ swigFinalize
    super swigFinalize.
    self delete.
  ]

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

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

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

  Function [ d: d s: s e: e mode: mode
    ^self fromPointer: (CslNI cslNI_new_LineSegment__SWIG_1: d, s, e, mode) memoryOwn: true
  ]

  Function [ d: d s: s e: e
    ^self fromPointer: (CslNI cslNI_new_LineSegment__SWIG_2: d, s, e) memoryOwn: true
  ]

  Method [ start 
    ^CslNI cslNI_LineSegment_start: swigCPtrForLineSegment 
  ]

  Method [ end 
    ^CslNI cslNI_LineSegment_end: swigCPtrForLineSegment 
  ]

  Method [ duration 
    ^CslNI cslNI_LineSegment_duration: swigCPtrForLineSegment 
  ]

  Method [ currentFrame 
    ^CslNI cslNI_LineSegment_currentFrame: swigCPtrForLineSegment 
  ]

  Method [ setEnd: end 
    CslNI cslNI_LineSegment_setEnd: swigCPtrForLineSegment with: end
  ]

  Method [ setStart: start 
    CslNI cslNI_LineSegment_setStart: swigCPtrForLineSegment with: start
  ]

  Method [ setDuration: duration 
    CslNI cslNI_LineSegment_setDuration__SWIG_0: swigCPtrForLineSegment with: duration
  ]

  Method [ setDuration: duration 
    CslNI cslNI_LineSegment_setDuration__SWIG_1: swigCPtrForLineSegment with: duration
  ]

  Method [ setMode: mode 
    CslNI cslNI_LineSegment_setMode: swigCPtrForLineSegment with: mode
  ]

  Method [ nextBuffer: outputBuffer outBufNum: outBufNum 
    CslNI cslNI_LineSegment_nextBuffer__SWIG_0: swigCPtrForLineSegment with: (Buffer getCPtr: outputBuffer) with: outBufNum
  ]

  Method [ nextBuffer: outputBuffer outBufNum: outBufNum scalePort: scalePort offsetPort: offsetPort 
    CslNI cslNI_LineSegment_nextBuffer__SWIG_1: swigCPtrForLineSegment with: (Buffer getCPtr: outputBuffer) with: outBufNum with: (Port getCPtr: scalePort) with: (Port getCPtr: offsetPort)
  ]

  Method [ reset 
    CslNI cslNI_LineSegment_reset: swigCPtrForLineSegment 
  ]

  Method [ trigger 
    CslNI cslNI_LineSegment_trigger: swigCPtrForLineSegment 
  ]

  Method [ dump 
    CslNI cslNI_LineSegment_dump: swigCPtrForLineSegment 
  ]

}
