Conquer Space 0.0.0
A space themed grand strategy game set in the near future, with realistic orbital mechanics, and an emphasis on economics and politics.
Public Member Functions | List of all members
cqsp::core::components::ResourceMap Class Reference

#include <resourceledger.h>

Inheritance diagram for cqsp::core::components::ResourceMap:
cqsp::core::components::CostTable cqsp::core::components::ResourceConsumption cqsp::core::components::ResourceProduction cqsp::core::components::ResourceStockpile

Public Member Functions

 ResourceMap ()=default
 
 ~ResourceMap ()=default
 
double operator[] (const GoodEntity) const
 
bool EnoughToTransfer (const ResourceMap &amount)
 This resource ledger has enough resources inside to transfer "amount" amount of resources away More...
 
void operator-= (const ResourceMap &)
 
void operator+= (const ResourceMap &)
 
void operator*= (const ResourceMap &)
 
void operator/= (const ResourceMap &)
 
void operator-= (const ResourceLedger &)
 
void operator+= (const ResourceLedger &)
 
void operator*= (const ResourceLedger &)
 
void operator/= (const ResourceLedger &)
 
void operator-= (const double value)
 
void operator+= (const double value)
 
void operator*= (const double value)
 
void operator/= (const double value)
 
ResourceMap operator- (const ResourceMap &) const
 
ResourceMap operator+ (const ResourceMap &) const
 
ResourceMap operator* (const ResourceMap &) const
 
ResourceMap operator/ (const ResourceMap &) const
 
ResourceMap operator- (const double value) const
 
ResourceMap operator+ (const double value) const
 
ResourceMap operator* (const double value) const
 
ResourceMap operator/ (const double value) const
 
bool operator< (const ResourceMap &)
 All resources in this ledger are smaller than than the other ledger More...
 
bool operator> (const ResourceMap &)
 All resources in this ledger are greater than the other ledger More...
 
bool operator<= (const ResourceMap &)
 All resources in this ledger are smaller than or equal to than the other ledger More...
 
bool operator>= (const ResourceMap &)
 All resources in this ledger are greater than or equal to the other ledger More...
 
bool LedgerEquals (const ResourceMap &)
 
bool operator> (const double &)
 All resources in this ledger are greater than the number More...
 
bool operator< (const double &)
 All resources in this ledger are less than than the number More...
 
bool operator== (const double &)
 
bool operator<= (const double &)
 
bool operator>= (const double &)
 
void AssignFrom (const ResourceMap &)
 
void TransferTo (ResourceMap &, const ResourceMap &)
 
void MultiplyAdd (const ResourceMap &, double)
 
void RemoveResourcesLimited (const ResourceMap &)
 Removes the resources, and if the amount of resources removed are more than the resources inside the stockpile, it will set that resource to zero. More...
 
ResourceMap LimitedRemoveResources (const ResourceMap &)
 Same as RemoveResourcesLimited, except that it returns how much resources it took out. More...
 
ResourceMap UnitLedger (const double)
 Returns a copy of the vector with the values set to indicated value More...
 
void AddPositive (const ResourceMap &)
 
void AddNegative (const ResourceMap &)
 
ResourceMap Clamp (const double, const double)
 Returns a copy of the vector with the values clamped between the min and max indicated More...
 
ResourceMap SafeDivision (const ResourceMap &)
 Returns a copy of the vector divided by the indicated vector, with division by zero resulting in infiniy More...
 
ResourceMap SafeDivision (const ResourceMap &, double)
 Returns a copy of the vector divided by the indicated vector, with division by zero resulting in the specified value More...
 
double Average ()
 Returns a copy of the vector divided by the indicated vector, with division by zero resulting in infiniy More...
 
double Min ()
 Finds the smallest value in the Ledger. More...
 
double Max ()
 Finds the largest value in the Ledger. More...
 
bool HasAllResources (const ResourceMap &)
 Checks if this current resource ledger has any resources in this list More...
 
bool HasGood (GoodEntity good)
 
