Logo
Reference manual - version ored_version
LegData Class Reference

Serializable object holding leg data. More...

#include <ored/portfolio/legdata.hpp>

Inheritance diagram for LegData:

Public Member Functions

 LegData ()
 Default constructor.
 LegData (const QuantLib::ext::shared_ptr< LegAdditionalData > &innerLegData, bool isPayer, const string &currency, const ScheduleData &scheduleData=ScheduleData(), const string &dayCounter="", const std::vector< double > &notionals=std::vector< double >(), const std::vector< string > &notionalDates=std::vector< string >(), const string &paymentConvention="F", const bool notionalInitialExchange=false, const bool notionalFinalExchange=false, const bool notionalAmortizingExchange=false, const bool isNotResetXCCY=true, const string &foreignCurrency="", const double foreignAmount=0, const string &resetStartDate="", const string &fxIndex="", const std::vector< AmortizationData > &amortizationData=std::vector< AmortizationData >(), const string &paymentLag="", const string &notionalPaymentLag="", const std::string &paymentCalendar="", const std::vector< std::string > &paymentDates=std::vector< std::string >(), const std::vector< Indexing > &indexing={}, const bool indexingFromAssetLeg=false, const string &lastPeriodDayCounter="")
 Constructor with concrete leg data.
Serialisation
virtual void fromXML (XMLNode *node) override
virtual XMLNode * toXML (XMLDocument &doc) const override
Inspectors
bool isPayer () const
const stringcurrency () const
const ScheduleDataschedule () const
const vector< double > & notionals () const
const vector< string > & notionalDates () const
const stringdayCounter () const
const stringpaymentConvention () const
bool notionalInitialExchange () const
bool notionalFinalExchange () const
bool notionalAmortizingExchange () const
bool isNotResetXCCY () const
const stringforeignCurrency () const
double foreignAmount () const
const stringresetStartDate () const
const stringfxIndex () const
const stringpaymentLag () const
const stringnotionalPaymentLag () const
const std::vector< AmortizationData > & amortizationData () const
const std::string & paymentCalendar () const
const LegType & legType () const
QuantLib::ext::shared_ptr< LegAdditionalDataconcreteLegData () const
const std::set< std::string > & indices () const
const std::vector< std::string > & paymentDates () const
const std::vector< Indexing > & indexing () const
const bool indexingFromAssetLeg () const
const stringlastPeriodDayCounter () const
const ScheduleDatapaymentSchedule () const
bool strictNotionalDates () const
const bool isSimmPlainVanillaIrLeg () const
const stringsettlementFxIndex () const
const stringsettlementFxFixingDate () const
Public Member Functions inherited from XMLSerializable
void fromFile (const std::string &filename)
void toFile (const std::string &filename) const
void fromXMLString (const std::string &xml)
 Parse from XML string.
std::string toXMLString () const
 Parse from XML string.
std::string toXMLStringUnformatted () const

modifiers

std::set< std::string > indices_
vector< double > & notionals ()
ScheduleDataschedule ()
vector< string > & notionalDates ()
stringdayCounter ()
bool & isPayer ()
QuantLib::ext::shared_ptr< LegAdditionalData > & concreteLegData ()
std::vector< Indexing > & indexing ()
bool & indexingFromAssetLeg ()
stringpaymentConvention ()
std::vector< std::string > & paymentDates ()
stringlastPeriodDayCounter ()
bool & strictNotionalDates ()
void setForeignAmount (double foreignAmount)
virtual QuantLib::ext::shared_ptr< LegAdditionalDatainitialiseConcreteLegData (const string &)

Detailed Description

Serializable object holding leg data.

Member Function Documentation

◆ fromXML()

virtual void fromXML ( XMLNode * node)
overridevirtual

Implements XMLSerializable.

◆ toXML()

virtual XMLNode * toXML ( XMLDocument & doc) const
overridevirtual

Implements XMLSerializable.

Member Data Documentation

◆ indices_

std::set<std::string> indices_
protected

Store the set of ORE index names that appear on this leg.

Take the set appearing in LegAdditionalData::indices() and add on any appearing here. Currently, the only possible extra index appearing at LegData level is fxIndex.