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

package com.nanotec.nanolib;

public final class LogLevel {
  public final static LogLevel Trace = new LogLevel("Trace", NanolibJNI.LogLevel_Trace_get());
  public final static LogLevel Debug = new LogLevel("Debug", NanolibJNI.LogLevel_Debug_get());
  public final static LogLevel Info = new LogLevel("Info", NanolibJNI.LogLevel_Info_get());
  public final static LogLevel Warning = new LogLevel("Warning", NanolibJNI.LogLevel_Warning_get());
  public final static LogLevel Error = new LogLevel("Error", NanolibJNI.LogLevel_Error_get());
  public final static LogLevel Critical = new LogLevel("Critical", NanolibJNI.LogLevel_Critical_get());
  public final static LogLevel Off = new LogLevel("Off", NanolibJNI.LogLevel_Off_get());
  public final static LogLevel n_levels = new LogLevel("n_levels");

  public final int swigValue() {
    return swigValue;
  }

  public String toString() {
    return swigName;
  }

  public static LogLevel swigToEnum(int swigValue) {
    if (swigValue < swigValues.length && swigValue >= 0 && swigValues[swigValue].swigValue == swigValue)
      return swigValues[swigValue];
    for (int i = 0; i < swigValues.length; i++)
      if (swigValues[i].swigValue == swigValue)
        return swigValues[i];
    throw new IllegalArgumentException("No enum " + LogLevel.class + " with value " + swigValue);
  }

  private LogLevel(String swigName) {
    this.swigName = swigName;
    this.swigValue = swigNext++;
  }

  private LogLevel(String swigName, int swigValue) {
    this.swigName = swigName;
    this.swigValue = swigValue;
    swigNext = swigValue+1;
  }

  private LogLevel(String swigName, LogLevel swigEnum) {
    this.swigName = swigName;
    this.swigValue = swigEnum.swigValue;
    swigNext = this.swigValue+1;
  }

  private static LogLevel[] swigValues = { Trace, Debug, Info, Warning, Error, Critical, Off, n_levels };
  private static int swigNext = 0;
  private final int swigValue;
  private final String swigName;
}

