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 | Public Attributes | Private Attributes | List of all members
cqsp::core::Universe Class Reference

#include <universe.h>

Inheritance diagram for cqsp::core::Universe:

Public Member Functions

 Universe (std::string uuid)
 
 Universe ()
 
entt::entity GetGood (const components::GoodEntity entity) const
 
auto GoodIterator () const
 
size_t GoodCount () const
 
template<typename... Component>
bool all_of (const components::GoodEntity entity) const
 
template<typename... Component>
bool any_of (const components::GoodEntity entity) const
 
template<typename... Component>
decltype(auto) get (const components::GoodEntity entity)
 
template<typename... Component>
decltype(auto) get (const components::GoodEntity entity) const
 
void EnableTick ()
 
void DisableTick ()
 
bool ToTick () const
 
void ToggleTick ()
 
int GetDate () const
 
auto NodeTransform () const
 
auto Convert (const std::vector< entt::entity > &entities) const
 
std::set< NodeConvert (const std::set< entt::entity > &entities) const
 
template<typename... Components>
auto nodes ()
 
template<typename... Components>
auto nodes () const
 
template<typename... Components, typename... Exclude>
auto nodes (entt::exclude_t< Exclude... > exclude)
 
template<typename... Components, typename... Exclude>
auto nodes (entt::exclude_t< Exclude... > exclude) const
 
Node operator() (const entt::entity entity)
 
Node operator() ()
 
Node null ()
 

Public Attributes

components::StarDate date
 
std::map< std::string, entt::entity > goods
 
std::vector< entt::entity > consumergoods
 
std::map< std::string, entt::entity > recipes
 
std::map< std::string, entt::entity > terrain_data
 
std::map< std::string, actions::NameGeneratorname_generators
 
std::map< std::string, entt::entity > fields
 
std::map< std::string, entt::entity > technologies
 
std::map< std::string, entt::entity > planets
 
std::map< std::string, entt::entity > time_zones
 
std::map< std::string, entt::entity > countries
 
std::map< std::string, entt::entity > provinces
 
std::map< std::string, entt::entity > cities
 
std::map< entt::entity, std::map< int, entt::entity > > province_colors
 
std::map< entt::entity, std::map< entt::entity, int > > colors_province
 
entt::entity sun
 
std::vector< entt::entity > good_vector
 
std::unordered_map< entt::entity, components::GoodEntitygood_map
 
std::unique_ptr< cqsp::core::util::IRandomrandom
 
std::string uuid
 
double tick_fraction = 0
 What is the current fraction of the wait of the tick we are processing More...
 
std::function< Node(entt::entity)> nodeFactory
 
systems::EconomyConfig economy_config
 

Private Attributes

bool to_tick = false
 

Constructor & Destructor Documentation

◆ Universe() [1/2]

cqsp::core::Universe::Universe ( std::string  uuid)
explicit

◆ Universe() [2/2]

cqsp::core::Universe::Universe ( )

Member Function Documentation

◆ all_of()

template<typename... Component>
bool cqsp::core::Universe::all_of ( const components::GoodEntity  entity) const
inline

◆ any_of()

template<typename... Component>
bool cqsp::core::Universe::any_of ( const components::GoodEntity  entity) const
inline

◆ Convert() [1/2]

std::set< Node > cqsp::core::Universe::Convert ( const std::set< entt::entity > &  entities) const

◆ Convert() [2/2]

auto cqsp::core::Universe::Convert ( const std::vector< entt::entity > &  entities) const
inline

◆ DisableTick()

void cqsp::core::Universe::DisableTick ( )
inline

◆ EnableTick()

void cqsp::core::Universe::EnableTick ( )
inline

◆ get() [1/2]

template<typename... Component>
decltype(auto) cqsp::core::Universe::get ( const components::GoodEntity  entity)
inline

◆ get() [2/2]

template<typename... Component>
decltype(auto) cqsp::core::Universe::get ( const components::GoodEntity  entity) const
inline

◆ GetDate()

int cqsp::core::Universe::GetDate ( ) const
inline

◆ GetGood()

entt::entity cqsp::core::Universe::GetGood ( const components::GoodEntity  entity) const
inline

◆ GoodCount()

size_t cqsp::core::Universe::GoodCount ( ) const
inline

◆ GoodIterator()

auto cqsp::core::Universe::GoodIterator ( ) const
inline

◆ nodes() [1/4]

template<typename... Components>
auto cqsp::core::Universe::nodes ( )
inline

◆ nodes() [2/4]

template<typename... Components>
auto cqsp::core::Universe::nodes ( ) const
inline

◆ nodes() [3/4]

template<typename... Components, typename... Exclude>
auto cqsp::core::Universe::nodes ( entt::exclude_t< Exclude... >  exclude)
inline

◆ nodes() [4/4]

template<typename... Components, typename... Exclude>
auto cqsp::core::Universe::nodes ( entt::exclude_t< Exclude... >  exclude) const
inline

◆ NodeTransform()

auto cqsp::core::Universe::NodeTransform ( ) const
inline

◆ null()

Node cqsp::core::Universe::null ( )
inline

Returns null node

◆ operator()() [1/2]

Node cqsp::core::Universe::operator() ( )
inline

Creates a new entity with node

◆ operator()() [2/2]

Node cqsp::core::Universe::operator() ( const entt::entity  entity)
inline

Creates node with entity

◆ ToggleTick()

void cqsp::core::Universe::ToggleTick ( )
inline

◆ ToTick()

bool cqsp::core::Universe::ToTick ( ) const
inline

Member Data Documentation

◆ cities

std::map<std::string, entt::entity> cqsp::core::Universe::cities

◆ colors_province

std::map<entt::entity, std::map<entt::entity, int> > cqsp::core::Universe::colors_province

◆ consumergoods

std::vector<entt::entity> cqsp::core::Universe::consumergoods

◆ countries

std::map<std::string, entt::entity> cqsp::core::Universe::countries

◆ date

components::StarDate cqsp::core::Universe::date

◆ economy_config

systems::EconomyConfig cqsp::core::Universe::economy_config

◆ fields

std::map<std::string, entt::entity> cqsp::core::Universe::fields

◆ good_map

std::unordered_map<entt::entity, components::GoodEntity> cqsp::core::Universe::good_map

◆ good_vector

std::vector<entt::entity> cqsp::core::Universe::good_vector

◆ goods

std::map<std::string, entt::entity> cqsp::core::Universe::goods

◆ name_generators

std::map<std::string, actions::NameGenerator> cqsp::core::Universe::name_generators

◆ nodeFactory

std::function<Node(entt::entity)> cqsp::core::Universe::nodeFactory

◆ planets

std::map<std::string, entt::entity> cqsp::core::Universe::planets

◆ province_colors

std::map<entt::entity, std::map<int, entt::entity> > cqsp::core::Universe::province_colors

◆ provinces

std::map<std::string, entt::entity> cqsp::core::Universe::provinces

◆ random

std::unique_ptr<cqsp::core::util::IRandom> cqsp::core::Universe::random

◆ recipes

std::map<std::string, entt::entity> cqsp::core::Universe::recipes

◆ sun

entt::entity cqsp::core::Universe::sun

◆ technologies

std::map<std::string, entt::entity> cqsp::core::Universe::technologies

◆ terrain_data

std::map<std::string, entt::entity> cqsp::core::Universe::terrain_data

◆ tick_fraction

double cqsp::core::Universe::tick_fraction = 0

What is the current fraction of the wait of the tick we are processing

◆ time_zones

std::map<std::string, entt::entity> cqsp::core::Universe::time_zones

◆ to_tick

bool cqsp::core::Universe::to_tick = false
private

◆ uuid

std::string cqsp::core::Universe::uuid

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