28#include <ql/utilities/null.hpp>
29#include <ql/shared_ptr.hpp>
48 const QuantLib::Real& im,
const QuantLib::Real& vm = QuantLib::Null<QuantLib::Real>())
53 const QuantLib::Real& im,
const QuantLib::Real& vm = QuantLib::Null<QuantLib::Real>())
105 bool has(
const std::string& nettingSetId)
const;
115 void add(
const QuantLib::ext::shared_ptr<CollateralBalance>& cb);
120 const QuantLib::ext::shared_ptr<CollateralBalance>&
get(
const std::string& nettingSetId)
const;
121 const QuantLib::ext::shared_ptr<CollateralBalance>&
get(
const NettingSetDetails& nettingSetDetails)
const;
126 void currentIM(
const std::string& baseCurrency, std::map<std::string, QuantLib::Real>&
currentIM);
130 const std::map<NettingSetDetails, QuantLib::ext::shared_ptr<CollateralBalance>>&
collateralBalances();
const std::string & currency() const
CollateralBalance(const std::string &nettingSetId, const std::string ¤cy, const QuantLib::Real &im, const QuantLib::Real &vm=QuantLib::Null< QuantLib::Real >())
const std::string & nettingSetId() const
const NettingSetDetails nettingSetDetails() const
void fromXML(ore::data::XMLNode *node) override
std::string nettingSetId_
NettingSetDetails nettingSetDetails_
ore::data::XMLNode * toXML(ore::data::XMLDocument &doc) const override
QuantLib::Real & variationMargin()
CollateralBalance(const NettingSetDetails &nettingSetDetails, const std::string ¤cy, const QuantLib::Real &im, const QuantLib::Real &vm=QuantLib::Null< QuantLib::Real >())
const QuantLib::Real & variationMargin() const
const QuantLib::Real & initialMargin() const
QuantLib::Real & initialMargin()
void add(const QuantLib::ext::shared_ptr< CollateralBalance > &cb)
bool has(const std::string &nettingSetId) const
void fromXML(ore::data::XMLNode *node) override
ore::data::XMLNode * toXML(ore::data::XMLDocument &doc) const override
const std::map< NettingSetDetails, QuantLib::ext::shared_ptr< CollateralBalance > > & collateralBalances()
void currentIM(const std::string &baseCurrency, std::map< std::string, QuantLib::Real > ¤tIM)
std::map< NettingSetDetails, QuantLib::ext::shared_ptr< CollateralBalance > > collateralBalances_
const QuantLib::ext::shared_ptr< CollateralBalance > & get(const std::string &nettingSetId) const
Serializable object holding netting set identification data.
bool empty() const
Check if the netting set details have been populated.
const string & nettingSetId() const
Small XML Document wrapper class.
Base class for all serializable classes.
Serializable Credit Default Swap.
netting set details data model and serialization