190 using LedgerMap::operator[];
191 using LedgerMap::operator=;
192 using LedgerMap::begin;
193 using LedgerMap::cbegin;
194 using LedgerMap::cend;
195 using LedgerMap::clear;
196 using LedgerMap::contains;
197 using LedgerMap::crbegin;
198 using LedgerMap::crend;
199 using LedgerMap::emplace;
200 using LedgerMap::empty;
201 using LedgerMap::end;
202 using LedgerMap::erase;
203 using LedgerMap::mapped_type;
204 using LedgerMap::rbegin;
205 using LedgerMap::rend;
206 using LedgerMap::size;
207 using LedgerMap::value_comp;
352ResourceMap
CopyVals(
const ResourceMap& keys,
const ResourceMap& values);
Definition: resourceledger.h:210
ResourceLedger operator*(const ResourceMap &) const
bool operator<(const ResourceLedger &)
All resources in this ledger are smaller than than the other ledger
Definition: resourceledger.cpp:567
void operator/=(const ResourceLedger &)
Definition: resourceledger.cpp:469
void AssignFrom(const ResourceLedger &)
Definition: resourceledger.cpp:661
ResourceLedger operator+(const ResourceMap &) const
double operator[](const GoodEntity value) const
Definition: resourceledger.cpp:499
bool operator>(const ResourceLedger &)
All resources in this ledger are greater than the other ledger
Definition: resourceledger.cpp:574
void AddPositive(const ResourceLedger &)
ResourceLedger operator*(const ResourceLedger &) const
Definition: resourceledger.cpp:519
auto end()
Definition: resourceledger.h:345
double Min() const
Definition: resourceledger.cpp:761
ResourceLedger Clamp(const double, const double)
Returns a copy of the vector with the values clamped between the min and max indicated
Definition: resourceledger.cpp:703
auto begin()
Definition: resourceledger.h:343
void operator*=(const ResourceLedger &)
Definition: resourceledger.cpp:463
bool operator>=(const ResourceLedger &)
All resources in this ledger are greater than or equal to the other ledger
Definition: resourceledger.cpp:588
void AddNegative(const ResourceLedger &)
Definition: resourceledger.cpp:692
double Max() const
Definition: resourceledger.cpp:771
double MultiplyAndGetSum(const ResourceMap &other) const
Definition: resourceledger.cpp:782
bool EnoughToTransfer(const ResourceLedger &amount)
This resource ledger has enough resources inside to transfer "amount" amount of resources away
ResourceLedger operator/(const ResourceLedger &) const
Definition: resourceledger.cpp:527
void TransferTo(ResourceLedger &ledger_to, const ResourceLedger &amount)
Definition: resourceledger.cpp:667
bool operator!=(const double &)
Definition: resourceledger.cpp:640
ResourceLedger operator/(const ResourceMap &) const
double Average() const
Returns a copy of the vector divided by the indicated vector, with division by zero resulting in infi...
Definition: resourceledger.cpp:753
std::vector< double > ledger
Definition: resourceledger.h:212
ResourceLedger operator+(const ResourceLedger &) const
Definition: resourceledger.cpp:511
void MultiplyAdd(const ResourceLedger &, double)
Definition: resourceledger.cpp:674
bool operator==(const double &)
Definition: resourceledger.cpp:633
void clear()
Definition: resourceledger.cpp:711
ResourceLedger operator-(const ResourceLedger &) const
Definition: resourceledger.cpp:503
void operator-=(const ResourceLedger &)
Definition: resourceledger.cpp:457
ResourceLedger operator-(const ResourceMap &) const
void operator+=(const ResourceLedger &)
Definition: resourceledger.cpp:451
ResourceLedger(size_t count)
Definition: resourceledger.cpp:438
bool operator<=(const ResourceLedger &)
All resources in this ledger are smaller than or equal to than the other ledger
Definition: resourceledger.cpp:581
size_t size()
Definition: resourceledger.h:347
ResourceLedger SafeDivision(const ResourceLedger &)
Returns a copy of the vector divided by the indicated vector, with division by zero resulting in infi...
Definition: resourceledger.cpp:720
Definition: resourceledger.h:34
bool LedgerEquals(const ResourceMap &)
Definition: resourceledger.cpp:249
void operator-=(const ResourceLedger &)
ResourceMap operator*(const ResourceMap &) const
Definition: resourceledger.cpp:187
ResourceMap operator/(const ResourceMap &) const
Definition: resourceledger.cpp:193
double GetSum()
Definition: resourceledger.cpp:341
void AddPositive(const ResourceMap &)
Definition: resourceledger.cpp:113
bool HasGood(GoodEntity good)
Definition: resourceledger.h:172
std::string to_string()
Definition: resourceledger.cpp:415
ResourceMap SafeDivision(const ResourceMap &)
Returns a copy of the vector divided by the indicated vector, with division by zero resulting in infi...
Definition: resourceledger.cpp:357
void operator/=(const ResourceLedger &)
ResourceMap LimitedRemoveResources(const ResourceMap &)
Same as RemoveResourcesLimited, except that it returns how much resources it took out.
Definition: resourceledger.cpp:297
double MultiplyAndGetSum(ResourceMap &other)
Multiplies the numbers stated in the resource ledger. Used for calculating the price,...
Definition: resourceledger.cpp:349
bool EnoughToTransfer(const ResourceMap &amount)
This resource ledger has enough resources inside to transfer "amount" amount of resources away
Definition: resourceledger.cpp:105
ResourceMap operator-(const ResourceMap &) const
Definition: resourceledger.cpp:181
ResourceMap operator+(const ResourceMap &) const
Definition: resourceledger.cpp:175
bool operator==(const double &)
Definition: resourceledger.cpp:239
ResourceMap UnitLedger(const double)
Returns a copy of the vector with the values set to indicated value
Definition: resourceledger.cpp:312
ResourceMap Clamp(const double, const double)
Returns a copy of the vector with the values clamped between the min and max indicated
Definition: resourceledger.cpp:320
double operator[](const GoodEntity) const
Definition: resourceledger.cpp:96
double Min()
Finds the smallest value in the Ledger.
Definition: resourceledger.cpp:390
void operator*=(const ResourceLedger &)
void AddNegative(const ResourceMap &)
Definition: resourceledger.cpp:120
void operator-=(const ResourceMap &)
Definition: resourceledger.cpp:127
void TransferTo(ResourceMap &, const ResourceMap &)
Definition: resourceledger.cpp:274
double Average()
Returns a copy of the vector divided by the indicated vector, with division by zero resulting in infi...
Definition: resourceledger.cpp:413
void RemoveResourcesLimited(const ResourceMap &)
Removes the resources, and if the amount of resources removed are more than the resources inside the ...
Definition: resourceledger.cpp:287
bool operator<=(const ResourceMap &)
All resources in this ledger are smaller than or equal to than the other ledger
Definition: resourceledger.cpp:261
bool operator<(const ResourceMap &)
All resources in this ledger are smaller than than the other ledger
Definition: resourceledger.cpp:253
void operator+=(const ResourceLedger &)
bool operator>(const ResourceMap &)
All resources in this ledger are greater than the other ledger
Definition: resourceledger.cpp:257
double Max()
Finds the largest value in the Ledger.
Definition: resourceledger.cpp:405
bool HasAllResources(const ResourceMap &)
Checks if this current resource ledger has any resources in this list
Definition: resourceledger.cpp:334
void operator/=(const ResourceMap &)
Definition: resourceledger.cpp:145
void MultiplyAdd(const ResourceMap &, double)
Definition: resourceledger.cpp:281
bool operator>=(const ResourceMap &)
All resources in this ledger are greater than or equal to the other ledger
Definition: resourceledger.cpp:245
void operator+=(const ResourceMap &)
Definition: resourceledger.cpp:133
void AssignFrom(const ResourceMap &)
Definition: resourceledger.cpp:268
void operator*=(const ResourceMap &)
Definition: resourceledger.cpp:139
ResourceMap CopyVals(const ResourceMap &keys, const ResourceMap &values)
Creates a new resource ledger using the keys from one resource ledger, and the values from annother
Definition: resourceledger.cpp:430
std::map< GoodEntity, double > LedgerMap
Definition: resourceledger.h:30
GoodEntity
Definition: resourceledger.h:28