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 YoYInflationTermStructureHandle implements org.quantlib.helpers.QuantLibJNIHelpers.AutoCloseable { 012 private transient long swigCPtr; 013 protected transient boolean swigCMemOwn; 014 015 protected YoYInflationTermStructureHandle(long cPtr, boolean cMemoryOwn) { 016 swigCMemOwn = cMemoryOwn; 017 swigCPtr = cPtr; 018 } 019 020 protected static long getCPtr(YoYInflationTermStructureHandle obj) { 021 return (obj == null) ? 0 : obj.swigCPtr; 022 } 023 024 protected static long swigRelease(YoYInflationTermStructureHandle 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_YoYInflationTermStructureHandle(swigCPtr); 046 } 047 swigCPtr = 0; 048 } 049 } 050 051 public YoYInflationTermStructureHandle(YoYInflationTermStructure arg0) { 052 this(QuantLibJNI.new_YoYInflationTermStructureHandle__SWIG_0(YoYInflationTermStructure.getCPtr(arg0), arg0), true); 053 } 054 055 public YoYInflationTermStructureHandle() { 056 this(QuantLibJNI.new_YoYInflationTermStructureHandle__SWIG_1(), true); 057 } 058 059 public YoYInflationTermStructure __deref__() { 060 long cPtr = QuantLibJNI.YoYInflationTermStructureHandle___deref__(swigCPtr, this); 061 return (cPtr == 0) ? null : new YoYInflationTermStructure(cPtr, true); 062 } 063 064 public YoYInflationTermStructure currentLink() { 065 long cPtr = QuantLibJNI.YoYInflationTermStructureHandle_currentLink(swigCPtr, this); 066 return (cPtr == 0) ? null : new YoYInflationTermStructure(cPtr, true); 067 } 068 069 public boolean empty() { 070 return QuantLibJNI.YoYInflationTermStructureHandle_empty(swigCPtr, this); 071 } 072 073 public Observable asObservable() { 074 long cPtr = QuantLibJNI.YoYInflationTermStructureHandle_asObservable(swigCPtr, this); 075 return (cPtr == 0) ? null : new Observable(cPtr, true); 076 } 077 078 public double yoyRate(Date d, Period instObsLag, boolean forceLinearInterpolation, boolean extrapolate) { 079 return QuantLibJNI.YoYInflationTermStructureHandle_yoyRate__SWIG_0(swigCPtr, this, Date.getCPtr(d), d, Period.getCPtr(instObsLag), instObsLag, forceLinearInterpolation, extrapolate); 080 } 081 082 public double yoyRate(Date d, Period instObsLag, boolean forceLinearInterpolation) { 083 return QuantLibJNI.YoYInflationTermStructureHandle_yoyRate__SWIG_1(swigCPtr, this, Date.getCPtr(d), d, Period.getCPtr(instObsLag), instObsLag, forceLinearInterpolation); 084 } 085 086 public double yoyRate(Date d, Period instObsLag) { 087 return QuantLibJNI.YoYInflationTermStructureHandle_yoyRate__SWIG_2(swigCPtr, this, Date.getCPtr(d), d, Period.getCPtr(instObsLag), instObsLag); 088 } 089 090 public double yoyRate(Date d) { 091 return QuantLibJNI.YoYInflationTermStructureHandle_yoyRate__SWIG_3(swigCPtr, this, Date.getCPtr(d), d); 092 } 093 094 public double yoyRate(double t, boolean extrapolate) { 095 return QuantLibJNI.YoYInflationTermStructureHandle_yoyRate__SWIG_4(swigCPtr, this, t, extrapolate); 096 } 097 098 public double yoyRate(double t) { 099 return QuantLibJNI.YoYInflationTermStructureHandle_yoyRate__SWIG_5(swigCPtr, this, t); 100 } 101 102 public boolean indexIsInterpolated() { 103 return QuantLibJNI.YoYInflationTermStructureHandle_indexIsInterpolated(swigCPtr, this); 104 } 105 106 public Period observationLag() { 107 return new Period(QuantLibJNI.YoYInflationTermStructureHandle_observationLag(swigCPtr, this), true); 108 } 109 110 public Frequency frequency() { 111 return Frequency.swigToEnum(QuantLibJNI.YoYInflationTermStructureHandle_frequency(swigCPtr, this)); 112 } 113 114 public double baseRate() { 115 return QuantLibJNI.YoYInflationTermStructureHandle_baseRate(swigCPtr, this); 116 } 117 118 public Date baseDate() { 119 return new Date(QuantLibJNI.YoYInflationTermStructureHandle_baseDate(swigCPtr, this), true); 120 } 121 122 public void setSeasonality(Seasonality seasonality) { 123 QuantLibJNI.YoYInflationTermStructureHandle_setSeasonality__SWIG_0(swigCPtr, this, Seasonality.getCPtr(seasonality), seasonality); 124 } 125 126 public void setSeasonality() { 127 QuantLibJNI.YoYInflationTermStructureHandle_setSeasonality__SWIG_1(swigCPtr, this); 128 } 129 130 public Seasonality seasonality() { 131 long cPtr = QuantLibJNI.YoYInflationTermStructureHandle_seasonality(swigCPtr, this); 132 return (cPtr == 0) ? null : new Seasonality(cPtr, true); 133 } 134 135 public boolean hasSeasonality() { 136 return QuantLibJNI.YoYInflationTermStructureHandle_hasSeasonality(swigCPtr, this); 137 } 138 139 public DayCounter dayCounter() { 140 return new DayCounter(QuantLibJNI.YoYInflationTermStructureHandle_dayCounter(swigCPtr, this), true); 141 } 142 143 public double timeFromReference(Date date) { 144 return QuantLibJNI.YoYInflationTermStructureHandle_timeFromReference(swigCPtr, this, Date.getCPtr(date), date); 145 } 146 147 public Calendar calendar() { 148 return new Calendar(QuantLibJNI.YoYInflationTermStructureHandle_calendar(swigCPtr, this), true); 149 } 150 151 public Date referenceDate() { 152 return new Date(QuantLibJNI.YoYInflationTermStructureHandle_referenceDate(swigCPtr, this), true); 153 } 154 155 public Date maxDate() { 156 return new Date(QuantLibJNI.YoYInflationTermStructureHandle_maxDate(swigCPtr, this), true); 157 } 158 159 public double maxTime() { 160 return QuantLibJNI.YoYInflationTermStructureHandle_maxTime(swigCPtr, this); 161 } 162 163 public void enableExtrapolation() { 164 QuantLibJNI.YoYInflationTermStructureHandle_enableExtrapolation(swigCPtr, this); 165 } 166 167 public void disableExtrapolation() { 168 QuantLibJNI.YoYInflationTermStructureHandle_disableExtrapolation(swigCPtr, this); 169 } 170 171 public boolean allowsExtrapolation() { 172 return QuantLibJNI.YoYInflationTermStructureHandle_allowsExtrapolation(swigCPtr, this); 173 } 174 175}