Bond* BondPriceFileSource::createBondObject(CSVDatabase db, int row){ int numOfCols=db.at(0).size(); Bond* tempBond = new Bond(); for (int i=0;i<numOfCols;i++) { String fieldName = db.at(0).at(i); String fieldVal = db.at(row).at(i); updateMarketObjectField(fieldName, fieldVal, tempBond); } tempBond->setTradeDate(dateUtil::dayRollAdjust(dateUtil::getToday(),enums::Following, tempBond->getMarket().getCurrencyEnum())); tempBond->generateCouponLeg(); tempBond->deriveDirtyPrice(); return tempBond; }