Gamp v0.0.7-54-gccdc599
Gamp: Graphics, Audio, Multimedia and Processing
Loading...
Searching...
No Matches
gamp Namespace Reference

Gamp: Graphics, Audio, Multimedia and Processing Framework (Native C++, WebAssembly, ...) More...

Namespaces

namespace  av
 
namespace  dag
 
namespace  graph
 
namespace  render
 
namespace  wt
 

Classes

class  Attachable
 An attachable object. More...
 
class  GampEnv
 Singleton runtime environment properties. More...
 
class  GampException
 
class  StringHashMapWrap
 

Typedefs

typedef std::shared_ptr< AttachableAttachableRef
 
typedef uintptr_t handle_t
 A native handle type, big enough to store a pointer.
 
using StringAttachables = StringHashMapWrap<AttachableRef, std::nullptr_t, nullptr>
 
template<typename K, typename V>
using StringlikeHashMap = std::unordered_map<K, V, jau::string_hash, std::equal_to<>>
 

Functions

std::string asset_dir () noexcept
 
template<typename T, typename U>
castOrThrow (T has)
 
template<typename T, typename U>
bool checkOverflow (T has)
 
int expected_fps () noexcept
 Returns expected fps, either gpu_forced_fps() if set, otherwise monitor_fps().
 
jau::fraction_timespec expected_framedur () noexcept
 Returns the expected frame duration in [s], i.e.
 
jau::fraction_timespec getElapsedMonotonicTime () noexcept
 Returns the elapsed monotonic time since init_gfx_subsystem, synchronized with the gfx subsystem timer.
 
float gpu_avg_fps () noexcept
 Returns the measured gpu fps each 5s, starting with monitor_fps()
 
const jau::fraction_timespecgpu_avg_framedur () noexcept
 Returns the measured gpu frame duration in [s] each 5s, starting with 1/gpu_avg_fps()
 
int gpu_forced_fps () noexcept
 Returns optional forced frames per seconds or -1 if unset, set via set_gpu_forced_fps().
 
size_t handle_events () noexcept
 GFX Toolkit: Handle windowing and keyboard events.
 
bool init_gfx_subsystem (const char *exe_path)
 GFX Toolkit: Initialize the subsystem once.
 
bool is_gfx_subsystem_initialized () noexcept
 
std::string lookup_and_register_asset_dir (const char *exe_path, const char *asset_file="fonts/freefont/FreeSansBold.ttf", const char *asset_install_subdir="gamp") noexcept
 
bool mainloop_default () noexcept
 Performs the whole tasks for all created gamp::wt::Window instances.
 
void mainloop_void () noexcept
 Calls mainloop_default(), but exits application if returning false.
 
int monitor_fps () noexcept
 Monitor frames per seconds.
 
std::string resolve_asset (const std::string &asset_file, bool lookup_direct=false) noexcept
 
void set_gpu_forced_fps (int fps) noexcept
 Optional forced frames per seconds, pass to swap_gpu_buffer() by default.
 
void shutdown () noexcept
 
void swap_gpu_buffer (int fps) noexcept
 GFX Toolkit: Swap GPU back to front framebuffer of all windows using given fps, maintaining vertical monitor synchronization if possible.
 
template<typename T, typename U>
void throwOnOverflow (T has)
 

Variables

const jau::util::VersionNumberString VERSION
 
const char * VERSION_API
 
const char * VERSION_SHORT
 

Detailed Description

Gamp: Graphics, Audio, Multimedia and Processing Framework (Native C++, WebAssembly, ...)

Gamp addresses native hardware accelerated graphics, audio, multimedia and processing. It is implemented in C++, supports WebAssembly and perhaps interfacing w/ other languages/systems.