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 YieldTermStructure extends TermStructure implements org.quantlib.helpers.QuantLibJNIHelpers.AutoCloseable { 012 private transient long swigCPtr; 013 private transient boolean swigCMemOwnDerived; 014 015 protected YieldTermStructure(long cPtr, boolean cMemoryOwn) { 016 super(QuantLibJNI.YieldTermStructure_SWIGSmartPtrUpcast(cPtr), true); 017 swigCMemOwnDerived = cMemoryOwn; 018 swigCPtr = cPtr; 019 } 020 021 protected static long getCPtr(YieldTermStructure obj) { 022 return (obj == null) ? 0 : obj.swigCPtr; 023 } 024 025 protected void swigSetCMemOwn(boolean own) { 026 swigCMemOwnDerived = own; 027 super.swigSetCMemOwn(own); 028 } 029 030 @SuppressWarnings("deprecation") 031 protected void finalize() { 032 delete(); 033 } 034 035 public synchronized void delete() { 036 if (swigCPtr != 0) { 037 if (swigCMemOwnDerived) { 038 swigCMemOwnDerived = false; 039 QuantLibJNI.delete_YieldTermStructure(swigCPtr); 040 } 041 swigCPtr = 0; 042 } 043 super.delete(); 044 } 045 046 public double discount(Date arg0, boolean extrapolate) { 047 return QuantLibJNI.YieldTermStructure_discount__SWIG_0(swigCPtr, this, Date.getCPtr(arg0), arg0, extrapolate); 048 } 049 050 public double discount(Date arg0) { 051 return QuantLibJNI.YieldTermStructure_discount__SWIG_1(swigCPtr, this, Date.getCPtr(arg0), arg0); 052 } 053 054 public double discount(double arg0, boolean extrapolate) { 055 return QuantLibJNI.YieldTermStructure_discount__SWIG_2(swigCPtr, this, arg0, extrapolate); 056 } 057 058 public double discount(double arg0) { 059 return QuantLibJNI.YieldTermStructure_discount__SWIG_3(swigCPtr, this, arg0); 060 } 061 062 public InterestRate zeroRate(Date d, DayCounter arg1, Compounding arg2, Frequency f, boolean extrapolate) { 063 return new InterestRate(QuantLibJNI.YieldTermStructure_zeroRate__SWIG_0(swigCPtr, this, Date.getCPtr(d), d, DayCounter.getCPtr(arg1), arg1, arg2.swigValue(), f.swigValue(), extrapolate), true); 064 } 065 066 public InterestRate zeroRate(Date d, DayCounter arg1, Compounding arg2, Frequency f) { 067 return new InterestRate(QuantLibJNI.YieldTermStructure_zeroRate__SWIG_1(swigCPtr, this, Date.getCPtr(d), d, DayCounter.getCPtr(arg1), arg1, arg2.swigValue(), f.swigValue()), true); 068 } 069 070 public InterestRate zeroRate(Date d, DayCounter arg1, Compounding arg2) { 071 return new InterestRate(QuantLibJNI.YieldTermStructure_zeroRate__SWIG_2(swigCPtr, this, Date.getCPtr(d), d, DayCounter.getCPtr(arg1), arg1, arg2.swigValue()), true); 072 } 073 074 public InterestRate zeroRate(double t, Compounding arg1, Frequency f, boolean extrapolate) { 075 return new InterestRate(QuantLibJNI.YieldTermStructure_zeroRate__SWIG_3(swigCPtr, this, t, arg1.swigValue(), f.swigValue(), extrapolate), true); 076 } 077 078 public InterestRate zeroRate(double t, Compounding arg1, Frequency f) { 079 return new InterestRate(QuantLibJNI.YieldTermStructure_zeroRate__SWIG_4(swigCPtr, this, t, arg1.swigValue(), f.swigValue()), true); 080 } 081 082 public InterestRate zeroRate(double t, Compounding arg1) { 083 return new InterestRate(QuantLibJNI.YieldTermStructure_zeroRate__SWIG_5(swigCPtr, this, t, arg1.swigValue()), true); 084 } 085 086 public InterestRate forwardRate(Date d1, Date d2, DayCounter arg2, Compounding arg3, Frequency f, boolean extrapolate) { 087 return new InterestRate(QuantLibJNI.YieldTermStructure_forwardRate__SWIG_0(swigCPtr, this, Date.getCPtr(d1), d1, Date.getCPtr(d2), d2, DayCounter.getCPtr(arg2), arg2, arg3.swigValue(), f.swigValue(), extrapolate), true); 088 } 089 090 public InterestRate forwardRate(Date d1, Date d2, DayCounter arg2, Compounding arg3, Frequency f) { 091 return new InterestRate(QuantLibJNI.YieldTermStructure_forwardRate__SWIG_1(swigCPtr, this, Date.getCPtr(d1), d1, Date.getCPtr(d2), d2, DayCounter.getCPtr(arg2), arg2, arg3.swigValue(), f.swigValue()), true); 092 } 093 094 public InterestRate forwardRate(Date d1, Date d2, DayCounter arg2, Compounding arg3) { 095 return new InterestRate(QuantLibJNI.YieldTermStructure_forwardRate__SWIG_2(swigCPtr, this, Date.getCPtr(d1), d1, Date.getCPtr(d2), d2, DayCounter.getCPtr(arg2), arg2, arg3.swigValue()), true); 096 } 097 098 public InterestRate forwardRate(double t1, double t2, Compounding arg2, Frequency f, boolean extrapolate) { 099 return new InterestRate(QuantLibJNI.YieldTermStructure_forwardRate__SWIG_3(swigCPtr, this, t1, t2, arg2.swigValue(), f.swigValue(), extrapolate), true); 100 } 101 102 public InterestRate forwardRate(double t1, double t2, Compounding arg2, Frequency f) { 103 return new InterestRate(QuantLibJNI.YieldTermStructure_forwardRate__SWIG_4(swigCPtr, this, t1, t2, arg2.swigValue(), f.swigValue()), true); 104 } 105 106 public InterestRate forwardRate(double t1, double t2, Compounding arg2) { 107 return new InterestRate(QuantLibJNI.YieldTermStructure_forwardRate__SWIG_5(swigCPtr, this, t1, t2, arg2.swigValue()), true); 108 } 109 110}