citra/src/core
yzct12345 3641b9891d logging: Simplify and make thread-safe
This simplifies the logging system.

This also fixes some lost messages on startup.

The simplification is simple. I removed unused functions and moved most things in the .h to the .cpp. I replaced the unnecessary linked list with its contents laid out as three member variables. Anything that went through the linked list now directly accesses the backends. Generic functions are replaced with those for each specific use case and there aren't many. This change increases coupling but we gain back more KISS and encapsulation.

With those changes it was easy to make it thread-safe. I just removed the mutex and turned a boolean atomic. I was planning to use this thread-safety in my next PR about stacktraces. It was actually async-signal-safety at first but I ended up using a different approach. Anyway getting rid of the linked list is important for that because have the list of backends constantly changing complicates things.
2023-06-30 12:15:51 +03:00
..
arm core: fix warnings 2023-06-17 21:23:58 +05:30
cheats core: fix warnings 2023-06-17 21:23:58 +05:30
dumping core: fix warnings 2023-06-17 21:23:58 +05:30
file_sys code: Remove outdated comment style (#6640) 2023-06-25 15:22:41 +05:30
frontend frontend: Added Hybrid Screen screen layout option (#4542) (#6600) 2023-06-29 01:42:57 +03:00
gdbstub Various miscelaneous changes (#6496) 2023-05-03 17:24:10 +02:00
hle common/log: Move Log namespace into the Common namespace 2023-06-30 12:15:51 +03:00
hw video_core: Add debug scopes (#6634) 2023-06-23 03:37:13 +02:00
loader code: Remove outdated comment style (#6640) 2023-06-25 15:22:41 +05:30
rpc core: Remove unnecessary enum casts in log calls 2020-12-29 06:39:21 +01:00
tracer CI: fix recent build issues (#6148) 2022-10-05 18:43:07 +02:00
3ds.h Move screen size constants from video_core to core 2017-05-27 18:41:24 -07:00
CMakeLists.txt Dynamically load FFmpeg and libfdk-aac if available. (#6570) 2023-06-17 02:06:18 +03:00
core.cpp logging: Simplify and make thread-safe 2023-06-30 12:15:51 +03:00
core.h logging: Simplify and make thread-safe 2023-06-30 12:15:51 +03:00
core_timing.cpp Implement/Fix more SOC related functions (#6267) 2023-05-21 19:01:08 -07:00
core_timing.h Implement/Fix more SOC related functions (#6267) 2023-05-21 19:01:08 -07:00
global.h Refactored out the horrible static var in CoreTiming 2020-03-28 15:47:36 +00:00
memory.cpp Add 3GX plugin loader (#6172) 2022-12-11 10:08:58 +02:00
memory.h Add 3GX plugin loader (#6172) 2022-12-11 10:08:58 +02:00
mmio.h clang-format fixes 2020-02-13 17:39:15 +08:00
movie.cpp core: fix warnings 2023-06-17 21:23:58 +05:30
movie.h Minor improvements to the UX 2021-02-08 11:25:38 +08:00
perf_stats.cpp Add per game configuration options (#6187) 2022-12-08 13:27:25 +02:00
perf_stats.h citra_qt: Allow enabling frame advance before emulation start 2021-02-08 11:25:37 +08:00
precompiled_headers.h Port yuzu-emu/yuzu#9300: "CMake: Use precompiled headers to improve compile times" (#6213) 2022-12-17 16:06:38 +01:00
savestate.cpp Various miscelaneous changes (#6496) 2023-05-03 17:24:10 +02:00
savestate.h savestates: various changes 2023-04-10 00:51:02 -03:00
system_titles.cpp core: Update minimal system title set. (#6573) 2023-05-31 17:34:31 -07:00
system_titles.h Rework system title handling with up-to-date title list and region detection support. (#6356) 2023-03-29 13:55:29 +02:00
telemetry_session.cpp audio_core: Implement OpenAL backend (#6450) 2023-05-01 21:17:45 +02:00
telemetry_session.h common/telemetry: Migrate namespace into the Common namespace 2021-01-04 05:17:13 +01:00