23#ifndef LIBVLC_VOUT_STATISTIC_H
24# define LIBVLC_VOUT_STATISTIC_H
25# include <stdatomic.h>
39 atomic_init(&stat->
lost, 0);
40 atomic_init(&stat->
late, 0);
49 unsigned *restrict displayed,
50 unsigned *restrict lost,
51 unsigned *restrict late)
53 *displayed = atomic_exchange_explicit(&stat->
displayed, 0,
54 memory_order_relaxed);
55 *lost = atomic_exchange_explicit(&stat->
lost, 0, memory_order_relaxed);
56 *late = atomic_exchange_explicit(&stat->
late, 0, memory_order_relaxed);
62 atomic_fetch_add_explicit(&stat->
displayed, displayed,
63 memory_order_relaxed);
68 atomic_fetch_add_explicit(&stat->
lost, lost, memory_order_relaxed);
73 atomic_fetch_add_explicit(&stat->
late, late, memory_order_relaxed);
static void vout_statistic_AddLate(vout_statistic_t *stat, int late)
Definition: statistic.h:71
static void vout_statistic_AddDisplayed(vout_statistic_t *stat, int displayed)
Definition: statistic.h:59
static void vout_statistic_GetReset(vout_statistic_t *stat, unsigned *restrict displayed, unsigned *restrict lost, unsigned *restrict late)
Definition: statistic.h:48
static void vout_statistic_AddLost(vout_statistic_t *stat, int lost)
Definition: statistic.h:66
static void vout_statistic_Clean(vout_statistic_t *stat)
Definition: statistic.h:43
static void vout_statistic_Init(vout_statistic_t *stat)
Definition: statistic.h:36
Definition: statistic.h:30
atomic_uint lost
Definition: statistic.h:32
atomic_uint late
Definition: statistic.h:33
atomic_uint displayed
Definition: statistic.h:31