29#define FIXED_UNIT FrameSampleT(65535)
36#ifdef USE_DEBUG_REPORT_ERROR_MARGIN
48#ifdef USE_DEBUG_REPORT_ERROR_MARGIN
73 if (scene->fps_info ==
nullptr) {
89 scene->fps_info =
nullptr;
95 const int times_fps_num = (fps_samples > 0) ? fps_samples :
max_ii(1,
int(
ceilf(fps_target)));
105 scene->fps_info =
nullptr;
110 if (fpsi ==
nullptr) {
119 const double decimal_places = 100.0;
121 (std::round(fps_target * decimal_places) / decimal_places);
135 if (fpsi ==
nullptr) {
157 const double fps_curr_db = std::round(fps_sample *
double(
FIXED_UNIT));
164#ifdef USE_DEBUG_REPORT_ERROR_MARGIN
177#ifdef USE_DEBUG_REPORT_ERROR_MARGIN
179 double fps_average_ref = 0.0f;
181 fps_average_ref += fpsi->
times_fps[i].value_db;
186 fpsi->error_sum +=
error;
187 fpsi->error_samples += 1;
188 if ((fpsi->error_samples % 100) == 0) {
189 printf(
"%s error: %.16f over %d samples (average %.16f)\n",
193 fpsi->error_sum /
double(fpsi->error_samples));
MINLINE int max_ii(int a, int b)
Read Guarded memory(de)allocation.
draw_view in_light_buf[] float
void MEM_freeN(void *vmemh)
void *(* MEM_callocN)(size_t len, const char *str)
static void error(const char *str)
void ED_scene_fps_average_clear(Scene *scene)
bool ED_scene_fps_average_calc(const Scene *scene, SceneFPS_State *r_state)
void ED_scene_fps_average_accumulate(Scene *scene, const short fps_samples, const double ltime)
unsigned __int64 uint64_t
bool fps_target_is_fractional
bool fps_target_is_fractional