001/* ---------------------------------------------------------------------------- 002 * This file was automatically generated by SWIG (https://www.swig.org). 003 * Version 4.1.1 004 * 005 * Do not make changes to this file unless you know what you are doing - modify 006 * the SWIG interface file instead. 007 * ----------------------------------------------------------------------------- */ 008 009package org.quantlib; 010 011public class HestonSLVFokkerPlanckFdmParams implements org.quantlib.helpers.QuantLibJNIHelpers.AutoCloseable { 012 private transient long swigCPtr; 013 protected transient boolean swigCMemOwn; 014 015 protected HestonSLVFokkerPlanckFdmParams(long cPtr, boolean cMemoryOwn) { 016 swigCMemOwn = cMemoryOwn; 017 swigCPtr = cPtr; 018 } 019 020 protected static long getCPtr(HestonSLVFokkerPlanckFdmParams obj) { 021 return (obj == null) ? 0 : obj.swigCPtr; 022 } 023 024 protected static long swigRelease(HestonSLVFokkerPlanckFdmParams obj) { 025 long ptr = 0; 026 if (obj != null) { 027 if (!obj.swigCMemOwn) 028 throw new RuntimeException("Cannot release ownership as memory is not owned"); 029 ptr = obj.swigCPtr; 030 obj.swigCMemOwn = false; 031 obj.delete(); 032 } 033 return ptr; 034 } 035 036 @SuppressWarnings("deprecation") 037 protected void finalize() { 038 delete(); 039 } 040 041 public synchronized void delete() { 042 if (swigCPtr != 0) { 043 if (swigCMemOwn) { 044 swigCMemOwn = false; 045 QuantLibJNI.delete_HestonSLVFokkerPlanckFdmParams(swigCPtr); 046 } 047 swigCPtr = 0; 048 } 049 } 050 051 public HestonSLVFokkerPlanckFdmParams(long xGrid, long vGrid, long tMaxStepsPerYear, long tMinStepsPerYear, double tStepNumberDecay, long nRannacherTimeSteps, long predictionCorretionSteps, double x0Density, double localVolEpsProb, long maxIntegrationIterations, double vLowerEps, double vUpperEps, double vMin, double v0Density, double vLowerBoundDensity, double vUpperBoundDensity, double leverageFctPropEps, FdmHestonGreensFct.Algorithm greensAlgorithm, FdmSquareRootFwdOp.TransformationType trafoType, FdmSchemeDesc schemeDesc) { 052 this(QuantLibJNI.new_HestonSLVFokkerPlanckFdmParams(xGrid, vGrid, tMaxStepsPerYear, tMinStepsPerYear, tStepNumberDecay, nRannacherTimeSteps, predictionCorretionSteps, x0Density, localVolEpsProb, maxIntegrationIterations, vLowerEps, vUpperEps, vMin, v0Density, vLowerBoundDensity, vUpperBoundDensity, leverageFctPropEps, greensAlgorithm.swigValue(), trafoType.swigValue(), FdmSchemeDesc.getCPtr(schemeDesc), schemeDesc), true); 053 } 054 055}