1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
|
//------------------------------------------------------------------------------
// <auto-generated />
//
// This file was automatically generated by SWIG (http://www.swig.org).
// Version 3.0.12
//
// Do not make changes to this file unless you know what you are doing--modify
// the SWIG interface file instead.
//------------------------------------------------------------------------------
namespace QuantLib {
public class VanillaSwap : Swap {
private global::System.Runtime.InteropServices.HandleRef swigCPtr;
internal VanillaSwap(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NQuantLibcPINVOKE.VanillaSwap_SWIGUpcast(cPtr), cMemoryOwn) {
swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
}
internal static global::System.Runtime.InteropServices.HandleRef getCPtr(VanillaSwap obj) {
return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
}
~VanillaSwap() {
Dispose();
}
public override void Dispose() {
lock(this) {
if (swigCPtr.Handle != global::System.IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
NQuantLibcPINVOKE.delete_VanillaSwap(swigCPtr);
}
swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
}
global::System.GC.SuppressFinalize(this);
base.Dispose();
}
}
public VanillaSwap(_VanillaSwap.Type type, double nominal, Schedule fixedSchedule, double fixedRate, DayCounter fixedDayCount, Schedule floatSchedule, IborIndex index, double spread, DayCounter floatingDayCount) : this(NQuantLibcPINVOKE.new_VanillaSwap((int)type, nominal, Schedule.getCPtr(fixedSchedule), fixedRate, DayCounter.getCPtr(fixedDayCount), Schedule.getCPtr(floatSchedule), IborIndex.getCPtr(index), spread, DayCounter.getCPtr(floatingDayCount)), true) {
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
}
public double fairRate() {
double ret = NQuantLibcPINVOKE.VanillaSwap_fairRate(swigCPtr);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public double fairSpread() {
double ret = NQuantLibcPINVOKE.VanillaSwap_fairSpread(swigCPtr);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public double fixedLegBPS() {
double ret = NQuantLibcPINVOKE.VanillaSwap_fixedLegBPS(swigCPtr);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public double floatingLegBPS() {
double ret = NQuantLibcPINVOKE.VanillaSwap_floatingLegBPS(swigCPtr);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public double fixedLegNPV() {
double ret = NQuantLibcPINVOKE.VanillaSwap_fixedLegNPV(swigCPtr);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public double floatingLegNPV() {
double ret = NQuantLibcPINVOKE.VanillaSwap_floatingLegNPV(swigCPtr);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public Leg fixedLeg() {
Leg ret = new Leg(NQuantLibcPINVOKE.VanillaSwap_fixedLeg(swigCPtr), false);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public Leg floatingLeg() {
Leg ret = new Leg(NQuantLibcPINVOKE.VanillaSwap_floatingLeg(swigCPtr), false);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public double nominal() {
double ret = NQuantLibcPINVOKE.VanillaSwap_nominal(swigCPtr);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public Schedule fixedSchedule() {
Schedule ret = new Schedule(NQuantLibcPINVOKE.VanillaSwap_fixedSchedule(swigCPtr), false);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public Schedule floatingSchedule() {
Schedule ret = new Schedule(NQuantLibcPINVOKE.VanillaSwap_floatingSchedule(swigCPtr), false);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public double fixedRate() {
double ret = NQuantLibcPINVOKE.VanillaSwap_fixedRate(swigCPtr);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public double spread() {
double ret = NQuantLibcPINVOKE.VanillaSwap_spread(swigCPtr);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public DayCounter floatingDayCount() {
DayCounter ret = new DayCounter(NQuantLibcPINVOKE.VanillaSwap_floatingDayCount(swigCPtr), false);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public DayCounter fixedDayCount() {
DayCounter ret = new DayCounter(NQuantLibcPINVOKE.VanillaSwap_fixedDayCount(swigCPtr), false);
if (NQuantLibcPINVOKE.SWIGPendingException.Pending) throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
return ret;
}
public static readonly _VanillaSwap.Type Receiver = (_VanillaSwap.Type)NQuantLibcPINVOKE.VanillaSwap_Receiver_get();
public static readonly _VanillaSwap.Type Payer = (_VanillaSwap.Type)NQuantLibcPINVOKE.VanillaSwap_Payer_get();
}
}
|