org.quantlib.LsmBasisSystem Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of quantlib Show documentation
Show all versions of quantlib Show documentation
Java language binding for QuantLib
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (https://www.swig.org).
* Version 4.2.1
*
* Do not make changes to this file unless you know what you are doing - modify
* the SWIG interface file instead.
* ----------------------------------------------------------------------------- */
package org.quantlib;
public class LsmBasisSystem implements org.quantlib.helpers.QuantLibJNIHelpers.AutoCloseable {
private transient long swigCPtr;
protected transient boolean swigCMemOwn;
protected LsmBasisSystem(long cPtr, boolean cMemoryOwn) {
swigCMemOwn = cMemoryOwn;
swigCPtr = cPtr;
}
protected static long getCPtr(LsmBasisSystem obj) {
return (obj == null) ? 0 : obj.swigCPtr;
}
protected static long swigRelease(LsmBasisSystem obj) {
long ptr = 0;
if (obj != null) {
if (!obj.swigCMemOwn)
throw new RuntimeException("Cannot release ownership as memory is not owned");
ptr = obj.swigCPtr;
obj.swigCMemOwn = false;
obj.delete();
}
return ptr;
}
@SuppressWarnings({"deprecation", "removal"})
protected void finalize() {
delete();
}
public synchronized void delete() {
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
QuantLibJNI.delete_LsmBasisSystem(swigCPtr);
}
swigCPtr = 0;
}
}
public LsmBasisSystem() {
this(QuantLibJNI.new_LsmBasisSystem(), true);
}
public final static class PolynomialType {
public final static LsmBasisSystem.PolynomialType Monomial = new LsmBasisSystem.PolynomialType("Monomial");
public final static LsmBasisSystem.PolynomialType Laguerre = new LsmBasisSystem.PolynomialType("Laguerre");
public final static LsmBasisSystem.PolynomialType Hermite = new LsmBasisSystem.PolynomialType("Hermite");
public final static LsmBasisSystem.PolynomialType Hyperbolic = new LsmBasisSystem.PolynomialType("Hyperbolic");
public final static LsmBasisSystem.PolynomialType Legendre = new LsmBasisSystem.PolynomialType("Legendre");
public final static LsmBasisSystem.PolynomialType Chebyshev = new LsmBasisSystem.PolynomialType("Chebyshev");
public final static LsmBasisSystem.PolynomialType Chebyshev2nd = new LsmBasisSystem.PolynomialType("Chebyshev2nd");
public final int swigValue() {
return swigValue;
}
public String toString() {
return swigName;
}
public static PolynomialType 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 " + PolynomialType.class + " with value " + swigValue);
}
private PolynomialType(String swigName) {
this.swigName = swigName;
this.swigValue = swigNext++;
}
private PolynomialType(String swigName, int swigValue) {
this.swigName = swigName;
this.swigValue = swigValue;
swigNext = swigValue+1;
}
private PolynomialType(String swigName, PolynomialType swigEnum) {
this.swigName = swigName;
this.swigValue = swigEnum.swigValue;
swigNext = this.swigValue+1;
}
private static PolynomialType[] swigValues = { Monomial, Laguerre, Hermite, Hyperbolic, Legendre, Chebyshev, Chebyshev2nd };
private static int swigNext = 0;
private final int swigValue;
private final String swigName;
}
}