Blender V4.3
util/stats.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
2 *
3 * SPDX-License-Identifier: Apache-2.0 */
4
5#ifndef __UTIL_STATS_H__
6#define __UTIL_STATS_H__
7
8#include "util/atomic.h"
9#include "util/profiling.h"
10
12
13class Stats {
14 public:
16
17 Stats() : mem_used(0), mem_peak(0) {}
18 explicit Stats(static_init_t) {}
19
25
26 void mem_free(size_t size)
27 {
28 assert(mem_used >= size);
30 }
31
32 size_t mem_used;
33 size_t mem_peak;
34};
35
37
38#endif /* __UTIL_STATS_H__ */
ATOMIC_INLINE size_t atomic_add_and_fetch_z(size_t *p, size_t x)
ATOMIC_INLINE size_t atomic_sub_and_fetch_z(size_t *p, size_t x)
ATOMIC_INLINE size_t atomic_fetch_and_update_max_z(size_t *p, size_t x)
size_t mem_used
Definition util/stats.h:32
size_t mem_peak
Definition util/stats.h:33
Stats(static_init_t)
Definition util/stats.h:18
static_init_t
Definition util/stats.h:15
@ static_init
Definition util/stats.h:15
void mem_free(size_t size)
Definition util/stats.h:26
void mem_alloc(size_t size)
Definition util/stats.h:20
Stats()
Definition util/stats.h:17
#define CCL_NAMESPACE_END