/* * This software is licensed under the terms of the MIT License. * See COPYING for further information. * --- * Copyright (c) 2011-2019, Lukas Weber . * Copyright (c) 2012-2019, Andrei Alexeyev . */ #ifndef IGUARD_framerate_h #define IGUARD_framerate_h #include "taisei.h" #include "hirestime.h" typedef struct { hrtime_t frametimes[120]; // size = number of frames to average double fps; // average fps over the last X frames hrtime_t frametime; // average frame time over the last X frames; hrtime_t last_update_time; // internal; last time the average was recalculated } FPSCounter; uint32_t get_effective_frameskip(void); void fpscounter_reset(FPSCounter *fps); void fpscounter_update(FPSCounter *fps); #endif // IGUARD_framerate_h