public VannaVolgaDoubleBarrierEngine(DeltaVolQuoteHandle atmVol, DeltaVolQuoteHandle vol25Put, DeltaVolQuoteHandle vol25Call, QuoteHandle spotFX, YieldTermStructureHandle domesticTS, YieldTermStructureHandle foreignTS) : this(NQuantLibcPINVOKE.new_VannaVolgaDoubleBarrierEngine__SWIG_4(DeltaVolQuoteHandle.getCPtr(atmVol), DeltaVolQuoteHandle.getCPtr(vol25Put), DeltaVolQuoteHandle.getCPtr(vol25Call), QuoteHandle.getCPtr(spotFX), YieldTermStructureHandle.getCPtr(domesticTS), YieldTermStructureHandle.getCPtr(foreignTS)), true)
 {
     if (NQuantLibcPINVOKE.SWIGPendingException.Pending)
     {
         throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
     }
 }
 public VannaVolgaDoubleBarrierEngine(DeltaVolQuoteHandle atmVol, DeltaVolQuoteHandle vol25Put, DeltaVolQuoteHandle vol25Call, QuoteHandle spotFX, YieldTermStructureHandle domesticTS, YieldTermStructureHandle foreignTS, string type, bool adaptVanDelta, double bsPriceWithSmile, int series) : this(NQuantLibcPINVOKE.new_VannaVolgaDoubleBarrierEngine__SWIG_0(DeltaVolQuoteHandle.getCPtr(atmVol), DeltaVolQuoteHandle.getCPtr(vol25Put), DeltaVolQuoteHandle.getCPtr(vol25Call), QuoteHandle.getCPtr(spotFX), YieldTermStructureHandle.getCPtr(domesticTS), YieldTermStructureHandle.getCPtr(foreignTS), type, adaptVanDelta, bsPriceWithSmile, series), true)
 {
     if (NQuantLibcPINVOKE.SWIGPendingException.Pending)
     {
         throw NQuantLibcPINVOKE.SWIGPendingException.Retrieve();
     }
 }