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

package de.blichmann.idajava.natives;

public class func_t extends area_t {
  private long swigCPtr;

  public func_t(long cPtr, boolean cMemoryOwn) {
    super(IdaJavaJNI.func_t_SWIGUpcast(cPtr), cMemoryOwn);
    swigCPtr = cPtr;
  }

  public static long getCPtr(func_t obj) {
    return (obj == null) ? 0 : obj.swigCPtr;
  }

  protected void finalize() {
    delete();
  }

  public synchronized void delete() {
    if (swigCPtr != 0) {
      if (swigCMemOwn) {
        swigCMemOwn = false;
        IdaJavaJNI.delete_func_t(swigCPtr);
      }
      swigCPtr = 0;
    }
    super.delete();
  }

  public void setFlags(int value) {
    IdaJavaJNI.func_t_flags_set(swigCPtr, this, value);
  }

  public int getFlags() {
    return IdaJavaJNI.func_t_flags_get(swigCPtr, this);
  }

  public boolean is_far() {
    return IdaJavaJNI.func_t_is_far(swigCPtr, this);
  }

  public boolean does_return() {
    return IdaJavaJNI.func_t_does_return(swigCPtr, this);
  }

  public boolean analyzed_sp() {
    return IdaJavaJNI.func_t_analyzed_sp(swigCPtr, this);
  }

  public void setFrame(long value) {
    IdaJavaJNI.func_t_frame_set(swigCPtr, this, value);
  }

  public long getFrame() {
    return IdaJavaJNI.func_t_frame_get(swigCPtr, this);
  }

  public void setFrsize(long value) {
    IdaJavaJNI.func_t_frsize_set(swigCPtr, this, value);
  }

  public long getFrsize() {
    return IdaJavaJNI.func_t_frsize_get(swigCPtr, this);
  }

  public void setFrregs(int value) {
    IdaJavaJNI.func_t_frregs_set(swigCPtr, this, value);
  }

  public int getFrregs() {
    return IdaJavaJNI.func_t_frregs_get(swigCPtr, this);
  }

  public void setArgsize(long value) {
    IdaJavaJNI.func_t_argsize_set(swigCPtr, this, value);
  }

  public long getArgsize() {
    return IdaJavaJNI.func_t_argsize_get(swigCPtr, this);
  }

  public void setFpd(long value) {
    IdaJavaJNI.func_t_fpd_set(swigCPtr, this, value);
  }

  public long getFpd() {
    return IdaJavaJNI.func_t_fpd_get(swigCPtr, this);
  }

  public void setColor(long value) {
    IdaJavaJNI.func_t_color_set(swigCPtr, this, value);
  }

  public long getColor() {
    return IdaJavaJNI.func_t_color_get(swigCPtr, this);
  }

  public void setPntqty(int value) {
    IdaJavaJNI.func_t_pntqty_set(swigCPtr, this, value);
  }

  public int getPntqty() {
    return IdaJavaJNI.func_t_pntqty_get(swigCPtr, this);
  }

  public void setPoints(stkpnt_t value) {
    IdaJavaJNI.func_t_points_set(swigCPtr, this, stkpnt_t.getCPtr(value), value);
  }

  public stkpnt_t getPoints() {
    long cPtr = IdaJavaJNI.func_t_points_get(swigCPtr, this);
    return (cPtr == 0) ? null : new stkpnt_t(cPtr, false);
  }

  public void setRegvarqty(int value) {
    IdaJavaJNI.func_t_regvarqty_set(swigCPtr, this, value);
  }

  public int getRegvarqty() {
    return IdaJavaJNI.func_t_regvarqty_get(swigCPtr, this);
  }

  public void setRegvars(regvar_t value) {
    IdaJavaJNI.func_t_regvars_set(swigCPtr, this, regvar_t.getCPtr(value), value);
  }

  public regvar_t getRegvars() {
    long cPtr = IdaJavaJNI.func_t_regvars_get(swigCPtr, this);
    return (cPtr == 0) ? null : new regvar_t(cPtr, false);
  }

  public void setLlabelqty(int value) {
    IdaJavaJNI.func_t_llabelqty_set(swigCPtr, this, value);
  }

  public int getLlabelqty() {
    return IdaJavaJNI.func_t_llabelqty_get(swigCPtr, this);
  }

  public void setLlabels(llabel_t value) {
    IdaJavaJNI.func_t_llabels_set(swigCPtr, this, llabel_t.getCPtr(value), value);
  }

  public llabel_t getLlabels() {
    long cPtr = IdaJavaJNI.func_t_llabels_get(swigCPtr, this);
    return (cPtr == 0) ? null : new llabel_t(cPtr, false);
  }

  public void setRegargqty(int value) {
    IdaJavaJNI.func_t_regargqty_set(swigCPtr, this, value);
  }

  public int getRegargqty() {
    return IdaJavaJNI.func_t_regargqty_get(swigCPtr, this);
  }

  public void setRegargs(regarg_t value) {
    IdaJavaJNI.func_t_regargs_set(swigCPtr, this, regarg_t.getCPtr(value), value);
  }

  public regarg_t getRegargs() {
    long cPtr = IdaJavaJNI.func_t_regargs_get(swigCPtr, this);
    return (cPtr == 0) ? null : new regarg_t(cPtr, false);
  }

  public void setTailqty(int value) {
    IdaJavaJNI.func_t_tailqty_set(swigCPtr, this, value);
  }

  public int getTailqty() {
    return IdaJavaJNI.func_t_tailqty_get(swigCPtr, this);
  }

  public void setTails(area_t value) {
    IdaJavaJNI.func_t_tails_set(swigCPtr, this, area_t.getCPtr(value), value);
  }

  public area_t getTails() {
    long cPtr = IdaJavaJNI.func_t_tails_get(swigCPtr, this);
    return (cPtr == 0) ? null : new area_t(cPtr, false);
  }

  public void setOwner(long value) {
    IdaJavaJNI.func_t_owner_set(swigCPtr, this, value);
  }

  public long getOwner() {
    return IdaJavaJNI.func_t_owner_get(swigCPtr, this);
  }

  public void setRefqty(int value) {
    IdaJavaJNI.func_t_refqty_set(swigCPtr, this, value);
  }

  public int getRefqty() {
    return IdaJavaJNI.func_t_refqty_get(swigCPtr, this);
  }

  public void setReferers(SWIGTYPE_p_unsigned_int value) {
    IdaJavaJNI.func_t_referers_set(swigCPtr, this, SWIGTYPE_p_unsigned_int.getCPtr(value));
  }

  public SWIGTYPE_p_unsigned_int getReferers() {
    long cPtr = IdaJavaJNI.func_t_referers_get(swigCPtr, this);
    return (cPtr == 0) ? null : new SWIGTYPE_p_unsigned_int(cPtr, false);
  }

  public func_t() {
    this(IdaJavaJNI.new_func_t(), true);
  }

}
