1 // Copyright 2019 yuzu emulator team 2 // Licensed under GPLv2 or any later version 3 // Refer to the license.txt file included. 4 5 #pragma once 6 7 #include "core/hle/service/time/errors.h" 8 #include "core/hle/service/time/system_clock_context_update_callback.h" 9 #include "core/hle/service/time/time_sharedmemory.h" 10 11 namespace Service::Time::Clock { 12 13 class LocalSystemClockContextWriter final : public SystemClockContextUpdateCallback { 14 public: LocalSystemClockContextWriter(SharedMemory & shared_memory)15 explicit LocalSystemClockContextWriter(SharedMemory& shared_memory) 16 : SystemClockContextUpdateCallback{}, shared_memory{shared_memory} {} 17 18 protected: Update()19 ResultCode Update() override { 20 shared_memory.UpdateLocalSystemClockContext(context); 21 return RESULT_SUCCESS; 22 } 23 24 private: 25 SharedMemory& shared_memory; 26 }; 27 28 } // namespace Service::Time::Clock 29