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 | Private Types | List of all members
cqsp::core::components::ResourceVector Class Reference

This is a vector meant for fast iteration More...

#include <resourceledger.h>

Inheritance diagram for cqsp::core::components::ResourceVector:

Public Member Functions

 ResourceVector ()=default
 
 ~ResourceVector ()=default
 
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)
 
ResourceVector operator- (const double value) const
 
ResourceVector operator+ (const double value) const
 
ResourceVector operator* (const double value) const
 
ResourceVector operator/ (const double value) const
 
ResourceVector operator+ (const ResourceVector &other) const
 
ResourceVector operator* (const ResourceVector &other) const
 
double Average ()
 Returns the average of all values in the ledger, with division by zero resulting in infiniy More...
 
double Min ()
 
double Max ()
 
GoodEntity MinGood ()
 
GoodEntity MaxGood ()
 
void Finalize ()
 
bool HasGood (const GoodEntity &good) const
 
double operator[] (const GoodEntity &good) const
 
double GetSum ()
 
double MultiplyAndGetSum (const ResourceLedger &other) const
 Multiplies the numbers stated in the resource ledger. Used for calculating the price, becuase usually the resource ledger will be the price. More...
 
bool contains (const GoodEntity &entity) const
 

Private Types

typedef std::pair< GoodEntity, double > LedgerPair
 
typedef std::vector< LedgerPair > LedgerVector
 

Detailed Description

This is a vector meant for fast iteration

Member Typedef Documentation

◆ LedgerPair

◆ LedgerVector

Constructor & Destructor Documentation

◆ ResourceVector()

cqsp::core::components::ResourceVector::ResourceVector ( )
default

◆ ~ResourceVector()

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

Member Function Documentation

◆ Average()

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

Returns the average of all values in the ledger, with division by zero resulting in infiniy

◆ contains()

bool cqsp::core::components::ResourceVector::contains ( const GoodEntity &  entity) const

◆ Finalize()

void cqsp::core::components::ResourceVector::Finalize ( )

◆ GetSum()

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

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

◆ HasGood()

bool cqsp::core::components::ResourceVector::HasGood ( const GoodEntity &  good) const

◆ Max()

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

◆ MaxGood()

GoodEntity cqsp::core::components::ResourceVector::MaxGood ( )

◆ Min()

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

◆ MinGood()

GoodEntity cqsp::core::components::ResourceVector::MinGood ( )

◆ MultiplyAndGetSum()

double cqsp::core::components::ResourceVector::MultiplyAndGetSum ( const ResourceLedger &  other) const

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]

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

◆ operator*() [2/2]

ResourceVector cqsp::core::components::ResourceVector::operator* ( const ResourceVector &  other) const

◆ operator*=() [1/3]

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

◆ operator*=() [2/3]

void cqsp::core::components::ResourceVector::operator*= ( const ResourceLedger &  map)

◆ operator*=() [3/3]

void cqsp::core::components::ResourceVector::operator*= ( const ResourceMap &  map)

◆ operator+() [1/2]

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

◆ operator+() [2/2]

ResourceVector cqsp::core::components::ResourceVector::operator+ ( const ResourceVector &  other) const

◆ operator+=() [1/3]

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

◆ operator+=() [2/3]

void cqsp::core::components::ResourceVector::operator+= ( const ResourceLedger &  map)

◆ operator+=() [3/3]

void cqsp::core::components::ResourceVector::operator+= ( const ResourceMap &  map)

◆ operator-()

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

◆ operator-=() [1/3]

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

◆ operator-=() [2/3]

void cqsp::core::components::ResourceVector::operator-= ( const ResourceLedger &  map)

◆ operator-=() [3/3]

void cqsp::core::components::ResourceVector::operator-= ( const ResourceMap &  map)

◆ operator/()

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

◆ operator/=() [1/3]

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

◆ operator/=() [2/3]

void cqsp::core::components::ResourceVector::operator/= ( const ResourceLedger &  map)

◆ operator/=() [3/3]

void cqsp::core::components::ResourceVector::operator/= ( const ResourceMap &  map)

◆ operator[]()

double cqsp::core::components::ResourceVector::operator[] ( const GoodEntity &  good) const

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