Simulant  21.06-50
A portable game engine for Windows, OSX, Linux, Dreamcast, and PSP
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Friends | List of all members
smlt::Window Class Referenceabstract
Inheritance diagram for smlt::Window:
smlt::StageManager smlt::Loadable smlt::RenderTarget smlt::EventListenerManager smlt::Updateable smlt::KOSWindow smlt::PSPWindow smlt::SDL2Window

Public Types

typedef std::shared_ptr< Windowptr
 

Public Member Functions

virtual bool create_window (uint16_t width, uint16_t height, uint8_t bpp, bool fullscreen, bool enable_vsync)
 
LoaderPtr loader_for (const Path &filename, LoaderHint hint=LOADER_HINT_NONE)
 
LoaderPtr loader_for (const std::string &loader_name, const Path &filename)
 
LoaderTypePtr loader_type (const std::string &loader_name) const
 
void register_loader (LoaderTypePtr loader_type)
 
virtual void set_title (const std::string &title)=0
 
virtual void cursor_position (int32_t &mouse_x, int32_t &mouse_y)=0
 
virtual void show_cursor (bool cursor_shown=true)=0
 
virtual void lock_cursor (bool cursor_locked=true)=0
 
virtual void check_events ()=0
 
virtual void swap_buffers ()=0
 
bool is_paused () const
 
uint16_t width () const override
 
uint16_t height () const override
 
bool is_fullscreen () const
 
bool vsync_enabled () const
 
float aspect_ratio () const
 
bool run_frame ()
 
void set_logging_level (LogLevel level)
 
void stop_running ()
 
bool is_shutting_down () const
 
void enable_virtual_joypad (VirtualGamepadConfig config, bool flipped=false)
 
void disable_virtual_joypad ()
 
bool has_virtual_joypad () const
 
void reset ()
 Window::reset. More...
 
Vec2 coordinate_from_normalized (Ratio rx, Ratio ry)
 
void on_finger_down (TouchPointID touch_id, float normalized_x, float normalized_y, float pressure=1.0)
 
void on_finger_up (TouchPointID touch_id, float normalized_x, float normalized_y)
 
void on_finger_motion (TouchPointID touch_id, float normalized_x, float normalized_y, float dx, float dy)
 
void on_key_down (KeyboardCode code, ModifierKeyState modifiers)
 
void on_key_up (KeyboardCode code, ModifierKeyState modifiers)
 
std::size_t screen_count () const
 
Screenscreen (const std::string &name) const
 
void each_screen (std::function< void(std::string, Screen *)> callback)
 
Screen_create_screen (const std::string &name, uint16_t width, uint16_t height, ScreenFormat format, uint16_t refresh_rate)
 
void _destroy_screen (const std::string &name)
 
void _fixed_update_thunk (float dt) override
 
void _update_thunk (float dt) override
 
virtual bool _init_window ()=0
 
virtual bool _init_renderer (Renderer *renderer)=0
 
bool initialize_assets_and_devices ()
 
void _clean_up ()
 
StageNodeaudio_listener ()
 
void set_audio_listener (StageNode *node)
 
bool has_explicit_audio_listener () const
 
void start_coroutine (std::function< void()> func)
 
void update_idle_tasks_and_coroutines ()
 
void register_panel (uint8_t function_key, std::shared_ptr< Panel > panel)
 
void unregister_panel (uint8_t function_key)
 
void toggle_panel (uint8_t id)
 
void activate_panel (uint8_t id)
 
void deactivate_panel (uint8_t id)
 
bool panel_is_active (uint8_t id)
 
 S_DEFINE_PROPERTY (shared_assets, &Window::asset_manager_)
 
 S_DEFINE_PROPERTY (application, &Window::application_)
 
 S_DEFINE_PROPERTY (virtual_joypad, &Window::virtual_gamepad_)
 
 S_DEFINE_PROPERTY (renderer, &Window::renderer_)
 
 S_DEFINE_PROPERTY (time_keeper, &Window::time_keeper_)
 
 S_DEFINE_PROPERTY (idle, &Window::idle_)
 
 S_DEFINE_PROPERTY (data, &Window::data_carrier_)
 
 S_DEFINE_PROPERTY (vfs, &Window::vfs_)
 
 S_DEFINE_PROPERTY (input, &Window::input_manager_)
 
 S_DEFINE_PROPERTY (input_state, &Window::input_state_)
 
 S_DEFINE_PROPERTY (stats, &Window::stats_)
 
 S_DEFINE_PROPERTY (compositor, &Window::compositor_)
 
SoundDriver_sound_driver () const
 
void run_update ()
 
void run_fixed_updates ()
 
void request_frame_time (float ms)
 
- Public Member Functions inherited from smlt::StageManager
 StageManager (Window *window)
 
StagePtr new_stage (AvailablePartitioner partitioner=PARTITIONER_FRUSTUM)
 
StagePtr stage (StageID s)
 StageManager::stage. More...
 
StagePtr destroy_stage (StageID s)
 
std::size_t stage_count () const
 
bool has_stage (StageID stage_id) const
 
void fixed_update (float dt) override
 
void update (float dt) override
 
void late_update (float dt) override
 
void destroy_all_stages ()
 
IteratorPair each_stage ()
 
void destroy_object (Stage *object)
 
void destroy_object_immediately (Stage *object)
 
uint32_t stage_node_pool_capacity () const
 
uint32_t stage_node_pool_capacity_in_bytes () const
 
- Public Member Functions inherited from smlt::Updateable
virtual void _late_update_thunk (float dt)
 
- Public Member Functions inherited from smlt::RenderTarget
virtual void set_clear_every_frame (uint32_t clear_flags=BUFFER_CLEAR_ALL, const smlt::Colour &colour=smlt::Colour::BLACK)
 
virtual uint32_t clear_every_frame_flags () const
 
virtual smlt::Colour clear_every_frame_colour () const
 
- Public Member Functions inherited from smlt::EventListenerManager
void register_event_listener (EventListener *listener)
 
void unregister_event_listener (EventListener *listener)
 
void each_event_listener (std::function< void(EventListener *)> callback)
 

Static Public Member Functions

template<typename T >
static std::shared_ptr< Windowcreate (Application *app)
 

Static Public Attributes

static const int STEPS_PER_SECOND = 60
 

Protected Member Functions

void set_vsync_enabled (bool vsync)
 
void set_width (uint16_t width)
 
void set_height (uint16_t height)
 
void set_bpp (uint16_t bpp)
 
void set_fullscreen (bool val)
 
virtual void destroy_window ()=0
 
void set_paused (bool value=true)
 
void set_has_context (bool value=true)
 
bool has_context () const
 
thread::Mutexcontext_lock ()
 
void set_application (Application *app)
 
void set_escape_to_quit (bool value=true)
 
bool escape_to_quit_enabled () const
 
InputState_input_state () const
 
- Protected Member Functions inherited from smlt::StageManager
void clean_up ()
 

Protected Attributes

std::shared_ptr< Rendererrenderer_
 
- Protected Attributes inherited from smlt::StageManager
StagePool pool_
 
StageNodePool node_pool_
 
StageNodeManager< StagePool, StageID, Stagemanager_
 

Friends

class Screen
 

Additional Inherited Members

- Protected Types inherited from smlt::StageManager
typedef Polylist< StageNode, StageStagePool
 

Member Function Documentation

◆ reset()

void smlt::Window::reset ( )

Window::reset.

Destroys all stages and releases all loadables. Then resets the window to its original state.


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