MC Asian Engine in QLXL

Posted by Lapin on
URL: http://quantlib.414.s1.nabble.com/MC-Asian-Engine-in-QLXL-tp8290.html

Hi,

I am writing my own extension of QLAddin but I face an error never faced before while trying to expose the MC engine for Asian options (the native one).

I have added in pricingengine.cpp a function with the following body:

libraryObject_ = boost::shared_ptr<QuantLib::PricingEngine>(new
                          QuantLib::MCDiscreteArithmeticAPEngine<QuantLib::PseudoRandom>                                        (process,                 maxTimeStepsPerYear,
                                            brownianBridge,
                                                    antitheticVariate, controlVariate,
                                            requiredSamples, requiredTolerance,
                                           maxSamples, isBiased, seed));

Why compiling I get the quantLib error (not QLAddin error):

2>../QuantLib\ql/pricingengines/asian/mc_discr_arith_av_price.hpp(77) : error C2989: 'QuantLib::MCDiscreteArithmeticAPEngine' : class template has already been declared as a non-class template
2>        .\qlo/pricingengines.hpp(62) : see declaration of 'QuantLib::MCDiscreteArithmeticAPEngine'

I am struggling to see where it goes wrong. Even if I use MakeMCDiscreteArithmeticAPEngine, the error remains the same.

Any ideas?

Cheers