double GetSum ()
 
double MultiplyAndGetSum (ResourceMap &other)
 Multiplies the numbers stated in the resource ledger. Used for calculating the price, becuase usually the resource ledger will be the price. More...
 
std::string to_string ()
 

Constructor & Destructor Documentation

◆ ResourceMap()

cqsp::core::components::ResourceMap::ResourceMap ( )
default

◆ ~ResourceMap()

cqsp::core::components::ResourceMap::~ResourceMap ( )
default

Member Function Documentation

◆ AddNegative()

void cqsp::core::components::ResourceMap::AddNegative ( const ResourceMap other)

◆ AddPositive()

void cqsp::core::components::ResourceMap::AddPositive ( const ResourceMap other)

◆ AssignFrom()

void cqsp::core::components::ResourceMap::AssignFrom ( const ResourceMap ledger)

Assigns values from the other ledger to this ledger.

◆ Average()

double cqsp::core::components::ResourceMap::Average ( )

Returns a copy of the vector divided by the indicated vector, with division by zero resulting in infiniy

◆ Clamp()

ResourceMap cqsp::core::components::ResourceMap::Clamp ( const double  minclamp,
const double  maxclamp 
)

Returns a copy of the vector with the values clamped between the min and max indicated

◆ EnoughToTransfer()

bool cqsp::core::components::ResourceMap::EnoughToTransfer ( const ResourceMap amount)

This resource ledger has enough resources inside to transfer "amount" amount of resources away

Parameters
amountOther resource ledger
Returns

◆ GetSum()

double cqsp::core::components::ResourceMap::GetSum ( )

Gets the sum of all the goods in this resource ledger.

◆ HasAllResources()

bool cqsp::core::components::ResourceMap::HasAllResources ( const ResourceMap ledger)

Checks if this current resource ledger has any resources in this list

Returns

◆ HasGood()

bool cqsp::core::components::ResourceMap::HasGood ( GoodEntity  good)
inline

◆ LedgerEquals()

bool cqsp::core::components::ResourceMap::LedgerEquals ( const ResourceMap ledger)

◆ LimitedRemoveResources()

ResourceMap cqsp::core::components::ResourceMap::LimitedRemoveResources ( const ResourceMap other)

Same as RemoveResourcesLimited, except that it returns how much resources it took out.

◆ Max()

double cqsp::core::components::ResourceMap::Max ( )

Finds the largest value in the Ledger.

Returns
The largest value in the ledger

◆ Min()

double cqsp::core::components::ResourceMap::Min ( )

Finds the smallest value in the Ledger.

Returns
The smallest value in the ledger, returns 0 if none found

◆ MultiplyAdd()

void cqsp::core::components::ResourceMap::MultiplyAdd ( const ResourceMap other,
double  value 
)

◆ MultiplyAndGetSum()

double cqsp::core::components::ResourceMap::MultiplyAndGetSum ( ResourceMap other)

Multiplies the numbers stated in the resource ledger. Used for calculating the price, becuase usually the resource ledger will be the price.

Returns

◆ operator*() [1/2]

ResourceMap cqsp::core::components::ResourceMap::operator* ( const double  value) const

◆ operator*() [2/2]

ResourceMap cqsp::core::components::ResourceMap::operator* ( const ResourceMap other) const

◆ operator*=() [1/3]

void cqsp::core::components::ResourceMap::operator*= ( const double  value)

◆ operator*=() [2/3]

void cqsp::core::components::ResourceMap::operator*= ( const ResourceLedger )

◆ operator*=() [3/3]

void cqsp::core::components::ResourceMap::operator*= ( const ResourceMap other)

◆ operator+() [1/2]

ResourceMap cqsp::core::components::ResourceMap::operator+ ( const double  value) const

◆ operator+() [2/2]

ResourceMap cqsp::core::components::ResourceMap::operator+ ( const ResourceMap other) const

◆ operator+=() [1/3]

void cqsp::core::components::ResourceMap::operator+= ( const double  value)

◆ operator+=() [2/3]

