diff options
author | Zephyron <zephyron@citron-emu.org> | 2025-01-25 14:55:50 +1000 |
---|---|---|
committer | Zephyron <zephyron@citron-emu.org> | 2025-01-25 14:55:50 +1000 |
commit | c279df9cfe50ea918abaf10b0f856118a1fcb11f (patch) | |
tree | d3970a267eee5de632df44bf8947960695286bbf /src/citron | |
parent | 0adeac26af77c7fb0605b08ab858a7c8262ffc88 (diff) |
service: mm: Refactor Memory Management service implementation
Refactors the MM (Memory Management) service implementation with improved:
- Session management using a vector of Session objects instead of global vars
- Type safety with proper enums and member encapsulation
- Error handling with consistent patterns
- Modern C++ features (std::erase_if, std::find_if, emplace_back)
- Logging with detailed debug messages
- Code organization and const correctness
Key changes:
- Add Session class with proper encapsulation
- Add EventClearMode enum (Manual = 0, Auto = 1)
- Update Module enum naming for consistency
- Implement proper session tracking and lookup
- Add detailed parameter logging
- Use modern C++ algorithms for session management
The implementation now properly handles multiple sessions and matches
the documented nn::mmnv::IRequest interface more closely.
Refs: switchbrew.org/wiki/Display_services#mm:u
Diffstat (limited to 'src/citron')
0 files changed, 0 insertions, 0 deletions