@@ -89,6 +89,8 @@ class InputParameters {
8989 QuantLib::ext::shared_ptr<T>& obj, const std::string& analytic,
9090 const std::string& param, const bool mandatory = false ) {
9191 string str = loadParameterXMLString (analytic, param, mandatory);
92+ if (str.empty () && !mandatory)
93+ return false ;
9294 obj = QuantLib::ext::make_shared<T>();
9395 obj->fromXMLString (str);
9496 return true ;
@@ -132,6 +134,7 @@ class InputParameters {
132134 void setBuildFailedTrades (bool b) { buildFailedTrades_ = b; }
133135 void setObservationModel (const std::string& s) { observationModel_ = s; }
134136 void setImplyTodaysFixings (bool b) { implyTodaysFixings_ = b; }
137+ void setFixingCutOffDate (Date d) { fixingCutOffDate_ = d; }
135138 void setUseAtParCouponsCurves (bool b) { useAtParCouponsCurves_ = b; }
136139 void setUseAtParCouponsTrades (bool b) { useAtParCouponsTrades_ = b; }
137140 void setEnrichIndexFixings (bool b) { enrichIndexFixings_ = b; }
@@ -151,6 +154,8 @@ class InputParameters {
151154 void setConventions (const std::string& xml);
152155 void setConventions (const QuantLib::ext::shared_ptr<Conventions>& convs);
153156 void setConventionsFromFile (const std::string& fileName);
157+ void setMporConventions (const std::string& xml);
158+ void setMporConventionsFromFile (const std::string& fileName);
154159 void setIborFallbackConfig (const std::string& xml);
155160 void setIborFallbackConfigFromFile (const std::string& fileName);
156161 void setBaselTrafficLightConfig (const std::string& xml);
@@ -611,6 +616,7 @@ class InputParameters {
611616 bool buildFailedTrades () const { return buildFailedTrades_; }
612617 const std::string& observationModel () const { return observationModel_; }
613618 bool implyTodaysFixings () const { return implyTodaysFixings_; }
619+ Date fixingCutOffDate () const { return fixingCutOffDate_; }
614620 bool useAtParCouponsCurves () const { return useAtParCouponsCurves_; }
615621 bool useAtParCouponsTrades () const { return useAtParCouponsTrades_; }
616622 bool enrichIndexFixings () const { return enrichIndexFixings_; }
@@ -620,6 +626,7 @@ class InputParameters {
620626 const std::string& marketConfig (const std::string& context);
621627 const QuantLib::ext::shared_ptr<ore::data::BasicReferenceDataManager>& refDataManager () const { return refDataManager_; }
622628 const QuantLib::ext::shared_ptr<ore::data::Conventions>& conventions () const { return conventions_; }
629+ const QuantLib::ext::shared_ptr<ore::data::Conventions>& mporConventions () const { return mporConventions_; }
623630 const QuantLib::ext::shared_ptr<ore::data::IborFallbackConfig>& iborFallbackConfig () const { return iborFallbackConfig_; }
624631 const QuantLib::ext::shared_ptr<ore::data::BaselTrafficLightData>& baselTrafficLightConfig () const { return baselTrafficLightConfig_; }
625632
@@ -1072,7 +1079,7 @@ class InputParameters {
10721079 *************************************/
10731080 const std::set<std::string>& analytics () const { return analytics_; }
10741081
1075- virtual void loadParameters (){}
1082+ virtual void loadParameters ();
10761083 virtual void writeOutParameters (){}
10771084
10781085protected:
@@ -1104,6 +1111,7 @@ class InputParameters {
11041111 bool buildFailedTrades_ = true ;
11051112 std::string observationModel_ = " None" ;
11061113 bool implyTodaysFixings_ = false ;
1114+ Date fixingCutOffDate_;
11071115 bool useAtParCouponsCurves_ = true ;
11081116 bool useAtParCouponsTrades_ = true ;
11091117 bool enrichIndexFixings_ = false ;
@@ -1117,7 +1125,7 @@ class InputParameters {
11171125 std::map<std::string, std::string> marketConfigs_;
11181126 QuantLib::ext::shared_ptr<ore::data::BasicReferenceDataManager> refDataManager_;
11191127 QuantLib::ext::shared_ptr<ore::data::BaselTrafficLightData> baselTrafficLightConfig_;
1120- QuantLib::ext::shared_ptr<ore::data::Conventions> conventions_;
1128+ QuantLib::ext::shared_ptr<ore::data::Conventions> conventions_, mporConventions_ ;
11211129 QuantLib::ext::shared_ptr<ore::data::IborFallbackConfig> iborFallbackConfig_;
11221130 CurveConfigurationsManager curveConfigs_;
11231131 QuantLib::ext::shared_ptr<ore::data::CalendarAdjustmentConfig> calendarAdjustment_;
0 commit comments