void cqsp::core::components::ResourceMap::operator+= ( const ResourceLedger )

◆ operator+=() [3/3]

void cqsp::core::components::ResourceMap::operator+= ( const ResourceMap other)

◆ operator-() [1/2]

ResourceMap cqsp::core::components::ResourceMap::operator- ( const double  value) const

◆ operator-() [2/2]

ResourceMap cqsp::core::components::ResourceMap::operator- ( const ResourceMap other) const

◆ operator-=() [1/3]

void cqsp::core::components::ResourceMap::operator-= ( const double  value)

◆ operator-=() [2/3]

void cqsp::core::components::ResourceMap::operator-= ( const ResourceLedger )

◆ operator-=() [3/3]

void cqsp::core::components::ResourceMap::operator-= ( const ResourceMap other)

◆ operator/() [1/2]

ResourceMap cqsp::core::components::ResourceMap::operator/ ( const double  value) const

◆ operator/() [2/2]

ResourceMap cqsp::core::components::ResourceMap::operator/ ( const ResourceMap other) const

◆ operator/=() [1/3]

void cqsp::core::components::ResourceMap::operator/= ( const double  value)

◆ operator/=() [2/3]

void cqsp::core::components::ResourceMap::operator/= ( const ResourceLedger )

◆ operator/=() [3/3]

void cqsp::core::components::ResourceMap::operator/= ( const ResourceMap other)

◆ operator<() [1/2]

bool cqsp::core::components::ResourceMap::operator< ( const double &  i)

All resources in this ledger are less than than the number

◆ operator<() [2/2]

bool cqsp::core::components::ResourceMap::operator< ( const ResourceMap ledger)

All resources in this ledger are smaller than than the other ledger

◆ operator<=() [1/2]

bool cqsp::core::components::ResourceMap::operator<= ( const double &  i)

◆ operator<=() [2/2]

bool cqsp::core::components::ResourceMap::operator<= ( const ResourceMap ledger)

All resources in this ledger are smaller than or equal to than the other ledger

◆ operator==()

bool cqsp::core::components::ResourceMap::operator== ( const double &  i)

◆ operator>() [1/2]

bool cqsp::core::components::ResourceMap::operator> ( const double &  i)

All resources in this ledger are greater than the number

◆ operator>() [2/2]

bool cqsp::core::components::ResourceMap::operator> ( const ResourceMap ledger)

All resources in this ledger are greater than the other ledger

◆ operator>=() [1/2]

bool cqsp::core::components::ResourceMap::operator>= ( const double &  i)

◆ operator>=() [2/2]

bool cqsp::core::components::ResourceMap::operator>= ( const ResourceMap ledger)

All resources in this ledger are greater than or equal to the other ledger

◆ operator[]()

double cqsp::core::components::ResourceMap::operator[] ( const GoodEntity  entity) const

◆ RemoveResourcesLimited()

void cqsp::core::components::ResourceMap::RemoveResourcesLimited ( const ResourceMap other)

Removes the resources, and if the amount of resources removed are more than the resources inside the stockpile, it will set that resource to zero.

◆ SafeDivision() [1/2]

ResourceMap cqsp::core::components::ResourceMap::SafeDivision ( const ResourceMap other)

Returns a copy of the vector divided by the indicated vector, with division by zero resulting in infiniy

◆ SafeDivision() [2/2]

ResourceMap cqsp::core::components::ResourceMap::SafeDivision ( const ResourceMap other,
double  value 
)

Returns a copy of the vector divided by the indicated vector, with division by zero resulting in the specified value

◆ to_string()

std::string cqsp::core::components::ResourceMap::to_string ( )

◆ TransferTo()

void cqsp::core::components::ResourceMap::TransferTo ( ResourceMap ledger_to,
const ResourceMap amount 
)

◆ UnitLedger()

ResourceMap cqsp::core::components::ResourceMap::UnitLedger ( const double  val)

Returns a copy of the vector with the values set to indicated value


The documentation for this class was generated from the following files: