neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neogfx::game::game_world Class Reference

#include <game_world.hpp>

Inheritance diagram for neogfx::game::game_world:
neolib::ecs::system<> neolib::ecs::i_system

Classes

struct  meta
 

Public Member Functions

 define_event (ApplyingPhysics, applying_physics, step_time) define_event(PhysicsApplied
 
 game_world (game::i_ecs &aEcs)
 
 ~game_world ()
 
const system_idid () const override
 
const i_stringname () const override
 
bool apply () override
 
void set_time_step (double aTimestep_s)
 
bool universal_gravitation_enabled () const
 
void enable_universal_gravitation ()
 
void disable_universal_gravitation ()
 
- Public Member Functions inherited from neolib::ecs::system<>
 system (i_ecs &aEcs)
 
 system (const system &aOther)
 
 system (system &&aOther)
 
 system (i_ecs &aEcs, ComponentIdIter aFirstComponent, ComponentIdIter aLastComponent)
 
 ~system ()
 
i_ecsecs () const override
 
const i_set< component_id > & components () const override
 
i_set< component_id > & components () override
 
const i_componentcomponent (component_id aComponentId) const override
 
i_componentcomponent (component_id aComponentId) override
 
bool can_apply () const override
 
bool paused () const override
 
void pause () override
 
void resume () override
 
void terminate () override
 
bool waiting () const override
 
void wait () override
 
void wait_for (scalar aDuration) override
 
void signal () override
 
void start_thread_if () override
 
void start_thread () override
 
bool debug () const override
 
void set_debug (bool aDebug) override
 
std::chrono::microseconds update_time (std::size_t aMetricsIndex=0) const override
 
- Public Member Functions inherited from neolib::ecs::i_system
virtual ~i_system ()=default
 

Public Attributes

 physics_applied
 

Additional Inherited Members

- Protected Member Functions inherited from neolib::ecs::system<>
bool have_thread () const
 
threadget_thread () const
 
void yield (bool aSleep=false)
 
std::mutex & waiting_mutex ()
 
void start_update (std::size_t aMetricsIndex=0)
 
void end_update (std::size_t aMetricsIndex=0)
 

Detailed Description

Definition at line 28 of file game_world.hpp.

Constructor & Destructor Documentation

◆ game_world()

neogfx::game::game_world::game_world ( game::i_ecs aEcs)

◆ ~game_world()

neogfx::game::game_world::~game_world ( )

Member Function Documentation

◆ apply()

bool neogfx::game::game_world::apply ( )
overridevirtual

Implements neolib::ecs::i_system.

◆ define_event()

neogfx::game::game_world::define_event ( ApplyingPhysics  ,
applying_physics  ,
step_time   
)

◆ disable_universal_gravitation()

void neogfx::game::game_world::disable_universal_gravitation ( )

◆ enable_universal_gravitation()

void neogfx::game::game_world::enable_universal_gravitation ( )

◆ id()

const system_id & neogfx::game::game_world::id ( ) const
overridevirtual

Implements neolib::ecs::i_system.

◆ name()

const i_string & neogfx::game::game_world::name ( ) const
overridevirtual

Implements neolib::ecs::i_system.

◆ set_time_step()

void neogfx::game::game_world::set_time_step ( double  aTimestep_s)

◆ universal_gravitation_enabled()

bool neogfx::game::game_world::universal_gravitation_enabled ( ) const

Member Data Documentation

◆ physics_applied

neogfx::game::game_world::physics_applied

Definition at line 32 of file game_world.hpp.


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