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


public class OBBitVec {
  private long swigCPtr;
  protected boolean swigCMemOwn;

  protected OBBitVec(long cPtr, boolean cMemoryOwn) {
    swigCMemOwn = cMemoryOwn;
    swigCPtr = cPtr;
  }

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

  protected void finalize() {
    delete();
  }

  public synchronized void delete() {
    if(swigCPtr != 0 && swigCMemOwn) {
      swigCMemOwn = false;
      openbabelJNI.delete_OBBitVec(swigCPtr);
    }
    swigCPtr = 0;
  }

  public OBBitVec() {
    this(openbabelJNI.new_OBBitVec__SWIG_0(), true);
  }

  public OBBitVec(int bits) {
    this(openbabelJNI.new_OBBitVec__SWIG_1(bits), true);
  }

  public OBBitVec(OBBitVec arg0) {
    this(openbabelJNI.new_OBBitVec__SWIG_2(OBBitVec.getCPtr(arg0), arg0), true);
  }

  public void SetBitOn(int arg0) {
    openbabelJNI.OBBitVec_SetBitOn(swigCPtr, this, arg0);
  }

  public void SetBitOff(int arg0) {
    openbabelJNI.OBBitVec_SetBitOff(swigCPtr, this, arg0);
  }

  public void SetRangeOn(int arg0, int arg1) {
    openbabelJNI.OBBitVec_SetRangeOn(swigCPtr, this, arg0, arg1);
  }

  public void SetRangeOff(int arg0, int arg1) {
    openbabelJNI.OBBitVec_SetRangeOff(swigCPtr, this, arg0, arg1);
  }

  public void Fold(int arg0) {
    openbabelJNI.OBBitVec_Fold(swigCPtr, this, arg0);
  }

  public int FirstBit(int index) {
    return openbabelJNI.OBBitVec_FirstBit__SWIG_0(swigCPtr, this, index);
  }

  public int FirstBit() {
    return openbabelJNI.OBBitVec_FirstBit__SWIG_1(swigCPtr, this);
  }

  public int NextBit(int arg0) {
    return openbabelJNI.OBBitVec_NextBit(swigCPtr, this, arg0);
  }

  public int EndBit() {
    return openbabelJNI.OBBitVec_EndBit(swigCPtr, this);
  }

  public int GetSize() {
    return openbabelJNI.OBBitVec_GetSize(swigCPtr, this);
  }

  public int CountBits() {
    return openbabelJNI.OBBitVec_CountBits(swigCPtr, this);
  }

  public boolean Empty() {
    return openbabelJNI.OBBitVec_Empty(swigCPtr, this);
  }

  public boolean IsEmpty() {
    return openbabelJNI.OBBitVec_IsEmpty(swigCPtr, this);
  }

  public boolean Resize(int maxbits) {
    return openbabelJNI.OBBitVec_Resize(swigCPtr, this, maxbits);
  }

  public boolean BitIsSet(int bit) {
    return openbabelJNI.OBBitVec_BitIsSet(swigCPtr, this, bit);
  }

  public boolean BitIsOn(int bit) {
    return openbabelJNI.OBBitVec_BitIsOn(swigCPtr, this, bit);
  }

  public void FromVecInt(vectorInt arg0) {
    openbabelJNI.OBBitVec_FromVecInt(swigCPtr, this, vectorInt.getCPtr(arg0), arg0);
  }

  public void FromString(SWIGTYPE_p_std__string arg0, int arg1) {
    openbabelJNI.OBBitVec_FromString(swigCPtr, this, SWIGTYPE_p_std__string.getCPtr(arg0), arg1);
  }

  public void ToVecInt(vectorInt arg0) {
    openbabelJNI.OBBitVec_ToVecInt(swigCPtr, this, vectorInt.getCPtr(arg0), arg0);
  }

  public void Clear() {
    openbabelJNI.OBBitVec_Clear(swigCPtr, this);
  }

  public void Negate() {
    openbabelJNI.OBBitVec_Negate(swigCPtr, this);
  }

  public void GetWords(vectorUnsignedInt vec) {
    openbabelJNI.OBBitVec_GetWords(swigCPtr, this, vectorUnsignedInt.getCPtr(vec), vec);
  }

}


syntax highlighted by Code2HTML, v. 0.9.1