summaryrefslogtreecommitdiff
path: root/balance.cc
diff options
context:
space:
mode:
Diffstat (limited to 'balance.cc')
-rw-r--r--balance.cc16
1 files changed, 16 insertions, 0 deletions
diff --git a/balance.cc b/balance.cc
index 6305eb95..01332fae 100644
--- a/balance.cc
+++ b/balance.cc
@@ -34,6 +34,22 @@ balance_t balance_t::value(const std::time_t moment) const
return temp;
}
+balance_t balance_t::factor_price() const
+{
+ balance_t temp;
+
+ for (amounts_map::const_iterator i = amounts.begin();
+ i != amounts.end();
+ i++) {
+ if ((*i).second.commodity().price)
+ temp += *((*i).second.commodity().price) * (*i).second;
+ else
+ temp += (*i).second;
+ }
+
+ return temp;
+}
+
struct compare_amount_commodities {
bool operator()(const amount_t * left, const amount_t * right) const {
return left->commodity().symbol < right->commodity().symbol;