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

#include <i_native_surface.hpp>

Inheritance diagram for neogfx::i_native_surface:
neogfx::i_render_target neogfx::i_property_owner neolib::i_reference_counted neogfx::i_device_metrics neogfx::i_object neogfx::i_device_resolution neolib::i_object neolib::i_lifetime

Classes

struct  context_mismatch
 
struct  no_invalidated_area
 

Public Types

typedef i_native_surface abstract_type
 

Public Member Functions

virtual ~i_native_surface ()=default
 
virtual uint64_t frame_counter () const =0
 
virtual double fps () const =0
 
virtual double potential_fps () const =0
 
virtual void invalidate (const rect &aInvalidatedRect)=0
 
virtual bool has_invalidated_area () const =0
 
virtual const rectinvalidated_area () const =0
 
virtual rect validate ()=0
 
virtual bool can_render () const =0
 
virtual void render (bool aOOBRequest=false)=0
 
virtual void pause ()=0
 
virtual void resume ()=0
 
virtual bool is_rendering () const =0
 
virtual std::unique_ptr< i_rendering_contextcreate_graphics_context (const i_widget &aWidget, blending_mode aBlendingMode=blending_mode::Default) const =0
 
virtual void debug (bool aEnableDebug)=0
 
virtual std::unique_ptr< i_rendering_contextcreate_graphics_context (blending_mode aBlendingMode=blending_mode::Default) const=0
 
- Public Member Functions inherited from neogfx::i_render_target
virtual render_target_type target_type () const =0
 
virtual void * target_handle () const =0
 
virtual void * target_device_handle () const =0
 
virtual pixel_format_t pixel_format () const =0
 
virtual const i_texturetarget_texture () const =0
 
virtual point target_origin () const =0
 
virtual size target_extents () const =0
 
virtual neogfx::logical_coordinate_system logical_coordinate_system () const =0
 
virtual void set_logical_coordinate_system (neogfx::logical_coordinate_system aSystem)=0
 
virtual neogfx::logical_coordinates logical_coordinates () const =0
 
virtual void set_logical_coordinates (const neogfx::logical_coordinates &aCoordinates)=0
 
virtual rect_i32 viewport () const =0
 
virtual rect_i32 set_viewport (const rect_i32 &aViewport) const =0
 
virtual bool target_active () const =0
 
virtual void activate_target () const =0
 
virtual void deactivate_target () const =0
 
virtual neogfx::color_space color_space () const =0
 
virtual color read_pixel (const point &aPosition) const =0
 
- Public Member Functions inherited from neogfx::i_device_metrics
virtual bool metrics_available () const =0
 
virtual size extents () const =0
 
virtual dimension em_size () const =0
 
- Public Member Functions inherited from neogfx::i_device_resolution
virtual dimension horizontal_dpi () const =0
 
virtual dimension vertical_dpi () const =0
 
virtual dimension ppi () const =0
 
- Public Member Functions inherited from neogfx::i_property_owner
virtual ~i_property_owner ()=default
 
virtual void property_changed (i_property &aProperty)=0
 
virtual const i_propertiesproperties () const =0
 
virtual i_propertiesproperties ()=0
 
- Public Member Functions inherited from neogfx::i_object
virtual ~i_object ()=default
 
virtual i_objectas_object ()=0
 
virtual void class_name (neolib::i_string &aClassName) const =0
 
virtual neogfx::object_type object_type () const =0
 
- Public Member Functions inherited from neolib::i_object
 declare_event (destroying)
 
 declare_event (destroyed)
 
- Public Member Functions inherited from neolib::i_lifetime
virtual ~i_lifetime ()=default
 
virtual lifetime_state object_state () const =0
 
virtual std::shared_ptr< std::atomic< lifetime_state > > object_state_ptr () const =0
 
virtual bool is_creating () const =0
 
virtual bool is_alive () const =0
 
virtual bool is_destroying () const =0
 
virtual bool is_destroyed () const =0
 
virtual void set_alive ()=0
 
virtual void set_destroying ()=0
 
virtual void set_destroyed ()=0
 
- Public Member Functions inherited from neolib::i_reference_counted
virtual ~i_reference_counted ()=default
 
virtual void add_ref () const noexcept=0
 
virtual void release () const =0
 
virtual int32_t use_count () const noexcept=0
 
virtual const i_reference_countedrelease_and_take_ownership () const =0
 
virtual i_reference_countedrelease_and_take_ownership ()=0
 
virtual void pin () const noexcept=0
 
virtual void unpin () const =0
 
virtual i_ref_control_blockcontrol_block ()=0
 

Detailed Description

Definition at line 35 of file i_native_surface.hpp.

Member Typedef Documentation

◆ abstract_type

Constructor & Destructor Documentation

◆ ~i_native_surface()

virtual neogfx::i_native_surface::~i_native_surface ( )
virtualdefault

Member Function Documentation

◆ can_render()

virtual bool neogfx::i_native_surface::can_render ( ) const
pure virtual

◆ create_graphics_context() [1/2]

virtual std::unique_ptr< i_rendering_context > neogfx::i_render_target::create_graphics_context ( blending_mode  aBlendingMode = blending_mode::Default) const
virtual

◆ create_graphics_context() [2/2]

virtual std::unique_ptr< i_rendering_context > neogfx::i_native_surface::create_graphics_context ( const i_widget aWidget,
blending_mode  aBlendingMode = blending_mode::Default 
) const
pure virtual

◆ debug()

virtual void neogfx::i_native_surface::debug ( bool  aEnableDebug)
pure virtual

◆ fps()

virtual double neogfx::i_native_surface::fps ( ) const
pure virtual

◆ frame_counter()

virtual uint64_t neogfx::i_native_surface::frame_counter ( ) const
pure virtual

◆ has_invalidated_area()

virtual bool neogfx::i_native_surface::has_invalidated_area ( ) const
pure virtual

◆ invalidate()

virtual void neogfx::i_native_surface::invalidate ( const rect aInvalidatedRect)
pure virtual

◆ invalidated_area()

virtual const rect & neogfx::i_native_surface::invalidated_area ( ) const
pure virtual

◆ is_rendering()

virtual bool neogfx::i_native_surface::is_rendering ( ) const
pure virtual

◆ pause()

virtual void neogfx::i_native_surface::pause ( )
pure virtual

◆ potential_fps()

virtual double neogfx::i_native_surface::potential_fps ( ) const
pure virtual

◆ render()

virtual void neogfx::i_native_surface::render ( bool  aOOBRequest = false)
pure virtual

◆ resume()

virtual void neogfx::i_native_surface::resume ( )
pure virtual

◆ validate()

virtual rect neogfx::i_native_surface::validate ( )
pure virtual

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